('timetable', params.value).then((resp) => {\r\n const departures = resp.data.map(d => new TimetableDeparture(d))\r\n return {\r\n departures,\r\n availableDates: getAvailableDates(minDate(departures.map(d => d.departureDateTime).filter(d => d >= startOfYesterday())))\r\n }\r\n });\r\n }\r\n\r\n return {\r\n route: selectedRoute,\r\n date: selectedDate,\r\n stop: selectedStop,\r\n ...useQuery(['timetable', selectedRoute, selectedStop], fetcher, {\r\n refetchOnWindowFocus: false,\r\n staleTime: 1000\r\n })\r\n }\r\n}\r\n\r\nexport default useTimetableQuery;","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createVNode as _createVNode, withCtx as _withCtx, unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0f6b13e2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"timetable-calendar\" }\n\nimport BaseButton from \"@/components/base/BaseButton.vue\";\r\nimport SvgIcon from \"@/components/base/SvgIcon.vue\";\r\nimport { today } from \"@/helpers/dateHelpers\";\r\nimport { DatePicker } from \"v-calendar\";\r\nimport { computed } from \"vue\";\r\n\r\ninterface Props {\r\n modelValue: Date;\r\n availableDates?: Date[];\r\n}\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TimetableCalendar',\n props: {\n modelValue: {},\n availableDates: {}\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { emit: __emit }) {\n\r\nconst props = __props;\r\n\r\nconst emit = __emit;\r\n\r\nconst dates = computed(() => props.availableDates?.filter((v) => v >= today()));\r\n\r\nconst dateInput = computed({\r\n get() {\r\n return props.modelValue;\r\n },\r\n set(value: Date) {\r\n emit(\"update:modelValue\", value);\r\n },\r\n});\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_unref(DatePicker), {\n modelValue: dateInput.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((dateInput).value = $event)),\n class: \"calendar\",\n firstDayOfWeek: 2,\n \"trim-weeks\": \"\",\n locale: _ctx.$i18n.locale,\n \"available-dates\": dates.value,\n \"is-required\": true\n }, {\n default: _withCtx(({ togglePopover }) => [\n _createVNode(BaseButton, {\n class: \"btn--transparent\",\n onClick: ($event: any) => (togglePopover())\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t(\"timetable.calendar\")) + \":\", 1),\n _createVNode(SvgIcon, { icon: \"booking/calendar\" })\n ]),\n _: 2\n }, 1032, [\"onClick\"])\n ]),\n _: 1\n }, 8, [\"modelValue\", \"locale\", \"available-dates\"])\n ]))\n}\n}\n\n})","\r\n \r\n \r\n \r\n \r\n {{ $t(\"timetable.calendar\") }}:\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n","import script from \"./TimetableCalendar.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./TimetableCalendar.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./TimetableCalendar.vue?vue&type=style&index=0&id=0f6b13e2&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/.pnpm/vue-loader@17.4.2_@vue+comp_ad735c9fab31b483aaa8e1d5a8657100/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0f6b13e2\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1a1fe574\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"timetable-dates\" }\nconst _hoisted_2 = { class: \"timetable-dates__item\" }\nconst _hoisted_3 = [\"for\"]\n\nimport { ddMMMM, EEEE, YYYYMMDD } from \"@/helpers/dateHelpers\";\r\nimport { A11y, Navigation, Virtual } from \"swiper/modules\";\r\nimport \"swiper/css/bundle\";\r\nimport { Swiper, SwiperSlide } from \"swiper/vue\";\r\nimport { computed } from \"vue\";\r\n\r\ninterface Props {\r\n modelValue: Date;\r\n availableDates?: Date[];\r\n}\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TimetableDates',\n props: {\n modelValue: {},\n availableDates: {}\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { emit: __emit }) {\n\r\nconst swiperModules = [Navigation, A11y, Virtual];\r\n\r\nconst props = __props;\r\n\r\nconst emit = __emit;\r\n\r\nconst initialSlide = computed(() => {\r\n const v = props.availableDates?.findIndex((d) => props.modelValue.getTime() === d.getTime()) ?? 0;\r\n return Math.max(2, v);\r\n});\r\n\r\nconst slideChanged = (e: { activeIndex: number }) => {\r\n const dateValue = props.availableDates ? props.availableDates[e.activeIndex] : new Date();\r\n emit(\"update:modelValue\", dateValue);\r\n};\r\n\r\nconst breakpoints = {\r\n 0: {\r\n slidesPerView: 1,\r\n },\r\n 780: {\r\n slidesPerView: 3,\r\n },\r\n};\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_openBlock(), _createBlock(_unref(Swiper), {\n navigation: \"\",\n virtual: \"\",\n initialSlide: initialSlide.value,\n breakpoints: breakpoints,\n key: initialSlide.value,\n centeredSlides: true,\n onTouchEnd: slideChanged,\n onTransitionEnd: slideChanged,\n modules: swiperModules\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.availableDates, (availableDate, index) => {\n return (_openBlock(), _createBlock(_unref(SwiperSlide), {\n key: index,\n virtualIndex: index\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"label\", {\n for: _unref(YYYYMMDD)(availableDate)\n }, [\n _createTextVNode(_toDisplayString(_unref(ddMMMM)(availableDate)) + \" \", 1),\n _createElementVNode(\"span\", null, _toDisplayString(_unref(EEEE)(availableDate)), 1)\n ], 8, _hoisted_3)\n ])\n ]),\n _: 2\n }, 1032, [\"virtualIndex\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"initialSlide\"]))\n ]))\n}\n}\n\n})","\r\n \r\n\r\n\r\n\r\n\r\n\r\n","import script from \"./TimetableDates.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./TimetableDates.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./TimetableDates.vue?vue&type=style&index=0&id=1a1fe574&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/.pnpm/vue-loader@17.4.2_@vue+comp_ad735c9fab31b483aaa8e1d5a8657100/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-1a1fe574\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-752e53c2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"timetable-routes\" }\n\nimport BaseDropdown from \"@/components/base/BaseDropdown.vue\";\r\nimport { computed } from \"vue\";\r\nimport { OptionItem } from \"@/models/OptionItem\";\r\n\r\ninterface Props {\r\n modelValue: string;\r\n options: OptionItem[];\r\n}\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TimetableRoutes',\n props: {\n modelValue: {},\n options: {}\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { emit: __emit }) {\n\r\nconst props = __props;\r\n\r\nconst emit = __emit;\r\n\r\nconst routeInput = computed({\r\n get() {\r\n return props.modelValue;\r\n },\r\n set(value: string) {\r\n emit(\"update:modelValue\", value);\r\n },\r\n});\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t(\"timetable.selectRoute\")) + \":\", 1),\n _createVNode(BaseDropdown, {\n options: _ctx.options,\n modelValue: routeInput.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((routeInput).value = $event)),\n modelModifiers: { lazy: true },\n name: \"route\"\n }, null, 8, [\"options\", \"modelValue\"])\n ]))\n}\n}\n\n})","\r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n","import script from \"./TimetableRoutes.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./TimetableRoutes.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./TimetableRoutes.vue?vue&type=style&index=0&id=752e53c2&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/.pnpm/vue-loader@17.4.2_@vue+comp_ad735c9fab31b483aaa8e1d5a8657100/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-752e53c2\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-bdde4f5c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"timetable-stops\" }\n\nimport BaseDropdown from \"@/components/base/BaseDropdown.vue\";\r\nimport { OptionItem } from \"@/models/OptionItem\";\r\nimport { computed } from \"vue\";\r\n\r\ninterface Props {\r\n modelValue: number | undefined;\r\n options: OptionItem[];\r\n}\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TimetableStops',\n props: {\n modelValue: {},\n options: {}\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { emit: __emit }) {\n\r\nconst props = __props;\r\n\r\nconst emit = __emit;\r\n\r\nconst inputValue = computed({\r\n get() {\r\n return props.modelValue;\r\n },\r\n set(value: number | undefined) {\r\n emit(\"update:modelValue\", value);\r\n },\r\n});\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"label\", null, _toDisplayString(_ctx.$t(\"timetable.selectStop\")) + \":\", 1),\n _createVNode(BaseDropdown, {\n options: _ctx.options,\n placeholder: _ctx.$t('timetable.selectStopPlaceholder'),\n modelValue: inputValue.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((inputValue).value = $event)),\n modelModifiers: { lazy: true },\n canClear: \"\",\n name: \"stop\"\n }, null, 8, [\"options\", \"placeholder\", \"modelValue\"])\n ]))\n}\n}\n\n})","\r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n","import script from \"./TimetableStops.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./TimetableStops.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./TimetableStops.vue?vue&type=style&index=0&id=bdde4f5c&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/.pnpm/vue-loader@17.4.2_@vue+comp_ad735c9fab31b483aaa8e1d5a8657100/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-bdde4f5c\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, isRef as _isRef, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0c275515\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"timetable\" }\nconst _hoisted_2 = { class: \"timetable__group\" }\nconst _hoisted_3 = { class: \"timetable__group\" }\nconst _hoisted_4 = { class: \"timetable__footer\" }\nconst _hoisted_5 = { key: 0 }\nconst _hoisted_6 = { class: \"disclaimer\" }\n\nimport SvgIcon from \"@/components/base/SvgIcon.vue\";\r\nimport { YYYYMMDD } from \"@/helpers/dateHelpers\";\r\nimport { TimetableDate } from \"@/models/front/TimetableDate\";\r\nimport { useMediaQuery } from \"@vueuse/core\";\r\nimport { addDays, eachDayOfInterval } from \"date-fns\";\r\nimport { computed, ref, watch } from \"vue\";\r\nimport { useI18n } from \"vue-i18n\";\r\nimport TimetableDepartures from \"../components/TimetableDepartures.vue\";\r\nimport useTimetableQuery from \"../composables/useTimetableQuery\";\r\nimport TimetableCalendar from \"./TimetableCalendar.vue\";\r\nimport TimetableDates from \"./TimetableDates.vue\";\r\nimport TimetableRoutes from \"./TimetableRoutes.vue\";\r\nimport TimetableStops from \"./TimetableStops.vue\";\r\nimport useRoutesQuery from \"@/modules/BookingFlow/composables/useRoutesQuery\";\r\nimport { OptionItem } from \"@/models/OptionItem\";\r\nimport { TimetableRoute, TimetableRouteStop } from \"@/models/front/TimetableRoute\";\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Timetable',\n setup(__props) {\n\r\nconst { t } = useI18n();\r\nconst { route, date, stop, data, isLoading } = useTimetableQuery();\r\n\r\nconst isLargeScreen = useMediaQuery(\"(min-width: 780px)\");\r\n\r\nconst isRendering = ref(false);\r\n\r\nconst departureDates = computed(() => {\r\n const result: TimetableDate[] = [];\r\n\r\n const offset = isLargeScreen.value ? 1 : 0;\r\n\r\n const dates = eachDayOfInterval({\r\n start: addDays(date.value, -offset),\r\n end: addDays(date.value, offset),\r\n });\r\n\r\n dates.forEach((d) => {\r\n const departuresOnDate = data.value?.departures?.filter((departure) => departure.departureDate === YYYYMMDD(d)) ?? [];\r\n\r\n result.push({ date: d, departures: departuresOnDate });\r\n });\r\n\r\n return result;\r\n});\r\n\r\nconst { data: routeData } = useRoutesQuery();\r\n\r\nconst routeOptions = computed(() => {\r\n const routes = routeData.value ?? [] as TimetableRoute[];\r\n\r\n if(!routes) { return [] as OptionItem[]; }\r\n\r\n return routes.map((r) => ({\r\n label: t(`routes.${r.routeCode}`),\r\n value: r.routeCode,\r\n })) as OptionItem[];\r\n});\r\n\r\nconst stopOptions = computed(() => {\r\n const stops = routeData.value?.find(r => r.routeCode === route.value)?.busStops as TimetableRouteStop[];\r\n\r\n if(!stops) { return [] as OptionItem[]; }\r\n\r\n return stops.map((s) => ({\r\n label: s.name,\r\n value: s.id,\r\n })) as OptionItem[];\r\n});\r\n\r\nconst stopId = computed(() => {\r\n return stop.value;\r\n});\r\n\r\nwatch(departureDates, () => {\r\n isRendering.value = true;\r\n setTimeout(() => {\r\n isRendering.value = false;\r\n }, 250);\r\n});\r\n\r\nwatch(route, () => {\r\n stop.value = undefined;\r\n});\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"header\", null, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(TimetableRoutes, {\n modelValue: _unref(route),\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => (_isRef(route) ? (route).value = $event : null)),\n options: routeOptions.value,\n class: \"routes\"\n }, null, 8, [\"modelValue\", \"options\"]),\n _createVNode(TimetableCalendar, {\n modelValue: _unref(date),\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => (_isRef(date) ? (date).value = $event : null)),\n availableDates: _unref(data)?.availableDates,\n class: \"calendar\"\n }, null, 8, [\"modelValue\", \"availableDates\"])\n ]),\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(TimetableStops, {\n modelValue: _unref(stop),\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => (_isRef(stop) ? (stop).value = $event : null)),\n options: stopOptions.value,\n class: \"stations\"\n }, null, 8, [\"modelValue\", \"options\"])\n ])\n ]),\n (_unref(data))\n ? (_openBlock(), _createBlock(TimetableDates, {\n key: 0,\n modelValue: _unref(date),\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => (_isRef(date) ? (date).value = $event : null)),\n availableDates: _unref(data)?.availableDates\n }, null, 8, [\"modelValue\", \"availableDates\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(TimetableDepartures, {\n departureDates: departureDates.value,\n stopId: stopId.value,\n isLoading: _unref(isLoading) || isRendering.value\n }, null, 8, [\"departureDates\", \"stopId\", \"isLoading\"]),\n _createElementVNode(\"div\", _hoisted_4, [\n (stopId.value)\n ? (_openBlock(), _createElementBlock(\"h4\", _hoisted_5, [\n _createVNode(SvgIcon, { icon: \"booking/bus\" }),\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.$t(`timetable.routeStopDescription.${_unref(route)}`)) + \" \" + _toDisplayString(stopOptions.value.find(o => o.value === stopId.value)?.label), 1)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"p\", _hoisted_6, _toDisplayString(_ctx.$t(\"timetable.disclaimer\")), 1)\n ])\n ]))\n}\n}\n\n})","\r\n \r\n\r\n\r\n\r\n\r\n\r\n","import script from \"./Timetable.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Timetable.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Timetable.vue?vue&type=style&index=0&id=0c275515&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/.pnpm/vue-loader@17.4.2_@vue+comp_ad735c9fab31b483aaa8e1d5a8657100/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-0c275515\"]])\n\nexport default __exports__","import { render } from \"./App.vue?vue&type=template&id=79117364&ts=true\"\nimport script from \"./App.vue?vue&type=script&lang=ts\"\nexport * from \"./App.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"../../../node_modules/.pnpm/vue-loader@17.4.2_@vue+comp_ad735c9fab31b483aaa8e1d5a8657100/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createApp } from 'vue';\r\nimport i18n from '~/config/i18n';\r\nimport { pinia } from \"~/store\";\r\nimport App from './App.vue';\r\nimport { VueQueryPlugin } from 'vue-query';\r\n\r\nconst app = createApp(App)\r\napp.use(pinia)\r\napp.use(i18n);\r\napp.use(VueQueryPlugin);\r\n\r\napp.mount('#timetable')","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdO = {};","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","// The chunk loading function for additional chunks\n// Since all referenced chunks are already included\n// in this file, this function is empty here.\n__webpack_require__.e = function() { return Promise.resolve(); };","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 912;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t912: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkdestgotlandclient\"] = self[\"webpackChunkdestgotlandclient\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [504,996], function() { return __webpack_require__(56095); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["render","_ctx","_cache","$props","$setup","$data","$options","_component_Timetable","_resolveComponent","_openBlock","_createBlock","_withScopeId","n","_pushScopeId","_popScopeId","_hoisted_1","class","_hoisted_2","_createElementVNode","_hoisted_3","_hoisted_4","_hoisted_5","key","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_defineComponent","__name","props","departure","stopId","setup","__props","t","useI18n","shipType","ship","formatTime","date","formatDate","_createElementBlock","_toDisplayString","departureDateTime","arrivalDateTime","$t","isFreight","_unref","_createCommentVNode","_createVNode","SvgIcon","icon","_normalizeClass","disabled","busDeparture","busDepartureIsLocked","isOldTransfer","__exports__","departureDates","isLoading","type","Boolean","_Transition","name","default","_withCtx","BaseSpinner","color","_","_Fragment","_renderList","YYYYMMDD","today","departures","length","startOfYesterday","Departure","id","useTimetableQuery","selectedRoute","ref","departureRoutes","NYVI","selectedDate","startOfToday","selectedStop","post","useApi","params","computed","fromDate","toDate","addDays","value","routes","busStopPointGid","getAvailableDates","startDate","start","end","eachDayOfInterval","fetcher","then","resp","data","map","d","TimetableDeparture","availableDates","minDate","filter","route","stop","useQuery","refetchOnWindowFocus","staleTime","modelValue","emits","emit","__emit","dates","v","dateInput","get","set","DatePicker","$event","firstDayOfWeek","locale","$i18n","togglePopover","BaseButton","onClick","swiperModules","Navigation","A11y","Virtual","initialSlide","findIndex","getTime","Math","max","slideChanged","e","dateValue","activeIndex","Date","breakpoints","slidesPerView","Swiper","navigation","virtual","centeredSlides","onTouchEnd","onTransitionEnd","modules","availableDate","index","SwiperSlide","virtualIndex","for","_createTextVNode","ddMMMM","EEEE","options","routeInput","BaseDropdown","modelModifiers","lazy","inputValue","placeholder","canClear","isLargeScreen","useMediaQuery","isRendering","result","offset","forEach","departuresOnDate","departureDate","push","routeData","useRoutesQuery","routeOptions","r","label","routeCode","stopOptions","stops","find","busStops","s","watch","setTimeout","undefined","TimetableRoutes","_isRef","TimetableCalendar","TimetableStops","TimetableDates","TimetableDepartures","o","defineComponent","components","Timetable","app","createApp","App","use","pinia","i18n","VueQueryPlugin","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","loaded","__webpack_modules__","call","m","amdO","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","Object","keys","every","splice","getter","__esModule","a","definition","defineProperty","enumerable","Promise","resolve","g","globalThis","this","Function","window","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","bind","__webpack_exports__"],"sourceRoot":""}