PageSourceSearch

https://novyny.live/static/frontend/novyny-live-layout/dist/all-news.6e679d615c2042830e59.js

js novyny.live collected 2026-10-02 02:57:28 UTC 11,750 bytes, 282 lines download raw bytes

1"use strict";
2(self["webpackChunknovyny_live_layout"] = self["webpackChunknovyny_live_layout"] || []).push([["all-news"],{
3
vendor: 974 bytes, lines 4-31
4/***/ "./node_modules/air-datepicker/locale/en.js":
5/*!**************************************************!*\
6  !*** ./node_modules/air-datepicker/locale/en.js ***!
7  \**************************************************/
8/***/ ((__unused_webpack_module, exports) => {
9
10
11
12Object.defineProperty(exports, "__esModule", ({
13  value: true
14}));
15exports["default"] = void 0;
16var _default = {
17  days: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
18  daysShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
19  daysMin: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
20  months: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
21  monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
22  today: 'Today',
23  clear: 'Clear',
24  dateFormat: 'MM/dd/yyyy',
25  timeFormat: 'hh:mm aa',
26  firstDay: 0
27};
28exports["default"] = _default;
29
30/***/ }),
31
vendor: 1,184 bytes, lines 32-59
32/***/ "./node_modules/air-datepicker/locale/ru.js":
33/*!**************************************************!*\
34  !*** ./node_modules/air-datepicker/locale/ru.js ***!
35  \**************************************************/
36/***/ ((__unused_webpack_module, exports) => {
37
38
39
40Object.defineProperty(exports, "__esModule", ({
41  value: true
42}));
43exports["default"] = void 0;
44var _default = {
45  days: ['Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'],
46  daysShort: ['Вос', 'Пон', 'Вто', 'Сре', 'Чет', 'Пят', 'Суб'],
47  daysMin: ['Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'],
48  months: ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'],
49  monthsShort: ['Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн', 'Июл', 'Авг', 'Сен', 'Окт', 'Ноя', 'Дек'],
50  today: 'Сегодня',
51  clear: 'Очистить',
52  dateFormat: 'dd.MM.yyyy',
53  timeFormat: 'HH:mm',
54  firstDay: 1
55};
56exports["default"] = _default;
57
58/***/ }),
59
vendor: 1,205 bytes, lines 60-87
60/***/ "./node_modules/air-datepicker/locale/uk.js":
61/*!**************************************************!*\
62  !*** ./node_modules/air-datepicker/locale/uk.js ***!
63  \**************************************************/
64/***/ ((__unused_webpack_module, exports) => {
65
66
67
68Object.defineProperty(exports, "__esModule", ({
69  value: true
70}));
71exports["default"] = void 0;
72var _default = {
73  days: ['Неділя', 'Понеділок', 'Вівторок', 'Середа', 'Четвер', 'П’ятниця', 'Субота'],
74  daysShort: ['Нед', 'Пнд', 'Вів', 'Срд', 'Чтв', 'Птн', 'Сбт'],
75  daysMin: ['Нд', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'],
76  months: ['Січень', 'Лютий', 'Березень', 'Квітень', 'Травень', 'Червень', 'Липень', 'Серпень', 'Вересень', 'Жовтень', 'Листопад', 'Грудень'],
77  monthsShort: ['Січ', 'Лют', 'Бер', 'Кві', 'Тра', 'Чер', 'Лип', 'Сер', 'Вер', 'Жов', 'Лис', 'Гру'],
78  today: 'Сьогодні',
79  clear: 'Очистити',
80  dateFormat: 'dd.MM.yyyy',
81  timeFormat: 'HH:mm',
82  firstDay: 1
83};
84exports["default"] = _default;
85
86/***/ }),
87
88/***/ "./src/js/components/filters.js":
89/*!**************************************!*\
90  !*** ./src/js/components/filters.js ***!
91  \**************************************/
92/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
93
94__webpack_require__.r(__webpack_exports__);
95/* harmony import */ var air_datepicker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! air-datepicker */ "./node_modules/air-datepicker/index.es.js");
96/* harmony import */ var air_datepicker_locale_ru__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! air-datepicker/locale/ru */ "./node_modules/air-datepicker/locale/ru.js");
97/* harmony import */ var air_datepicker_locale_uk__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! air-datepicker/locale/uk */ "./node_modules/air-datepicker/locale/uk.js");
98/* harmony import */ var air_datepicker_locale_en__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! air-datepicker/locale/en */ "./node_modules/air-datepicker/locale/en.js");
99/* harmony import */ var air_datepicker_air_datepicker_css__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! air-datepicker/air-datepicker.css */ "./node_modules/air-datepicker/air-datepicker.css");
100
101
102
103
104
105const dataStorage = {
106  heading: '',
107  region: '',
108  date: ''
109};
110const todayBtn = document.querySelector('.datepicker__today');
111const filtersShowBtn = document.querySelector('.filters-show-btn');
112const filtersHideBtn = document.querySelector('.filters-close-icon'); // dropdown btns
113
114const dropdownBtnHeadings = document.querySelector('#headings-dropdown-btn');
115const dropdownBtnRegions = document.querySelector('#regions-dropdown-btn');
116const filtersSidebar = document.querySelector('.filters-sidebar');
117const searchBtn = document.querySelector('.datepicker__btn');
118
119function toggleDropdownContent(e, id) {
120  document.getElementById(id).classList.toggle("dropdown_show");
121}
122
123function toggleMenuHandler(e) {
124  if (!e.target.matches('.dropdown__btn') && !e.target.matches('.dropdown__btn-icon') && !e.target.matches('.dropdown__btn-text')) {
125    if (e.target.classList.contains('dropdown__item')) {
126      const dropdownBtn = e.target.parentElement.parentElement.querySelector('button'); // select option value
127
128      if (dropdownBtn.id === 'headings-dropdown-btn') dataStorage.heading = e.target.dataset.value;
129      if (dropdownBtn.id === 'regions-dropdown-btn') dataStorage.region = e.target.dataset.value;
130
131      if (dropdownBtn.children[0].classList.contains('dropdown__btn-text')) {
132        dropdownBtn.children[0].innerHTML = e.target.textContent;
133      }
134
135      dropdownBtn.classList.add('dropdown__btn_selected');
136    }
137
138    const dropdowns = document.getElementsByClassName("dropdown__content");
139
140    for (let i = 0; i < dropdowns.length; i++) {
141      const openDropdown = dropdowns[i];
142      if (openDropdown.classList.contains('dropdown_show')) openDropdown.classList.remove('dropdown_show');
143    }
144  }
145}
146
147window.addEventListener('click', toggleMenuHandler); // dropdown togglers
148
149dropdownBtnHeadings.addEventListener('click', e => toggleDropdownContent(e, "headings-dropdown"));
150dropdownBtnRegions.addEventListener('click', e => toggleDropdownContent(e, "regions-dropdown"));
151const LOCALES = new Map([['ru', air_datepicker_locale_ru__WEBPACK_IMPORTED_MODULE_1__["default"]], ['uk', air_datepicker_locale_uk__WEBPACK_IMPORTED_MODULE_2__["default"]], ['en', air_datepicker_locale_en__WEBPACK_IMPORTED_MODULE_3__["default"]]]); // get locale from URL prefix
152// get URL path
153
154const urlPath = window.location.pathname; // get locale from URL path
155
156const pathPart = urlPath.split('/')[1]; // check if pathPart is in LOCALES
157
158let locale;
159
160if (LOCALES.has(pathPart)) {
161  locale = LOCALES.get(pathPart);
162} else {
163  locale = LOCALES.get('uk');
164}
165
166let todayButton = {
167  content: locale.today,
168  className: 'air-datepicker-button',
169  onClick: dp => {
170    let date = new Date();
171    dp.selectDate(date);
172    dp.setViewDate(date);
173  }
174}; // TODO: Translations
175
176const picker = new air_datepicker__WEBPACK_IMPORTED_MODULE_0__["default"]('#date', {
177  inline: true,
178  prevHtml: "<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n    <path d=\"M12.5 15.833L6.66667 9.99967L12.5 4.16634\" stroke=\"#2D2D2D\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n    </svg>\n    ",
179  nextHtml: "<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n    <path d=\"M7.5 15.833L13.3333 9.99967L7.5 4.16634\" stroke=\"#2D2D2D\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n    </svg>\n    ",
180  buttons: [todayButton, 'clear'],
181  locale: locale,
182  navTitles: {
183    days: '<i>MMMM </i> &nbsp; <strong> yyyy</strong> ' // months: 'Select month of <strong>yyyy</strong>'
184
185  }
186}); // select initial date
187
188document.addEventListener('DOMContentLoaded', function () {
189  const newParams = new URLSearchParams(window.location.search);
190  const dateTime = newParams.get('date');
191
192  if (dateTime) {
193    const dateObj = new Date(dateTime); // subtract 1 day from date
194
195    dateObj.setDate(dateObj.getDate());
196    picker.selectDate(dateObj);
197    picker.setViewDate(dateObj);
198  }
199
200  const categoryId = newParams.get('category');
201
202  if (categoryId) {
203    dataStorage.heading = categoryId;
204  }
205});
206document.querySelector('#filter-button').addEventListener('click', function (e) {
207  let tab_content = document.querySelector("#filter-button");
208  let search = tab_content.dataset.search;
209  let ds = dataStorage;
210  const newParams = new URLSearchParams(window.location.search); // add search to url using URLSearchParams
211
212  if (search) {
213    newParams.set('search', search);
214  } else {
215    newParams.delete('search');
216  }
217
218  if (ds.heading) {
219    newParams.set('category', ds.heading);
220  } else {
221    newParams.delete('category');
222  }
223
224  if (picker.selectedDates[0]) {
225    const day = picker.selectedDates[0].getDate();
226    const month = picker.selectedDates[0].getMonth() + 1;
227    const year = picker.selectedDates[0].getFullYear();
228    newParams.set('date', "".concat(year, "-").concat(month, "-").concat(day));
229  } else {
230    newParams.delete('date');
231  } // Update URL with new parameters
232
233
234  const url = new URL(window.location.href);
235  url.search = newParams.toString();
236  window.location.href = url.toString(); // window.history.pushState({path: url}, '', url);
237  // Reload page with new URL
238  // window.location.reload();
239});
240filtersShowBtn === null || filtersShowBtn === void 0 ? void 0 : filtersShowBtn.addEventListener('click', () => {
241  filtersSidebar.style.display = 'block';
242});
243filtersHideBtn.addEventListener('click', () => {
244  filtersSidebar.style.display = 'none';
245});
246
247/***/ }),
248
249/***/ "./src/js/pages/all-news.js":
250/*!**********************************!*\
251  !*** ./src/js/pages/all-news.js ***!
252  \**********************************/
253/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
254
255__webpack_require__.r(__webpack_exports__);
256/* harmony import */ var _styles_pages_all_news_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../styles/pages/all-news.scss */ "./src/styles/pages/all-news.scss");
257/* harmony import */ var _components_filters__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/filters */ "./src/js/components/filters.js");
258
259
260
261/***/ }),
262
263/***/ "./src/styles/pages/all-news.scss":
264/*!****************************************!*\
265  !*** ./src/styles/pages/all-news.scss ***!
266  \****************************************/
267/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
268
269__webpack_require__.r(__webpack_exports__);
270// extracted by mini-css-extract-plugin
271
272
273/***/ })
273
274
275},
276/******/ __webpack_require__ => { // webpackRuntimeModules
277/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
278/******/ __webpack_require__.O(0, ["vendors-node_modules_air-datepicker_index_es_js-node_modules_air-datepicker_air-datepicker_css","vendors-node_modules_screen-size-detector_src_index_js"], () => (__webpack_exec__("./src/js/pages/all-news.js")));
279/******/ var __webpack_exports__ = __webpack_require__.O();
280/******/ }
281]);
282//# sourceMappingURL=all-news.6e679d615c2042830e59.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.