@digitransit-component/digitransit-component-datetimepicker 1.1.7 → 1.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("prop-types"),require("react"),require("moment-timezone"),require("lodash/debounce"),require("moment/locale/fi"),require("moment/locale/sv"),require("moment/locale/de"),require("lodash/uniqueId"),require("i18next"),require("@digitransit-component/digitransit-component-icon"),require("react-select"),require("classnames"),require("react-modal"),require("react-autosuggest")):"function"==typeof define&&define.amd?define(["exports","prop-types","react","moment-timezone","lodash/debounce","moment/locale/fi","moment/locale/sv","moment/locale/de","lodash/uniqueId","i18next","@digitransit-component/digitransit-component-icon","react-select","classnames","react-modal","react-autosuggest"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@digitransit-component/digitransit-component-datetimepicker"]={},e.PropTypes,e.React,e.moment,e.debounce,null,null,null,e.uniqueId,e.i18next,e.Icon,e.Select,e.cx,e.ReactModal,e.Autosuggest)}(this,(function(e,t,n,i,a,l,o,r,s,d,u,c,p,_,m){"use strict";function f(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var b=f(t),y=f(n),g=f(i),h=f(a),v=f(s),x=f(d),w=f(u),k=f(c),E=f(p),N=f(_),C=f(m);function R(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function F(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var i,a,l,o,r=[],s=!0,d=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(i=l.call(n)).done)&&(r.push(i.value),r.length!==t);s=!0);}catch(e){d=!0,a=e}finally{try{if(!s&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return r}}(e,t)||function(e,t){if(e){if("string"==typeof e)return R(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?R(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(e){var t=e;return 3===t.length&&t.split("").every((e=>Number.isInteger(Number(e))))&&(t=Number(t.slice(0,2))<=23?`${t.slice(0,2)}:${t[2]}`:`${t[0]}:${t.slice(1)}`),t}var P=(e,t)=>{var n=!Number.isNaN(e)&&e>=0&&e<=23,i=2===t.length?!Number.isNaN(t)&&Number(t)>=0&&Number(t<=59):!Number.isNaN(t)&&Number(t)>=0&&Number(t<=5);return n&&i};function O(e){if(e.split(":").length>2)return!1;if(e.length<=2)return!0;if(3===e.length){var t,n;if(e.includes(":")){var i=F(e.split(":"),2);t=i[0],n=i[1]}else{if(!e.startsWith("0")){var a=e.split("");if(1===Number(a[0])){var l=[a[0].concat(a[1]),a[2]];t=l[0],n=l[1]}else if(2===Number(a[0]))if(Number(a[1]<=3)){var o=[a[0].concat(a[1]),a[2]];t=o[0],n=o[1]}else{var r=[a[0],a[1].concat(a[2])];t=r[0],n=r[1]}else{var s=[a[0],a[1].concat(a[2])];t=s[0],n=s[1]}return P(t,n)}if(t=e.substring(0,e.length-1),n=e.substring(e.length-1||0),Number(n)>5)return!1}return P(t,n)}if(5===e.length||4===e.length){var d=e.split(":"),u=d[0],c=d[1];return!(e.startsWith("0")&&1===c.length&&Number(c)>5)&&P(u,c)}return!0}var G=(e,t)=>{var n=e.trim();if(null!==n.match(/^[0-9]{1,2}(\.|:)[0-9]{2}$/)){var i=n.includes(".")?".":":",a=n.split(i),l=Number(a[0]),o=!Number.isNaN(l)&&l>=0&&l<=23,r=Number(a[1]);return!Number.isNaN(r)&&r>=0&&r<=59&&o?g.default(t).hours(l).minutes(r).valueOf():null}return null};var W={"sr-only":"styles_sr-only__BrzYQ","dt-datetimepicker":"styles_dt-datetimepicker__PtoFG",hidden:"styles_hidden__6ySER","datetimepicker-open-container":"styles_datetimepicker-open-container__1dVr5","top-row-container":"styles_top-row-container__cXGjL",closed:"styles_closed__Fqe1r","time-icon":"styles_time-icon__ntgLZ","dropdown-icon":"styles_dropdown-icon__diYYB","close-icon":"styles_close-icon__-MzK5","label-open":"styles_label-open__Gmvov",textbutton:"styles_textbutton__T7wS2",active:"styles_active__4L82E","combobox-left":"styles_combobox-left__Sp4kh","combobox-right":"styles_combobox-right__Hg8kN","departure-or-arrival-container":"styles_departure-or-arrival-container__pJ-Iw","radio-textbutton-label":"styles_radio-textbutton-label__h-zfy","first-radio":"styles_first-radio__FWNoD","radio-textbutton":"styles_radio-textbutton__tsKET","departure-now-button":"styles_departure-now-button__VKMMK","open-button":"styles_open-button__c2B-6","close-button":"styles_close-button__2mfgI","right-edge":"styles_right-edge__29UYw","combobox-container":"styles_combobox-container__CLY9U","combobox-icon":"styles_combobox-icon__-0XPH","date-input-icon":"styles_date-input-icon__KMrj1","time-input-icon":"styles_time-input-icon__qkhC7","datetimepicker-select-container":"styles_datetimepicker-select-container__EVW1l","picker-container":"styles_picker-container__V02r4","combobox-mobile-container":"styles_combobox-mobile-container__u2DSO","mobile-modal-overlay":"styles_mobile-modal-overlay__8vF8L","mobile-modal-content":"styles_mobile-modal-content__fWRgy","top-row":"styles_top-row__h8xy1","modal-title":"styles_modal-title__EA3YD","tab-row":"styles_tab-row__orgwh","radio-tab-label":"styles_radio-tab-label__vIfup","input-row":"styles_input-row__2XXEY","input-container":"styles_input-container__USZlF","time-input-mobile":"styles_time-input-mobile__6e4A5","mobile-input-display":"styles_mobile-input-display__VUMd0","mobile-input-hidden":"styles_mobile-input-hidden__2KIuK",container:"styles_container__ihyhz",suggestion:"styles_suggestion__ZczJa",suggestionHighlighted:"styles_suggestionHighlighted__fzLiW",suggestionsContainerOpen:"styles_suggestionsContainerOpen__ISHXi",input:"styles_input__PAfbH","buttons-row":"styles_buttons-row__-3wsn","ready-button":"styles_ready-button__dH7Qc"};function q(e){var t=e.value,i=e.onChange,a=e.getDisplay,l=e.timeChoices,o=e.id,r=e.label,s=e.icon,d=e.disableTyping,u=e.timeZone,c=e.datePicker,p=e.translationSettings;g.default.tz.setDefault(u);var _=F(n.useState(a(t)),2),m=_[0],f=_[1],b=F(n.useState(!1),2),h=b[0],v=b[1],w=F(n.useState(!0),2),N=w[0],C=w[1],R=F(n.useState(!1),2),P=R[0],q=R[1];n.useEffect((()=>{f(a(t)),c||q(!1)}),[t]);var z=e=>{var t=Number(e);!Number.isNaN(t)&&g.default(t).isValid()&&g.default(t).valueOf()===t&&i(t)};var A=l.map((e=>({value:e.toString(),label:a(e)}))),X=c?A:A.filter((e=>e.label.split(":")[1]%15==0)),$=X.length>0?null==X?void 0:X.reduce(((e,n)=>Math.abs(t-e.value)<Math.abs(t-n.value)?e:n)):void 0,T=`${o}-input`,D=`${o}-label`,Z=x.default.t("invalid-input",p);return y.default.createElement("label",{className:W["combobox-container"],htmlFor:T},y.default.createElement("span",{className:W["sr-only"],id:D},r," ",m),s,y.default.createElement(k.default,{"aria-labelledby":D,ariaLiveMessages:{guidance:e=>void 0===e.isDisabled&&P?Z:".",onChange:()=>"",onFilter:()=>"",onFocus:e=>{var t=e.context,n=e.label;return"menu"===t?n:""}},options:A,inputId:T,onChange:e=>{var n=g.default(t).format("HH:mm"),i=G(m,t);if(h)return null!==i?(n!==m&&e.value===t?z(i):z(e.value),v(!1)):(e.value!==t?z(e.value):f(a(t)),v(!1)),void(c||q(!1));c||q(!1),z(e.value)},components:{IndicatorsContainer:()=>null},className:E.default(W["datetimepicker-select-container"],P&&"datetimepicker-invalid-input"),classNamePrefix:"datetimepicker-select",onInputChange:(e,t)=>{var n=t.action;if("menu-close"===n?C(!0):N&&C(!1),!(d||e&&!function(e){if(e.length<(null==m?void 0:m.length)){var t=O(e);return q(!t),!0}if(/[a-zA-Z§ÄäÖö.-\s]/g.test(e))return!1;var n=O(e.length>5?e.slice(0,-1):e);return q(!n),e.length<=5}(e))&&"input-change"===n){var i=S(e);f(i),v(!0)}},inputValue:!d&&m,value:$,noOptionsMessage:()=>"",filterOption:(e,t)=>{var n;if(c)return!0;var i=5===t.length||4===t.length&&1===t.split(":")[0].length,a=e.label.split(":")[1]%15==0,l=1===(null===(n=t.split(":")[1])||void 0===n?void 0:n.length);if(N&&a)return!0;if(l){var o=1===t.split(":")[0].length?"0".concat(t.split(":")[0]):t.split(":")[0],r=t.split(":")[1],s=e.label.split(":")[0],d=e.label.split(":")[1];if(o===s){var u=10*Number(r),p=Number(d)-u;return p>=0&&p<=9}}return i&&!N?4===t.length?"0".concat(t)===e.label:t===e.label:!!a&&((e,t)=>{var n=t.length<=2?t:t.split(":")[0],i=/^([0-1]?[0-9]|2[0-3])$/.test(n),a=1===n.length?"0".concat(t):t;return!i||e.label.split(":")[0]===a.split(":")[0]})(e,t)},controlShouldRenderValue:d,tabSelectsValue:!1,placeholder:"",onFocus:e=>{d||e.target.select()},onBlur:()=>{if(h){var e=G(m,t);null!==e?(z(e),v(!1)):(f(a(t)),v(!1))}c||q(!1)},onKeyDown:e=>{["ArrowDown","ArrowUp"].includes(e.key)&&v(!1)},isSearchable:!d}))}!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css","top"===n&&i.firstChild?i.insertBefore(a,i.firstChild):i.appendChild(a),a.styleSheet?a.styleSheet.cssText=e:a.appendChild(document.createTextNode(e))}}(".styles_sr-only__BrzYQ:not(:focus, :active) {\n clip: rect(0 0 0 0);\n -webkit-clip-path: inset(50%);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px; }\n\n.styles_dt-datetimepicker__PtoFG {\n border: none;\n padding: 0;\n margin: 0;\n font-size: 15px;\n font-weight: var(--font-weight-medium); }\n .styles_dt-datetimepicker__PtoFG button,\n .styles_dt-datetimepicker__PtoFG label {\n font-size: 1em;\n font-weight: inherit; }\n .styles_dt-datetimepicker__PtoFG label button {\n cursor: pointer;\n font-family: 'Gotham Rounded A', 'Gotham Rounded B', Roboto, Arial, Georgia, serif; }\n .styles_dt-datetimepicker__PtoFG .styles_hidden__6ySER {\n display: none; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-open-container__1dVr5 {\n background-color: #f4f4f5;\n border-radius: 5px;\n padding: 15px; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL {\n display: flex;\n flex-wrap: wrap; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL.styles_closed__Fqe1r {\n margin: 11px 0 6px 18px; }\n @media screen and (max-width: 319px) {\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL {\n margin-left: 14px; } }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL .styles_time-icon__ntgLZ svg {\n width: 18px;\n height: 19px; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL .styles_dropdown-icon__diYYB {\n margin-left: 9px;\n position: relative;\n top: 1px; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL .styles_dropdown-icon__diYYB svg {\n width: 14px;\n height: 10px; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL .styles_close-icon__-MzK5 svg {\n width: 12px;\n height: 12px;\n border-radius: 1px; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL .styles_close-icon__-MzK5 svg path {\n stroke-width: 30; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL label {\n cursor: pointer; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL label.styles_label-open__Gmvov {\n align-items: flex-start;\n display: flex; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL button,\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL label {\n font-size: 1em;\n letter-spacing: -0.5px;\n line-height: 1; }\n .styles_dt-datetimepicker__PtoFG .styles_textbutton__T7wS2 {\n margin-left: 9px;\n margin-top: 1px;\n background: none;\n border: none;\n color: #666;\n padding: 0; }\n @media screen and (min-width: 768px) {\n .styles_dt-datetimepicker__PtoFG .styles_textbutton__T7wS2 {\n margin-left: 14px; } }\n .styles_dt-datetimepicker__PtoFG .styles_textbutton__T7wS2.styles_active__4L82E {\n color: var(--color); }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-left__Sp4kh {\n position: relative;\n margin-right: 4px;\n width: 63%; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-right__Hg8kN {\n position: relative;\n margin-left: 4px;\n width: 37%; }\n .styles_dt-datetimepicker__PtoFG .styles_departure-or-arrival-container__pJ-Iw {\n height: calc(1rem + 20px);\n background-color: #ddd;\n border-radius: 8px;\n display: flex;\n width: calc(5px + 13em); }\n .styles_dt-datetimepicker__PtoFG .styles_radio-textbutton-label__h-zfy {\n color: #333;\n margin: 2px;\n background: none;\n border-radius: 6px;\n padding: 9px 0;\n width: 50%;\n cursor: pointer;\n height: calc(1rem + 16px);\n text-align: center;\n font-weight: 400;\n font-size: 15px;\n line-height: 18px;\n letter-spacing: -0.03em; }\n .styles_dt-datetimepicker__PtoFG .styles_radio-textbutton-label__h-zfy.styles_active__4L82E {\n font-weight: 500;\n background: white; }\n .styles_dt-datetimepicker__PtoFG .styles_radio-textbutton-label__h-zfy:focus-within {\n /* First apply outline that is used in Edge and Firefox */\n outline: 1px dotted #212121;\n /* Then override outline for webkit browsers like Chrome, this has no effect on other browsers */\n outline: 5px auto -webkit-focus-ring-color;\n /* stylelint-disable-line declaration-block-no-duplicate-properties */ }\n .styles_dt-datetimepicker__PtoFG .styles_radio-textbutton-label__h-zfy.styles_first-radio__FWNoD {\n margin: 0;\n display: flex;\n align-items: flex-start; }\n .styles_dt-datetimepicker__PtoFG .styles_radio-textbutton__tsKET {\n clip: rect(0 0 0 0);\n -webkit-clip-path: inset(50%);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px; }\n .styles_dt-datetimepicker__PtoFG .styles_departure-now-button__VKMMK {\n font-family: inherit;\n letter-spacing: -0.02em;\n height: calc(1rem + 18px);\n color: var(--color);\n padding: 8px 0;\n width: 6.6875rem;\n background: white;\n border: 1px solid #888;\n border-radius: 30px;\n margin-left: 11px; }\n .styles_dt-datetimepicker__PtoFG .styles_open-button__c2B-6 {\n display: flex;\n margin-bottom: 0;\n margin-top: -1px;\n padding: 2px 0 2px 0; }\n .styles_dt-datetimepicker__PtoFG button.styles_close-button__2mfgI {\n transition: transform 0.2s;\n position: relative;\n top: -8px;\n right: -8px;\n border: 0;\n font-weight: normal;\n background: none;\n color: var(--color);\n padding: 0;\n line-height: normal; }\n .styles_dt-datetimepicker__PtoFG button.styles_close-button__2mfgI:hover {\n transform: scale(1.2); }\n .styles_dt-datetimepicker__PtoFG .styles_right-edge__29UYw {\n margin-left: auto;\n margin-right: 0;\n position: relative;\n top: -2px; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-container__CLY9U {\n cursor: pointer; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-icon__-0XPH {\n color: var(--color);\n height: 40px;\n position: absolute;\n z-index: 7;\n pointer-events: none; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-icon__-0XPH.styles_date-input-icon__KMrj1 {\n display: flex;\n align-items: center;\n padding: 0;\n margin-left: 14px; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-icon__-0XPH.styles_date-input-icon__KMrj1 svg {\n width: 20px;\n height: 18px; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-icon__-0XPH.styles_time-input-icon__qkhC7 {\n display: flex;\n align-items: center;\n padding: 0;\n margin-left: 8px; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-icon__-0XPH.styles_time-input-icon__qkhC7 svg {\n margin-top: 1px;\n width: 22px;\n height: 22px; }\n .styles_dt-datetimepicker__PtoFG .datetimepicker-invalid-input input {\n color: #f00 !important; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l {\n position: relative;\n height: 40px; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__control {\n cursor: inherit;\n height: 40px;\n border: 1px solid #888; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__value-container {\n padding: 0; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__single-value {\n margin: 0 0 0 47px; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__input {\n background: inherit;\n position: relative;\n margin-left: 40px; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__input input {\n opacity: 1 !important;\n background: inherit;\n box-shadow: none;\n font-stretch: normal;\n font-style: normal;\n line-height: 1.33;\n letter-spacing: -0.5px;\n color: #333;\n font-family: inherit;\n font-size: 15px;\n font-weight: var(--font-weight-medium); }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__input input:focus {\n box-shadow: none;\n outline: none;\n border: none; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__menu {\n z-index: 19;\n padding: 0;\n background: #fff;\n max-height: 250px;\n border-radius: 5px;\n box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.06);\n border: 1px rgba(0, 0, 0, 0.1) solid; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__menu .datetimepicker-select__menu-list {\n max-height: 250px;\n padding: 0; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__menu .datetimepicker-select__menu-list .datetimepicker-select__option {\n height: 50px;\n border-top: 1px solid #ddd;\n padding: 13px 0 0 12px;\n letter-spacing: -0.6px;\n color: #333; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__menu .datetimepicker-select__menu-list .datetimepicker-select__option--is-selected {\n background: inherit; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__menu .datetimepicker-select__menu-list .datetimepicker-select__option--is-focused {\n background: #dfe5e8; }\n .styles_dt-datetimepicker__PtoFG .styles_picker-container__V02r4 {\n margin: 14px 0 0 0;\n display: flex; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-mobile-container__u2DSO {\n flex-grow: 1; }\n\n.styles_mobile-modal-overlay__8vF8L {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.6);\n z-index: 1000; }\n\n.styles_mobile-modal-content__fWRgy {\n font-family: 'Gotham Rounded A', 'Gotham Rounded B', Roboto, Arial, Georgia, serif;\n background: white;\n width: 89%;\n position: absolute;\n left: 5.5%;\n padding: 31px 20px 33px 20px;\n top: 80px;\n border-radius: 5px; }\n .styles_mobile-modal-content__fWRgy .styles_top-row__h8xy1 {\n display: flex;\n justify-content: space-between;\n margin-bottom: 21px; }\n .styles_mobile-modal-content__fWRgy .styles_top-row__h8xy1 .styles_modal-title__EA3YD {\n font-weight: var(--font-weight-medium);\n font-size: 20px;\n line-height: 18px;\n letter-spacing: -0.5px;\n color: #333;\n padding: 6px 0 0 8px; }\n .styles_mobile-modal-content__fWRgy .styles_top-row__h8xy1 .styles_departure-now-button__VKMMK {\n background-color: white;\n font-family: inherit;\n padding: 5px 15px;\n border: 1px solid #888;\n border-radius: 50px;\n font-weight: var(--font-weight-medium);\n font-size: 15px;\n line-height: 18px;\n letter-spacing: -0.02em;\n color: var(--color); }\n .styles_mobile-modal-content__fWRgy .styles_tab-row__orgwh {\n display: flex;\n border: 2px solid #ddd;\n border-radius: 5px;\n margin-bottom: 16px;\n background-color: #ddd; }\n .styles_mobile-modal-content__fWRgy .styles_tab-row__orgwh .styles_radio-tab-label__vIfup {\n padding: 9px 0;\n font-size: 15px;\n line-height: 18px;\n letter-spacing: -0.5px;\n border-radius: 3px;\n font-weight: normal;\n width: 50%;\n text-align: center;\n color: #333; }\n .styles_mobile-modal-content__fWRgy .styles_tab-row__orgwh .styles_radio-tab-label__vIfup.styles_active__4L82E {\n font-weight: var(--font-weight-medium);\n background-color: #fff; }\n .styles_mobile-modal-content__fWRgy .styles_tab-row__orgwh .styles_radio-textbutton__tsKET {\n clip: rect(0 0 0 0);\n -webkit-clip-path: inset(50%);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY {\n display: flex;\n margin-bottom: 25px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY label:first-child {\n flex-basis: 60%;\n margin-right: 10px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY label:nth-child(2) {\n flex-basis: 40%; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF {\n border: 1px solid #888;\n border-radius: 5px;\n display: flex;\n align-items: center;\n height: 40px;\n line-height: 1.5;\n font-size: 100%; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF:focus-within {\n background: rgba(0, 122, 201, 0.06);\n border: 2px solid var(--color); }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_combobox-icon__-0XPH {\n height: 18px;\n font-size: 18px;\n padding: 0 0 0 10px;\n border: none;\n position: relative;\n top: 3px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_combobox-icon__-0XPH.styles_time-input-icon__qkhC7 > svg {\n height: 20px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .mobile-datetimepicker-invalid-input {\n color: #f00 !important; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_time-input-mobile__6e4A5 {\n font-family: inherit;\n box-shadow: none;\n font-size: 18px;\n letter-spacing: -0.5px;\n line-height: 20px;\n font-weight: var(--font-weight-medium);\n border: none;\n outline: none;\n background: none;\n width: 50px;\n margin-left: 10px;\n color: #333;\n height: 1.5265rem; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_mobile-input-display__VUMd0 {\n position: relative;\n left: 10px;\n border: none;\n background: inherit;\n box-shadow: none;\n font-family: inherit;\n font-weight: var(--font-weight-medium);\n font-stretch: normal;\n font-style: normal;\n font-size: 16px;\n line-height: 1.33;\n letter-spacing: -0.5px;\n color: #333; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_mobile-input-display__VUMd0:focus {\n outline: none;\n box-shadow: none;\n background: none; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_mobile-input-hidden__2KIuK {\n font-size: 16px;\n margin-bottom: 12px;\n height: 0;\n width: 0;\n background: inherit;\n color: transparent;\n outline: none;\n box-shadow: none;\n border: none; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_mobile-input-hidden__2KIuK:focus {\n outline: none;\n box-shadow: none; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz {\n position: absolute;\n width: calc((100% - 50px) * 0.6);\n height: 25px;\n font-size: 15px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_suggestion__ZczJa {\n list-style: none;\n font-size: 16px;\n font-style: normal;\n font-weight: normal;\n line-height: 49px;\n height: 50px;\n margin: 0;\n padding: 0 0 0 16px;\n color: rgba(0, 0, 0, 0.87);\n background: white; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_suggestionHighlighted__fzLiW {\n background: #dfe5e8; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_suggestionsContainerOpen__ISHXi {\n position: absolute;\n z-index: 19;\n max-height: 250px;\n overflow-x: hidden;\n overflow-y: scroll;\n border-radius: 5px;\n box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.06);\n border: 1px rgba(0, 0, 0, 0.1) solid;\n top: 42px;\n left: -2px;\n width: 100%;\n font-size: 16px;\n line-height: 1;\n color: rgba(0, 0, 0, 0.87); }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_suggestionsContainerOpen__ISHXi ul {\n padding: 0;\n margin: 0; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_input__PAfbH {\n box-shadow: none;\n border: none;\n background: none;\n font-size: 16px;\n font-weight: var(--font-weight-medium);\n height: 25px;\n display: inline-block;\n font-family: inherit;\n line-height: 1.33;\n padding-left: 46px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_input__PAfbH:focus {\n outline: none;\n border: none;\n background: none; }\n .styles_mobile-modal-content__fWRgy .styles_buttons-row__-3wsn {\n display: flex;\n flex-direction: column;\n font-size: 16px;\n font-weight: var(--font-weight-medium); }\n .styles_mobile-modal-content__fWRgy .styles_buttons-row__-3wsn button {\n background-color: white;\n font-family: inherit;\n font-weight: var(--font-weight-medium);\n font-size: 16px;\n letter-spacing: -0.02em;\n width: 100%;\n border-radius: 50px;\n height: 40px;\n color: var(--color);\n border: 1px solid #888; }\n .styles_mobile-modal-content__fWRgy .styles_buttons-row__-3wsn button.styles_ready-button__dH7Qc {\n color: white;\n background-color: var(--color);\n border: none;\n margin-bottom: 10px; }\n"),"production"!==process.env.NODE_ENV&&(q.propTypes={value:b.default.number.isRequired,onChange:b.default.func.isRequired,getDisplay:b.default.func.isRequired,timeChoices:b.default.arrayOf(b.default.number).isRequired,id:b.default.string.isRequired,label:b.default.node.isRequired,icon:b.default.node.isRequired,disableTyping:b.default.bool,timeZone:b.default.string,datePicker:b.default.bool,translationSettings:b.default.shape({lng:b.default.string.isRequired})}),q.defaultProps={disableTyping:!1,timeZone:"Europe/Helsinki",datePicker:!1,translationSettings:{lng:"fi"}};var z={de:{today:"Heute",tomorrow:"Morgen","accessible-close":"Schließe die Auswahl","accessible-closed":"Auswahl geschlossen","accessible-open":"Öffne die Auswahl","accessible-opened":"Auswahl geöffnet","accessible-title":"Datum und Uhrzeitauswahl",arrival:"Ankunft",date:"Datum",departure:"Abfahrt","departure-now":"Abfahrt jetzt","choose-time":"Zeit wählen",ready:"Fertig",time:"Zeit",cancel:"Abbrechen"},en:{today:"Today",tomorrow:"Tomorrow","accessible-close":"Close the picker","accessible-closed":"Timepicker closed","accessible-open":"Open the picker","accessible-opened":"Timepicker opened","accessible-title":"Date and timepicker","accessible-update-instructions":"Changing time parameters will trigger a new search.",arrival:"Arrival",date:"Date",departure:"Departure","departure-now":"Leaving now",time:"Time","choose-time":"Choose time",ready:"Ready",cancel:"Cancel","invalid-input":"The time you entered is invalid"},fi:{today:"Tänään",tomorrow:"Huomenna","accessible-close":"Sulje valitsin","accessible-closed":"Valitsin suljettu","accessible-open":"Avaa valitsin","accessible-opened":"Valitsin avattu","accessible-title":"Aika- ja päivämäärävalitsin","accessible-update-instructions":"Aikavalintojen muuttaminen laukaisee uuden haun.",arrival:"Perillä",date:"Päivä",departure:"Lähtöaika","departure-now":"Lähtö nyt",time:"Aika","choose-time":"Valitse aika",ready:"Valmis",cancel:"Peruuta","invalid-input":"Syöttämäsi aika on virheellinen"},pl:{today:"Dziś",tomorrow:"Jutro","accessible-close":"Zamknij wybornik","accessible-closed":"Zamknięto wybornik","accessible-open":"Otwórz wybornik","accessible-opened":"Otwarto wybornik","accessible-title":"Wybór daty i godziny","accessible-update-instructions":"Zmiana wybranej godziny wywoła nowe wyszukiwanie.",arrival:"Przyjazd",date:"Data",departure:"Wyjazd","departure-now":"Wyjeżdżam teraz",time:"Godzina","choose-time":"Wybierz godzinę",ready:"Gotowe",cancel:"Anuluj","invalid-input":"Wprowadzona godzina jest nieprawidłowa"},sv:{today:"I dag",tomorrow:"I morgon","accessible-close":"Stäng väljaren","accessible-closed":"Väljaren stängde","accessible-open":"Öppna väljaren","accessible-opened":"Väljaren öppnade","accessible-title":"Tid- och datumväljaren","accessible-update-instructions":"Om du ändrar tiderna, startas en ny sökning automatiskt.",arrival:"Anländer",date:"Datum",departure:"Avgångstid","departure-now":"Avgår nu",time:"Tid","choose-time":"Välj tid",ready:"Färdig",cancel:"Avbryt","invalid-input":"Tiden du angav är felaktig"}};function A(){var e=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(e)}function X(e,t){if(null==e)return{};var n,i,a=function(e,t){if(null==e)return{};var n,i,a={},l=Object.keys(e);for(i=0;i<l.length;i++)n=l[i],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(i=0;i<l.length;i++)n=l[i],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var $=["ref"];function T(e){var t=e.value,i=e.getDisplay,a=e.onChange,l=e.itemCount,o=e.startTime,r=e.id,s=e.label,d=e.icon,u=e.timeZone;g.default.tz.setDefault(u);var c=F(n.useState(!1),2),p=c[0],_=c[1],m=n.useRef(null),f=Array(l).fill().map(((e,t)=>g.default(o).add(t,"day").valueOf())),b=f.map((e=>t-e)).findIndex((e=>e<6e4));n.useLayoutEffect((()=>{p&&m.current&&(m.current.scrollTop=50*b)}),[t,p]);var h=!(navigator.userAgent.toLowerCase().indexOf("android")>-1),v=`${r}-input`,x=`${r}-label`;return y.default.createElement("label",{className:W["input-container"],htmlFor:v},y.default.createElement("span",null,d),y.default.createElement("span",{className:W["sr-only"],id:x},s),h?y.default.createElement("select",{className:W["mobile-input-display"],onChange:e=>a(Number(e.target.value)),value:t},f.map((e=>y.default.createElement("option",{key:e,value:e},i(e))))):y.default.createElement(C.default,{id:r,suggestions:f,getSuggestionValue:e=>e.toString(),renderSuggestion:e=>i(e),onSuggestionsFetchRequested:()=>null,shouldRenderSuggestions:()=>!0,inputProps:{value:i(t),onChange:(e,t)=>{var n=t.newValue;a(Number(n))},onFocus:()=>{_(!0)},onBlur:()=>{_(!1)},"aria-labelledby":x,"aria-autocomplete":"none",readOnly:!0},focusInputOnSuggestionClick:!1,onSuggestionsClearRequested:()=>null,renderSuggestionsContainer:e=>{var t=e.containerProps,n=e.children,i=t.ref,a=X(t,$);return y.default.createElement("div",Object.assign({tabIndex:"-1"},a,{ref:e=>{e&&(m.current=e,i(e))}}),n)},theme:W}))}function D(e){var t=e.value,i=e.getDisplay,a=e.onChange,l=e.id,o=e.label,r=e.icon,s=e.timeZone,d=F(n.useState(i(t)),2),u=d[0],c=d[1],p=F(n.useState(!0),2),_=p[0],m=p[1];g.default.tz.setDefault(s);var f=`${l}-input`,b=`${l}-label`,h=n.useRef(null);n.useLayoutEffect((()=>{h.current&&h.current.focus()}),[]);var v=!_;return y.default.createElement("label",{className:W["input-container"],htmlFor:f},y.default.createElement("span",null,r),y.default.createElement("span",{className:W["sr-only"],id:b},o),y.default.createElement("input",{id:f,inputMode:"numeric",type:"text",maxLength:"6",className:E.default(W["time-input-mobile"],v&&"mobile-datetimepicker-invalid-input"),value:u,onFocus:e=>{e.target.setSelectionRange(0,0)},onChange:e=>{var n=e.target.value.replace(".",":"),i=O(n);if(m(i),n.match(/[0-9]{3}:[0-9]{2}/)&&n.slice(1)===u&&(n=n.charAt(0)),!(n.length>5)){var l=S(n);c(l);var o=G(l,t);o&&a(o)}},ref:h}))}function Z(e){var t=e.departureOrArrival,i=e.onNowClick,a=e.lang,l=e.color,o=e.timeZone,r=e.onSubmit,s=e.onCancel,d=e.timestamp,u=e.getTimeDisplay,c=e.dateSelectItemCount,p=e.getDateDisplay,_=e.fontWeights;g.default.tz.setDefault(o);var m={lng:a},f=F(n.useState(d),2),b=f[0],h=f[1],k=F(n.useState(t),2),E=k[0],C=k[1];var R=F(n.useState(v.default("datetimepicker-")),1)[0],S=g.default().startOf("day").hour(g.default(b).hour()).minute(g.default(b).minute()).valueOf();return y.default.createElement(N.default,{appElement:document?document.querySelector("#app"):void 0,isOpen:!0,className:W["mobile-modal-content"],overlayClassName:W["mobile-modal-overlay"]},y.default.createElement("div",{style:{"--color":`${l}`,"--font-weight-medium":_.medium}},y.default.createElement("div",{className:W["top-row"]},y.default.createElement("h3",{className:W["modal-title"]},x.default.t("choose-time",m)),y.default.createElement("button",{type:"button",className:W["departure-now-button"],onClick:i},x.default.t("departure-now",m))),y.default.createElement("div",{className:W["tab-row"]},y.default.createElement("label",{htmlFor:`${R}-modal-departure`,className:`${W["radio-tab-label"]}\n ${W["departure"===E?"active":void 0]}`},x.default.t("departure",m),y.default.createElement("input",{id:`${R}-modal-departure`,name:"departureOrArrival",type:"radio",value:"departure",className:W["radio-textbutton"],onChange:()=>{C("departure")},checked:"departure"===E})),y.default.createElement("label",{htmlFor:`${R}-modal-arrival`,className:`${W["radio-tab-label"]}\n ${W["arrival"===E?"active":void 0]}`},x.default.t("arrival",m),y.default.createElement("input",{id:`${R}-modal-arrival`,name:"departureOrArrival",type:"radio",value:"arrival",className:W["radio-textbutton"],onChange:()=>{C("arrival")},checked:"arrival"===E}))),y.default.createElement("div",{className:W["input-row"]},y.default.createElement(T,{value:b,getDisplay:p,onChange:h,itemCount:c,startTime:S,id:`${R}-date`,label:x.default.t("date",m),icon:y.default.createElement("span",{className:`${W["combobox-icon"]} ${W["date-input-icon"]}`},y.default.createElement(w.default,{img:"calendar",color:l})),timeZone:o}),y.default.createElement(D,{value:b,getDisplay:u,onChange:h,id:`${R}-time`,label:x.default.t("time",m),icon:y.default.createElement("span",{className:`${W["combobox-icon"]} ${W["time-input-icon"]}`},y.default.createElement(w.default,{img:"time",color:l})),timeZone:o})),y.default.createElement("div",{className:W["buttons-row"]},y.default.createElement("button",{type:"button",className:W["ready-button"],onClick:()=>r(b,E)},x.default.t("ready",m)),y.default.createElement("button",{type:"button",className:W["cancel-button"],onClick:s},x.default.t("cancel",m)))))}function j(e){var t=e.timestamp,i=e.onTimeChange,a=e.onDateChange,l=e.departureOrArrival,o=e.onNowClick,r=e.onDepartureClick,s=e.onArrivalClick,d=e.embedWhenClosed,u=e.embedWhenOpen,c=e.lang,p=e.color,_=e.timeZone,m=e.onModalSubmit,f=e.fontWeights,b=e.serviceTimeRange,h=e.onOpen,k=e.onClose,E=e.openPicker;g.default.tz.setDefault(_);var N=F(n.useState(E||!1),2),C=N[0],R=N[1],S=F(n.useState(t||g.default().valueOf()),2),P=S[0],O=S[1],G=F(n.useState(null),2),X=G[0],$=G[1],T=F(n.useState(v.default("datetimepicker-")),1)[0],D=F(n.useState(A()&&function(){if("undefined"==typeof window||null===window)return!1;var e=document.createElement("input");return e.type="date","date"===e.type&&(e.type="time","time"===e.type)}()),1)[0],j=n.useRef(),V=n.useRef(),M=n.useRef(),I={lng:c};n.useEffect((()=>{Object.keys(z).forEach((e=>x.default.addResourceBundle(e,"translation",z[c])))}),[]),n.useEffect((()=>{g.default.locale(c)}),[c]);var L=null===t;n.useEffect((()=>{L?O(g.default().valueOf()):(X&&(clearInterval(X),$(null)),O(t))}),[t]),n.useEffect((()=>{if(L){X&&clearInterval(X);var e=setInterval((()=>{var t=g.default().valueOf();g.default(P).isSame(t,"minute")||(clearInterval(e),$(null),O(t))}),5e3);return $(e),()=>clearInterval(e)}}),[P]);var H=n.useRef();n.useEffect((()=>{H.current=C}));for(var Y=e=>{var t,n=g.default(e);return t=`${(t=n.isSame(g.default(),"day")?x.default.t("today",I):n.isSame(g.default().add(1,"day"),"day")?x.default.t("tomorrow",I):n.format("dd D.M.")).charAt(0).toUpperCase()}${t.slice(1)}`},U=e=>g.default(e).format("HH:mm"),K=g.default(P),B=g.default(P).startOf("day").valueOf(),J=[],Q=g.default(B);Q.isSame(B,"day");)J.push(Q.valueOf()),A()?Q.add(15,"minutes"):Q.add(1,"minutes");if(null===t){var ee=3e5,te=Math.ceil(P/ee)*ee,ne=Array(7).fill().map(((e,t)=>te+t*ee)),ie=J.map((e=>P-e)).findIndex((e=>e<=0));J.splice(ie,0,...ne),J=Array.from(new Set(J))}var ae=g.default().startOf("day").hour(K.hour()).minute(K.minute()).valueOf(),le=Array(b).fill().map(((e,t)=>g.default(ae).add(t,"day").valueOf()));function oe(){M.current&&(M.current.innerHTML=x.default.t("accessible-closed",I),setTimeout((()=>{M.current.innerHTML=null}),100))}return y.default.createElement("fieldset",{className:W["dt-datetimepicker"],id:`${T}-root`,style:{"--color":`${p}`,"--font-weight-medium":f.medium}},y.default.createElement("legend",{className:W["sr-only"]},x.default.t("accessible-title",I)),y.default.createElement("span",{className:W["sr-only"]},x.default.t("accessible-update-instructions",I)),y.default.createElement("div",{className:C?`${W.hidden} datetimepicker-top-row`:`${W["top-row-container"]} ${W.closed} datetimepicker-top-row`},y.default.createElement("label",{className:W["label-open"],htmlFor:`${T}-open`},y.default.createElement("span",{className:W["time-icon"]},y.default.createElement(w.default,{img:"time",color:p})),y.default.createElement("span",{className:W["sr-only"]},x.default.t("accessible-open",I)),y.default.createElement("span",{role:"alert",className:W["sr-only"],ref:M}),y.default.createElement("button",{id:`${T}-open`,type:"button",className:`${W.textbutton} ${W.active} ${W["open-button"]}`,"aria-controls":`${T}-root`,"aria-expanded":"false",onClick:()=>{R(!0),M.current&&(M.current.innerHTML=x.default.t("accessible-opened",I),setTimeout((()=>{M.current.innerHTML=null}),100)),h&&h()},ref:j},y.default.createElement("span",null,L&&"departure"===l?x.default.t("departure-now",I):y.default.createElement(y.default.Fragment,null,x.default.t("departure"===l?"departure":"arrival",I),` ${g.default().isSame(g.default(P),"day")?"":Y(P).toLowerCase()} ${U(P)}`)),y.default.createElement("span",{className:W["dropdown-icon"]},y.default.createElement(w.default,{img:"arrow-dropdown",color:p})))),y.default.createElement("span",{className:W["right-edge"]},d)),y.default.createElement("div",null),D?C&&y.default.createElement(Z,{departureOrArrival:l,onNowClick:()=>{R(!1),oe(),o()},lang:c,color:p,onSubmit:(e,t)=>{m(e,t),R(!1),oe()},onCancel:()=>{R(!1),oe(),k&&k()},getTimeDisplay:U,timeZone:_,timestamp:P,getDateDisplay:Y,dateSelectItemCount:b,getDisplay:U,fontWeights:f}):y.default.createElement(y.default.Fragment,null,y.default.createElement("div",{className:`${W["datetimepicker-open-container"]} ${C?"":W.hidden}`},y.default.createElement("div",{className:C?`${W["top-row-container"]} datetimepicker-top-row`:`${W.hidden} datetimepicker-top-row`}," ",y.default.createElement("span",{role:"alert",className:W["sr-only"],ref:M}),y.default.createElement("span",null),y.default.createElement("span",{className:W["departure-or-arrival-container"]},y.default.createElement("label",{htmlFor:`${T}-departure`,className:`${W["radio-textbutton-label"]}\n ${W["departure"===l?"active":void 0]}`},x.default.t("departure",I),y.default.createElement("input",{id:`${T}-departure`,name:"departureOrArrival",type:"radio",value:"departure",className:W["radio-textbutton"],onChange:()=>{r()},checked:"departure"===l})),y.default.createElement("label",{htmlFor:`${T}-arrival`,className:`${W["radio-textbutton-label"]}\n ${W["arrival"===l?"active":void 0]}`},x.default.t("arrival",I),y.default.createElement("input",{id:`${T}-arrival`,name:"departureOrArrival",type:"radio",value:"arrival",className:W["radio-textbutton"],onChange:()=>{s()},checked:"arrival"===l}))),y.default.createElement("button",{id:`${T}-now`,type:"button",className:W["departure-now-button"],onClick:()=>{R(!1),oe(),k&&k(),o()},ref:V},x.default.t("departure-now",I)),y.default.createElement("span",{className:W["right-edge"]},y.default.createElement("button",{type:"button",className:W["close-button"],"aria-controls":`${T}-root`,"aria-expanded":"true",onClick:()=>{R(!1),oe(),k&&k()}},y.default.createElement("span",{className:W["close-icon"]},y.default.createElement(w.default,{img:"close",color:p})),y.default.createElement("span",{className:W["sr-only"]},x.default.t("accessible-close",I))))),y.default.createElement("div",{className:C?`${W["picker-container"]}`:`${W.hidden} datetimepicker-top-row`},y.default.createElement("span",{className:W["combobox-left"]},y.default.createElement(q,{value:P,onChange:e=>{a(e)},getDisplay:Y,timeChoices:le,validate:()=>null,icon:y.default.createElement("span",{className:`${W["combobox-icon"]} ${W["date-input-icon"]}`},y.default.createElement(w.default,{img:"calendar",color:p})),id:`${T}-date`,label:x.default.t("date",I),disableTyping:!0,timeZone:_,datePicker:!0})),y.default.createElement("span",{className:W["combobox-right"]},y.default.createElement(q,{value:P,onChange:e=>{i(e)},getDisplay:U,timeChoices:J,icon:y.default.createElement("span",{className:`${W["combobox-icon"]} ${W["time-input-icon"]}`},y.default.createElement(w.default,{img:"time",color:p})),id:`${T}-time`,label:x.default.t("time",I),timeZone:_,translationSettings:I})))),y.default.createElement("span",{className:C?"":W.hidden},u),y.default.createElement("div",{className:C?"datetimepicker-bottom-row-open":""})))}function V(e){var t=e.realtime,i=e.initialArriveBy,a=e.initialTimestamp,l=e.onDepartureClick,o=e.onArrivalClick,r=e.onTimeChange,s=e.onDateChange,d=e.onNowClick,u=e.embedWhenClosed,c=e.embedWhenOpen,p=e.lang,_=e.color,m=e.timeZone,f=e.fontWeights,b=e.serviceTimeRange,v=e.onOpen,x=e.onClose,w=e.openPicker;g.default.locale(p),g.default.tz.setDefault(m);var k=t?null:g.default().valueOf(),E=F(n.useState(a?1e3*a:k),2),N=E[0],C=E[1],R=F(n.useState(!0===i?"arrival":"departure"),2),S=R[0],P=R[1];n.useEffect((()=>{var e=null===N&&void 0===a,t=null===N||void 0===a,n=Math.round(N/1e3)===a;!e&&(t||!n)&&C(void 0===a?null:1e3*a),!i==("arrival"===S)&&P(!0===i?"arrival":"departure")}),[a,i]);var O=h.default((e=>{if(null===e)return C(g.default().valueOf()),void r(Math.round(g.default().valueOf()/1e3),"arrival"===S);C(e),r(Math.round(e/1e3),"arrival"===S)}),10),G=h.default((e=>{if(null===e)return C(g.default().valueOf()),void s(Math.round(g.default().valueOf()/1e3),"arrival"===S);C(e),s(Math.round(e/1e3),"arrival"===S)}),10);return y.default.createElement(j,{timestamp:N,onTimeChange:O,onDateChange:G,departureOrArrival:S,onNowClick:()=>{P("departure");var e=t?null:g.default().valueOf();C(e),d(Math.round(e/1e3))},onDepartureClick:()=>{var e=!1,t=N;if(null===N){var n=g.default().valueOf();C(n),t=n,e=!0}"departure"!==S&&(P("departure"),e=!0),e&&l(Math.round(t/1e3))},onArrivalClick:()=>{var e=!1,t=N;if(null===N){var n=g.default().valueOf();C(n),t=n,e=!0}"arrival"!==S&&(P("arrival"),e=!0),e&&o(Math.round(t/1e3))},embedWhenClosed:u,embedWhenOpen:c,lang:p,color:_,timeZone:m,onModalSubmit:(e,t)=>{C(e),P(t),r(Math.round(e/1e3),"arrival"===t,!0)},fontWeights:f,serviceTimeRange:b,onOpen:v,onClose:x,openPicker:w})}"production"!==process.env.NODE_ENV&&(T.propTypes={value:b.default.number.isRequired,getDisplay:b.default.func.isRequired,onChange:b.default.func.isRequired,itemCount:b.default.number.isRequired,startTime:b.default.number.isRequired,id:b.default.string.isRequired,label:b.default.string.isRequired,icon:b.default.node,dateTimeCombined:b.default.bool,timeZone:b.default.string}),T.defaultProps={icon:null,dateTimeCombined:!1,timeZone:"Europe/Helsinki"},"production"!==process.env.NODE_ENV&&(D.propTypes={value:b.default.number.isRequired,getDisplay:b.default.func.isRequired,onChange:b.default.func.isRequired,id:b.default.string.isRequired,label:b.default.string.isRequired,icon:b.default.node,timeZone:b.default.string}),D.defaultProps={icon:null,timeZone:"Europe/Helsinki"},g.default.locale("en"),x.default.init({lng:"en",resources:{}}),Object.keys(z).forEach((e=>x.default.addResourceBundle(e,"translation",z[e]))),"production"!==process.env.NODE_ENV&&(Z.propTypes={timeZone:b.default.string,departureOrArrival:b.default.oneOf(["departure","arrival"]).isRequired,onNowClick:b.default.func.isRequired,lang:b.default.string.isRequired,color:b.default.string,onSubmit:b.default.func.isRequired,onCancel:b.default.func.isRequired,timestamp:b.default.number.isRequired,getTimeDisplay:b.default.func.isRequired,dateSelectItemCount:b.default.number.isRequired,getDateDisplay:b.default.func.isRequired,fontWeights:b.default.shape({medium:b.default.number.isRequired}).isRequired}),Z.defaultProps={color:"#007ac9",timeZone:"Europe/Helsinki"},g.default.locale("en"),x.default.init({lng:"fi",fallbackLng:"fi",defaultNS:"translation",interpolation:{escapeValue:!1}}),"production"!==process.env.NODE_ENV&&(j.propTypes={timestamp:b.default.number,timeZone:b.default.string,onTimeChange:b.default.func.isRequired,onDateChange:b.default.func.isRequired,departureOrArrival:b.default.oneOf(["departure","arrival"]).isRequired,onNowClick:b.default.func.isRequired,onDepartureClick:b.default.func.isRequired,onArrivalClick:b.default.func.isRequired,embedWhenClosed:b.default.node,embedWhenOpen:b.default.node,lang:b.default.string.isRequired,color:b.default.string,onModalSubmit:b.default.func.isRequired,fontWeights:b.default.shape({medium:b.default.number.isRequired}).isRequired,serviceTimeRange:b.default.number.isRequired,onOpen:b.default.func,onClose:b.default.func,openPicker:b.default.bool}),j.defaultProps={timestamp:null,embedWhenClosed:null,embedWhenOpen:null,color:"#007ac9",timeZone:"Europe/Helsinki",onOpen:null,onClose:null,openPicker:void 0},"production"!==process.env.NODE_ENV&&(V.propTypes={realtime:b.default.bool,initialTimestamp:b.default.number,initialArriveBy:b.default.bool,onDepartureClick:b.default.func.isRequired,onArrivalClick:b.default.func.isRequired,onTimeChange:b.default.func.isRequired,onDateChange:b.default.func.isRequired,onNowClick:b.default.func.isRequired,embedWhenClosed:b.default.node,embedWhenOpen:b.default.node,lang:b.default.string,color:b.default.string,timeZone:b.default.string,fontWeights:b.default.shape({medium:b.default.number}),serviceTimeRange:b.default.number,onOpen:b.default.func,onClose:b.default.func,openPicker:b.default.bool}),V.defaultProps={realtime:!1,initialArriveBy:void 0,initialTimestamp:void 0,embedWhenClosed:null,embedWhenOpen:null,lang:"en",color:"#007ac9",timeZone:"Europe/Helsinki",fontWeights:{medium:500},onOpen:null,onClose:null,openPicker:void 0,serviceTimeRange:30},e.default=V,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("prop-types"),require("react"),require("moment-timezone"),require("lodash/debounce"),require("moment/locale/fi"),require("moment/locale/sv"),require("moment/locale/de"),require("lodash/uniqueId"),require("i18next"),require("@digitransit-component/digitransit-component-icon"),require("react-select"),require("classnames"),require("react-modal"),require("react-autosuggest")):"function"==typeof define&&define.amd?define(["exports","prop-types","react","moment-timezone","lodash/debounce","moment/locale/fi","moment/locale/sv","moment/locale/de","lodash/uniqueId","i18next","@digitransit-component/digitransit-component-icon","react-select","classnames","react-modal","react-autosuggest"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@digitransit-component/digitransit-component-datetimepicker"]={},e.PropTypes,e.React,e.moment,e.debounce,null,null,null,e.uniqueId,e.i18next,e.Icon,e.Select,e.cx,e.ReactModal,e.Autosuggest)}(this,(function(e,t,n,i,l,a,o,r,s,d,u,c,p,_,m){"use strict";function f(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var b=f(t),y=f(n),g=f(i),h=f(l),v=f(s),x=f(d),w=f(u),k=f(c),E=f(p),N=f(_),C=f(m);function R(e){let t=e;return 3===t.length&&t.split("").every((e=>Number.isInteger(Number(e))))&&(t=Number(t.slice(0,2))<=23?`${t.slice(0,2)}:${t[2]}`:`${t[0]}:${t.slice(1)}`),t}const F=(e,t)=>{const n=!Number.isNaN(e)&&e>=0&&e<=23,i=2===t.length?!Number.isNaN(t)&&Number(t)>=0&&Number(t<=59):!Number.isNaN(t)&&Number(t)>=0&&Number(t<=5);return n&&i};function P(e){if(e.split(":").length>2)return!1;if(e.length<=2)return!0;if(3===e.length){let t,n;if(e.includes(":"))[t,n]=e.split(":");else{if(!e.startsWith("0")){const i=e.split("");return 1===Number(i[0])||2===Number(i[0])&&Number(i[1]<=3)?[t,n]=[i[0].concat(i[1]),i[2]]:[t,n]=[i[0],i[1].concat(i[2])],F(t,n)}if(t=e.substring(0,e.length-1),n=e.substring(e.length-1||0),Number(n)>5)return!1}return F(t,n)}if(5===e.length||4===e.length){const t=e.split(":"),n=t[0],i=t[1];return!(e.startsWith("0")&&1===i.length&&Number(i)>5)&&F(n,i)}return!0}const S=(e,t)=>{const n=e.trim();if(null!==n.match(/^[0-9]{1,2}(\.|:)[0-9]{2}$/)){const e=n.includes(".")?".":":",i=n.split(e),l=Number(i[0]),a=!Number.isNaN(l)&&l>=0&&l<=23,o=Number(i[1]);if(!(!Number.isNaN(o)&&o>=0&&o<=59)||!a)return null;return g.default(t).hours(l).minutes(o).valueOf()}return null};var O={"sr-only":"styles_sr-only__BrzYQ","dt-datetimepicker":"styles_dt-datetimepicker__PtoFG",hidden:"styles_hidden__6ySER","datetimepicker-open-container":"styles_datetimepicker-open-container__1dVr5","top-row-container":"styles_top-row-container__cXGjL",closed:"styles_closed__Fqe1r","time-icon":"styles_time-icon__ntgLZ","dropdown-icon":"styles_dropdown-icon__diYYB","close-icon":"styles_close-icon__-MzK5","label-open":"styles_label-open__Gmvov",textbutton:"styles_textbutton__T7wS2",active:"styles_active__4L82E","combobox-left":"styles_combobox-left__Sp4kh","combobox-right":"styles_combobox-right__Hg8kN","departure-or-arrival-container":"styles_departure-or-arrival-container__pJ-Iw","radio-textbutton-label":"styles_radio-textbutton-label__h-zfy","first-radio":"styles_first-radio__FWNoD","radio-textbutton":"styles_radio-textbutton__tsKET","departure-now-button":"styles_departure-now-button__VKMMK","open-button":"styles_open-button__c2B-6","close-button":"styles_close-button__2mfgI","right-edge":"styles_right-edge__29UYw","combobox-container":"styles_combobox-container__CLY9U","combobox-icon":"styles_combobox-icon__-0XPH","date-input-icon":"styles_date-input-icon__KMrj1","time-input-icon":"styles_time-input-icon__qkhC7","datetimepicker-select-container":"styles_datetimepicker-select-container__EVW1l","picker-container":"styles_picker-container__V02r4","combobox-mobile-container":"styles_combobox-mobile-container__u2DSO","mobile-modal-overlay":"styles_mobile-modal-overlay__8vF8L","mobile-modal-content":"styles_mobile-modal-content__fWRgy","top-row":"styles_top-row__h8xy1","modal-title":"styles_modal-title__EA3YD","tab-row":"styles_tab-row__orgwh","radio-tab-label":"styles_radio-tab-label__vIfup","input-row":"styles_input-row__2XXEY","input-container":"styles_input-container__USZlF","time-input-mobile":"styles_time-input-mobile__6e4A5","mobile-input-display":"styles_mobile-input-display__VUMd0","mobile-input-hidden":"styles_mobile-input-hidden__2KIuK",container:"styles_container__ihyhz",suggestion:"styles_suggestion__ZczJa",suggestionHighlighted:"styles_suggestionHighlighted__fzLiW",suggestionsContainerOpen:"styles_suggestionsContainerOpen__ISHXi",input:"styles_input__PAfbH","buttons-row":"styles_buttons-row__-3wsn","ready-button":"styles_ready-button__dH7Qc"};function G({value:e,onChange:t,getDisplay:i,timeChoices:l,id:a,label:o,icon:r,disableTyping:s,timeZone:d,datePicker:u,translationSettings:c}){g.default.tz.setDefault(d);const[p,_]=n.useState(i(e)),[m,f]=n.useState(!1),[b,h]=n.useState(!0),[v,w]=n.useState(!1);n.useEffect((()=>{_(i(e)),u||w(!1)}),[e]);const N=e=>{const n=Number(e);!Number.isNaN(n)&&g.default(n).isValid()&&g.default(n).valueOf()===n&&t(n)};const C=l.map((e=>({value:e.toString(),label:i(e)}))),F=u?C:C.filter((e=>e.label.split(":")[1]%15==0)),G=F.length>0?null==F?void 0:F.reduce(((t,n)=>Math.abs(e-t.value)<Math.abs(e-n.value)?t:n)):void 0,W=`${a}-input`,q=`${a}-label`,z=x.default.t("invalid-input",c);return y.default.createElement("label",{className:O["combobox-container"],htmlFor:W},y.default.createElement("span",{className:O["sr-only"],id:q},o," ",p),r,y.default.createElement(k.default,{"aria-labelledby":q,ariaLiveMessages:{guidance:e=>void 0===e.isDisabled&&v?z:".",onChange:()=>"",onFilter:()=>"",onFocus:({context:e,label:t})=>"menu"===e?t:""},options:C,inputId:W,onChange:t=>{const n=g.default(e).format("HH:mm"),l=S(p,e);if(m)return null!==l?(n!==p&&t.value===e?N(l):N(t.value),f(!1)):(t.value!==e?N(t.value):_(i(e)),f(!1)),void(u||w(!1));u||w(!1),N(t.value)},components:{IndicatorsContainer:()=>null},className:E.default(O["datetimepicker-select-container"],v&&"datetimepicker-invalid-input"),classNamePrefix:"datetimepicker-select",onInputChange:(e,{action:t})=>{if("menu-close"===t?h(!0):b&&h(!1),!(s||e&&!function(e){if(e.length<(null==p?void 0:p.length)){const t=P(e);return w(!t),!0}if(/[a-zA-Z§ÄäÖö.-\s]/g.test(e))return!1;const t=P(e.length>5?e.slice(0,-1):e);return w(!t),e.length<=5}(e))&&"input-change"===t){const t=R(e);_(t),f(!0)}},inputValue:!s&&p,value:G,noOptionsMessage:()=>"",filterOption:(e,t)=>{var n;if(u)return!0;const i=5===t.length||4===t.length&&1===t.split(":")[0].length,l=e.label.split(":")[1]%15==0,a=1===(null===(n=t.split(":")[1])||void 0===n?void 0:n.length);if(b&&l)return!0;if(a){const n=1===t.split(":")[0].length?"0".concat(t.split(":")[0]):t.split(":")[0],i=t.split(":")[1],l=e.label.split(":")[0],a=e.label.split(":")[1];if(n===l){const e=10*Number(i),t=Number(a)-e;return t>=0&&t<=9}}return i&&!b?4===t.length?"0".concat(t)===e.label:t===e.label:!!l&&((e,t)=>{const n=t.length<=2?t:t.split(":")[0],i=/^([0-1]?[0-9]|2[0-3])$/.test(n),l=1===n.length?"0".concat(t):t;return!i||e.label.split(":")[0]===l.split(":")[0]})(e,t)},controlShouldRenderValue:s,tabSelectsValue:!1,placeholder:"",onFocus:e=>{s||e.target.select()},onBlur:()=>{if(m){const t=S(p,e);null!==t?(N(t),f(!1)):(_(i(e)),f(!1))}u||w(!1)},onKeyDown:e=>{["ArrowDown","ArrowUp"].includes(e.key)&&f(!1)},isSearchable:!s}))}!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],l=document.createElement("style");l.type="text/css","top"===n&&i.firstChild?i.insertBefore(l,i.firstChild):i.appendChild(l),l.styleSheet?l.styleSheet.cssText=e:l.appendChild(document.createTextNode(e))}}(".styles_sr-only__BrzYQ:not(:focus, :active) {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px; }\n\n.styles_dt-datetimepicker__PtoFG {\n border: none;\n padding: 0;\n margin: 0;\n font-size: 15px;\n font-weight: var(--font-weight-medium); }\n .styles_dt-datetimepicker__PtoFG button,\n .styles_dt-datetimepicker__PtoFG label {\n font-size: 1em;\n font-weight: inherit; }\n .styles_dt-datetimepicker__PtoFG label button {\n cursor: pointer;\n font-family: 'Gotham Rounded A', 'Gotham Rounded B', Roboto, Arial, Georgia, serif; }\n .styles_dt-datetimepicker__PtoFG .styles_hidden__6ySER {\n display: none; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-open-container__1dVr5 {\n background-color: #f2f5f7;\n border-radius: 5px;\n padding: 15px; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL {\n display: flex;\n flex-wrap: wrap; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL.styles_closed__Fqe1r {\n margin: 11px 0 6px 18px; }\n @media screen and (max-width: 319px) {\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL {\n margin-left: 14px; } }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL .styles_time-icon__ntgLZ svg {\n width: 18px;\n height: 19px; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL .styles_dropdown-icon__diYYB {\n margin-left: 9px;\n position: relative;\n top: 1px; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL .styles_dropdown-icon__diYYB svg {\n width: 14px;\n height: 10px; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL .styles_close-icon__-MzK5 svg {\n width: 12px;\n height: 12px;\n border-radius: 1px; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL .styles_close-icon__-MzK5 svg path {\n stroke-width: 30; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL label {\n cursor: pointer; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL label.styles_label-open__Gmvov {\n align-items: flex-start;\n display: flex; }\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL button,\n .styles_dt-datetimepicker__PtoFG .styles_top-row-container__cXGjL label {\n font-size: 1em;\n letter-spacing: -0.5px;\n line-height: 1; }\n .styles_dt-datetimepicker__PtoFG .styles_textbutton__T7wS2 {\n margin-left: 9px;\n margin-top: 1px;\n background: none;\n border: none;\n color: #666;\n padding: 0; }\n @media screen and (min-width: 768px) {\n .styles_dt-datetimepicker__PtoFG .styles_textbutton__T7wS2 {\n margin-left: 14px; } }\n .styles_dt-datetimepicker__PtoFG .styles_textbutton__T7wS2.styles_active__4L82E {\n color: var(--color); }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-left__Sp4kh {\n position: relative;\n margin-right: 4px;\n width: 63%; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-right__Hg8kN {\n position: relative;\n margin-left: 4px;\n width: 37%; }\n .styles_dt-datetimepicker__PtoFG .styles_departure-or-arrival-container__pJ-Iw {\n height: calc(1rem + 20px);\n background-color: #ddd;\n border-radius: 8px;\n display: flex;\n width: calc(5px + 13em); }\n .styles_dt-datetimepicker__PtoFG .styles_radio-textbutton-label__h-zfy {\n color: #333;\n margin: 2px;\n background: none;\n border-radius: 6px;\n padding: 9px 0;\n width: 50%;\n cursor: pointer;\n height: calc(1rem + 16px);\n text-align: center;\n font-weight: 400;\n font-size: 15px;\n line-height: 18px;\n letter-spacing: -0.03em; }\n .styles_dt-datetimepicker__PtoFG .styles_radio-textbutton-label__h-zfy.styles_active__4L82E {\n font-weight: 500;\n background: white; }\n .styles_dt-datetimepicker__PtoFG .styles_radio-textbutton-label__h-zfy:focus-within {\n /* First apply outline that is used in Edge and Firefox */\n outline: 1px dotted #212121;\n /* Then override outline for webkit browsers like Chrome, this has no effect on other browsers */\n outline: 5px auto -webkit-focus-ring-color;\n /* stylelint-disable-line declaration-block-no-duplicate-properties */ }\n .styles_dt-datetimepicker__PtoFG .styles_radio-textbutton-label__h-zfy.styles_first-radio__FWNoD {\n margin: 0;\n display: flex;\n align-items: flex-start; }\n .styles_dt-datetimepicker__PtoFG .styles_radio-textbutton__tsKET {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px; }\n .styles_dt-datetimepicker__PtoFG .styles_departure-now-button__VKMMK {\n font-family: inherit;\n letter-spacing: -0.02em;\n height: calc(1rem + 18px);\n color: var(--color);\n padding: 8px 0;\n width: 6.6875rem;\n background: white;\n border: 1px solid #888;\n border-radius: 30px;\n margin-left: 11px; }\n .styles_dt-datetimepicker__PtoFG .styles_open-button__c2B-6 {\n display: flex;\n margin-bottom: 0;\n margin-top: -1px;\n padding: 2px 0 2px 0; }\n .styles_dt-datetimepicker__PtoFG button.styles_close-button__2mfgI {\n transition: transform 0.2s;\n position: relative;\n top: -8px;\n right: -8px;\n border: 0;\n font-weight: normal;\n background: none;\n color: var(--color);\n padding: 0;\n line-height: normal; }\n .styles_dt-datetimepicker__PtoFG button.styles_close-button__2mfgI:hover {\n transform: scale(1.2); }\n .styles_dt-datetimepicker__PtoFG .styles_right-edge__29UYw {\n margin-left: auto;\n margin-right: 0;\n position: relative;\n top: -2px; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-container__CLY9U {\n cursor: pointer; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-icon__-0XPH {\n color: var(--color);\n height: 40px;\n position: absolute;\n z-index: 7;\n pointer-events: none; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-icon__-0XPH.styles_date-input-icon__KMrj1 {\n display: flex;\n align-items: center;\n padding: 0;\n margin-left: 14px; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-icon__-0XPH.styles_date-input-icon__KMrj1 svg {\n width: 20px;\n height: 18px; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-icon__-0XPH.styles_time-input-icon__qkhC7 {\n display: flex;\n align-items: center;\n padding: 0;\n margin-left: 8px; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-icon__-0XPH.styles_time-input-icon__qkhC7 svg {\n margin-top: 1px;\n width: 22px;\n height: 22px; }\n .styles_dt-datetimepicker__PtoFG .datetimepicker-invalid-input input {\n color: #f00 !important; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l {\n position: relative;\n height: 40px; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__control {\n cursor: inherit;\n height: 40px;\n border: 1px solid #888; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__value-container {\n padding: 0; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__single-value {\n margin: 0 0 0 47px; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__input {\n background: inherit;\n position: relative;\n margin-left: 40px; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__input input {\n opacity: 1 !important;\n background: inherit;\n box-shadow: none;\n font-stretch: normal;\n font-style: normal;\n line-height: 1.33;\n letter-spacing: -0.5px;\n color: #333;\n font-family: inherit;\n font-size: 15px;\n font-weight: var(--font-weight-medium); }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__input input:focus {\n box-shadow: none;\n outline: none;\n border: none; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__menu {\n z-index: 19;\n padding: 0;\n background: #fff;\n max-height: 250px;\n border-radius: 5px;\n box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.06);\n border: 1px rgba(0, 0, 0, 0.1) solid; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__menu .datetimepicker-select__menu-list {\n max-height: 250px;\n padding: 0; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__menu .datetimepicker-select__menu-list .datetimepicker-select__option {\n height: 50px;\n border-top: 1px solid #ddd;\n padding: 13px 0 0 12px;\n letter-spacing: -0.6px;\n color: #333; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__menu .datetimepicker-select__menu-list .datetimepicker-select__option--is-selected {\n background: inherit; }\n .styles_dt-datetimepicker__PtoFG .styles_datetimepicker-select-container__EVW1l .datetimepicker-select__menu .datetimepicker-select__menu-list .datetimepicker-select__option--is-focused {\n background: #dfe5e8; }\n .styles_dt-datetimepicker__PtoFG .styles_picker-container__V02r4 {\n margin: 14px 0 0 0;\n display: flex; }\n .styles_dt-datetimepicker__PtoFG .styles_combobox-mobile-container__u2DSO {\n flex-grow: 1; }\n\n.styles_mobile-modal-overlay__8vF8L {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.6);\n z-index: 1000; }\n\n.styles_mobile-modal-content__fWRgy {\n font-family: 'Gotham Rounded A', 'Gotham Rounded B', Roboto, Arial, Georgia, serif;\n background: white;\n width: 89%;\n position: absolute;\n left: 5.5%;\n padding: 31px 20px 33px 20px;\n top: 80px;\n border-radius: 5px; }\n .styles_mobile-modal-content__fWRgy .styles_top-row__h8xy1 {\n display: flex;\n justify-content: space-between;\n margin-bottom: 21px; }\n .styles_mobile-modal-content__fWRgy .styles_top-row__h8xy1 .styles_modal-title__EA3YD {\n font-weight: var(--font-weight-medium);\n font-size: 20px;\n line-height: 18px;\n letter-spacing: -0.5px;\n color: #333;\n padding: 6px 0 0 8px; }\n .styles_mobile-modal-content__fWRgy .styles_top-row__h8xy1 .styles_departure-now-button__VKMMK {\n background-color: white;\n font-family: inherit;\n padding: 5px 15px;\n border: 1px solid #888;\n border-radius: 50px;\n font-weight: var(--font-weight-medium);\n font-size: 15px;\n line-height: 18px;\n letter-spacing: -0.02em;\n color: var(--color); }\n .styles_mobile-modal-content__fWRgy .styles_tab-row__orgwh {\n display: flex;\n border: 2px solid #ddd;\n border-radius: 5px;\n margin-bottom: 16px;\n background-color: #ddd; }\n .styles_mobile-modal-content__fWRgy .styles_tab-row__orgwh .styles_radio-tab-label__vIfup {\n padding: 9px 0;\n font-size: 15px;\n line-height: 18px;\n letter-spacing: -0.5px;\n border-radius: 3px;\n font-weight: normal;\n width: 50%;\n text-align: center;\n color: #333; }\n .styles_mobile-modal-content__fWRgy .styles_tab-row__orgwh .styles_radio-tab-label__vIfup.styles_active__4L82E {\n font-weight: var(--font-weight-medium);\n background-color: #fff; }\n .styles_mobile-modal-content__fWRgy .styles_tab-row__orgwh .styles_radio-textbutton__tsKET {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY {\n display: flex;\n margin-bottom: 25px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY label:first-child {\n flex-basis: 60%;\n margin-right: 10px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY label:nth-child(2) {\n flex-basis: 40%; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF {\n border: 1px solid #888;\n border-radius: 5px;\n display: flex;\n align-items: center;\n height: 40px;\n line-height: 1.5;\n font-size: 100%; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF:focus-within {\n background: rgba(0, 122, 201, 0.06);\n border: 2px solid var(--color); }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_combobox-icon__-0XPH {\n height: 18px;\n font-size: 18px;\n padding: 0 0 0 10px;\n border: none;\n position: relative;\n top: 3px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_combobox-icon__-0XPH.styles_time-input-icon__qkhC7 > svg {\n height: 20px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .mobile-datetimepicker-invalid-input {\n color: #f00 !important; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_time-input-mobile__6e4A5 {\n font-family: inherit;\n box-shadow: none;\n font-size: 18px;\n letter-spacing: -0.5px;\n line-height: 20px;\n font-weight: var(--font-weight-medium);\n border: none;\n outline: none;\n background: none;\n width: 50px;\n margin-left: 10px;\n color: #333;\n height: 1.5265rem; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_mobile-input-display__VUMd0 {\n position: relative;\n left: 10px;\n border: none;\n background: inherit;\n box-shadow: none;\n font-family: inherit;\n font-weight: var(--font-weight-medium);\n font-stretch: normal;\n font-style: normal;\n font-size: 16px;\n line-height: 1.33;\n letter-spacing: -0.5px;\n color: #333; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_mobile-input-display__VUMd0:focus {\n outline: none;\n box-shadow: none;\n background: none; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_mobile-input-hidden__2KIuK {\n font-size: 16px;\n margin-bottom: 12px;\n height: 0;\n width: 0;\n background: inherit;\n color: transparent;\n outline: none;\n box-shadow: none;\n border: none; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_mobile-input-hidden__2KIuK:focus {\n outline: none;\n box-shadow: none; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz {\n position: absolute;\n width: calc((100% - 50px) * 0.6);\n height: 25px;\n font-size: 15px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_suggestion__ZczJa {\n list-style: none;\n font-size: 16px;\n font-style: normal;\n font-weight: normal;\n line-height: 49px;\n height: 50px;\n margin: 0;\n padding: 0 0 0 16px;\n color: rgba(0, 0, 0, 0.87);\n background: white; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_suggestionHighlighted__fzLiW {\n background: #dfe5e8; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_suggestionsContainerOpen__ISHXi {\n position: absolute;\n z-index: 19;\n max-height: 250px;\n overflow-x: hidden;\n overflow-y: scroll;\n border-radius: 5px;\n box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.06);\n border: 1px rgba(0, 0, 0, 0.1) solid;\n top: 42px;\n left: -2px;\n width: 100%;\n font-size: 16px;\n line-height: 1;\n color: rgba(0, 0, 0, 0.87); }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_suggestionsContainerOpen__ISHXi ul {\n padding: 0;\n margin: 0; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_input__PAfbH {\n box-shadow: none;\n border: none;\n background: none;\n font-size: 16px;\n font-weight: var(--font-weight-medium);\n height: 25px;\n display: inline-block;\n font-family: inherit;\n line-height: 1.33;\n padding-left: 46px; }\n .styles_mobile-modal-content__fWRgy .styles_input-row__2XXEY .styles_input-container__USZlF .styles_container__ihyhz .styles_input__PAfbH:focus {\n outline: none;\n border: none;\n background: none; }\n .styles_mobile-modal-content__fWRgy .styles_buttons-row__-3wsn {\n display: flex;\n flex-direction: column;\n font-size: 16px;\n font-weight: var(--font-weight-medium); }\n .styles_mobile-modal-content__fWRgy .styles_buttons-row__-3wsn button {\n background-color: white;\n font-family: inherit;\n font-weight: var(--font-weight-medium);\n font-size: 16px;\n letter-spacing: -0.02em;\n width: 100%;\n border-radius: 50px;\n height: 40px;\n color: var(--color);\n border: 1px solid #888; }\n .styles_mobile-modal-content__fWRgy .styles_buttons-row__-3wsn button.styles_ready-button__dH7Qc {\n color: white;\n background-color: var(--color);\n border: none;\n margin-bottom: 10px; }\n"),"production"!==process.env.NODE_ENV&&(G.propTypes={value:b.default.number.isRequired,onChange:b.default.func.isRequired,getDisplay:b.default.func.isRequired,timeChoices:b.default.arrayOf(b.default.number).isRequired,id:b.default.string.isRequired,label:b.default.node.isRequired,icon:b.default.node.isRequired,disableTyping:b.default.bool,timeZone:b.default.string,datePicker:b.default.bool,translationSettings:b.default.shape({lng:b.default.string.isRequired})}),G.defaultProps={disableTyping:!1,timeZone:"Europe/Helsinki",datePicker:!1,translationSettings:{lng:"fi"}};const W={de:{today:"Heute",tomorrow:"Morgen","accessible-close":"Schließe die Auswahl","accessible-closed":"Auswahl geschlossen","accessible-open":"Öffne die Auswahl","accessible-opened":"Auswahl geöffnet","accessible-title":"Datum und Uhrzeitauswahl",arrival:"Ankunft",date:"Datum",departure:"Abfahrt","departure-now":"Abfahrt jetzt","choose-time":"Zeit wählen",ready:"Fertig",time:"Zeit",cancel:"Abbrechen"},en:{today:"Today",tomorrow:"Tomorrow","accessible-close":"Close the picker","accessible-closed":"Timepicker closed","accessible-open":"Open the picker","accessible-opened":"Timepicker opened","accessible-title":"Date and timepicker","accessible-update-instructions":"Changing time parameters will trigger a new search.",arrival:"Arrival",date:"Date",departure:"Departure","departure-now":"Leaving now",time:"Time","choose-time":"Choose time",ready:"Ready",cancel:"Cancel","invalid-input":"The time you entered is invalid"},fi:{today:"Tänään",tomorrow:"Huomenna","accessible-close":"Sulje valitsin","accessible-closed":"Valitsin suljettu","accessible-open":"Avaa valitsin","accessible-opened":"Valitsin avattu","accessible-title":"Aika- ja päivämäärävalitsin","accessible-update-instructions":"Aikavalintojen muuttaminen laukaisee uuden haun.",arrival:"Perillä",date:"Päivä",departure:"Lähtöaika","departure-now":"Lähtö nyt",time:"Aika","choose-time":"Valitse aika",ready:"Valmis",cancel:"Peruuta","invalid-input":"Syöttämäsi aika on virheellinen"},pl:{today:"Dziś",tomorrow:"Jutro","accessible-close":"Zamknij wybornik","accessible-closed":"Zamknięto wybornik","accessible-open":"Otwórz wybornik","accessible-opened":"Otwarto wybornik","accessible-title":"Wybór daty i godziny","accessible-update-instructions":"Zmiana wybranej godziny wywoła nowe wyszukiwanie.",arrival:"Przyjazd",date:"Data",departure:"Wyjazd","departure-now":"Wyjeżdżam teraz",time:"Godzina","choose-time":"Wybierz godzinę",ready:"Gotowe",cancel:"Anuluj","invalid-input":"Wprowadzona godzina jest nieprawidłowa"},sv:{today:"I dag",tomorrow:"I morgon","accessible-close":"Stäng väljaren","accessible-closed":"Väljaren stängde","accessible-open":"Öppna väljaren","accessible-opened":"Väljaren öppnade","accessible-title":"Tid- och datumväljaren","accessible-update-instructions":"Om du ändrar tiderna, startas en ny sökning automatiskt.",arrival:"Anländer",date:"Datum",departure:"Avgångstid","departure-now":"Avgår nu",time:"Tid","choose-time":"Välj tid",ready:"Färdig",cancel:"Avbryt","invalid-input":"Tiden du angav är felaktig"}};function q(){const e=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(e)}const z=["ref"];function X({value:e,getDisplay:t,onChange:i,itemCount:l,startTime:a,id:o,label:r,icon:s,timeZone:d}){g.default.tz.setDefault(d);const[u,c]=n.useState(!1),p=n.useRef(null),_=Array(l).fill().map(((e,t)=>g.default(a).add(t,"day").valueOf())),m=_.map((t=>e-t)).findIndex((e=>e<6e4));n.useLayoutEffect((()=>{u&&p.current&&(p.current.scrollTop=50*m)}),[e,u]);const f=!(navigator.userAgent.toLowerCase().indexOf("android")>-1),b=`${o}-input`,h=`${o}-label`;return y.default.createElement("label",{className:O["input-container"],htmlFor:b},y.default.createElement("span",null,s),y.default.createElement("span",{className:O["sr-only"],id:h},r),f?y.default.createElement("select",{className:O["mobile-input-display"],onChange:e=>i(Number(e.target.value)),value:e},_.map((e=>y.default.createElement("option",{key:e,value:e},t(e))))):y.default.createElement(C.default,{id:o,suggestions:_,getSuggestionValue:e=>e.toString(),renderSuggestion:e=>t(e),onSuggestionsFetchRequested:()=>null,shouldRenderSuggestions:()=>!0,inputProps:{value:t(e),onChange:(e,{newValue:t})=>{i(Number(t))},onFocus:()=>{c(!0)},onBlur:()=>{c(!1)},"aria-labelledby":h,"aria-autocomplete":"none",readOnly:!0},focusInputOnSuggestionClick:!1,onSuggestionsClearRequested:()=>null,renderSuggestionsContainer:({containerProps:e,children:t})=>{const{ref:n}=e,i=function(e,t){if(null==e)return{};var n,i,l=function(e,t){if(null==e)return{};var n={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(-1!==t.indexOf(i))continue;n[i]=e[i]}return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)n=a[i],-1===t.indexOf(n)&&{}.propertyIsEnumerable.call(e,n)&&(l[n]=e[n])}return l}(e,z);return y.default.createElement("div",Object.assign({tabIndex:"-1"},i,{ref:e=>{e&&(p.current=e,n(e))}}),t)},theme:O}))}function $({value:e,getDisplay:t,onChange:i,id:l,label:a,icon:o,timeZone:r}){const[s,d]=n.useState(t(e)),[u,c]=n.useState(!0);g.default.tz.setDefault(r);const p=`${l}-input`,_=`${l}-label`,m=n.useRef(null);n.useLayoutEffect((()=>{m.current&&m.current.focus()}),[]);const f=!u;return y.default.createElement("label",{className:O["input-container"],htmlFor:p},y.default.createElement("span",null,o),y.default.createElement("span",{className:O["sr-only"],id:_},a),y.default.createElement("input",{id:p,inputMode:"numeric",type:"text",maxLength:"6",className:E.default(O["time-input-mobile"],f&&"mobile-datetimepicker-invalid-input"),value:s,onFocus:e=>{e.target.setSelectionRange(0,0)},onChange:t=>{let n=t.target.value.replace(".",":");const l=P(n);if(c(l),n.match(/[0-9]{3}:[0-9]{2}/)&&n.slice(1)===s&&(n=n.charAt(0)),n.length>5)return;const a=R(n);d(a);const o=S(a,e);o&&i(o)},ref:m}))}function T({departureOrArrival:e,onNowClick:t,lang:i,color:l,timeZone:a,onSubmit:o,onCancel:r,timestamp:s,getTimeDisplay:d,dateSelectItemCount:u,getDateDisplay:c,fontWeights:p}){g.default.tz.setDefault(a);const _={lng:i},[m,f]=n.useState(s),[b,h]=n.useState(e);const[k]=n.useState(v.default("datetimepicker-")),E=g.default().startOf("day").hour(g.default(m).hour()).minute(g.default(m).minute()).valueOf();return y.default.createElement(N.default,{appElement:document?document.querySelector("#app"):void 0,isOpen:!0,className:O["mobile-modal-content"],overlayClassName:O["mobile-modal-overlay"]},y.default.createElement("div",{style:{"--color":`${l}`,"--font-weight-medium":p.medium}},y.default.createElement("div",{className:O["top-row"]},y.default.createElement("h3",{className:O["modal-title"]},x.default.t("choose-time",_)),y.default.createElement("button",{type:"button",className:O["departure-now-button"],onClick:t},x.default.t("departure-now",_))),y.default.createElement("div",{className:O["tab-row"]},y.default.createElement("label",{htmlFor:`${k}-modal-departure`,className:`${O["radio-tab-label"]}\n ${O["departure"===b?"active":void 0]}`},x.default.t("departure",_),y.default.createElement("input",{id:`${k}-modal-departure`,name:"departureOrArrival",type:"radio",value:"departure",className:O["radio-textbutton"],onChange:()=>{h("departure")},checked:"departure"===b})),y.default.createElement("label",{htmlFor:`${k}-modal-arrival`,className:`${O["radio-tab-label"]}\n ${O["arrival"===b?"active":void 0]}`},x.default.t("arrival",_),y.default.createElement("input",{id:`${k}-modal-arrival`,name:"departureOrArrival",type:"radio",value:"arrival",className:O["radio-textbutton"],onChange:()=>{h("arrival")},checked:"arrival"===b}))),y.default.createElement("div",{className:O["input-row"]},y.default.createElement(X,{value:m,getDisplay:c,onChange:f,itemCount:u,startTime:E,id:`${k}-date`,label:x.default.t("date",_),icon:y.default.createElement("span",{className:`${O["combobox-icon"]} ${O["date-input-icon"]}`},y.default.createElement(w.default,{img:"calendar",color:l})),timeZone:a}),y.default.createElement($,{value:m,getDisplay:d,onChange:f,id:`${k}-time`,label:x.default.t("time",_),icon:y.default.createElement("span",{className:`${O["combobox-icon"]} ${O["time-input-icon"]}`},y.default.createElement(w.default,{img:"time",color:l})),timeZone:a})),y.default.createElement("div",{className:O["buttons-row"]},y.default.createElement("button",{type:"button",className:O["ready-button"],onClick:()=>o(m,b)},x.default.t("ready",_)),y.default.createElement("button",{type:"button",className:O["cancel-button"],onClick:r},x.default.t("cancel",_)))))}function A({timestamp:e,onTimeChange:t,onDateChange:i,departureOrArrival:l,onNowClick:a,onDepartureClick:o,onArrivalClick:r,embedWhenClosed:s,embedWhenOpen:d,lang:u,color:c,timeZone:p,onModalSubmit:_,fontWeights:m,serviceTimeRange:f,onOpen:b,onClose:h,openPicker:k}){g.default.tz.setDefault(p);const[E,N]=n.useState(k||!1),[C,R]=n.useState(e||g.default().valueOf()),[F,P]=n.useState(null),[S]=n.useState(v.default("datetimepicker-")),[z]=n.useState(q()&&function(){if("undefined"==typeof window||null===window)return!1;const e=document.createElement("input");return e.type="date","date"===e.type&&(e.type="time","time"===e.type)}()),X=n.useRef(),$=n.useRef(),A=n.useRef(),D={lng:u};n.useEffect((()=>{Object.keys(W).forEach((e=>x.default.addResourceBundle(e,"translation",W[u])))}),[]),n.useEffect((()=>{g.default.locale(u)}),[u]);const Z=null===e;n.useEffect((()=>{Z?R(g.default().valueOf()):(F&&(clearInterval(F),P(null)),R(e))}),[e]),n.useEffect((()=>{if(!Z)return;F&&clearInterval(F);const e=setInterval((()=>{const t=g.default().valueOf();g.default(C).isSame(t,"minute")||(clearInterval(e),P(null),R(t))}),5e3);return P(e),()=>clearInterval(e)}),[C]);const j=n.useRef();n.useEffect((()=>{j.current=E}));const V=e=>{const t=g.default(e);let n;return n=t.isSame(g.default(),"day")?x.default.t("today",D):t.isSame(g.default().add(1,"day"),"day")?x.default.t("tomorrow",D):t.format("dd D.M."),n=`${n.charAt(0).toUpperCase()}${n.slice(1)}`,n},M=e=>g.default(e).format("HH:mm"),L=g.default(C),H=g.default(C).startOf("day").valueOf();let I=[];const Y=g.default(H);for(;Y.isSame(H,"day");)I.push(Y.valueOf()),q()?Y.add(15,"minutes"):Y.add(1,"minutes");if(null===e){const e=3e5,t=Math.ceil(C/e)*e,n=Array(7).fill().map(((n,i)=>t+i*e)),i=I.map((e=>C-e)).findIndex((e=>e<=0));I.splice(i,0,...n),I=Array.from(new Set(I))}const U=g.default().startOf("day").hour(L.hour()).minute(L.minute()).valueOf(),K=Array(f).fill().map(((e,t)=>g.default(U).add(t,"day").valueOf()));function B(){A.current&&(A.current.innerHTML=x.default.t("accessible-closed",D),setTimeout((()=>{A.current.innerHTML=null}),100))}return y.default.createElement("fieldset",{className:O["dt-datetimepicker"],id:`${S}-root`,style:{"--color":`${c}`,"--font-weight-medium":m.medium}},y.default.createElement("legend",{className:O["sr-only"]},x.default.t("accessible-title",D)),y.default.createElement("span",{className:O["sr-only"]},x.default.t("accessible-update-instructions",D)),y.default.createElement("div",{className:E?`${O.hidden} datetimepicker-top-row`:`${O["top-row-container"]} ${O.closed} datetimepicker-top-row`},y.default.createElement("label",{className:O["label-open"],htmlFor:`${S}-open`},y.default.createElement("span",{className:O["time-icon"]},y.default.createElement(w.default,{img:"time",color:c})),y.default.createElement("span",{className:O["sr-only"]},x.default.t("accessible-open",D)),y.default.createElement("span",{role:"alert",className:O["sr-only"],ref:A}),y.default.createElement("button",{id:`${S}-open`,type:"button",className:`${O.textbutton} ${O.active} ${O["open-button"]}`,"aria-controls":`${S}-root`,"aria-expanded":"false",onClick:()=>{N(!0),A.current&&(A.current.innerHTML=x.default.t("accessible-opened",D),setTimeout((()=>{A.current.innerHTML=null}),100)),b&&b()},ref:X},y.default.createElement("span",null,Z&&"departure"===l?x.default.t("departure-now",D):y.default.createElement(y.default.Fragment,null,x.default.t("departure"===l?"departure":"arrival",D),` ${g.default().isSame(g.default(C),"day")?"":V(C).toLowerCase()} ${M(C)}`)),y.default.createElement("span",{className:O["dropdown-icon"]},y.default.createElement(w.default,{img:"arrow-dropdown",color:c})))),y.default.createElement("span",{className:O["right-edge"]},s)),y.default.createElement("div",null),z?E&&y.default.createElement(T,{departureOrArrival:l,onNowClick:()=>{N(!1),B(),a()},lang:u,color:c,onSubmit:(e,t)=>{_(e,t),N(!1),B()},onCancel:()=>{N(!1),B(),h&&h()},getTimeDisplay:M,timeZone:p,timestamp:C,getDateDisplay:V,dateSelectItemCount:f,getDisplay:M,fontWeights:m}):y.default.createElement(y.default.Fragment,null,y.default.createElement("div",{className:`${O["datetimepicker-open-container"]} ${E?"":O.hidden}`},y.default.createElement("div",{className:E?`${O["top-row-container"]} datetimepicker-top-row`:`${O.hidden} datetimepicker-top-row`}," ",y.default.createElement("span",{role:"alert",className:O["sr-only"],ref:A}),y.default.createElement("span",null),y.default.createElement("span",{className:O["departure-or-arrival-container"]},y.default.createElement("label",{htmlFor:`${S}-departure`,className:`${O["radio-textbutton-label"]}\n ${O["departure"===l?"active":void 0]}`},x.default.t("departure",D),y.default.createElement("input",{id:`${S}-departure`,name:"departureOrArrival",type:"radio",value:"departure",className:O["radio-textbutton"],onChange:()=>{o()},checked:"departure"===l})),y.default.createElement("label",{htmlFor:`${S}-arrival`,className:`${O["radio-textbutton-label"]}\n ${O["arrival"===l?"active":void 0]}`},x.default.t("arrival",D),y.default.createElement("input",{id:`${S}-arrival`,name:"departureOrArrival",type:"radio",value:"arrival",className:O["radio-textbutton"],onChange:()=>{r()},checked:"arrival"===l}))),y.default.createElement("button",{id:`${S}-now`,type:"button",className:O["departure-now-button"],onClick:()=>{N(!1),B(),h&&h(),a()},ref:$},x.default.t("departure-now",D)),y.default.createElement("span",{className:O["right-edge"]},y.default.createElement("button",{type:"button",className:O["close-button"],"aria-controls":`${S}-root`,"aria-expanded":"true",onClick:()=>{N(!1),B(),h&&h()}},y.default.createElement("span",{className:O["close-icon"]},y.default.createElement(w.default,{img:"close",color:c})),y.default.createElement("span",{className:O["sr-only"]},x.default.t("accessible-close",D))))),y.default.createElement("div",{className:E?`${O["picker-container"]}`:`${O.hidden} datetimepicker-top-row`},y.default.createElement("span",{className:O["combobox-left"]},y.default.createElement(G,{value:C,onChange:e=>{i(e)},getDisplay:V,timeChoices:K,validate:()=>null,icon:y.default.createElement("span",{className:`${O["combobox-icon"]} ${O["date-input-icon"]}`},y.default.createElement(w.default,{img:"calendar",color:c})),id:`${S}-date`,label:x.default.t("date",D),disableTyping:!0,timeZone:p,datePicker:!0})),y.default.createElement("span",{className:O["combobox-right"]},y.default.createElement(G,{value:C,onChange:e=>{t(e)},getDisplay:M,timeChoices:I,icon:y.default.createElement("span",{className:`${O["combobox-icon"]} ${O["time-input-icon"]}`},y.default.createElement(w.default,{img:"time",color:c})),id:`${S}-time`,label:x.default.t("time",D),timeZone:p,translationSettings:D})))),y.default.createElement("span",{className:E?"":O.hidden},d),y.default.createElement("div",{className:E?"datetimepicker-bottom-row-open":""})))}function D({realtime:e,initialArriveBy:t,initialTimestamp:i,onDepartureClick:l,onArrivalClick:a,onTimeChange:o,onDateChange:r,onNowClick:s,embedWhenClosed:d,embedWhenOpen:u,lang:c,color:p,timeZone:_,fontWeights:m,serviceTimeRange:f,onOpen:b,onClose:v,openPicker:x}){g.default.locale(c),g.default.tz.setDefault(_);const w=e?null:g.default().valueOf(),[k,E]=n.useState(i?1e3*i:w),[N,C]=n.useState(!0===t?"arrival":"departure");n.useEffect((()=>{const e=null===k&&void 0===i,n=null===k||void 0===i,l=Math.round(k/1e3)===i;!e&&(n||!l)&&E(void 0===i?null:1e3*i),!t==("arrival"===N)&&C(!0===t?"arrival":"departure")}),[i,t]);const R=h.default((e=>{if(null===e)return E(g.default().valueOf()),void o(Math.round(g.default().valueOf()/1e3),"arrival"===N);E(e),o(Math.round(e/1e3),"arrival"===N)}),10),F=h.default((e=>{if(null===e)return E(g.default().valueOf()),void r(Math.round(g.default().valueOf()/1e3),"arrival"===N);E(e),r(Math.round(e/1e3),"arrival"===N)}),10);return y.default.createElement(A,{timestamp:k,onTimeChange:R,onDateChange:F,departureOrArrival:N,onNowClick:()=>{C("departure");const t=e?null:g.default().valueOf();E(t),s(Math.round(t/1e3))},onDepartureClick:()=>{let e=!1,t=k;if(null===k){const n=g.default().valueOf();E(n),t=n,e=!0}"departure"!==N&&(C("departure"),e=!0),e&&l(Math.round(t/1e3))},onArrivalClick:()=>{let e=!1,t=k;if(null===k){const n=g.default().valueOf();E(n),t=n,e=!0}"arrival"!==N&&(C("arrival"),e=!0),e&&a(Math.round(t/1e3))},embedWhenClosed:d,embedWhenOpen:u,lang:c,color:p,timeZone:_,onModalSubmit:(e,t)=>{E(e),C(t),o(Math.round(e/1e3),"arrival"===t,!0)},fontWeights:m,serviceTimeRange:f,onOpen:b,onClose:v,openPicker:x})}"production"!==process.env.NODE_ENV&&(X.propTypes={value:b.default.number.isRequired,getDisplay:b.default.func.isRequired,onChange:b.default.func.isRequired,itemCount:b.default.number.isRequired,startTime:b.default.number.isRequired,id:b.default.string.isRequired,label:b.default.string.isRequired,icon:b.default.node,dateTimeCombined:b.default.bool,timeZone:b.default.string}),X.defaultProps={icon:null,dateTimeCombined:!1,timeZone:"Europe/Helsinki"},"production"!==process.env.NODE_ENV&&($.propTypes={value:b.default.number.isRequired,getDisplay:b.default.func.isRequired,onChange:b.default.func.isRequired,id:b.default.string.isRequired,label:b.default.string.isRequired,icon:b.default.node,timeZone:b.default.string}),$.defaultProps={icon:null,timeZone:"Europe/Helsinki"},g.default.locale("en"),x.default.init({lng:"en",resources:{}}),Object.keys(W).forEach((e=>x.default.addResourceBundle(e,"translation",W[e]))),"production"!==process.env.NODE_ENV&&(T.propTypes={timeZone:b.default.string,departureOrArrival:b.default.oneOf(["departure","arrival"]).isRequired,onNowClick:b.default.func.isRequired,lang:b.default.string.isRequired,color:b.default.string,onSubmit:b.default.func.isRequired,onCancel:b.default.func.isRequired,timestamp:b.default.number.isRequired,getTimeDisplay:b.default.func.isRequired,dateSelectItemCount:b.default.number.isRequired,getDateDisplay:b.default.func.isRequired,fontWeights:b.default.shape({medium:b.default.number.isRequired}).isRequired}),T.defaultProps={color:"#007ac9",timeZone:"Europe/Helsinki"},g.default.locale("en"),x.default.init({lng:"fi",fallbackLng:"fi",defaultNS:"translation",interpolation:{escapeValue:!1}}),"production"!==process.env.NODE_ENV&&(A.propTypes={timestamp:b.default.number,timeZone:b.default.string,onTimeChange:b.default.func.isRequired,onDateChange:b.default.func.isRequired,departureOrArrival:b.default.oneOf(["departure","arrival"]).isRequired,onNowClick:b.default.func.isRequired,onDepartureClick:b.default.func.isRequired,onArrivalClick:b.default.func.isRequired,embedWhenClosed:b.default.node,embedWhenOpen:b.default.node,lang:b.default.string.isRequired,color:b.default.string,onModalSubmit:b.default.func.isRequired,fontWeights:b.default.shape({medium:b.default.number.isRequired}).isRequired,serviceTimeRange:b.default.number.isRequired,onOpen:b.default.func,onClose:b.default.func,openPicker:b.default.bool}),A.defaultProps={timestamp:null,embedWhenClosed:null,embedWhenOpen:null,color:"#007ac9",timeZone:"Europe/Helsinki",onOpen:null,onClose:null,openPicker:void 0},"production"!==process.env.NODE_ENV&&(D.propTypes={realtime:b.default.bool,initialTimestamp:b.default.number,initialArriveBy:b.default.bool,onDepartureClick:b.default.func.isRequired,onArrivalClick:b.default.func.isRequired,onTimeChange:b.default.func.isRequired,onDateChange:b.default.func.isRequired,onNowClick:b.default.func.isRequired,embedWhenClosed:b.default.node,embedWhenOpen:b.default.node,lang:b.default.string,color:b.default.string,timeZone:b.default.string,fontWeights:b.default.shape({medium:b.default.number}),serviceTimeRange:b.default.number,onOpen:b.default.func,onClose:b.default.func,openPicker:b.default.bool}),D.defaultProps={realtime:!1,initialArriveBy:void 0,initialTimestamp:void 0,embedWhenClosed:null,embedWhenOpen:null,lang:"en",color:"#007ac9",timeZone:"Europe/Helsinki",fontWeights:{medium:500},onOpen:null,onClose:null,openPicker:void 0,serviceTimeRange:30},e.default=D,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=index.js.map