@davi-ai/retorik-framework 1.0.14 → 1.0.16
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/dist/index.d.ts +55 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1724 -837
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +1679 -805
- package/dist/index.modern.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -117,7 +117,7 @@ function $063ea7a515c267b7$export$2e2bcd8739ae039(RetorikWidget, props, element)
|
|
|
117
117
|
|
|
118
118
|
|
|
119
119
|
var $203b743475f656c9$exports = {};
|
|
120
|
-
$203b743475f656c9$exports = "*, :before, :after {\n box-sizing: border-box;\n border: 0 solid;\n}\n\n:before, :after {\n --tw-content: \"\";\n}\n\nhtml, :host {\n -webkit-text-size-adjust: 100%;\n -moz-tab-size: 4;\n tab-size: 4;\n font-feature-settings: normal;\n font-variation-settings: normal;\n -webkit-tap-highlight-color: transparent;\n font-family: Calibri, sans-serif;\n line-height: 1.5;\n}\n\nbody {\n line-height: inherit;\n margin: 0;\n}\n\nhr {\n color: inherit;\n border-top-width: 1px;\n height: 0;\n}\n\nabbr:where([title]) {\n text-decoration: underline dotted;\n}\n\nh1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\nb, strong {\n font-weight: bolder;\n}\n\ncode, kbd, samp, pre {\n font-feature-settings: normal;\n font-variation-settings: normal;\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;\n font-size: 1em;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub, sup {\n vertical-align: baseline;\n font-size: 75%;\n line-height: 0;\n position: relative;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n}\n\nbutton, input, optgroup, select, textarea {\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-family: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\n\nbutton, select {\n text-transform: none;\n}\n\nbutton, [type=\"button\"], [type=\"reset\"], [type=\"submit\"] {\n -webkit-appearance: button;\n background-color: #0000;\n background-image: none;\n}\n\n:-moz-focusring {\n outline: auto;\n}\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n::-webkit-inner-spin-button, ::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n}\n\nsummary {\n display: list-item;\n}\n\nblockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol, ul, menu {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\ndialog {\n padding: 0;\n}\n\ntextarea {\n resize: vertical;\n}\n\ninput::placeholder, textarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n\nbutton, [role=\"button\"] {\n cursor: pointer;\n}\n\n:disabled {\n cursor: default;\n}\n\nimg, svg, video, canvas, audio, iframe, embed, object {\n vertical-align: middle;\n display: block;\n}\n\nimg, video {\n max-width: 100%;\n height: auto;\n}\n\n[hidden] {\n display: none;\n}\n\n*, :before, :after, ::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #3b82f680;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n.rf-pointer-events-none {\n pointer-events: none;\n}\n\n.rf-pointer-events-auto {\n pointer-events: auto;\n}\n\n.rf-visible {\n visibility: visible;\n}\n\n.rf-invisible {\n visibility: hidden;\n}\n\n.rf-fixed {\n position: fixed;\n}\n\n.rf-absolute {\n position: absolute;\n}\n\n.rf-relative {\n position: relative;\n}\n\n.-rf-left-6 {\n left: -1.5rem;\n}\n\n.-rf-top-6 {\n top: -1.5rem;\n}\n\n.-rf-top-\\[1\\.15rem\\] {\n top: -1.15rem;\n}\n\n.rf--bottom-2 {\n bottom: -.5rem;\n}\n\n.rf-bottom-0 {\n bottom: 0;\n}\n\n.rf-bottom-1 {\n bottom: .25rem;\n}\n\n.rf-bottom-1\\/4 {\n bottom: 25%;\n}\n\n.rf-bottom-16 {\n bottom: 4rem;\n}\n\n.rf-bottom-2 {\n bottom: .5rem;\n}\n\n.rf-bottom-4 {\n bottom: 1rem;\n}\n\n.rf-bottom-40 {\n bottom: 10rem;\n}\n\n.rf-left-0 {\n left: 0;\n}\n\n.rf-left-1 {\n left: .25rem;\n}\n\n.rf-left-1\\/2 {\n left: 50%;\n}\n\n.rf-left-2 {\n left: .5rem;\n}\n\n.rf-left-4 {\n left: 1rem;\n}\n\n.rf-right-0 {\n right: 0;\n}\n\n.rf-right-1 {\n right: .25rem;\n}\n\n.rf-right-2 {\n right: .5rem;\n}\n\n.rf-right-3 {\n right: .75rem;\n}\n\n.rf-right-4 {\n right: 1rem;\n}\n\n.rf-right-6 {\n right: 1.5rem;\n}\n\n.rf-right-8 {\n right: 2rem;\n}\n\n.rf-top-0 {\n top: 0;\n}\n\n.rf-top-1 {\n top: .25rem;\n}\n\n.rf-top-1\\/2 {\n top: 50%;\n}\n\n.rf-top-1\\/3 {\n top: 33.3333%;\n}\n\n.rf-top-110 {\n top: 110%;\n}\n\n.rf-top-2 {\n top: .5rem;\n}\n\n.rf-top-4 {\n top: 1rem;\n}\n\n.rf-top-\\[0\\.125rem\\] {\n top: .125rem;\n}\n\n.rf-z-background {\n z-index: 0;\n}\n\n.rf-z-chatbot {\n z-index: 10;\n}\n\n.rf-z-detailedPOI {\n z-index: 2;\n}\n\n.rf-z-dropdown {\n z-index: 30;\n}\n\n.rf-z-exitwidget {\n z-index: 55;\n}\n\n.rf-z-menu {\n z-index: 40;\n}\n\n.rf-z-modal {\n z-index: 50;\n}\n\n.rf-z-overlay {\n z-index: 40;\n}\n\n.rf-z-ui {\n z-index: 20;\n}\n\n.rf-z-util {\n z-index: 1;\n}\n\n.rf-col-span-2 {\n grid-column: span 2 / span 2;\n}\n\n.rf-col-span-3 {\n grid-column: span 3 / span 3;\n}\n\n.rf-col-span-6 {\n grid-column: span 6 / span 6;\n}\n\n.rf-col-span-full {\n grid-column: 1 / -1;\n}\n\n.rf-col-start-1 {\n grid-column-start: 1;\n}\n\n.rf-col-start-2 {\n grid-column-start: 2;\n}\n\n.rf-col-start-4 {\n grid-column-start: 4;\n}\n\n.rf-col-start-5 {\n grid-column-start: 5;\n}\n\n.rf-col-end-13 {\n grid-column-end: 13;\n}\n\n.rf-col-end-2 {\n grid-column-end: 2;\n}\n\n.rf-col-end-9 {\n grid-column-end: 9;\n}\n\n.rf-row-span-1 {\n grid-row: span 1 / span 1;\n}\n\n.rf-row-span-2 {\n grid-row: span 2 / span 2;\n}\n\n.rf-row-span-3 {\n grid-row: span 3 / span 3;\n}\n\n.rf-row-span-5 {\n grid-row: span 5 / span 5;\n}\n\n.rf-row-span-6 {\n grid-row: span 6 / span 6;\n}\n\n.rf-row-span-9 {\n grid-row: span 9 / span 9;\n}\n\n.rf-row-span-full {\n grid-row: 1 / -1;\n}\n\n.rf-row-start-1 {\n grid-row-start: 1;\n}\n\n.rf-row-start-12 {\n grid-row-start: 12;\n}\n\n.rf-row-start-2 {\n grid-row-start: 2;\n}\n\n.rf-row-start-3 {\n grid-row-start: 3;\n}\n\n.rf-row-start-4 {\n grid-row-start: 4;\n}\n\n.rf-row-start-6 {\n grid-row-start: 6;\n}\n\n.rf-row-start-9 {\n grid-row-start: 9;\n}\n\n.rf-row-end-13 {\n grid-row-end: 13;\n}\n\n.rf-row-end-2 {\n grid-row-end: 2;\n}\n\n.rf-row-end-3 {\n grid-row-end: 3;\n}\n\n.rf-row-end-4 {\n grid-row-end: 4;\n}\n\n.rf-row-end-5 {\n grid-row-end: 5;\n}\n\n.rf-float-right {\n float: right;\n}\n\n.rf-m-0 {\n margin: 0;\n}\n\n.rf-m-4 {\n margin: 1rem;\n}\n\n.rf-m-auto {\n margin: auto;\n}\n\n.-rf-mx-6 {\n margin-left: -1.5rem;\n margin-right: -1.5rem;\n}\n\n.rf-mx-0 {\n margin-left: 0;\n margin-right: 0;\n}\n\n.rf-mx-2 {\n margin-left: .5rem;\n margin-right: .5rem;\n}\n\n.rf-mx-3 {\n margin-left: .75rem;\n margin-right: .75rem;\n}\n\n.rf-mx-8 {\n margin-left: 2rem;\n margin-right: 2rem;\n}\n\n.rf-mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n\n.rf-my-1 {\n margin-top: .25rem;\n margin-bottom: .25rem;\n}\n\n.rf-my-2 {\n margin-top: .5rem;\n margin-bottom: .5rem;\n}\n\n.rf-my-4 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n}\n\n.rf-my-auto {\n margin-top: auto;\n margin-bottom: auto;\n}\n\n.-rf-mb-4 {\n margin-bottom: -1rem;\n}\n\n.-rf-ml-2 {\n margin-left: -.5rem;\n}\n\n.rf-mb-0 {\n margin-bottom: 0;\n}\n\n.rf-mb-1 {\n margin-bottom: .25rem;\n}\n\n.rf-mb-10 {\n margin-bottom: 2.5rem;\n}\n\n.rf-mb-12 {\n margin-bottom: 3rem;\n}\n\n.rf-mb-16 {\n margin-bottom: 4rem;\n}\n\n.rf-mb-2 {\n margin-bottom: .5rem;\n}\n\n.rf-mb-26 {\n margin-bottom: 6.5rem;\n}\n\n.rf-mb-28 {\n margin-bottom: 7rem;\n}\n\n.rf-mb-3 {\n margin-bottom: .75rem;\n}\n\n.rf-mb-30 {\n margin-bottom: 7.5rem;\n}\n\n.rf-mb-4 {\n margin-bottom: 1rem;\n}\n\n.rf-mb-5 {\n margin-bottom: 1.25rem;\n}\n\n.rf-mb-6 {\n margin-bottom: 1.5rem;\n}\n\n.rf-mb-8 {\n margin-bottom: 2rem;\n}\n\n.rf-ml-1 {\n margin-left: .25rem;\n}\n\n.rf-ml-2 {\n margin-left: .5rem;\n}\n\n.rf-ml-4 {\n margin-left: 1rem;\n}\n\n.rf-ml-6 {\n margin-left: 1.5rem;\n}\n\n.rf-mr-1 {\n margin-right: .25rem;\n}\n\n.rf-mr-2 {\n margin-right: .5rem;\n}\n\n.rf-mr-3 {\n margin-right: .75rem;\n}\n\n.rf-mr-4 {\n margin-right: 1rem;\n}\n\n.rf-mr-5 {\n margin-right: 1.25rem;\n}\n\n.rf-mt-1 {\n margin-top: .25rem;\n}\n\n.rf-mt-10 {\n margin-top: 2.5rem;\n}\n\n.rf-mt-2 {\n margin-top: .5rem;\n}\n\n.rf-mt-4 {\n margin-top: 1rem;\n}\n\n.rf-mt-5 {\n margin-top: 1.25rem;\n}\n\n.rf-mt-8 {\n margin-top: 2rem;\n}\n\n.rf-mt-\\[0\\.2rem\\] {\n margin-top: .2rem;\n}\n\n.rf-mt-auto {\n margin-top: auto;\n}\n\n.rf-line-clamp-1 {\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-2 {\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-inline {\n display: inline;\n}\n\n.rf-flex {\n display: flex;\n}\n\n.rf-grid {\n display: grid;\n}\n\n.rf-hidden {\n display: none;\n}\n\n.rf-aspect-\\[4\\/3\\] {\n aspect-ratio: 4 / 3;\n}\n\n.rf-aspect-square {\n aspect-ratio: 1;\n}\n\n.rf-aspect-video {\n aspect-ratio: 16 / 9;\n}\n\n.rf-h-0 {\n height: 0;\n}\n\n.rf-h-1 {\n height: .25rem;\n}\n\n.rf-h-1\\/2 {\n height: 50%;\n}\n\n.rf-h-1\\/3 {\n height: 33.3333%;\n}\n\n.rf-h-12 {\n height: 3rem;\n}\n\n.rf-h-14 {\n height: 3.5rem;\n}\n\n.rf-h-16 {\n height: 4rem;\n}\n\n.rf-h-18 {\n height: 4.5rem;\n}\n\n.rf-h-2 {\n height: .5rem;\n}\n\n.rf-h-2\\/3 {\n height: 66.6667%;\n}\n\n.rf-h-24 {\n height: 6rem;\n}\n\n.rf-h-3 {\n height: .75rem;\n}\n\n.rf-h-3\\/10 {\n height: 30%;\n}\n\n.rf-h-32 {\n height: 8rem;\n}\n\n.rf-h-36 {\n height: 9rem;\n}\n\n.rf-h-4 {\n height: 1rem;\n}\n\n.rf-h-48 {\n height: 12rem;\n}\n\n.rf-h-5 {\n height: 1.25rem;\n}\n\n.rf-h-6 {\n height: 1.5rem;\n}\n\n.rf-h-7 {\n height: 1.75rem;\n}\n\n.rf-h-8 {\n height: 2rem;\n}\n\n.rf-h-9 {\n height: 2.25rem;\n}\n\n.rf-h-\\[0\\.875rem\\] {\n height: .875rem;\n}\n\n.rf-h-\\[calc\\(50vw-3rem\\)\\] {\n height: calc(50vw - 3rem);\n}\n\n.rf-h-fit {\n height: fit-content;\n}\n\n.rf-h-full {\n height: 100%;\n}\n\n.rf-h-max {\n height: max-content;\n}\n\n.rf-h-screen {\n height: 100vh;\n}\n\n.rf-max-h-12 {\n max-height: 3rem;\n}\n\n.rf-max-h-28 {\n max-height: 7rem;\n}\n\n.rf-max-h-4\\/5 {\n max-height: 80%;\n}\n\n.rf-max-h-48 {\n max-height: 12rem;\n}\n\n.rf-max-h-6 {\n max-height: 1.5rem;\n}\n\n.rf-max-h-full {\n max-height: 100%;\n}\n\n.rf-max-h-qrcode {\n max-height: 120px;\n}\n\n.rf-max-h-screen {\n max-height: 100vh;\n}\n\n.rf-min-h-12 {\n min-height: 3rem;\n}\n\n.rf-min-h-16 {\n min-height: 4rem;\n}\n\n.rf-min-h-2\\/5 {\n min-height: 40%;\n}\n\n.rf-min-h-6 {\n min-height: 1.5rem;\n}\n\n.rf-min-h-full {\n min-height: 100%;\n}\n\n.rf-min-h-inherit {\n min-height: inherit;\n}\n\n.rf-w-0 {\n width: 0;\n}\n\n.rf-w-1\\/2 {\n width: 50%;\n}\n\n.rf-w-1\\/3 {\n width: 33.3333%;\n}\n\n.rf-w-1\\/4 {\n width: 25%;\n}\n\n.rf-w-11\\/12 {\n width: 91.6667%;\n}\n\n.rf-w-12 {\n width: 3rem;\n}\n\n.rf-w-16 {\n width: 4rem;\n}\n\n.rf-w-18 {\n width: 4.5rem;\n}\n\n.rf-w-2 {\n width: .5rem;\n}\n\n.rf-w-2\\/3 {\n width: 66.6667%;\n}\n\n.rf-w-20 {\n width: 5rem;\n}\n\n.rf-w-24 {\n width: 6rem;\n}\n\n.rf-w-3 {\n width: .75rem;\n}\n\n.rf-w-3\\/20 {\n width: 15%;\n}\n\n.rf-w-3\\/5 {\n width: 60%;\n}\n\n.rf-w-32 {\n width: 8rem;\n}\n\n.rf-w-36 {\n width: 9rem;\n}\n\n.rf-w-4 {\n width: 1rem;\n}\n\n.rf-w-4\\/9 {\n width: 45%;\n}\n\n.rf-w-48 {\n width: 12rem;\n}\n\n.rf-w-5 {\n width: 1.25rem;\n}\n\n.rf-w-6 {\n width: 1.5rem;\n}\n\n.rf-w-7 {\n width: 1.75rem;\n}\n\n.rf-w-8 {\n width: 2rem;\n}\n\n.rf-w-9 {\n width: 2.25rem;\n}\n\n.rf-w-\\[45\\%\\] {\n width: 45%;\n}\n\n.rf-w-\\[45ch\\] {\n width: 45ch;\n}\n\n.rf-w-\\[90\\%\\] {\n width: 90%;\n}\n\n.rf-w-\\[calc\\(100\\%-3rem\\)\\] {\n width: calc(100% - 3rem);\n}\n\n.rf-w-fit {\n width: fit-content;\n}\n\n.rf-w-full {\n width: 100%;\n}\n\n.rf-w-max {\n width: max-content;\n}\n\n.rf-w-screen {\n width: 100vw;\n}\n\n.rf-min-w-11\\/12 {\n min-width: 91.7%;\n}\n\n.rf-min-w-12 {\n min-width: 3rem;\n}\n\n.rf-min-w-24 {\n min-width: 6rem;\n}\n\n.rf-min-w-3\\/20 {\n min-width: 15%;\n}\n\n.rf-min-w-6 {\n min-width: 1.5rem;\n}\n\n.rf-min-w-\\[45\\%\\] {\n min-width: 45%;\n}\n\n.rf-min-w-full {\n min-width: 100%;\n}\n\n.rf-max-w-1\\/2 {\n max-width: 50%;\n}\n\n.rf-max-w-16 {\n max-width: 4rem;\n}\n\n.rf-max-w-3\\/20 {\n max-width: 15%;\n}\n\n.rf-max-w-6 {\n max-width: 1.5rem;\n}\n\n.rf-max-w-7\\/10 {\n max-width: 70%;\n}\n\n.rf-max-w-\\[100vw\\] {\n max-width: 100vw;\n}\n\n.rf-max-w-\\[45\\%\\] {\n max-width: 45%;\n}\n\n.rf-max-w-\\[70vw\\] {\n max-width: 70vw;\n}\n\n.rf-max-w-\\[calc\\(100\\%-2rem\\)\\] {\n max-width: calc(100% - 2rem);\n}\n\n.rf-max-w-full {\n max-width: 100%;\n}\n\n.rf-max-w-none {\n max-width: none;\n}\n\n.rf-flex-1 {\n flex: 1;\n}\n\n.rf-flex-\\[0_0_40\\%\\] {\n flex: 0 0 40%;\n}\n\n.rf-flex-\\[2_1_0\\%\\] {\n flex: 2;\n}\n\n.rf-flex-\\[4_1_0\\%\\] {\n flex: 4;\n}\n\n.rf-origin-center {\n transform-origin: center;\n}\n\n.-rf-translate-x-1\\/2 {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.-rf-translate-y-1\\/2 {\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf--translate-x-1\\/2 {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-translate-x-1 {\n --tw-translate-x: .25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-translate-x-5 {\n --tw-translate-x: 1.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf--rotate-90 {\n --tw-rotate: -90deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-rotate-0 {\n --tw-rotate: 0deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-rotate-180 {\n --tw-rotate: 180deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-rotate-90 {\n --tw-rotate: 90deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-scale-0 {\n --tw-scale-x: 0;\n --tw-scale-y: 0;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n@keyframes rf-hScroll {\n 0% {\n transform: translateX(0);\n }\n\n 100% {\n transform: translateX(calc(-100% - 2rem));\n }\n}\n\n.rf-animate-hScroll {\n animation: 20s linear infinite rf-hScroll;\n}\n\n@keyframes rf-loader {\n 0% {\n box-shadow: 0 1.5rem 0 -1.5rem var(--rf-color-loader-animation);\n }\n\n 40% {\n box-shadow: 0 1.5rem 0 -.3rem var(--rf-color-loader-animation);\n }\n\n 80% {\n box-shadow: 0 1.5rem 0 -1.5rem var(--rf-color-loader-animation);\n }\n\n 100% {\n box-shadow: 0 1.5rem 0 -1.5rem var(--rf-color-loader-animation);\n }\n}\n\n.rf-animate-loader {\n animation: 1.8s ease-in-out -.16s infinite both rf-loader;\n}\n\n@keyframes rf-fadeIn {\n 0% {\n opacity: 0;\n }\n\n 100% {\n opacity: 1;\n }\n}\n\n.rf-animate-loaderFadeIn {\n animation: 2s rf-fadeIn;\n}\n\n@keyframes rf-fadeOut {\n 0% {\n opacity: 1;\n }\n\n 100% {\n opacity: 0;\n }\n}\n\n.rf-animate-loaderFadeOut {\n animation: 1s rf-fadeOut;\n}\n\n@keyframes rf-slideBottom {\n 0% {\n opacity: 0;\n transform: translateX(0)translateY(20px);\n }\n\n 100% {\n opacity: 1;\n transform: translateX(0)translateY(0);\n }\n}\n\n.rf-animate-slideBottom {\n animation: .5s .2s backwards rf-slideBottom;\n}\n\n@keyframes rf-spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n.rf-animate-spin {\n animation: 1s linear infinite rf-spin;\n}\n\n.rf-cursor-pointer {\n cursor: pointer;\n}\n\n.rf-select-none {\n user-select: none;\n}\n\n.rf-resize-none {\n resize: none;\n}\n\n.rf-scroll-pb-4 {\n scroll-padding-bottom: 1rem;\n}\n\n.rf-grid-cols-1 {\n grid-template-columns: repeat(1, minmax(0, 1fr));\n}\n\n.rf-grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n\n.rf-grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n\n.rf-grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n\n.rf-grid-cols-6 {\n grid-template-columns: repeat(6, minmax(0, 1fr));\n}\n\n.rf-grid-cols-7 {\n grid-template-columns: repeat(7, minmax(0, 1fr));\n}\n\n.rf-grid-cols-8 {\n grid-template-columns: repeat(8, minmax(0, 1fr));\n}\n\n.rf-grid-cols-headerContainer {\n grid-template-columns: 7rem 1fr 1fr 1fr;\n}\n\n.rf-grid-cols-printingPreview {\n grid-template-columns: minmax(0, 1fr) 3rem;\n}\n\n.rf-grid-cols-routes {\n grid-template-columns: repeat(3, max-content);\n}\n\n.rf-grid-rows-1 {\n grid-template-rows: repeat(1, minmax(0, 1fr));\n}\n\n.rf-grid-rows-2 {\n grid-template-rows: repeat(2, minmax(0, 1fr));\n}\n\n.rf-grid-rows-container {\n grid-template-rows: repeat(12, minmax(0, 1fr));\n}\n\n.rf-grid-rows-headerContainer {\n grid-template-rows: repeat(3, minmax(0, 1fr));\n}\n\n.rf-flex-row {\n flex-direction: row;\n}\n\n.rf-flex-col {\n flex-direction: column;\n}\n\n.rf-flex-col-reverse {\n flex-direction: column-reverse;\n}\n\n.rf-flex-wrap {\n flex-wrap: wrap;\n}\n\n.rf-flex-nowrap {\n flex-wrap: nowrap;\n}\n\n.rf-content-around {\n align-content: space-around;\n}\n\n.rf-items-start {\n align-items: flex-start;\n}\n\n.rf-items-end {\n align-items: flex-end;\n}\n\n.rf-items-center {\n align-items: center;\n}\n\n.rf-justify-start {\n justify-content: flex-start;\n}\n\n.rf-justify-end {\n justify-content: flex-end;\n}\n\n.rf-justify-center {\n justify-content: center;\n}\n\n.rf-justify-between {\n justify-content: space-between;\n}\n\n.rf-justify-around {\n justify-content: space-around;\n}\n\n.rf-justify-evenly {\n justify-content: space-evenly;\n}\n\n.rf-gap-1 {\n gap: .25rem;\n}\n\n.rf-gap-12 {\n gap: 3rem;\n}\n\n.rf-gap-2 {\n gap: .5rem;\n}\n\n.rf-gap-3 {\n gap: .75rem;\n}\n\n.rf-gap-4 {\n gap: 1rem;\n}\n\n.rf-gap-5 {\n gap: 1.25rem;\n}\n\n.rf-gap-8 {\n gap: 2rem;\n}\n\n.rf-gap-9 {\n gap: 2.25rem;\n}\n\n.rf-divide-x > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-x-reverse: 0;\n border-right-width: calc(1px * var(--tw-divide-x-reverse));\n border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));\n}\n\n.rf-self-auto {\n align-self: auto;\n}\n\n.rf-self-start {\n align-self: flex-start;\n}\n\n.rf-self-end {\n align-self: flex-end;\n}\n\n.rf-self-center {\n align-self: center;\n}\n\n.rf-justify-self-start {\n justify-self: start;\n}\n\n.rf-justify-self-end {\n justify-self: end;\n}\n\n.rf-justify-self-center {\n justify-self: center;\n}\n\n.rf-overflow-hidden {\n overflow: hidden;\n}\n\n.rf-overflow-clip {\n overflow: clip;\n}\n\n.rf-overflow-x-auto {\n overflow-x: auto;\n}\n\n.rf-overflow-y-auto {\n overflow-y: auto;\n}\n\n.rf-overflow-x-hidden {\n overflow-x: hidden;\n}\n\n.rf-overflow-y-hidden {\n overflow-y: hidden;\n}\n\n.rf-overflow-y-visible {\n overflow-y: visible;\n}\n\n.rf-overflow-x-scroll {\n overflow-x: scroll;\n}\n\n.rf-overflow-y-scroll {\n overflow-y: scroll;\n}\n\n.rf-truncate {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n\n.rf-whitespace-nowrap {\n white-space: nowrap;\n}\n\n.rf-rounded {\n border-radius: .3125rem;\n}\n\n.rf-rounded-6 {\n border-radius: 1.5rem;\n}\n\n.rf-rounded-8 {\n border-radius: 2rem;\n}\n\n.rf-rounded-\\[20px\\] {\n border-radius: 20px;\n}\n\n.rf-rounded-full {\n border-radius: 9999px;\n}\n\n.rf-rounded-half {\n border-radius: 50%;\n}\n\n.rf-rounded-lg {\n border-radius: .5rem;\n}\n\n.rf-rounded-max {\n border-radius: 100%;\n}\n\n.rf-rounded-b {\n border-bottom-right-radius: .3125rem;\n border-bottom-left-radius: .3125rem;\n}\n\n.rf-rounded-l-lg {\n border-top-left-radius: .5rem;\n border-bottom-left-radius: .5rem;\n}\n\n.rf-border {\n border-width: 1px;\n}\n\n.rf-border-0 {\n border-width: 0;\n}\n\n.rf-border-2 {\n border-width: 2px;\n}\n\n.rf-border-y {\n border-top-width: 1px;\n border-bottom-width: 1px;\n}\n\n.rf-border-b {\n border-bottom-width: 1px;\n}\n\n.rf-border-b-2 {\n border-bottom-width: 2px;\n}\n\n.rf-border-l {\n border-left-width: 1px;\n}\n\n.rf-border-r {\n border-right-width: 1px;\n}\n\n.rf-border-t {\n border-top-width: 1px;\n}\n\n.rf-border-t-0 {\n border-top-width: 0;\n}\n\n.rf-border-none {\n border-style: none;\n}\n\n.rf-border-\\[\\#00000029\\] {\n border-color: #00000029;\n}\n\n.rf-border-\\[\\#9FA2AA\\] {\n --tw-border-opacity: 1;\n border-color: rgb(159 162 170 / var(--tw-border-opacity));\n}\n\n.rf-border-\\[\\#C7C6C6\\] {\n --tw-border-opacity: 1;\n border-color: rgb(199 198 198 / var(--tw-border-opacity));\n}\n\n.rf-border-black {\n border-color: var(--rf-color-black);\n}\n\n.rf-border-cardButtonBorderDefault {\n border-color: var(--rf-color-cardButtonBorderDefault);\n}\n\n.rf-border-cardButtonBorderHover {\n border-color: var(--rf-color-cardButtonBorderHover);\n}\n\n.rf-border-cardFrameBorder {\n border-color: var(--rf-color-cardFrameBorder);\n}\n\n.rf-border-formInputButtonBorderDefault {\n border-color: var(--rf-color-formInputButtonBorderDefault);\n}\n\n.rf-border-formInputButtonBorderHover {\n border-color: var(--rf-color-formInputButtonBorderHover);\n}\n\n.rf-border-formInputRadioCheckboxCheckedBorder {\n border-color: var(--rf-color-formInputRadioCheckboxCheckedBorder);\n}\n\n.rf-border-formInputRadioCheckboxUncheckedBorder {\n border-color: var(--rf-color-formInputRadioCheckboxUncheckedBorder);\n}\n\n.rf-border-gray {\n --tw-border-opacity: 1;\n border-color: rgb(128 128 128 / var(--tw-border-opacity));\n}\n\n.rf-border-menuBorder {\n --tw-border-opacity: 1;\n border-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n.rf-border-primary {\n border-color: var(--rf-color-primary);\n}\n\n.rf-border-red-700 {\n --tw-border-opacity: 1;\n border-color: rgb(185 28 28 / var(--tw-border-opacity));\n}\n\n.rf-border-secondary {\n border-color: var(--rf-color-secondary);\n}\n\n.rf-border-templateCheckboxBorder {\n --tw-border-opacity: 1;\n border-color: rgb(112 112 112 / var(--tw-border-opacity));\n}\n\n.rf-border-trueblack {\n --tw-border-opacity: 1;\n border-color: rgb(0 0 0 / var(--tw-border-opacity));\n}\n\n.rf-border-truewhite {\n --tw-border-opacity: 1;\n border-color: rgb(255 255 255 / var(--tw-border-opacity));\n}\n\n.rf-border-x-primary {\n border-left-color: var(--rf-color-primary);\n border-right-color: var(--rf-color-primary);\n}\n\n.rf-border-y-menuBorder {\n --tw-border-opacity: 1;\n border-top-color: rgb(224 225 231 / var(--tw-border-opacity));\n border-bottom-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n.rf-border-b-\\[\\#C4C5C8\\] {\n --tw-border-opacity: 1;\n border-bottom-color: rgb(196 197 200 / var(--tw-border-opacity));\n}\n\n.rf-border-b-black {\n border-bottom-color: var(--rf-color-black);\n}\n\n.rf-border-b-menuBorder {\n --tw-border-opacity: 1;\n border-bottom-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n.rf-border-b-silver {\n --tw-border-opacity: 1;\n border-bottom-color: rgb(192 192 192 / var(--tw-border-opacity));\n}\n\n.rf-border-b-transparent {\n border-bottom-color: #0000;\n}\n\n.rf-border-l-menuBorder {\n --tw-border-opacity: 1;\n border-left-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n.rf-border-r-silver {\n --tw-border-opacity: 1;\n border-right-color: rgb(192 192 192 / var(--tw-border-opacity));\n}\n\n.rf-border-t-\\[\\#CBC9C9\\] {\n --tw-border-opacity: 1;\n border-top-color: rgb(203 201 201 / var(--tw-border-opacity));\n}\n\n.rf-border-t-menuBorder {\n --tw-border-opacity: 1;\n border-top-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n.rf-bg-\\[\\#00000050\\] {\n background-color: #00000050;\n}\n\n.rf-bg-\\[\\#F0F0F0\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(240 240 240 / var(--tw-bg-opacity));\n}\n\n.rf-bg-\\[\\#F8F8F8\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(248 248 248 / var(--tw-bg-opacity));\n}\n\n.rf-bg-black {\n background-color: var(--rf-color-black);\n}\n\n.rf-bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n\n.rf-bg-cardButtonBackgroundDefault {\n background-color: var(--rf-color-cardButtonBackgroundDefault);\n}\n\n.rf-bg-cardButtonBackgroundHover {\n background-color: var(--rf-color-cardButtonBackgroundHover);\n}\n\n.rf-bg-cardFrameBackground {\n background-color: var(--rf-color-cardFrameBackground);\n}\n\n.rf-bg-formInputButtonBackgroundDefault {\n background-color: var(--rf-color-formInputButtonBackgroundDefault);\n}\n\n.rf-bg-formInputButtonBackgroundHover {\n background-color: var(--rf-color-formInputButtonBackgroundHover);\n}\n\n.rf-bg-formInputRadioCheckboxUncheckedBackground {\n background-color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n}\n\n.rf-bg-gray {\n --tw-bg-opacity: 1;\n background-color: rgb(128 128 128 / var(--tw-bg-opacity));\n}\n\n.rf-bg-primary {\n background-color: var(--rf-color-primary);\n}\n\n.rf-bg-red-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(220 38 38 / var(--tw-bg-opacity));\n}\n\n.rf-bg-secondary {\n background-color: var(--rf-color-secondary);\n}\n\n.rf-bg-silver {\n --tw-bg-opacity: 1;\n background-color: rgb(192 192 192 / var(--tw-bg-opacity));\n}\n\n.rf-bg-templateBackground {\n --tw-bg-opacity: 1;\n background-color: rgb(241 241 241 / var(--tw-bg-opacity));\n}\n\n.rf-bg-templateEmptyCard {\n --tw-bg-opacity: 1;\n background-color: rgb(232 231 231 / var(--tw-bg-opacity));\n}\n\n.rf-bg-textModePanelBackground {\n background-color: var(--rf-color-textModePanelBackground);\n}\n\n.rf-bg-transparent {\n background-color: #0000;\n}\n\n.rf-bg-truewhite {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n\n.rf-bg-vocalModeSubtitlesBackground {\n background-color: var(--rf-color-vocalModeSubtitlesBackground);\n}\n\n.rf-bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(247 243 246 / var(--tw-bg-opacity));\n}\n\n.rf-bg-opacity-30 {\n --tw-bg-opacity: .3;\n}\n\n.rf-bg-opacity-50 {\n --tw-bg-opacity: .5;\n}\n\n.rf-bg-opacity-80 {\n --tw-bg-opacity: .8;\n}\n\n.rf-object-cover {\n object-fit: cover;\n}\n\n.rf-p-0 {\n padding: 0;\n}\n\n.rf-p-1 {\n padding: .25rem;\n}\n\n.rf-p-2 {\n padding: .5rem;\n}\n\n.rf-p-4 {\n padding: 1rem;\n}\n\n.rf-p-6 {\n padding: 1.5rem;\n}\n\n.rf-p-\\[25px\\] {\n padding: 25px;\n}\n\n.rf-p-\\[7px_12px\\] {\n padding: 7px 12px;\n}\n\n.rf-px-1 {\n padding-left: .25rem;\n padding-right: .25rem;\n}\n\n.rf-px-2 {\n padding-left: .5rem;\n padding-right: .5rem;\n}\n\n.rf-px-3 {\n padding-left: .75rem;\n padding-right: .75rem;\n}\n\n.rf-px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n.rf-px-5, .rf-px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n\n.rf-px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n\n.rf-py-0 {\n padding-top: 0;\n padding-bottom: 0;\n}\n\n.rf-py-1 {\n padding-top: .25rem;\n padding-bottom: .25rem;\n}\n\n.rf-py-12 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n}\n\n.rf-py-2 {\n padding-top: .5rem;\n padding-bottom: .5rem;\n}\n\n.rf-py-3 {\n padding-top: .75rem;\n padding-bottom: .75rem;\n}\n\n.rf-py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n.rf-py-6 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n}\n\n.rf-pb-10 {\n padding-bottom: 2.5rem;\n}\n\n.rf-pb-12 {\n padding-bottom: 3rem;\n}\n\n.rf-pb-14 {\n padding-bottom: 3.5rem;\n}\n\n.rf-pb-2 {\n padding-bottom: .5rem;\n}\n\n.rf-pb-3 {\n padding-bottom: .75rem;\n}\n\n.rf-pb-4 {\n padding-bottom: 1rem;\n}\n\n.rf-pb-5, .rf-pb-6 {\n padding-bottom: 1.5rem;\n}\n\n.rf-pb-8 {\n padding-bottom: 2rem;\n}\n\n.rf-pb-\\[15vh\\] {\n padding-bottom: 15vh;\n}\n\n.rf-pl-0 {\n padding-left: 0;\n}\n\n.rf-pl-1 {\n padding-left: .25rem;\n}\n\n.rf-pl-2 {\n padding-left: .5rem;\n}\n\n.rf-pl-4 {\n padding-left: 1rem;\n}\n\n.rf-pl-6 {\n padding-left: 1.5rem;\n}\n\n.rf-pr-1 {\n padding-right: .25rem;\n}\n\n.rf-pr-2 {\n padding-right: .5rem;\n}\n\n.rf-pr-4 {\n padding-right: 1rem;\n}\n\n.rf-pt-1 {\n padding-top: .25rem;\n}\n\n.rf-pt-11\\/20 {\n padding-top: 55%;\n}\n\n.rf-pt-12 {\n padding-top: 3rem;\n}\n\n.rf-pt-14 {\n padding-top: 3.5rem;\n}\n\n.rf-pt-2 {\n padding-top: .5rem;\n}\n\n.rf-pt-24 {\n padding-top: 6rem;\n}\n\n.rf-pt-3 {\n padding-top: .75rem;\n}\n\n.rf-pt-4 {\n padding-top: 1rem;\n}\n\n.rf-pt-8 {\n padding-top: 2rem;\n}\n\n.rf-pt-\\[25vh\\] {\n padding-top: 25vh;\n}\n\n.rf-pt-\\[26vh\\] {\n padding-top: 26vh;\n}\n\n.rf-text-left {\n text-align: left;\n}\n\n.rf-text-center {\n text-align: center;\n}\n\n.rf-text-right {\n text-align: right;\n}\n\n.rf-font-default {\n font-family: Calibri, sans-serif;\n}\n\n.rf-text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n\n.rf-text-5xl {\n font-size: 3rem;\n line-height: 1;\n}\n\n.rf-text-7xl {\n font-size: 4.5rem;\n line-height: 1;\n}\n\n.rf-text-8xl {\n font-size: 6rem;\n line-height: 1;\n}\n\n.rf-text-\\[0\\.5rem\\] {\n font-size: .5rem;\n}\n\n.rf-text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n.rf-text-basecustom {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n.rf-text-lgcustom {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n.rf-text-sm {\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.rf-text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n\n.rf-text-xs {\n font-size: .75rem;\n line-height: 1rem;\n}\n\n.rf-text-xsl {\n font-size: .7rem;\n line-height: 1rem;\n}\n\n.rf-text-xsm {\n font-size: .6rem;\n}\n\n.rf-font-bold {\n font-weight: 600;\n}\n\n.rf-font-medium {\n font-weight: 300;\n}\n\n.rf-font-semibold {\n font-weight: 400;\n}\n\n.rf-uppercase {\n text-transform: uppercase;\n}\n\n.rf-capitalize {\n text-transform: capitalize;\n}\n\n.rf-normal-case {\n text-transform: none;\n}\n\n.rf-italic {\n font-style: italic;\n}\n\n.rf-text-\\[\\#575F6B\\] {\n --tw-text-opacity: 1;\n color: rgb(87 95 107 / var(--tw-text-opacity));\n}\n\n.rf-text-\\[\\#9A9A9A\\] {\n --tw-text-opacity: 1;\n color: rgb(154 154 154 / var(--tw-text-opacity));\n}\n\n.rf-text-\\[\\#A4A7AF\\] {\n --tw-text-opacity: 1;\n color: rgb(164 167 175 / var(--tw-text-opacity));\n}\n\n.rf-text-black {\n color: var(--rf-color-black);\n}\n\n.rf-text-cardButtonTextDefault {\n color: var(--rf-color-cardButtonTextDefault);\n}\n\n.rf-text-cardFrameText {\n color: var(--rf-color-cardFrameText);\n}\n\n.rf-text-formInputButtonTextDefault {\n color: var(--rf-color-formInputButtonTextDefault);\n}\n\n.rf-text-formInputButtonTextHover {\n color: var(--rf-color-formInputButtonTextHover);\n}\n\n.rf-text-formInputRadioCheckboxUncheckedBackground {\n color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n}\n\n.rf-text-formInputTextDefault {\n color: var(--rf-color-formInputTextDefault);\n}\n\n.rf-text-gray {\n --tw-text-opacity: 1;\n color: rgb(128 128 128 / var(--tw-text-opacity));\n}\n\n.rf-text-lightgray {\n --tw-text-opacity: 1;\n color: rgb(129 129 129 / var(--tw-text-opacity));\n}\n\n.rf-text-primary {\n color: var(--rf-color-primary);\n}\n\n.rf-text-red-700 {\n --tw-text-opacity: 1;\n color: rgb(185 28 28 / var(--tw-text-opacity));\n}\n\n.rf-text-secondary {\n color: var(--rf-color-secondary);\n}\n\n.rf-text-textModePanelConversationBot {\n color: var(--rf-color-textModePanelConversationBot);\n}\n\n.rf-text-textModePanelConversationUser {\n color: var(--rf-color-textModePanelConversationUser);\n}\n\n.rf-text-trueblack {\n --tw-text-opacity: 1;\n color: rgb(0 0 0 / var(--tw-text-opacity));\n}\n\n.rf-text-truewhite {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n\n.rf-text-vocalModeSubtitlesText {\n color: var(--rf-color-vocalModeSubtitlesText);\n}\n\n.rf-text-white {\n --tw-text-opacity: 1;\n color: rgb(247 243 246 / var(--tw-text-opacity));\n}\n\n.rf-underline {\n text-decoration-line: underline;\n}\n\n.rf-shadow-\\[0_0_15px_0_silver\\] {\n --tw-shadow: 0 0 15px 0 silver;\n --tw-shadow-colored: 0 0 15px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_0_20px_1px_\\#A4A7AF80\\] {\n --tw-shadow: 0 0 20px 1px #a4a7af80;\n --tw-shadow-colored: 0 0 20px 1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_0_3px_6px_\\#00000029\\] {\n --tw-shadow: 0 0 3px 6px #00000029;\n --tw-shadow-colored: 0 0 3px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_3px_6px_\\#00000029\\] {\n --tw-shadow: 0 3px 6px #00000029;\n --tw-shadow-colored: 0 3px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_3px_6px_\\#606267\\] {\n --tw-shadow: 0 3px 6px #606267;\n --tw-shadow-colored: 0 3px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_3px_6px_rgba\\(0\\,0\\,0\\,0\\.16\\)\\] {\n --tw-shadow: 0 3px 6px #00000029;\n --tw-shadow-colored: 0 3px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_6px_6px_\\#00000029\\] {\n --tw-shadow: 0 6px 6px #00000029;\n --tw-shadow-colored: 0 6px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[20px_3px_20px_\\#00000029\\] {\n --tw-shadow: 20px 3px 20px #00000029;\n --tw-shadow-colored: 20px 3px 20px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[3px_3px_16px_\\#00000029\\] {\n --tw-shadow: 3px 3px 16px #00000029;\n --tw-shadow-colored: 3px 3px 16px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[3px_3px_6px_\\#00000029\\] {\n --tw-shadow: 3px 3px 6px #00000029;\n --tw-shadow-colored: 3px 3px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[inset_0_0_6px_\\#0000003B\\] {\n --tw-shadow: inset 0 0 6px #0000003b;\n --tw-shadow-colored: inset 0 0 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[inset_0_12px_12px_-12px_\\#00000029\\,inset_0_-12px_12px_-12px_\\#00000029\\] {\n --tw-shadow: inset 0 12px 12px -12px #00000029, inset 0 -12px 12px -12px #00000029;\n --tw-shadow-colored: inset 0 12px 12px -12px var(--tw-shadow-color), inset 0 -12px 12px -12px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-card {\n --tw-shadow: 0px 0px 13px 3px #101219;\n --tw-shadow-colored: 0px 0px 13px 3px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-outline-none {\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.rf-blur-background {\n --tw-blur: blur(var(--rf-blur-background));\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.rf-filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.rf-transition-all {\n transition-property: all;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.rf-transition-transform {\n transition-property: transform;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.rf-text-shadow-black {\n text-shadow: 2px 0 5px #000, -2px 0 5px #000, 0 2px 5px #000, 0 -2px 5px #000;\n}\n\n.rf-capitalize-first:first-letter {\n text-transform: uppercase;\n}\n\nol {\n padding-left: 2rem;\n list-style-type: decimal;\n}\n\nul {\n padding-left: 2rem;\n list-style-type: disc;\n}\n\n#retorik-container.rf-portrait:not(.rf-large) .ac-image {\n max-width: 100px;\n}\n\n.rf-glass-background, #retorik-container.portrait .portrait\\:rf-glass-background {\n background-color: var(--rf-color-black);\n --tw-bg-opacity: .62;\n --tw-backdrop-blur: blur(8px);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n\n.rf-loader:before {\n content: \"\";\n border-radius: 50%;\n width: 1.5rem;\n height: 1.5rem;\n animation: 1.8s ease-in-out -.32s infinite both rf-loader;\n display: block;\n position: absolute;\n right: 1.5rem;\n}\n\n.rf-loader:after {\n content: \"\";\n border-radius: 50%;\n width: 1.5rem;\n height: 1.5rem;\n animation: 1.8s ease-in-out infinite both rf-loader;\n display: block;\n position: absolute;\n left: 1.5rem;\n}\n\n.rf-loader-microphone:before, .rf-loader-microphone:after {\n content: \"\";\n --tw-border-opacity: 1;\n border: 6px solid #0000;\n border-top-color: rgb(128 128 128 / var(--tw-border-opacity));\n border-radius: 100%;\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.rf-loader-microphone:before {\n z-index: 1;\n animation: 1s linear infinite rf-spin;\n}\n\n.rf-loader-microphone:after {\n --tw-border-opacity: 1;\n border-color: rgb(204 204 204 / var(--tw-border-opacity));\n}\n\n.rf-touch-action-none {\n touch-action: none;\n}\n\n.rf-unselectable {\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n -webkit-touch-callout: none;\n}\n\n.rf-title-extralarge-bold-size-auto {\n font-size: 2.25rem;\n font-weight: 600;\n line-height: 2.5rem;\n}\n\n#retorik-container.rf-large .rf-title-extralarge-bold-size-auto {\n font-size: 3rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-extralarge-bold-size-auto {\n font-size: 3.75rem;\n line-height: 1;\n}\n\n.rf-title-extralarge-size-auto {\n font-size: 2.25rem;\n font-weight: 400;\n line-height: 2.5rem;\n}\n\n#retorik-container.rf-large .rf-title-extralarge-size-auto {\n font-size: 3rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-extralarge-size-auto {\n font-size: 3.75rem;\n line-height: 1;\n}\n\n.rf-title-large-size-auto {\n font-size: 1.5rem;\n font-weight: 400;\n line-height: 2rem;\n}\n\n#retorik-container.rf-large .rf-title-large-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-large-size-auto {\n font-size: 3rem;\n line-height: 1;\n}\n\n.rf-title-large-bold-size-auto {\n font-size: 1.875rem;\n font-weight: 600;\n line-height: 2.25rem;\n}\n\n#retorik-container.rf-large .rf-title-large-bold-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-large-bold-size-auto {\n font-size: 3rem;\n line-height: 1;\n}\n\n.rf-title-size-auto {\n font-size: 1.5rem;\n font-weight: 400;\n line-height: 2rem;\n}\n\n#retorik-container.rf-large .rf-title-size-auto {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n.rf-title-bold-size-auto {\n font-size: 1.5rem;\n font-weight: 600;\n line-height: 2rem;\n}\n\n#retorik-container.rf-large .rf-title-bold-size-auto {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-bold-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n.rf-subtitle-size-auto {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n#retorik-container.rf-large .rf-subtitle-size-auto {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-subtitle-size-auto {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n\n.rf-text-extralarge-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n#retorik-container.rf-large .rf-text-extralarge-size-auto {\n font-size: 3rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-text-extralarge-size-auto {\n font-size: 3.75rem;\n line-height: 1;\n}\n\n.rf-text-verylarge-size-auto {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n\n#retorik-container.rf-large .rf-text-verylarge-size-auto {\n font-size: 3.75rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-text-verylarge-size-auto {\n font-size: 4.5rem;\n line-height: 1;\n}\n\n.rf-text-large-size-auto {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n\n#retorik-container.rf-large .rf-text-large-size-auto {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-text-large-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n.rf-text-medium-size-auto {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large .rf-text-medium-size-auto {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n.rf-text-size-auto {\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .rf-text-size-auto {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-text-size-auto {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n.rf-small-size-auto {\n font-size: .6rem;\n}\n\n#retorik-container.rf-large .rf-small-size-auto {\n font-size: .75rem;\n line-height: 1rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-small-size-auto {\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.rf-line-clamp-unknown {\n hyphens: auto;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-1 {\n hyphens: auto;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-2 {\n hyphens: auto;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-3 {\n hyphens: auto;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-4 {\n hyphens: auto;\n -webkit-line-clamp: 4;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-5 {\n hyphens: auto;\n -webkit-line-clamp: 5;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-6 {\n hyphens: auto;\n -webkit-line-clamp: 6;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-7 {\n hyphens: auto;\n -webkit-line-clamp: 7;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-8 {\n hyphens: auto;\n -webkit-line-clamp: 8;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-9 {\n hyphens: auto;\n -webkit-line-clamp: 9;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-10 {\n hyphens: auto;\n -webkit-line-clamp: 10;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-height-fill-available {\n height: stretch;\n}\n\n.rf-width-fill-available {\n width: stretch;\n}\n\n.rf-animation-delay-2 {\n animation-delay: .2s;\n}\n\n.rf-animation-delay-4 {\n animation-delay: .4s;\n}\n\n.rf-scrollbar-thin {\n scrollbar-width: thin;\n scrollbar-color: var(--rf-color-secondary) transparent;\n}\n\n.rf-scrollbar-thin::-webkit-scrollbar {\n width: .2rem;\n height: .2rem;\n margin: .25rem 0;\n}\n\n.rf-scrollbar-thin::-webkit-scrollbar-thumb {\n background-color: var(--rf-color-secondary);\n border-radius: .5rem;\n}\n\n.rf-scrollbar-x-custom::-webkit-scrollbar {\n background-color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n border-radius: 2rem;\n height: .5rem;\n}\n\n.rf-scrollbar-x-custom::-webkit-scrollbar-thumb {\n background-color: var(--rf-color-primary);\n border-radius: 2rem;\n}\n\n.rf-scrollbar-hidden {\n scrollbar-width: none;\n}\n\n.rf-scrollbar-hidden::-webkit-scrollbar {\n display: none;\n}\n\n.rf-opacity-gradient-b {\n -webkit-mask-image: linear-gradient(#000 50%, #0000 100%);\n}\n\n.rf-opacity-gradient-b-thin {\n -webkit-mask-image: linear-gradient(#797676 84%, #0000 100%);\n}\n\n.rf-opacity-gradient-l {\n -webkit-mask-image: linear-gradient(to left, #000 75%, gray 80%, #0000 85%);\n}\n\n.rf-opacity-gradient-l-thin {\n -webkit-mask-image: linear-gradient(to left, #000 90%, gray 95%, #0000 100%);\n}\n\n.rf-opacity-gradient-h {\n -webkit-mask-image: linear-gradient(to right, #0000 0%, 6%, #000, 94%, #0000 100%);\n}\n\n.rf-card-button {\n border-width: 1px;\n border-color: var(--rf-color-cardButtonBorderDefault);\n background-color: var(--rf-color-cardButtonBackgroundDefault);\n color: var(--rf-color-cardButtonTextDefault);\n border-radius: .3125rem;\n padding: .25rem .5rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .rf-card-button {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-card-button {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n#retorik-container.rf-large .rf-card-button {\n padding: .5rem 1rem;\n}\n\n.rf-card-button:hover {\n cursor: pointer;\n border-color: var(--rf-color-cardButtonBorderHover);\n background-color: var(--rf-color-cardButtonBackgroundHover);\n color: var(--rf-color-cardButtonTextHover);\n}\n\n.rf-card-button-secondary {\n border-width: 1px;\n border-color: var(--rf-color-secondary);\n color: var(--rf-color-secondary);\n background-color: #0000;\n border-radius: .3125rem;\n padding: .25rem .5rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .rf-card-button-secondary {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-card-button-secondary {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n#retorik-container.rf-large .rf-card-button-secondary {\n padding: .5rem 1rem;\n}\n\n.rf-card-button-secondary:hover {\n cursor: pointer;\n border-color: var(--rf-color-secondary);\n background-color: var(--rf-color-secondary);\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n\n.rf-card-button-discover {\n border-width: 1px;\n border-color: var(--rf-color-cardButtonDiscoverBorderDefault);\n background-color: var(--rf-color-cardButtonDiscoverBackgroundDefault);\n color: var(--rf-color-cardButtonDiscoverTextDefault);\n border-radius: .3125rem;\n padding: .5rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .rf-card-button-discover {\n padding-top: .75rem;\n padding-bottom: .75rem;\n}\n\n.rf-card-button-discover:hover {\n cursor: pointer;\n border-color: var(--rf-color-cardButtonDiscoverBorderHover);\n background-color: var(--rf-color-cardButtonDiscoverBackgroundHover);\n color: var(--rf-color-cardButtonDiscoverTextHover);\n}\n\n.rf-card-button-history {\n cursor: default;\n border-width: 1px;\n border-color: var(--rf-color-cardButtonBorderDefault);\n background-color: var(--rf-color-cardButtonBackgroundDefault);\n color: var(--rf-color-cardButtonTextDefault);\n border-radius: .3125rem;\n padding: .25rem .5rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .rf-card-button-history {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-card-button-history {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n#retorik-container.rf-large .rf-card-button-history {\n padding: .5rem 1rem;\n}\n\n.lf-player-container {\n align-items: flex-end;\n width: 100%;\n height: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.rf-input-label {\n text-overflow: ellipsis;\n color: var(--rf-color-formInputTextDefault);\n margin-top: .1rem;\n margin-left: .75rem;\n overflow-x: hidden;\n}\n\n#retorik-container.rf-large .rf-input-label {\n margin-top: .25rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-input-label {\n margin-top: .2rem;\n}\n\n.rf-radio-custom {\n -webkit-appearance: none;\n appearance: none;\n border-width: 2px;\n border-color: var(--rf-color-formInputRadioCheckboxUncheckedBorder);\n background-color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n border-radius: 50%;\n place-content: center;\n width: 1.5rem;\n min-width: 1.5rem;\n height: 1.5rem;\n margin: 0;\n display: grid;\n}\n\n.rf-radio-custom:checked {\n border-color: var(--rf-color-formInputRadioCheckboxCheckedBorder);\n background-color: var(--rf-color-formInputRadioCheckboxCheckedBackground);\n}\n\n#retorik-container.rf-large .rf-radio-custom {\n width: 1.75rem;\n min-width: 1.75rem;\n height: 1.75rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-radio-custom {\n width: 2rem;\n min-width: 2rem;\n height: 2rem;\n}\n\n.rf-radio-custom:before {\n content: \"\";\n --tw-scale-x: 0;\n --tw-scale-y: 0;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n background-color: var(--rf-color-formInputRadioCheckboxCheckedItem);\n border-radius: 50%;\n width: .5rem;\n height: .5rem;\n transition-property: all;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n#retorik-container.rf-large .rf-radio-custom:before {\n width: .75rem;\n height: .75rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-radio-custom:before {\n width: 1rem;\n height: 1rem;\n}\n\n.rf-radio-custom:checked:before {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-input-hidden {\n -webkit-appearance: none;\n appearance: none;\n margin: 0;\n}\n\n.rf-checkbox-custom {\n -webkit-appearance: none;\n appearance: none;\n border-width: 2px;\n border-color: var(--rf-color-formInputRadioCheckboxUncheckedBorder);\n background-color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n border-radius: .3125rem;\n place-content: center;\n width: 1.5rem;\n min-width: 1.5rem;\n height: 1.5rem;\n margin: 0;\n display: grid;\n}\n\n#retorik-container.rf-large .rf-checkbox-custom {\n width: 1.75rem;\n min-width: 1.75rem;\n height: 1.75rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-checkbox-custom {\n width: 2rem;\n min-width: 2rem;\n height: 2rem;\n}\n\n.rf-checkbox-custom:checked {\n border-color: var(--rf-color-formInputRadioCheckboxCheckedBorder);\n background-color: var(--rf-color-formInputRadioCheckboxCheckedBackground);\n}\n\n.rf-toggle-custom {\n -webkit-appearance: none;\n appearance: none;\n background-color: var(--rf-color-black);\n border-radius: 1.5rem;\n width: 3rem;\n min-width: 3rem;\n height: 1.5rem;\n margin: 0;\n position: relative;\n}\n\n.rf-toggle-custom:checked {\n background-color: var(--rf-color-primary);\n}\n\n#retorik-container.rf-large .rf-toggle-custom {\n border-radius: 1.75rem;\n width: 3.5rem;\n min-width: 3.5rem;\n height: 1.75rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-toggle-custom {\n border-radius: 2rem;\n width: 4rem;\n min-width: 4rem;\n height: 2rem;\n}\n\n.rf-toggle-custom:before {\n content: \"\";\n --tw-translate-x: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n border-radius: 50%;\n width: 1rem;\n height: 1rem;\n transition-property: all;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n position: absolute;\n top: .25rem;\n left: .25rem;\n}\n\n#retorik-container.rf-large .rf-toggle-custom:before {\n width: 1.25rem;\n height: 1.25rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-toggle-custom:before {\n width: 1.5rem;\n height: 1.5rem;\n}\n\n.rf-toggle-custom:checked:before {\n --tw-translate-x: 1.5rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n#retorik-container.rf-large .rf-toggle-custom:checked:before {\n --tw-translate-x: 1.75rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n#retorik-container.rf-large.rf-portrait .rf-toggle-custom:checked:before {\n --tw-translate-x: 2rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-select-custom {\n -webkit-appearance: none;\n appearance: none;\n border-width: 2px;\n border-color: var(--rf-color-formInputRadioCheckboxUncheckedBorder);\n background-color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n border-radius: .3125rem;\n margin: 0;\n padding: 1rem;\n}\n\n.rf-select-custom:hover {\n cursor: pointer;\n}\n\n.rf-select-custom:focus-visible {\n border-color: var(--rf-color-formInputRadioCheckboxCheckedBorder);\n}\n\n.rf-slider-custom {\n -webkit-appearance: none;\n -moz-appearance: none;\n outline-offset: 2px;\n border-radius: .5rem;\n outline: 2px solid #0000;\n width: 100%;\n height: .25rem;\n display: block;\n position: relative;\n}\n\n.rf-slider-custom::-webkit-slider-runnable-track {\n -webkit-appearance: none;\n}\n\n.rf-slider-custom::-moz-track {\n -moz-appearance: none;\n}\n\n.rf-slider-custom::-ms-track {\n appearance: none;\n}\n\n.rf-slider-custom::-webkit-slider-thumb {\n -webkit-appearance: none;\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n border-style: none;\n border-radius: 50%;\n width: 1.5rem;\n height: 1.5rem;\n margin-top: -.2rem;\n}\n\n.rf-slider-custom::-webkit-slider-thumb:hover {\n cursor: pointer;\n}\n\n.rf-slider-custom::-moz-range-thumb {\n -webkit-appearance: none;\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n border-style: none;\n border-radius: 50%;\n width: 1.5rem;\n height: 1.5rem;\n margin-top: -.2rem;\n}\n\n.rf-slider-custom::-moz-range-thumb:hover {\n cursor: pointer;\n}\n\n.rf-slider-custom::-ms-thumb {\n appearance: none;\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n border-style: none;\n border-radius: 50%;\n width: 1.5rem;\n height: 1.5rem;\n margin-top: -.2rem;\n}\n\n.rf-slider-custom::-ms-thumb:hover {\n cursor: pointer;\n}\n\n.rf-likert-custom {\n cursor: pointer;\n outline-offset: 2px;\n -webkit-text-stroke-width: 1px;\n -webkit-text-stroke-color: white;\n background-color: #0000;\n border-style: none;\n outline: 2px solid #0000;\n}\n\n.svgButtonMenu > svg * {\n fill: var(--fill);\n}\n\n.webchat__css-custom-properties {\n width: 100%;\n height: 100%;\n}\n\n.placeholder\\:rf-text-black::placeholder {\n color: var(--rf-color-black);\n}\n\n.placeholder\\:rf-opacity-100::placeholder {\n opacity: 1;\n}\n\n.hover\\:rf-cursor-pointer:hover {\n cursor: pointer;\n}\n\n.hover\\:rf-border-truewhite:hover {\n --tw-border-opacity: 1;\n border-color: rgb(255 255 255 / var(--tw-border-opacity));\n}\n\n.hover\\:rf-bg-formInputRadioCheckboxCheckedBackground:hover {\n background-color: var(--rf-color-formInputRadioCheckboxCheckedBackground);\n}\n\n.hover\\:rf-bg-truewhite:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n\n.hover\\:rf-text-formInputRadioCheckboxCheckedItem:hover {\n color: var(--rf-color-formInputRadioCheckboxCheckedItem);\n}\n\n.hover\\:rf-text-truewhite:hover {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-col-span-full {\n grid-column: 1 / -1;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-col-start-1 {\n grid-column-start: 1;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-row-span-1 {\n grid-row: span 1 / span 1;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-row-span-full {\n grid-row: 1 / -1;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-row-start-1 {\n grid-row-start: 1;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-row-start-11 {\n grid-row-start: 11;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-row-end-13 {\n grid-row-end: 13;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-w-5\\/6 {\n width: 83.3333%;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-w-full {\n width: 100%;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-flex-col {\n flex-direction: column;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-overflow-x-auto {\n overflow-x: auto;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-border-r-0 {\n border-right-width: 0;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-py-1 {\n padding-top: .25rem;\n padding-bottom: .25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-absolute {\n position: absolute;\n}\n\n#retorik-container.rf-large .large\\:rf-left-4 {\n left: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-top-8 {\n top: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-col-start-5 {\n grid-column-start: 5;\n}\n\n#retorik-container.rf-large .large\\:rf-col-end-6 {\n grid-column-end: 6;\n}\n\n#retorik-container.rf-large .large\\:rf-col-end-9 {\n grid-column-end: 9;\n}\n\n#retorik-container.rf-large .large\\:rf-row-span-full {\n grid-row: 1 / -1;\n}\n\n#retorik-container.rf-large .large\\:rf-row-start-10 {\n grid-row-start: 10;\n}\n\n#retorik-container.rf-large .large\\:rf-row-start-5 {\n grid-row-start: 5;\n}\n\n#retorik-container.rf-large .large\\:rf-m-8 {\n margin: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-my-0 {\n margin-top: 0;\n margin-bottom: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-my-3 {\n margin-top: .75rem;\n margin-bottom: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mb-0 {\n margin-bottom: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-mb-4 {\n margin-bottom: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mb-6 {\n margin-bottom: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-ml-0 {\n margin-left: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-ml-12 {\n margin-left: 3rem;\n}\n\n#retorik-container.rf-large .large\\:rf-ml-4 {\n margin-left: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-ml-8 {\n margin-left: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mr-3 {\n margin-right: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mr-30 {\n margin-right: 7.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mt-0 {\n margin-top: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-mt-20 {\n margin-top: 5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mt-3 {\n margin-top: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mt-\\[20vh\\] {\n margin-top: 20vh;\n}\n\n#retorik-container.rf-large .large\\:rf-block {\n display: block;\n}\n\n#retorik-container.rf-large .large\\:rf-flex {\n display: flex;\n}\n\n#retorik-container.rf-large .large\\:rf-hidden {\n display: none;\n}\n\n#retorik-container.rf-large .large\\:rf-aspect-video {\n aspect-ratio: 16 / 9;\n}\n\n#retorik-container.rf-large .large\\:rf-h-16 {\n height: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-h-3\\/5 {\n height: 60%;\n}\n\n#retorik-container.rf-large .large\\:rf-h-4 {\n height: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-h-5 {\n height: 1.25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-h-6 {\n height: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-h-8 {\n height: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-h-\\[60vh\\] {\n height: 60vh;\n}\n\n#retorik-container.rf-large .large\\:rf-h-auto {\n height: auto;\n}\n\n#retorik-container.rf-large .large\\:rf-h-full {\n height: 100%;\n}\n\n#retorik-container.rf-large .large\\:rf-max-h-28 {\n max-height: 7rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-1\\/8 {\n width: 12.5%;\n}\n\n#retorik-container.rf-large .large\\:rf-w-14 {\n width: 3.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-16 {\n width: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-3\\/5 {\n width: 60%;\n}\n\n#retorik-container.rf-large .large\\:rf-w-4 {\n width: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-5 {\n width: 1.25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-6 {\n width: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-8 {\n width: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-fit {\n width: fit-content;\n}\n\n#retorik-container.rf-large .large\\:rf-w-full {\n width: 100%;\n}\n\n#retorik-container.rf-large .large\\:rf-min-w-1\\/2 {\n min-width: 50%;\n}\n\n#retorik-container.rf-large .large\\:rf-min-w-1\\/8 {\n min-width: 12.5%;\n}\n\n#retorik-container.rf-large .large\\:rf-min-w-16 {\n min-width: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-min-w-3\\/5 {\n min-width: 60%;\n}\n\n#retorik-container.rf-large .large\\:rf-max-w-1\\/8 {\n max-width: 12.5%;\n}\n\n#retorik-container.rf-large .large\\:rf-max-w-\\[12rem\\] {\n max-width: 12rem;\n}\n\n#retorik-container.rf-large .large\\:rf-max-w-full {\n max-width: 100%;\n}\n\n#retorik-container.rf-large .large\\:rf-grid-cols-5 {\n grid-template-columns: repeat(5, minmax(0, 1fr));\n}\n\n#retorik-container.rf-large .large\\:rf-flex-row {\n flex-direction: row;\n}\n\n#retorik-container.rf-large .large\\:rf-flex-col {\n flex-direction: column;\n}\n\n#retorik-container.rf-large .large\\:rf-items-baseline {\n align-items: baseline;\n}\n\n#retorik-container.rf-large .large\\:rf-justify-start {\n justify-content: flex-start;\n}\n\n#retorik-container.rf-large .large\\:rf-gap-1 {\n gap: .25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-gap-3 {\n gap: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-gap-4 {\n gap: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-gap-6 {\n gap: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-overflow-y-scroll {\n overflow-y: scroll;\n}\n\n#retorik-container.rf-large .large\\:rf-rounded {\n border-radius: .3125rem;\n}\n\n#retorik-container.rf-large .large\\:rf-border-t-0 {\n border-top-width: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-bg-truewhite {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n\n#retorik-container.rf-large .large\\:rf-p-4 {\n padding: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-p-\\[25px\\] {\n padding: 25px;\n}\n\n#retorik-container.rf-large .large\\:rf-p-min1 {\n padding: .1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-px-0 {\n padding-left: 0;\n padding-right: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-px-16 {\n padding-left: 4rem;\n padding-right: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-px-5, #retorik-container.rf-large .large\\:rf-px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-py-0 {\n padding-top: 0;\n padding-bottom: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-py-1 {\n padding-top: .25rem;\n padding-bottom: .25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-py-2 {\n padding-top: .5rem;\n padding-bottom: .5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-py-3 {\n padding-top: .75rem;\n padding-bottom: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-pb-16 {\n padding-bottom: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-pl-4 {\n padding-left: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-pr-4 {\n padding-right: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-pt-16 {\n padding-top: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-pt-3 {\n padding-top: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-text-5xl {\n font-size: 3rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large .large\\:rf-text-6xl {\n font-size: 3.75rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large .large\\:rf-text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-text-basecustom {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large .large\\:rf-text-sm {\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-uppercase {\n text-transform: uppercase;\n}\n\n#retorik-container.rf-tactile .tactile\\:rf-h-4 {\n height: 1rem;\n}\n\n#retorik-container.rf-tactile .tactile\\:rf-h-6 {\n height: 1.5rem;\n}\n\n#retorik-container.rf-tactile .tactile\\:rf-w-6 {\n width: 1.5rem;\n}\n\n#retorik-container.rf-tactile .tactile\\:rf-pt-1\\/5 {\n padding-top: 20%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-bottom-\\[25vh\\] {\n bottom: 25vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-left-4 {\n left: 1rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-top-4 {\n top: 1rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-col-span-full {\n grid-column: 1 / -1;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-col-start-1 {\n grid-column-start: 1;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-col-start-2 {\n grid-column-start: 2;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-col-end-8 {\n grid-column-end: 8;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-col-end-9 {\n grid-column-end: 9;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-span-4 {\n grid-row: span 4 / span 4;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-span-6 {\n grid-row: span 6 / span 6;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-start-5 {\n grid-row-start: 5;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-start-7 {\n grid-row-start: 7;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-end-11 {\n grid-row-end: 11;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-end-7 {\n grid-row-end: 7;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-mt-4 {\n margin-top: 1rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-mt-\\[20vh\\] {\n margin-top: 20vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-mt-\\[25vh\\] {\n margin-top: 25vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-block {\n display: block;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-hidden {\n display: none;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-h-1\\/2 {\n height: 50%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-h-14 {\n height: 3.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-h-24 {\n height: 6rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-h-6 {\n height: 1.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-h-\\[50vh\\] {\n height: 50vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-h-11\\/12 {\n max-height: 91.67%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-h-36 {\n max-height: 9rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-h-\\[18vh\\] {\n max-height: 18vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-h-\\[30vh\\] {\n max-height: 30vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-1\\/2 {\n width: 50%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-14 {\n width: 3.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-16 {\n width: 4rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-24 {\n width: 6rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-4\\/9 {\n width: 45%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-6 {\n width: 1.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-min-w-24 {\n min-width: 6rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-min-w-4\\/9 {\n min-width: 45%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-w-2\\/3 {\n max-width: 66.67%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-w-\\[60\\%\\] {\n max-width: 60%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-flex-row {\n flex-direction: row;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-justify-center {\n justify-content: center;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-gap-6 {\n gap: 1.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-self-end {\n align-self: flex-end;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-border-t {\n border-top-width: 1px;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-border-t-menuBorder {\n --tw-border-opacity: 1;\n border-top-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-py-5 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-pl-0 {\n padding-left: 0;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-pt-8 {\n padding-top: 2rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-pt-\\[16\\.67\\%\\] {\n padding-top: 16.67%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-pt-\\[20vh\\] {\n padding-top: 20vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-text-basecustomuppercase {\n font-size: 1rem;\n line-height: 1.1rem;\n}\n\n#retorik-container.rf-large.rf-tactile .large-tactile\\:rf-mt-0 {\n margin-top: 0;\n}\n\n#retorik-container.rf-large.rf-tactile .large-tactile\\:rf-flex {\n display: flex;\n}\n\n#retorik-container.rf-large.rf-tactile .large-tactile\\:rf-hidden {\n display: none;\n}\n\n#retorik-container.rf-large:not(.rf-portrait) .desktop\\:rf-h-full {\n height: 100%;\n}\n\n@media (height <= 700px) and (width <= 300px) {\n .small-mobile\\:rf-row-span-6 {\n grid-row: span 6 / span 6;\n }\n\n .small-mobile\\:rf-row-span-7 {\n grid-row: span 7 / span 7;\n }\n\n .small-mobile\\:rf-row-start-5 {\n grid-row-start: 5;\n }\n}\n";
|
|
120
|
+
$203b743475f656c9$exports = "*, :before, :after {\n box-sizing: border-box;\n border: 0 solid;\n}\n\n:before, :after {\n --tw-content: \"\";\n}\n\nhtml, :host {\n -webkit-text-size-adjust: 100%;\n -moz-tab-size: 4;\n tab-size: 4;\n font-feature-settings: normal;\n font-variation-settings: normal;\n -webkit-tap-highlight-color: transparent;\n font-family: Calibri, sans-serif;\n line-height: 1.5;\n}\n\nbody {\n line-height: inherit;\n margin: 0;\n}\n\nhr {\n color: inherit;\n border-top-width: 1px;\n height: 0;\n}\n\nabbr:where([title]) {\n text-decoration: underline dotted;\n}\n\nh1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\nb, strong {\n font-weight: bolder;\n}\n\ncode, kbd, samp, pre {\n font-feature-settings: normal;\n font-variation-settings: normal;\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;\n font-size: 1em;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub, sup {\n vertical-align: baseline;\n font-size: 75%;\n line-height: 0;\n position: relative;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n}\n\nbutton, input, optgroup, select, textarea {\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-family: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\n\nbutton, select {\n text-transform: none;\n}\n\nbutton, [type=\"button\"], [type=\"reset\"], [type=\"submit\"] {\n -webkit-appearance: button;\n background-color: #0000;\n background-image: none;\n}\n\n:-moz-focusring {\n outline: auto;\n}\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n::-webkit-inner-spin-button, ::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n}\n\nsummary {\n display: list-item;\n}\n\nblockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol, ul, menu {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\ndialog {\n padding: 0;\n}\n\ntextarea {\n resize: vertical;\n}\n\ninput::placeholder, textarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n\nbutton, [role=\"button\"] {\n cursor: pointer;\n}\n\n:disabled {\n cursor: default;\n}\n\nimg, svg, video, canvas, audio, iframe, embed, object {\n vertical-align: middle;\n display: block;\n}\n\nimg, video {\n max-width: 100%;\n height: auto;\n}\n\n[hidden] {\n display: none;\n}\n\n*, :before, :after, ::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #3b82f680;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n.rf-pointer-events-none {\n pointer-events: none;\n}\n\n.rf-pointer-events-auto {\n pointer-events: auto;\n}\n\n.rf-visible {\n visibility: visible;\n}\n\n.rf-invisible {\n visibility: hidden;\n}\n\n.rf-fixed {\n position: fixed;\n}\n\n.rf-absolute {\n position: absolute;\n}\n\n.rf-relative {\n position: relative;\n}\n\n.-rf-left-6 {\n left: -1.5rem;\n}\n\n.-rf-top-6 {\n top: -1.5rem;\n}\n\n.-rf-top-\\[1\\.15rem\\] {\n top: -1.15rem;\n}\n\n.rf--bottom-2 {\n bottom: -.5rem;\n}\n\n.rf-bottom-0 {\n bottom: 0;\n}\n\n.rf-bottom-1 {\n bottom: .25rem;\n}\n\n.rf-bottom-1\\/4 {\n bottom: 25%;\n}\n\n.rf-bottom-10 {\n bottom: 2.5rem;\n}\n\n.rf-bottom-16 {\n bottom: 4rem;\n}\n\n.rf-bottom-2 {\n bottom: .5rem;\n}\n\n.rf-bottom-4 {\n bottom: 1rem;\n}\n\n.rf-bottom-40 {\n bottom: 10rem;\n}\n\n.rf-left-0 {\n left: 0;\n}\n\n.rf-left-1 {\n left: .25rem;\n}\n\n.rf-left-1\\/2 {\n left: 50%;\n}\n\n.rf-left-2 {\n left: .5rem;\n}\n\n.rf-left-4 {\n left: 1rem;\n}\n\n.rf-right-0 {\n right: 0;\n}\n\n.rf-right-1 {\n right: .25rem;\n}\n\n.rf-right-2 {\n right: .5rem;\n}\n\n.rf-right-3 {\n right: .75rem;\n}\n\n.rf-right-4 {\n right: 1rem;\n}\n\n.rf-right-6 {\n right: 1.5rem;\n}\n\n.rf-right-8 {\n right: 2rem;\n}\n\n.rf-top-0 {\n top: 0;\n}\n\n.rf-top-1 {\n top: .25rem;\n}\n\n.rf-top-1\\/2 {\n top: 50%;\n}\n\n.rf-top-1\\/3 {\n top: 33.3333%;\n}\n\n.rf-top-110 {\n top: 110%;\n}\n\n.rf-top-2 {\n top: .5rem;\n}\n\n.rf-top-4 {\n top: 1rem;\n}\n\n.rf-top-\\[0\\.125rem\\] {\n top: .125rem;\n}\n\n.rf-z-background {\n z-index: 0;\n}\n\n.rf-z-chatbot {\n z-index: 10;\n}\n\n.rf-z-detailedPOI {\n z-index: 2;\n}\n\n.rf-z-dropdown {\n z-index: 30;\n}\n\n.rf-z-exitwidget {\n z-index: 55;\n}\n\n.rf-z-menu {\n z-index: 40;\n}\n\n.rf-z-modal {\n z-index: 50;\n}\n\n.rf-z-overlay {\n z-index: 40;\n}\n\n.rf-z-ui {\n z-index: 20;\n}\n\n.rf-z-util {\n z-index: 1;\n}\n\n.rf-col-span-2 {\n grid-column: span 2 / span 2;\n}\n\n.rf-col-span-3 {\n grid-column: span 3 / span 3;\n}\n\n.rf-col-span-6 {\n grid-column: span 6 / span 6;\n}\n\n.rf-col-span-full {\n grid-column: 1 / -1;\n}\n\n.rf-col-start-1 {\n grid-column-start: 1;\n}\n\n.rf-col-start-2 {\n grid-column-start: 2;\n}\n\n.rf-col-start-4 {\n grid-column-start: 4;\n}\n\n.rf-col-start-5 {\n grid-column-start: 5;\n}\n\n.rf-col-end-13 {\n grid-column-end: 13;\n}\n\n.rf-col-end-2 {\n grid-column-end: 2;\n}\n\n.rf-col-end-9 {\n grid-column-end: 9;\n}\n\n.rf-row-span-1 {\n grid-row: span 1 / span 1;\n}\n\n.rf-row-span-2 {\n grid-row: span 2 / span 2;\n}\n\n.rf-row-span-3 {\n grid-row: span 3 / span 3;\n}\n\n.rf-row-span-5 {\n grid-row: span 5 / span 5;\n}\n\n.rf-row-span-6 {\n grid-row: span 6 / span 6;\n}\n\n.rf-row-span-9 {\n grid-row: span 9 / span 9;\n}\n\n.rf-row-span-full {\n grid-row: 1 / -1;\n}\n\n.rf-row-start-1 {\n grid-row-start: 1;\n}\n\n.rf-row-start-12 {\n grid-row-start: 12;\n}\n\n.rf-row-start-2 {\n grid-row-start: 2;\n}\n\n.rf-row-start-3 {\n grid-row-start: 3;\n}\n\n.rf-row-start-4 {\n grid-row-start: 4;\n}\n\n.rf-row-start-6 {\n grid-row-start: 6;\n}\n\n.rf-row-start-9 {\n grid-row-start: 9;\n}\n\n.rf-row-end-12 {\n grid-row-end: 12;\n}\n\n.rf-row-end-13 {\n grid-row-end: 13;\n}\n\n.rf-row-end-2 {\n grid-row-end: 2;\n}\n\n.rf-row-end-3 {\n grid-row-end: 3;\n}\n\n.rf-row-end-4 {\n grid-row-end: 4;\n}\n\n.rf-row-end-5 {\n grid-row-end: 5;\n}\n\n.rf-float-right {\n float: right;\n}\n\n.rf-m-0 {\n margin: 0;\n}\n\n.rf-m-4 {\n margin: 1rem;\n}\n\n.rf-m-auto {\n margin: auto;\n}\n\n.-rf-mx-6 {\n margin-left: -1.5rem;\n margin-right: -1.5rem;\n}\n\n.rf-mx-0 {\n margin-left: 0;\n margin-right: 0;\n}\n\n.rf-mx-2 {\n margin-left: .5rem;\n margin-right: .5rem;\n}\n\n.rf-mx-3 {\n margin-left: .75rem;\n margin-right: .75rem;\n}\n\n.rf-mx-8 {\n margin-left: 2rem;\n margin-right: 2rem;\n}\n\n.rf-mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n\n.rf-my-1 {\n margin-top: .25rem;\n margin-bottom: .25rem;\n}\n\n.rf-my-2 {\n margin-top: .5rem;\n margin-bottom: .5rem;\n}\n\n.rf-my-4 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n}\n\n.rf-my-auto {\n margin-top: auto;\n margin-bottom: auto;\n}\n\n.-rf-mb-4 {\n margin-bottom: -1rem;\n}\n\n.-rf-ml-2 {\n margin-left: -.5rem;\n}\n\n.rf-mb-0 {\n margin-bottom: 0;\n}\n\n.rf-mb-1 {\n margin-bottom: .25rem;\n}\n\n.rf-mb-12 {\n margin-bottom: 3rem;\n}\n\n.rf-mb-16 {\n margin-bottom: 4rem;\n}\n\n.rf-mb-2 {\n margin-bottom: .5rem;\n}\n\n.rf-mb-26 {\n margin-bottom: 6.5rem;\n}\n\n.rf-mb-28 {\n margin-bottom: 7rem;\n}\n\n.rf-mb-3 {\n margin-bottom: .75rem;\n}\n\n.rf-mb-30 {\n margin-bottom: 7.5rem;\n}\n\n.rf-mb-4 {\n margin-bottom: 1rem;\n}\n\n.rf-mb-5 {\n margin-bottom: 1.25rem;\n}\n\n.rf-mb-6 {\n margin-bottom: 1.5rem;\n}\n\n.rf-mb-8 {\n margin-bottom: 2rem;\n}\n\n.rf-ml-1 {\n margin-left: .25rem;\n}\n\n.rf-ml-2 {\n margin-left: .5rem;\n}\n\n.rf-ml-4 {\n margin-left: 1rem;\n}\n\n.rf-ml-6 {\n margin-left: 1.5rem;\n}\n\n.rf-mr-1 {\n margin-right: .25rem;\n}\n\n.rf-mr-2 {\n margin-right: .5rem;\n}\n\n.rf-mr-3 {\n margin-right: .75rem;\n}\n\n.rf-mr-4 {\n margin-right: 1rem;\n}\n\n.rf-mr-5 {\n margin-right: 1.25rem;\n}\n\n.rf-mt-1 {\n margin-top: .25rem;\n}\n\n.rf-mt-10 {\n margin-top: 2.5rem;\n}\n\n.rf-mt-2 {\n margin-top: .5rem;\n}\n\n.rf-mt-4 {\n margin-top: 1rem;\n}\n\n.rf-mt-5 {\n margin-top: 1.25rem;\n}\n\n.rf-mt-8 {\n margin-top: 2rem;\n}\n\n.rf-mt-\\[0\\.2rem\\] {\n margin-top: .2rem;\n}\n\n.rf-mt-auto {\n margin-top: auto;\n}\n\n.rf-line-clamp-1 {\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-2 {\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-inline {\n display: inline;\n}\n\n.rf-flex {\n display: flex;\n}\n\n.rf-grid {\n display: grid;\n}\n\n.rf-hidden {\n display: none;\n}\n\n.rf-aspect-\\[4\\/3\\] {\n aspect-ratio: 4 / 3;\n}\n\n.rf-aspect-square {\n aspect-ratio: 1;\n}\n\n.rf-aspect-video {\n aspect-ratio: 16 / 9;\n}\n\n.rf-h-0 {\n height: 0;\n}\n\n.rf-h-1 {\n height: .25rem;\n}\n\n.rf-h-1\\/2 {\n height: 50%;\n}\n\n.rf-h-1\\/3 {\n height: 33.3333%;\n}\n\n.rf-h-12 {\n height: 3rem;\n}\n\n.rf-h-14 {\n height: 3.5rem;\n}\n\n.rf-h-16 {\n height: 4rem;\n}\n\n.rf-h-18 {\n height: 4.5rem;\n}\n\n.rf-h-2 {\n height: .5rem;\n}\n\n.rf-h-2\\/3 {\n height: 66.6667%;\n}\n\n.rf-h-24 {\n height: 6rem;\n}\n\n.rf-h-3 {\n height: .75rem;\n}\n\n.rf-h-3\\/10 {\n height: 30%;\n}\n\n.rf-h-32 {\n height: 8rem;\n}\n\n.rf-h-36 {\n height: 9rem;\n}\n\n.rf-h-4 {\n height: 1rem;\n}\n\n.rf-h-48 {\n height: 12rem;\n}\n\n.rf-h-5 {\n height: 1.25rem;\n}\n\n.rf-h-6 {\n height: 1.5rem;\n}\n\n.rf-h-7 {\n height: 1.75rem;\n}\n\n.rf-h-8 {\n height: 2rem;\n}\n\n.rf-h-9 {\n height: 2.25rem;\n}\n\n.rf-h-\\[0\\.875rem\\] {\n height: .875rem;\n}\n\n.rf-h-\\[calc\\(50vw-3rem\\)\\] {\n height: calc(50vw - 3rem);\n}\n\n.rf-h-fit {\n height: fit-content;\n}\n\n.rf-h-full {\n height: 100%;\n}\n\n.rf-h-max {\n height: max-content;\n}\n\n.rf-h-screen {\n height: 100vh;\n}\n\n.rf-max-h-12 {\n max-height: 3rem;\n}\n\n.rf-max-h-28 {\n max-height: 7rem;\n}\n\n.rf-max-h-4\\/5 {\n max-height: 80%;\n}\n\n.rf-max-h-48 {\n max-height: 12rem;\n}\n\n.rf-max-h-6 {\n max-height: 1.5rem;\n}\n\n.rf-max-h-full {\n max-height: 100%;\n}\n\n.rf-max-h-qrcode {\n max-height: 120px;\n}\n\n.rf-max-h-screen {\n max-height: 100vh;\n}\n\n.rf-min-h-12 {\n min-height: 3rem;\n}\n\n.rf-min-h-16 {\n min-height: 4rem;\n}\n\n.rf-min-h-2\\/5 {\n min-height: 40%;\n}\n\n.rf-min-h-6 {\n min-height: 1.5rem;\n}\n\n.rf-min-h-full {\n min-height: 100%;\n}\n\n.rf-min-h-inherit {\n min-height: inherit;\n}\n\n.rf-w-0 {\n width: 0;\n}\n\n.rf-w-1\\/2 {\n width: 50%;\n}\n\n.rf-w-1\\/3 {\n width: 33.3333%;\n}\n\n.rf-w-1\\/4 {\n width: 25%;\n}\n\n.rf-w-11\\/12 {\n width: 91.6667%;\n}\n\n.rf-w-12 {\n width: 3rem;\n}\n\n.rf-w-16 {\n width: 4rem;\n}\n\n.rf-w-18 {\n width: 4.5rem;\n}\n\n.rf-w-2 {\n width: .5rem;\n}\n\n.rf-w-2\\/3 {\n width: 66.6667%;\n}\n\n.rf-w-20 {\n width: 5rem;\n}\n\n.rf-w-24 {\n width: 6rem;\n}\n\n.rf-w-3 {\n width: .75rem;\n}\n\n.rf-w-3\\/20 {\n width: 15%;\n}\n\n.rf-w-3\\/4 {\n width: 75%;\n}\n\n.rf-w-3\\/5 {\n width: 60%;\n}\n\n.rf-w-32 {\n width: 8rem;\n}\n\n.rf-w-36 {\n width: 9rem;\n}\n\n.rf-w-4 {\n width: 1rem;\n}\n\n.rf-w-4\\/9 {\n width: 45%;\n}\n\n.rf-w-48 {\n width: 12rem;\n}\n\n.rf-w-5 {\n width: 1.25rem;\n}\n\n.rf-w-6 {\n width: 1.5rem;\n}\n\n.rf-w-7 {\n width: 1.75rem;\n}\n\n.rf-w-8 {\n width: 2rem;\n}\n\n.rf-w-9 {\n width: 2.25rem;\n}\n\n.rf-w-\\[45\\%\\] {\n width: 45%;\n}\n\n.rf-w-\\[45ch\\] {\n width: 45ch;\n}\n\n.rf-w-\\[90\\%\\] {\n width: 90%;\n}\n\n.rf-w-\\[calc\\(100\\%-3rem\\)\\] {\n width: calc(100% - 3rem);\n}\n\n.rf-w-fit {\n width: fit-content;\n}\n\n.rf-w-full {\n width: 100%;\n}\n\n.rf-w-max {\n width: max-content;\n}\n\n.rf-w-screen {\n width: 100vw;\n}\n\n.rf-min-w-11\\/12 {\n min-width: 91.7%;\n}\n\n.rf-min-w-12 {\n min-width: 3rem;\n}\n\n.rf-min-w-24 {\n min-width: 6rem;\n}\n\n.rf-min-w-3\\/20 {\n min-width: 15%;\n}\n\n.rf-min-w-6 {\n min-width: 1.5rem;\n}\n\n.rf-min-w-\\[45\\%\\] {\n min-width: 45%;\n}\n\n.rf-min-w-full {\n min-width: 100%;\n}\n\n.rf-max-w-1\\/2 {\n max-width: 50%;\n}\n\n.rf-max-w-16 {\n max-width: 4rem;\n}\n\n.rf-max-w-3\\/20 {\n max-width: 15%;\n}\n\n.rf-max-w-6 {\n max-width: 1.5rem;\n}\n\n.rf-max-w-7\\/10 {\n max-width: 70%;\n}\n\n.rf-max-w-\\[100vw\\] {\n max-width: 100vw;\n}\n\n.rf-max-w-\\[45\\%\\] {\n max-width: 45%;\n}\n\n.rf-max-w-\\[70vw\\] {\n max-width: 70vw;\n}\n\n.rf-max-w-\\[calc\\(100\\%-2rem\\)\\] {\n max-width: calc(100% - 2rem);\n}\n\n.rf-max-w-full {\n max-width: 100%;\n}\n\n.rf-max-w-none {\n max-width: none;\n}\n\n.rf-flex-1 {\n flex: 1;\n}\n\n.rf-flex-\\[0_0_40\\%\\] {\n flex: 0 0 40%;\n}\n\n.rf-flex-\\[2_1_0\\%\\] {\n flex: 2;\n}\n\n.rf-flex-\\[4_1_0\\%\\] {\n flex: 4;\n}\n\n.rf-origin-center {\n transform-origin: center;\n}\n\n.-rf-translate-x-1\\/2 {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.-rf-translate-y-1\\/2 {\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf--translate-x-1\\/2 {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-translate-x-1 {\n --tw-translate-x: .25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-translate-x-5 {\n --tw-translate-x: 1.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf--rotate-90 {\n --tw-rotate: -90deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-rotate-0 {\n --tw-rotate: 0deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-rotate-180 {\n --tw-rotate: 180deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-rotate-90 {\n --tw-rotate: 90deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-scale-0 {\n --tw-scale-x: 0;\n --tw-scale-y: 0;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n@keyframes rf-blink {\n 0%, 100% {\n opacity: .2;\n }\n\n 50% {\n opacity: 1;\n }\n}\n\n.rf-animate-blink {\n animation: 1.4s infinite both rf-blink;\n}\n\n@keyframes rf-fadeIn {\n 0% {\n opacity: 0;\n }\n\n 100% {\n opacity: 1;\n }\n}\n\n.rf-animate-fadeIn {\n animation: .5s .2s backwards rf-fadeIn;\n}\n\n@keyframes rf-hScroll {\n 0% {\n transform: translateX(0);\n }\n\n 100% {\n transform: translateX(calc(-100% - 2rem));\n }\n}\n\n.rf-animate-hScroll {\n animation: 20s linear infinite rf-hScroll;\n}\n\n@keyframes rf-loader {\n 0% {\n box-shadow: 0 1.5rem 0 -1.5rem var(--rf-color-loader-animation);\n }\n\n 40% {\n box-shadow: 0 1.5rem 0 -.3rem var(--rf-color-loader-animation);\n }\n\n 80% {\n box-shadow: 0 1.5rem 0 -1.5rem var(--rf-color-loader-animation);\n }\n\n 100% {\n box-shadow: 0 1.5rem 0 -1.5rem var(--rf-color-loader-animation);\n }\n}\n\n.rf-animate-loader {\n animation: 1.8s ease-in-out -.16s infinite both rf-loader;\n}\n\n.rf-animate-loaderFadeIn {\n animation: 2s rf-fadeIn;\n}\n\n@keyframes rf-fadeOut {\n 0% {\n opacity: 1;\n }\n\n 100% {\n opacity: 0;\n }\n}\n\n.rf-animate-loaderFadeOut {\n animation: 1s rf-fadeOut;\n}\n\n@keyframes rf-slideBottom {\n 0% {\n opacity: 0;\n transform: translateX(0)translateY(20px);\n }\n\n 100% {\n opacity: 1;\n transform: translateX(0)translateY(0);\n }\n}\n\n.rf-animate-slideBottom {\n animation: .5s .2s backwards rf-slideBottom;\n}\n\n@keyframes rf-spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n.rf-animate-spin {\n animation: 1s linear infinite rf-spin;\n}\n\n.rf-cursor-pointer {\n cursor: pointer;\n}\n\n.rf-select-none {\n user-select: none;\n}\n\n.rf-resize-none {\n resize: none;\n}\n\n.rf-scroll-pb-4 {\n scroll-padding-bottom: 1rem;\n}\n\n.rf-grid-cols-1 {\n grid-template-columns: repeat(1, minmax(0, 1fr));\n}\n\n.rf-grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n\n.rf-grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n\n.rf-grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n\n.rf-grid-cols-6 {\n grid-template-columns: repeat(6, minmax(0, 1fr));\n}\n\n.rf-grid-cols-7 {\n grid-template-columns: repeat(7, minmax(0, 1fr));\n}\n\n.rf-grid-cols-8 {\n grid-template-columns: repeat(8, minmax(0, 1fr));\n}\n\n.rf-grid-cols-headerContainer {\n grid-template-columns: 7rem 1fr 1fr 1fr;\n}\n\n.rf-grid-cols-printingPreview {\n grid-template-columns: minmax(0, 1fr) 3rem;\n}\n\n.rf-grid-cols-routes {\n grid-template-columns: repeat(3, max-content);\n}\n\n.rf-grid-rows-1 {\n grid-template-rows: repeat(1, minmax(0, 1fr));\n}\n\n.rf-grid-rows-2 {\n grid-template-rows: repeat(2, minmax(0, 1fr));\n}\n\n.rf-grid-rows-container {\n grid-template-rows: repeat(12, minmax(0, 1fr));\n}\n\n.rf-grid-rows-headerContainer {\n grid-template-rows: repeat(3, minmax(0, 1fr));\n}\n\n.rf-flex-row {\n flex-direction: row;\n}\n\n.rf-flex-col {\n flex-direction: column;\n}\n\n.rf-flex-col-reverse {\n flex-direction: column-reverse;\n}\n\n.rf-flex-wrap {\n flex-wrap: wrap;\n}\n\n.rf-flex-nowrap {\n flex-wrap: nowrap;\n}\n\n.rf-content-around {\n align-content: space-around;\n}\n\n.rf-items-start {\n align-items: flex-start;\n}\n\n.rf-items-end {\n align-items: flex-end;\n}\n\n.rf-items-center {\n align-items: center;\n}\n\n.rf-justify-start {\n justify-content: flex-start;\n}\n\n.rf-justify-end {\n justify-content: flex-end;\n}\n\n.rf-justify-center {\n justify-content: center;\n}\n\n.rf-justify-between {\n justify-content: space-between;\n}\n\n.rf-justify-around {\n justify-content: space-around;\n}\n\n.rf-justify-evenly {\n justify-content: space-evenly;\n}\n\n.rf-gap-1 {\n gap: .25rem;\n}\n\n.rf-gap-12 {\n gap: 3rem;\n}\n\n.rf-gap-2 {\n gap: .5rem;\n}\n\n.rf-gap-3 {\n gap: .75rem;\n}\n\n.rf-gap-4 {\n gap: 1rem;\n}\n\n.rf-gap-5 {\n gap: 1.25rem;\n}\n\n.rf-gap-8 {\n gap: 2rem;\n}\n\n.rf-gap-9 {\n gap: 2.25rem;\n}\n\n.rf-divide-x > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-x-reverse: 0;\n border-right-width: calc(1px * var(--tw-divide-x-reverse));\n border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));\n}\n\n.rf-self-auto {\n align-self: auto;\n}\n\n.rf-self-start {\n align-self: flex-start;\n}\n\n.rf-self-end {\n align-self: flex-end;\n}\n\n.rf-self-center {\n align-self: center;\n}\n\n.rf-justify-self-start {\n justify-self: start;\n}\n\n.rf-justify-self-end {\n justify-self: end;\n}\n\n.rf-justify-self-center {\n justify-self: center;\n}\n\n.rf-overflow-hidden {\n overflow: hidden;\n}\n\n.rf-overflow-clip {\n overflow: clip;\n}\n\n.rf-overflow-x-auto {\n overflow-x: auto;\n}\n\n.rf-overflow-y-auto {\n overflow-y: auto;\n}\n\n.rf-overflow-x-hidden {\n overflow-x: hidden;\n}\n\n.rf-overflow-y-hidden {\n overflow-y: hidden;\n}\n\n.rf-overflow-y-visible {\n overflow-y: visible;\n}\n\n.rf-overflow-x-scroll {\n overflow-x: scroll;\n}\n\n.rf-overflow-y-scroll {\n overflow-y: scroll;\n}\n\n.rf-truncate {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n\n.rf-whitespace-nowrap {\n white-space: nowrap;\n}\n\n.rf-rounded {\n border-radius: .3125rem;\n}\n\n.rf-rounded-6 {\n border-radius: 1.5rem;\n}\n\n.rf-rounded-8 {\n border-radius: 2rem;\n}\n\n.rf-rounded-\\[20px\\] {\n border-radius: 20px;\n}\n\n.rf-rounded-full {\n border-radius: 9999px;\n}\n\n.rf-rounded-half {\n border-radius: 50%;\n}\n\n.rf-rounded-lg {\n border-radius: .5rem;\n}\n\n.rf-rounded-max {\n border-radius: 100%;\n}\n\n.rf-rounded-b {\n border-bottom-right-radius: .3125rem;\n border-bottom-left-radius: .3125rem;\n}\n\n.rf-rounded-l-lg {\n border-top-left-radius: .5rem;\n border-bottom-left-radius: .5rem;\n}\n\n.rf-border {\n border-width: 1px;\n}\n\n.rf-border-0 {\n border-width: 0;\n}\n\n.rf-border-2 {\n border-width: 2px;\n}\n\n.rf-border-y {\n border-top-width: 1px;\n border-bottom-width: 1px;\n}\n\n.rf-border-b {\n border-bottom-width: 1px;\n}\n\n.rf-border-b-2 {\n border-bottom-width: 2px;\n}\n\n.rf-border-l {\n border-left-width: 1px;\n}\n\n.rf-border-r {\n border-right-width: 1px;\n}\n\n.rf-border-t {\n border-top-width: 1px;\n}\n\n.rf-border-t-0 {\n border-top-width: 0;\n}\n\n.rf-border-none {\n border-style: none;\n}\n\n.rf-border-\\[\\#00000029\\] {\n border-color: #00000029;\n}\n\n.rf-border-\\[\\#9FA2AA\\] {\n --tw-border-opacity: 1;\n border-color: rgb(159 162 170 / var(--tw-border-opacity));\n}\n\n.rf-border-\\[\\#C7C6C6\\] {\n --tw-border-opacity: 1;\n border-color: rgb(199 198 198 / var(--tw-border-opacity));\n}\n\n.rf-border-black {\n border-color: var(--rf-color-black);\n}\n\n.rf-border-cardButtonBorderDefault {\n border-color: var(--rf-color-cardButtonBorderDefault);\n}\n\n.rf-border-cardButtonBorderHover {\n border-color: var(--rf-color-cardButtonBorderHover);\n}\n\n.rf-border-cardFrameBorder {\n border-color: var(--rf-color-cardFrameBorder);\n}\n\n.rf-border-formInputButtonBorderDefault {\n border-color: var(--rf-color-formInputButtonBorderDefault);\n}\n\n.rf-border-formInputButtonBorderHover {\n border-color: var(--rf-color-formInputButtonBorderHover);\n}\n\n.rf-border-formInputRadioCheckboxCheckedBorder {\n border-color: var(--rf-color-formInputRadioCheckboxCheckedBorder);\n}\n\n.rf-border-formInputRadioCheckboxUncheckedBorder {\n border-color: var(--rf-color-formInputRadioCheckboxUncheckedBorder);\n}\n\n.rf-border-gray {\n --tw-border-opacity: 1;\n border-color: rgb(128 128 128 / var(--tw-border-opacity));\n}\n\n.rf-border-menuBorder {\n --tw-border-opacity: 1;\n border-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n.rf-border-primary {\n border-color: var(--rf-color-primary);\n}\n\n.rf-border-red-700 {\n --tw-border-opacity: 1;\n border-color: rgb(185 28 28 / var(--tw-border-opacity));\n}\n\n.rf-border-secondary {\n border-color: var(--rf-color-secondary);\n}\n\n.rf-border-templateCheckboxBorder {\n --tw-border-opacity: 1;\n border-color: rgb(112 112 112 / var(--tw-border-opacity));\n}\n\n.rf-border-trueblack {\n --tw-border-opacity: 1;\n border-color: rgb(0 0 0 / var(--tw-border-opacity));\n}\n\n.rf-border-truewhite {\n --tw-border-opacity: 1;\n border-color: rgb(255 255 255 / var(--tw-border-opacity));\n}\n\n.rf-border-x-primary {\n border-left-color: var(--rf-color-primary);\n border-right-color: var(--rf-color-primary);\n}\n\n.rf-border-y-menuBorder {\n --tw-border-opacity: 1;\n border-top-color: rgb(224 225 231 / var(--tw-border-opacity));\n border-bottom-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n.rf-border-b-\\[\\#C4C5C8\\] {\n --tw-border-opacity: 1;\n border-bottom-color: rgb(196 197 200 / var(--tw-border-opacity));\n}\n\n.rf-border-b-black {\n border-bottom-color: var(--rf-color-black);\n}\n\n.rf-border-b-menuBorder {\n --tw-border-opacity: 1;\n border-bottom-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n.rf-border-b-silver {\n --tw-border-opacity: 1;\n border-bottom-color: rgb(192 192 192 / var(--tw-border-opacity));\n}\n\n.rf-border-b-transparent {\n border-bottom-color: #0000;\n}\n\n.rf-border-l-menuBorder {\n --tw-border-opacity: 1;\n border-left-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n.rf-border-r-silver {\n --tw-border-opacity: 1;\n border-right-color: rgb(192 192 192 / var(--tw-border-opacity));\n}\n\n.rf-border-t-\\[\\#CBC9C9\\] {\n --tw-border-opacity: 1;\n border-top-color: rgb(203 201 201 / var(--tw-border-opacity));\n}\n\n.rf-border-t-menuBorder {\n --tw-border-opacity: 1;\n border-top-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n.rf-bg-\\[\\#00000050\\] {\n background-color: #00000050;\n}\n\n.rf-bg-\\[\\#F0F0F0\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(240 240 240 / var(--tw-bg-opacity));\n}\n\n.rf-bg-\\[\\#F8F8F8\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(248 248 248 / var(--tw-bg-opacity));\n}\n\n.rf-bg-black {\n background-color: var(--rf-color-black);\n}\n\n.rf-bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n\n.rf-bg-cardButtonBackgroundDefault {\n background-color: var(--rf-color-cardButtonBackgroundDefault);\n}\n\n.rf-bg-cardButtonBackgroundHover {\n background-color: var(--rf-color-cardButtonBackgroundHover);\n}\n\n.rf-bg-cardFrameBackground {\n background-color: var(--rf-color-cardFrameBackground);\n}\n\n.rf-bg-formInputButtonBackgroundDefault {\n background-color: var(--rf-color-formInputButtonBackgroundDefault);\n}\n\n.rf-bg-formInputButtonBackgroundHover {\n background-color: var(--rf-color-formInputButtonBackgroundHover);\n}\n\n.rf-bg-formInputRadioCheckboxUncheckedBackground {\n background-color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n}\n\n.rf-bg-gray {\n --tw-bg-opacity: 1;\n background-color: rgb(128 128 128 / var(--tw-bg-opacity));\n}\n\n.rf-bg-primary {\n background-color: var(--rf-color-primary);\n}\n\n.rf-bg-red-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(220 38 38 / var(--tw-bg-opacity));\n}\n\n.rf-bg-secondary {\n background-color: var(--rf-color-secondary);\n}\n\n.rf-bg-silver {\n --tw-bg-opacity: 1;\n background-color: rgb(192 192 192 / var(--tw-bg-opacity));\n}\n\n.rf-bg-templateBackground {\n --tw-bg-opacity: 1;\n background-color: rgb(241 241 241 / var(--tw-bg-opacity));\n}\n\n.rf-bg-templateEmptyCard {\n --tw-bg-opacity: 1;\n background-color: rgb(232 231 231 / var(--tw-bg-opacity));\n}\n\n.rf-bg-textModePanelBackground {\n background-color: var(--rf-color-textModePanelBackground);\n}\n\n.rf-bg-transparent {\n background-color: #0000;\n}\n\n.rf-bg-truewhite {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n\n.rf-bg-vocalModeSubtitlesBackground {\n background-color: var(--rf-color-vocalModeSubtitlesBackground);\n}\n\n.rf-bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(247 243 246 / var(--tw-bg-opacity));\n}\n\n.rf-bg-opacity-30 {\n --tw-bg-opacity: .3;\n}\n\n.rf-bg-opacity-50 {\n --tw-bg-opacity: .5;\n}\n\n.rf-bg-opacity-80 {\n --tw-bg-opacity: .8;\n}\n\n.rf-object-cover {\n object-fit: cover;\n}\n\n.rf-p-0 {\n padding: 0;\n}\n\n.rf-p-1 {\n padding: .25rem;\n}\n\n.rf-p-2 {\n padding: .5rem;\n}\n\n.rf-p-4 {\n padding: 1rem;\n}\n\n.rf-p-6 {\n padding: 1.5rem;\n}\n\n.rf-p-\\[25px\\] {\n padding: 25px;\n}\n\n.rf-p-\\[7px_12px\\] {\n padding: 7px 12px;\n}\n\n.rf-px-1 {\n padding-left: .25rem;\n padding-right: .25rem;\n}\n\n.rf-px-2 {\n padding-left: .5rem;\n padding-right: .5rem;\n}\n\n.rf-px-3 {\n padding-left: .75rem;\n padding-right: .75rem;\n}\n\n.rf-px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n.rf-px-5, .rf-px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n\n.rf-px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n\n.rf-py-0 {\n padding-top: 0;\n padding-bottom: 0;\n}\n\n.rf-py-1 {\n padding-top: .25rem;\n padding-bottom: .25rem;\n}\n\n.rf-py-12 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n}\n\n.rf-py-2 {\n padding-top: .5rem;\n padding-bottom: .5rem;\n}\n\n.rf-py-3 {\n padding-top: .75rem;\n padding-bottom: .75rem;\n}\n\n.rf-py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n.rf-py-6 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n}\n\n.rf-pb-10 {\n padding-bottom: 2.5rem;\n}\n\n.rf-pb-12 {\n padding-bottom: 3rem;\n}\n\n.rf-pb-14 {\n padding-bottom: 3.5rem;\n}\n\n.rf-pb-2 {\n padding-bottom: .5rem;\n}\n\n.rf-pb-3 {\n padding-bottom: .75rem;\n}\n\n.rf-pb-4 {\n padding-bottom: 1rem;\n}\n\n.rf-pb-5, .rf-pb-6 {\n padding-bottom: 1.5rem;\n}\n\n.rf-pb-8 {\n padding-bottom: 2rem;\n}\n\n.rf-pb-\\[15vh\\] {\n padding-bottom: 15vh;\n}\n\n.rf-pl-0 {\n padding-left: 0;\n}\n\n.rf-pl-1 {\n padding-left: .25rem;\n}\n\n.rf-pl-2 {\n padding-left: .5rem;\n}\n\n.rf-pl-4 {\n padding-left: 1rem;\n}\n\n.rf-pl-6 {\n padding-left: 1.5rem;\n}\n\n.rf-pr-1 {\n padding-right: .25rem;\n}\n\n.rf-pr-2 {\n padding-right: .5rem;\n}\n\n.rf-pr-4 {\n padding-right: 1rem;\n}\n\n.rf-pt-1 {\n padding-top: .25rem;\n}\n\n.rf-pt-11\\/20 {\n padding-top: 55%;\n}\n\n.rf-pt-12 {\n padding-top: 3rem;\n}\n\n.rf-pt-14 {\n padding-top: 3.5rem;\n}\n\n.rf-pt-2 {\n padding-top: .5rem;\n}\n\n.rf-pt-24 {\n padding-top: 6rem;\n}\n\n.rf-pt-3 {\n padding-top: .75rem;\n}\n\n.rf-pt-4 {\n padding-top: 1rem;\n}\n\n.rf-pt-8 {\n padding-top: 2rem;\n}\n\n.rf-pt-\\[25vh\\] {\n padding-top: 25vh;\n}\n\n.rf-pt-\\[26vh\\] {\n padding-top: 26vh;\n}\n\n.rf-text-left {\n text-align: left;\n}\n\n.rf-text-center {\n text-align: center;\n}\n\n.rf-text-right {\n text-align: right;\n}\n\n.rf-font-default {\n font-family: Calibri, sans-serif;\n}\n\n.rf-text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n\n.rf-text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n\n.rf-text-4xl {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n.rf-text-5xl {\n font-size: 3rem;\n line-height: 1;\n}\n\n.rf-text-7xl {\n font-size: 4.5rem;\n line-height: 1;\n}\n\n.rf-text-8xl {\n font-size: 6rem;\n line-height: 1;\n}\n\n.rf-text-\\[0\\.5rem\\] {\n font-size: .5rem;\n}\n\n.rf-text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n.rf-text-basecustom {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n.rf-text-lgcustom {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n.rf-text-sm {\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.rf-text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n\n.rf-text-xs {\n font-size: .75rem;\n line-height: 1rem;\n}\n\n.rf-text-xsl {\n font-size: .7rem;\n line-height: 1rem;\n}\n\n.rf-text-xsm {\n font-size: .6rem;\n}\n\n.rf-font-bold {\n font-weight: 600;\n}\n\n.rf-font-medium {\n font-weight: 300;\n}\n\n.rf-font-semibold {\n font-weight: 400;\n}\n\n.rf-uppercase {\n text-transform: uppercase;\n}\n\n.rf-capitalize {\n text-transform: capitalize;\n}\n\n.rf-normal-case {\n text-transform: none;\n}\n\n.rf-italic {\n font-style: italic;\n}\n\n.rf-text-\\[\\#575F6B\\] {\n --tw-text-opacity: 1;\n color: rgb(87 95 107 / var(--tw-text-opacity));\n}\n\n.rf-text-\\[\\#9A9A9A\\] {\n --tw-text-opacity: 1;\n color: rgb(154 154 154 / var(--tw-text-opacity));\n}\n\n.rf-text-\\[\\#A4A7AF\\] {\n --tw-text-opacity: 1;\n color: rgb(164 167 175 / var(--tw-text-opacity));\n}\n\n.rf-text-black {\n color: var(--rf-color-black);\n}\n\n.rf-text-cardButtonTextDefault {\n color: var(--rf-color-cardButtonTextDefault);\n}\n\n.rf-text-cardFrameText {\n color: var(--rf-color-cardFrameText);\n}\n\n.rf-text-formInputButtonTextDefault {\n color: var(--rf-color-formInputButtonTextDefault);\n}\n\n.rf-text-formInputButtonTextHover {\n color: var(--rf-color-formInputButtonTextHover);\n}\n\n.rf-text-formInputRadioCheckboxUncheckedBackground {\n color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n}\n\n.rf-text-formInputTextDefault {\n color: var(--rf-color-formInputTextDefault);\n}\n\n.rf-text-gray {\n --tw-text-opacity: 1;\n color: rgb(128 128 128 / var(--tw-text-opacity));\n}\n\n.rf-text-lightgray {\n --tw-text-opacity: 1;\n color: rgb(129 129 129 / var(--tw-text-opacity));\n}\n\n.rf-text-primary {\n color: var(--rf-color-primary);\n}\n\n.rf-text-red-700 {\n --tw-text-opacity: 1;\n color: rgb(185 28 28 / var(--tw-text-opacity));\n}\n\n.rf-text-secondary {\n color: var(--rf-color-secondary);\n}\n\n.rf-text-textModePanelConversationBot {\n color: var(--rf-color-textModePanelConversationBot);\n}\n\n.rf-text-textModePanelConversationUser {\n color: var(--rf-color-textModePanelConversationUser);\n}\n\n.rf-text-trueblack {\n --tw-text-opacity: 1;\n color: rgb(0 0 0 / var(--tw-text-opacity));\n}\n\n.rf-text-truewhite {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n\n.rf-text-vocalModeSubtitlesText {\n color: var(--rf-color-vocalModeSubtitlesText);\n}\n\n.rf-text-white {\n --tw-text-opacity: 1;\n color: rgb(247 243 246 / var(--tw-text-opacity));\n}\n\n.rf-underline {\n text-decoration-line: underline;\n}\n\n.rf-shadow-\\[0_0_15px_0_silver\\] {\n --tw-shadow: 0 0 15px 0 silver;\n --tw-shadow-colored: 0 0 15px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_0_20px_1px_\\#A4A7AF80\\] {\n --tw-shadow: 0 0 20px 1px #a4a7af80;\n --tw-shadow-colored: 0 0 20px 1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_0_3px_6px_\\#00000029\\] {\n --tw-shadow: 0 0 3px 6px #00000029;\n --tw-shadow-colored: 0 0 3px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_3px_6px_\\#00000029\\] {\n --tw-shadow: 0 3px 6px #00000029;\n --tw-shadow-colored: 0 3px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_3px_6px_\\#606267\\] {\n --tw-shadow: 0 3px 6px #606267;\n --tw-shadow-colored: 0 3px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_3px_6px_rgba\\(0\\,0\\,0\\,0\\.16\\)\\] {\n --tw-shadow: 0 3px 6px #00000029;\n --tw-shadow-colored: 0 3px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[0_6px_6px_\\#00000029\\] {\n --tw-shadow: 0 6px 6px #00000029;\n --tw-shadow-colored: 0 6px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[20px_3px_20px_\\#00000029\\] {\n --tw-shadow: 20px 3px 20px #00000029;\n --tw-shadow-colored: 20px 3px 20px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[3px_3px_16px_\\#00000029\\] {\n --tw-shadow: 3px 3px 16px #00000029;\n --tw-shadow-colored: 3px 3px 16px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[3px_3px_6px_\\#00000029\\] {\n --tw-shadow: 3px 3px 6px #00000029;\n --tw-shadow-colored: 3px 3px 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[inset_0_0_6px_\\#0000003B\\] {\n --tw-shadow: inset 0 0 6px #0000003b;\n --tw-shadow-colored: inset 0 0 6px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-\\[inset_0_12px_12px_-12px_\\#00000029\\,inset_0_-12px_12px_-12px_\\#00000029\\] {\n --tw-shadow: inset 0 12px 12px -12px #00000029, inset 0 -12px 12px -12px #00000029;\n --tw-shadow-colored: inset 0 12px 12px -12px var(--tw-shadow-color), inset 0 -12px 12px -12px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-shadow-card {\n --tw-shadow: 0px 0px 13px 3px #101219;\n --tw-shadow-colored: 0px 0px 13px 3px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.rf-outline-none {\n outline-offset: 2px;\n outline: 2px solid #0000;\n}\n\n.rf-blur-background {\n --tw-blur: blur(var(--rf-blur-background));\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.rf-filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n\n.rf-transition-all {\n transition-property: all;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.rf-transition-transform {\n transition-property: transform;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n.rf-text-shadow-black {\n text-shadow: 2px 0 5px #000, -2px 0 5px #000, 0 2px 5px #000, 0 -2px 5px #000;\n}\n\n.rf-capitalize-first:first-letter {\n text-transform: uppercase;\n}\n\nol {\n padding-left: 2rem;\n list-style-type: decimal;\n}\n\nul {\n padding-left: 2rem;\n list-style-type: disc;\n}\n\n#retorik-container.rf-portrait:not(.rf-large) .ac-image {\n max-width: 100px;\n}\n\n.rf-glass-background, #retorik-container.portrait .portrait\\:rf-glass-background {\n background-color: var(--rf-color-black);\n --tw-bg-opacity: .62;\n --tw-backdrop-blur: blur(8px);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n\n.rf-loader:before {\n content: \"\";\n border-radius: 50%;\n width: 1.5rem;\n height: 1.5rem;\n animation: 1.8s ease-in-out -.32s infinite both rf-loader;\n display: block;\n position: absolute;\n right: 1.5rem;\n}\n\n.rf-loader:after {\n content: \"\";\n border-radius: 50%;\n width: 1.5rem;\n height: 1.5rem;\n animation: 1.8s ease-in-out infinite both rf-loader;\n display: block;\n position: absolute;\n left: 1.5rem;\n}\n\n.rf-loader-microphone:before, .rf-loader-microphone:after {\n content: \"\";\n --tw-border-opacity: 1;\n border: 6px solid #0000;\n border-top-color: rgb(128 128 128 / var(--tw-border-opacity));\n border-radius: 100%;\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.rf-loader-microphone:before {\n z-index: 1;\n animation: 1s linear infinite rf-spin;\n}\n\n.rf-loader-microphone:after {\n --tw-border-opacity: 1;\n border-color: rgb(204 204 204 / var(--tw-border-opacity));\n}\n\n.rf-touch-action-none {\n touch-action: none;\n}\n\n.rf-unselectable {\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n -webkit-touch-callout: none;\n}\n\n.rf-title-extralarge-bold-size-auto {\n font-size: 2.25rem;\n font-weight: 600;\n line-height: 2.5rem;\n}\n\n#retorik-container.rf-large .rf-title-extralarge-bold-size-auto {\n font-size: 3rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-extralarge-bold-size-auto {\n font-size: 3.75rem;\n line-height: 1;\n}\n\n.rf-title-extralarge-size-auto {\n font-size: 2.25rem;\n font-weight: 400;\n line-height: 2.5rem;\n}\n\n#retorik-container.rf-large .rf-title-extralarge-size-auto {\n font-size: 3rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-extralarge-size-auto {\n font-size: 3.75rem;\n line-height: 1;\n}\n\n.rf-title-large-size-auto {\n font-size: 1.5rem;\n font-weight: 400;\n line-height: 2rem;\n}\n\n#retorik-container.rf-large .rf-title-large-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-large-size-auto {\n font-size: 3rem;\n line-height: 1;\n}\n\n.rf-title-large-bold-size-auto {\n font-size: 1.875rem;\n font-weight: 600;\n line-height: 2.25rem;\n}\n\n#retorik-container.rf-large .rf-title-large-bold-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-large-bold-size-auto {\n font-size: 3rem;\n line-height: 1;\n}\n\n.rf-title-size-auto {\n font-size: 1.5rem;\n font-weight: 400;\n line-height: 2rem;\n}\n\n#retorik-container.rf-large .rf-title-size-auto {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n.rf-title-bold-size-auto {\n font-size: 1.5rem;\n font-weight: 600;\n line-height: 2rem;\n}\n\n#retorik-container.rf-large .rf-title-bold-size-auto {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-title-bold-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n.rf-subtitle-size-auto {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n#retorik-container.rf-large .rf-subtitle-size-auto {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-subtitle-size-auto {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n\n.rf-text-extralarge-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n#retorik-container.rf-large .rf-text-extralarge-size-auto {\n font-size: 3rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-text-extralarge-size-auto {\n font-size: 3.75rem;\n line-height: 1;\n}\n\n.rf-text-verylarge-size-auto {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n\n#retorik-container.rf-large .rf-text-verylarge-size-auto {\n font-size: 3.75rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-text-verylarge-size-auto {\n font-size: 4.5rem;\n line-height: 1;\n}\n\n.rf-text-large-size-auto {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n\n#retorik-container.rf-large .rf-text-large-size-auto {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-text-large-size-auto {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n\n.rf-text-medium-size-auto {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large .rf-text-medium-size-auto {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n.rf-text-size-auto {\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .rf-text-size-auto {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-text-size-auto {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n.rf-small-size-auto {\n font-size: .6rem;\n}\n\n#retorik-container.rf-large .rf-small-size-auto {\n font-size: .75rem;\n line-height: 1rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-small-size-auto {\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n.rf-line-clamp-unknown {\n hyphens: auto;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-1 {\n hyphens: auto;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-2 {\n hyphens: auto;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-3 {\n hyphens: auto;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-4 {\n hyphens: auto;\n -webkit-line-clamp: 4;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-5 {\n hyphens: auto;\n -webkit-line-clamp: 5;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-6 {\n hyphens: auto;\n -webkit-line-clamp: 6;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-7 {\n hyphens: auto;\n -webkit-line-clamp: 7;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-8 {\n hyphens: auto;\n -webkit-line-clamp: 8;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-9 {\n hyphens: auto;\n -webkit-line-clamp: 9;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-line-clamp-10 {\n hyphens: auto;\n -webkit-line-clamp: 10;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n}\n\n.rf-height-fill-available {\n height: stretch;\n}\n\n.rf-width-fill-available {\n width: stretch;\n}\n\n.rf-animation-delay-2 {\n animation-delay: .2s;\n}\n\n.rf-animation-delay-4 {\n animation-delay: .4s;\n}\n\n.rf-scrollbar-thin {\n scrollbar-width: thin;\n scrollbar-color: var(--rf-color-secondary) transparent;\n}\n\n.rf-scrollbar-thin::-webkit-scrollbar {\n width: .2rem;\n height: .2rem;\n margin: .25rem 0;\n}\n\n.rf-scrollbar-thin::-webkit-scrollbar-thumb {\n background-color: var(--rf-color-secondary);\n border-radius: .5rem;\n}\n\n.rf-scrollbar-x-custom::-webkit-scrollbar {\n background-color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n border-radius: 2rem;\n height: .5rem;\n}\n\n.rf-scrollbar-x-custom::-webkit-scrollbar-thumb {\n background-color: var(--rf-color-primary);\n border-radius: 2rem;\n}\n\n.rf-scrollbar-hidden {\n scrollbar-width: none;\n}\n\n.rf-scrollbar-hidden::-webkit-scrollbar {\n display: none;\n}\n\n.rf-opacity-gradient-b {\n -webkit-mask-image: linear-gradient(#000 50%, #0000 100%);\n}\n\n.rf-opacity-gradient-b-thin {\n -webkit-mask-image: linear-gradient(#797676 84%, #0000 100%);\n}\n\n.rf-opacity-gradient-l {\n -webkit-mask-image: linear-gradient(to left, #000 75%, gray 80%, #0000 85%);\n}\n\n.rf-opacity-gradient-l-thin {\n -webkit-mask-image: linear-gradient(to left, #000 90%, gray 95%, #0000 100%);\n}\n\n.rf-opacity-gradient-h {\n -webkit-mask-image: linear-gradient(to right, #0000 0%, 6%, #000, 94%, #0000 100%);\n}\n\n.rf-card-button {\n border-width: 1px;\n border-color: var(--rf-color-cardButtonBorderDefault);\n background-color: var(--rf-color-cardButtonBackgroundDefault);\n color: var(--rf-color-cardButtonTextDefault);\n border-radius: .3125rem;\n padding: .25rem .5rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .rf-card-button {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-card-button {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n#retorik-container.rf-large .rf-card-button {\n padding: .5rem 1rem;\n}\n\n.rf-card-button:hover {\n cursor: pointer;\n border-color: var(--rf-color-cardButtonBorderHover);\n background-color: var(--rf-color-cardButtonBackgroundHover);\n color: var(--rf-color-cardButtonTextHover);\n}\n\n.rf-card-button-secondary {\n border-width: 1px;\n border-color: var(--rf-color-secondary);\n color: var(--rf-color-secondary);\n background-color: #0000;\n border-radius: .3125rem;\n padding: .25rem .5rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .rf-card-button-secondary {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-card-button-secondary {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n#retorik-container.rf-large .rf-card-button-secondary {\n padding: .5rem 1rem;\n}\n\n.rf-card-button-secondary:hover {\n cursor: pointer;\n border-color: var(--rf-color-secondary);\n background-color: var(--rf-color-secondary);\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n\n.rf-card-button-discover {\n border-width: 1px;\n border-color: var(--rf-color-cardButtonDiscoverBorderDefault);\n background-color: var(--rf-color-cardButtonDiscoverBackgroundDefault);\n color: var(--rf-color-cardButtonDiscoverTextDefault);\n border-radius: .3125rem;\n padding: .5rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .rf-card-button-discover {\n padding-top: .75rem;\n padding-bottom: .75rem;\n}\n\n.rf-card-button-discover:hover {\n cursor: pointer;\n border-color: var(--rf-color-cardButtonDiscoverBorderHover);\n background-color: var(--rf-color-cardButtonDiscoverBackgroundHover);\n color: var(--rf-color-cardButtonDiscoverTextHover);\n}\n\n.rf-card-button-history {\n cursor: default;\n border-width: 1px;\n border-color: var(--rf-color-cardButtonBorderDefault);\n background-color: var(--rf-color-cardButtonBackgroundDefault);\n color: var(--rf-color-cardButtonTextDefault);\n border-radius: .3125rem;\n padding: .25rem .5rem;\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .rf-card-button-history {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-card-button-history {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n#retorik-container.rf-large .rf-card-button-history {\n padding: .5rem 1rem;\n}\n\n.lf-player-container {\n align-items: flex-end;\n width: 100%;\n height: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.rf-input-label {\n text-overflow: ellipsis;\n color: var(--rf-color-formInputTextDefault);\n margin-top: .1rem;\n margin-left: .75rem;\n overflow-x: hidden;\n}\n\n#retorik-container.rf-large .rf-input-label {\n margin-top: .25rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-input-label {\n margin-top: .2rem;\n}\n\n.rf-radio-custom {\n -webkit-appearance: none;\n appearance: none;\n border-width: 2px;\n border-color: var(--rf-color-formInputRadioCheckboxUncheckedBorder);\n background-color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n border-radius: 50%;\n place-content: center;\n width: 1.5rem;\n min-width: 1.5rem;\n height: 1.5rem;\n margin: 0;\n display: grid;\n}\n\n.rf-radio-custom:checked {\n border-color: var(--rf-color-formInputRadioCheckboxCheckedBorder);\n background-color: var(--rf-color-formInputRadioCheckboxCheckedBackground);\n}\n\n#retorik-container.rf-large .rf-radio-custom {\n width: 1.75rem;\n min-width: 1.75rem;\n height: 1.75rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-radio-custom {\n width: 2rem;\n min-width: 2rem;\n height: 2rem;\n}\n\n.rf-radio-custom:before {\n content: \"\";\n --tw-scale-x: 0;\n --tw-scale-y: 0;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n background-color: var(--rf-color-formInputRadioCheckboxCheckedItem);\n border-radius: 50%;\n width: .5rem;\n height: .5rem;\n transition-property: all;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n}\n\n#retorik-container.rf-large .rf-radio-custom:before {\n width: .75rem;\n height: .75rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-radio-custom:before {\n width: 1rem;\n height: 1rem;\n}\n\n.rf-radio-custom:checked:before {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-input-hidden {\n -webkit-appearance: none;\n appearance: none;\n margin: 0;\n}\n\n.rf-checkbox-custom {\n -webkit-appearance: none;\n appearance: none;\n border-width: 2px;\n border-color: var(--rf-color-formInputRadioCheckboxUncheckedBorder);\n background-color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n border-radius: .3125rem;\n place-content: center;\n width: 1.5rem;\n min-width: 1.5rem;\n height: 1.5rem;\n margin: 0;\n display: grid;\n}\n\n#retorik-container.rf-large .rf-checkbox-custom {\n width: 1.75rem;\n min-width: 1.75rem;\n height: 1.75rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-checkbox-custom {\n width: 2rem;\n min-width: 2rem;\n height: 2rem;\n}\n\n.rf-checkbox-custom:checked {\n border-color: var(--rf-color-formInputRadioCheckboxCheckedBorder);\n background-color: var(--rf-color-formInputRadioCheckboxCheckedBackground);\n}\n\n.rf-toggle-custom {\n -webkit-appearance: none;\n appearance: none;\n background-color: var(--rf-color-black);\n border-radius: 1.5rem;\n width: 3rem;\n min-width: 3rem;\n height: 1.5rem;\n margin: 0;\n position: relative;\n}\n\n.rf-toggle-custom:checked {\n background-color: var(--rf-color-primary);\n}\n\n#retorik-container.rf-large .rf-toggle-custom {\n border-radius: 1.75rem;\n width: 3.5rem;\n min-width: 3.5rem;\n height: 1.75rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-toggle-custom {\n border-radius: 2rem;\n width: 4rem;\n min-width: 4rem;\n height: 2rem;\n}\n\n.rf-toggle-custom:before {\n content: \"\";\n --tw-translate-x: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n border-radius: 50%;\n width: 1rem;\n height: 1rem;\n transition-property: all;\n transition-duration: .15s;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n position: absolute;\n top: .25rem;\n left: .25rem;\n}\n\n#retorik-container.rf-large .rf-toggle-custom:before {\n width: 1.25rem;\n height: 1.25rem;\n}\n\n#retorik-container.rf-large.rf-portrait .rf-toggle-custom:before {\n width: 1.5rem;\n height: 1.5rem;\n}\n\n.rf-toggle-custom:checked:before {\n --tw-translate-x: 1.5rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n#retorik-container.rf-large .rf-toggle-custom:checked:before {\n --tw-translate-x: 1.75rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n#retorik-container.rf-large.rf-portrait .rf-toggle-custom:checked:before {\n --tw-translate-x: 2rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.rf-select-custom {\n -webkit-appearance: none;\n appearance: none;\n border-width: 2px;\n border-color: var(--rf-color-formInputRadioCheckboxUncheckedBorder);\n background-color: var(--rf-color-formInputRadioCheckboxUncheckedBackground);\n border-radius: .3125rem;\n margin: 0;\n padding: 1rem;\n}\n\n.rf-select-custom:hover {\n cursor: pointer;\n}\n\n.rf-select-custom:focus-visible {\n border-color: var(--rf-color-formInputRadioCheckboxCheckedBorder);\n}\n\n.rf-slider-custom {\n -webkit-appearance: none;\n -moz-appearance: none;\n outline-offset: 2px;\n border-radius: .5rem;\n outline: 2px solid #0000;\n width: 100%;\n height: .25rem;\n display: block;\n position: relative;\n}\n\n.rf-slider-custom::-webkit-slider-runnable-track {\n -webkit-appearance: none;\n}\n\n.rf-slider-custom::-moz-track {\n -moz-appearance: none;\n}\n\n.rf-slider-custom::-ms-track {\n appearance: none;\n}\n\n.rf-slider-custom::-webkit-slider-thumb {\n -webkit-appearance: none;\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n border-style: none;\n border-radius: 50%;\n width: 1.5rem;\n height: 1.5rem;\n margin-top: -.2rem;\n}\n\n.rf-slider-custom::-webkit-slider-thumb:hover {\n cursor: pointer;\n}\n\n.rf-slider-custom::-moz-range-thumb {\n -webkit-appearance: none;\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n border-style: none;\n border-radius: 50%;\n width: 1.5rem;\n height: 1.5rem;\n margin-top: -.2rem;\n}\n\n.rf-slider-custom::-moz-range-thumb:hover {\n cursor: pointer;\n}\n\n.rf-slider-custom::-ms-thumb {\n appearance: none;\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n border-style: none;\n border-radius: 50%;\n width: 1.5rem;\n height: 1.5rem;\n margin-top: -.2rem;\n}\n\n.rf-slider-custom::-ms-thumb:hover {\n cursor: pointer;\n}\n\n.rf-likert-custom {\n cursor: pointer;\n outline-offset: 2px;\n -webkit-text-stroke-width: 1px;\n -webkit-text-stroke-color: white;\n background-color: #0000;\n border-style: none;\n outline: 2px solid #0000;\n}\n\n.svgButtonMenu > svg * {\n fill: var(--fill);\n}\n\n.webchat__css-custom-properties {\n width: 100%;\n height: 100%;\n}\n\n.placeholder\\:rf-text-black::placeholder {\n color: var(--rf-color-black);\n}\n\n.placeholder\\:rf-opacity-100::placeholder {\n opacity: 1;\n}\n\n.hover\\:rf-cursor-pointer:hover {\n cursor: pointer;\n}\n\n.hover\\:rf-border-truewhite:hover {\n --tw-border-opacity: 1;\n border-color: rgb(255 255 255 / var(--tw-border-opacity));\n}\n\n.hover\\:rf-bg-formInputRadioCheckboxCheckedBackground:hover {\n background-color: var(--rf-color-formInputRadioCheckboxCheckedBackground);\n}\n\n.hover\\:rf-bg-truewhite:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n\n.hover\\:rf-text-formInputRadioCheckboxCheckedItem:hover {\n color: var(--rf-color-formInputRadioCheckboxCheckedItem);\n}\n\n.hover\\:rf-text-truewhite:hover {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-col-span-full {\n grid-column: 1 / -1;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-col-start-1 {\n grid-column-start: 1;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-row-span-1 {\n grid-row: span 1 / span 1;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-row-start-11 {\n grid-row-start: 11;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-row-end-13 {\n grid-row-end: 13;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-w-5\\/6 {\n width: 83.3333%;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-w-full {\n width: 100%;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-flex-col {\n flex-direction: column;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-overflow-x-auto {\n overflow-x: auto;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-border-r-0 {\n border-right-width: 0;\n}\n\n#retorik-container.rf-portrait .vertical\\:rf-py-1 {\n padding-top: .25rem;\n padding-bottom: .25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-absolute {\n position: absolute;\n}\n\n#retorik-container.rf-large .large\\:rf-left-4 {\n left: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-top-8 {\n top: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-col-start-5 {\n grid-column-start: 5;\n}\n\n#retorik-container.rf-large .large\\:rf-col-end-6 {\n grid-column-end: 6;\n}\n\n#retorik-container.rf-large .large\\:rf-col-end-9 {\n grid-column-end: 9;\n}\n\n#retorik-container.rf-large .large\\:rf-row-span-full {\n grid-row: 1 / -1;\n}\n\n#retorik-container.rf-large .large\\:rf-row-start-10 {\n grid-row-start: 10;\n}\n\n#retorik-container.rf-large .large\\:rf-row-start-5 {\n grid-row-start: 5;\n}\n\n#retorik-container.rf-large .large\\:rf-m-8 {\n margin: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-my-0 {\n margin-top: 0;\n margin-bottom: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-my-3 {\n margin-top: .75rem;\n margin-bottom: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mb-0 {\n margin-bottom: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-mb-4 {\n margin-bottom: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mb-6 {\n margin-bottom: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-ml-0 {\n margin-left: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-ml-12 {\n margin-left: 3rem;\n}\n\n#retorik-container.rf-large .large\\:rf-ml-4 {\n margin-left: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-ml-8 {\n margin-left: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mr-3 {\n margin-right: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mr-30 {\n margin-right: 7.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mt-0 {\n margin-top: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-mt-20 {\n margin-top: 5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mt-3 {\n margin-top: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-mt-\\[20vh\\] {\n margin-top: 20vh;\n}\n\n#retorik-container.rf-large .large\\:rf-block {\n display: block;\n}\n\n#retorik-container.rf-large .large\\:rf-flex {\n display: flex;\n}\n\n#retorik-container.rf-large .large\\:rf-hidden {\n display: none;\n}\n\n#retorik-container.rf-large .large\\:rf-aspect-video {\n aspect-ratio: 16 / 9;\n}\n\n#retorik-container.rf-large .large\\:rf-h-16 {\n height: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-h-3\\/5 {\n height: 60%;\n}\n\n#retorik-container.rf-large .large\\:rf-h-4 {\n height: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-h-5 {\n height: 1.25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-h-6 {\n height: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-h-8 {\n height: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-h-\\[60vh\\] {\n height: 60vh;\n}\n\n#retorik-container.rf-large .large\\:rf-h-auto {\n height: auto;\n}\n\n#retorik-container.rf-large .large\\:rf-h-full {\n height: 100%;\n}\n\n#retorik-container.rf-large .large\\:rf-max-h-28 {\n max-height: 7rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-1\\/8 {\n width: 12.5%;\n}\n\n#retorik-container.rf-large .large\\:rf-w-14 {\n width: 3.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-16 {\n width: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-3\\/5 {\n width: 60%;\n}\n\n#retorik-container.rf-large .large\\:rf-w-4 {\n width: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-5 {\n width: 1.25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-6 {\n width: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-8 {\n width: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-w-fit {\n width: fit-content;\n}\n\n#retorik-container.rf-large .large\\:rf-w-full {\n width: 100%;\n}\n\n#retorik-container.rf-large .large\\:rf-min-w-1\\/2 {\n min-width: 50%;\n}\n\n#retorik-container.rf-large .large\\:rf-min-w-1\\/8 {\n min-width: 12.5%;\n}\n\n#retorik-container.rf-large .large\\:rf-min-w-16 {\n min-width: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-min-w-3\\/5 {\n min-width: 60%;\n}\n\n#retorik-container.rf-large .large\\:rf-max-w-1\\/8 {\n max-width: 12.5%;\n}\n\n#retorik-container.rf-large .large\\:rf-max-w-\\[12rem\\] {\n max-width: 12rem;\n}\n\n#retorik-container.rf-large .large\\:rf-max-w-full {\n max-width: 100%;\n}\n\n#retorik-container.rf-large .large\\:rf-grid-cols-5 {\n grid-template-columns: repeat(5, minmax(0, 1fr));\n}\n\n#retorik-container.rf-large .large\\:rf-flex-row {\n flex-direction: row;\n}\n\n#retorik-container.rf-large .large\\:rf-flex-col {\n flex-direction: column;\n}\n\n#retorik-container.rf-large .large\\:rf-items-baseline {\n align-items: baseline;\n}\n\n#retorik-container.rf-large .large\\:rf-justify-start {\n justify-content: flex-start;\n}\n\n#retorik-container.rf-large .large\\:rf-gap-1 {\n gap: .25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-gap-3 {\n gap: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-gap-4 {\n gap: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-gap-6 {\n gap: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-overflow-y-scroll {\n overflow-y: scroll;\n}\n\n#retorik-container.rf-large .large\\:rf-border-t-0 {\n border-top-width: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-bg-truewhite {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n\n#retorik-container.rf-large .large\\:rf-p-4 {\n padding: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-p-\\[25px\\] {\n padding: 25px;\n}\n\n#retorik-container.rf-large .large\\:rf-p-min1 {\n padding: .1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-px-0 {\n padding-left: 0;\n padding-right: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-px-16 {\n padding-left: 4rem;\n padding-right: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-px-5, #retorik-container.rf-large .large\\:rf-px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n\n#retorik-container.rf-large .large\\:rf-py-0 {\n padding-top: 0;\n padding-bottom: 0;\n}\n\n#retorik-container.rf-large .large\\:rf-py-1 {\n padding-top: .25rem;\n padding-bottom: .25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-py-2 {\n padding-top: .5rem;\n padding-bottom: .5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-py-3 {\n padding-top: .75rem;\n padding-bottom: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-pb-16 {\n padding-bottom: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-pl-4 {\n padding-left: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-pr-4 {\n padding-right: 1rem;\n}\n\n#retorik-container.rf-large .large\\:rf-pt-16 {\n padding-top: 4rem;\n}\n\n#retorik-container.rf-large .large\\:rf-pt-3 {\n padding-top: .75rem;\n}\n\n#retorik-container.rf-large .large\\:rf-text-5xl {\n font-size: 3rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large .large\\:rf-text-6xl {\n font-size: 3.75rem;\n line-height: 1;\n}\n\n#retorik-container.rf-large .large\\:rf-text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n#retorik-container.rf-large .large\\:rf-text-basecustom {\n font-size: 1rem;\n line-height: 1.3rem;\n}\n\n#retorik-container.rf-large .large\\:rf-text-sm {\n font-size: .875rem;\n line-height: 1.25rem;\n}\n\n#retorik-container.rf-large .large\\:rf-uppercase {\n text-transform: uppercase;\n}\n\n#retorik-container.rf-tactile .tactile\\:rf-h-4 {\n height: 1rem;\n}\n\n#retorik-container.rf-tactile .tactile\\:rf-h-6 {\n height: 1.5rem;\n}\n\n#retorik-container.rf-tactile .tactile\\:rf-w-6 {\n width: 1.5rem;\n}\n\n#retorik-container.rf-tactile .tactile\\:rf-pt-1\\/5 {\n padding-top: 20%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-bottom-\\[25vh\\] {\n bottom: 25vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-left-4 {\n left: 1rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-top-4 {\n top: 1rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-col-span-full {\n grid-column: 1 / -1;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-col-start-1 {\n grid-column-start: 1;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-col-start-2 {\n grid-column-start: 2;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-col-end-8 {\n grid-column-end: 8;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-col-end-9 {\n grid-column-end: 9;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-span-4 {\n grid-row: span 4 / span 4;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-span-6 {\n grid-row: span 6 / span 6;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-start-5 {\n grid-row-start: 5;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-start-7 {\n grid-row-start: 7;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-end-11 {\n grid-row-end: 11;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-row-end-7 {\n grid-row-end: 7;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-mt-4 {\n margin-top: 1rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-mt-\\[20vh\\] {\n margin-top: 20vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-mt-\\[25vh\\] {\n margin-top: 25vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-block {\n display: block;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-hidden {\n display: none;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-h-1\\/2 {\n height: 50%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-h-14 {\n height: 3.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-h-24 {\n height: 6rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-h-6 {\n height: 1.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-h-\\[50vh\\] {\n height: 50vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-h-11\\/12 {\n max-height: 91.67%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-h-36 {\n max-height: 9rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-h-\\[18vh\\] {\n max-height: 18vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-h-\\[30vh\\] {\n max-height: 30vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-1\\/2 {\n width: 50%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-14 {\n width: 3.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-16 {\n width: 4rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-24 {\n width: 6rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-4\\/9 {\n width: 45%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-w-6 {\n width: 1.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-min-w-24 {\n min-width: 6rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-min-w-4\\/9 {\n min-width: 45%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-w-2\\/3 {\n max-width: 66.67%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-max-w-\\[60\\%\\] {\n max-width: 60%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-flex-row {\n flex-direction: row;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-justify-center {\n justify-content: center;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-gap-6 {\n gap: 1.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-self-end {\n align-self: flex-end;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-border-t {\n border-top-width: 1px;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-border-t-menuBorder {\n --tw-border-opacity: 1;\n border-top-color: rgb(224 225 231 / var(--tw-border-opacity));\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-py-5 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-pl-0 {\n padding-left: 0;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-pt-8 {\n padding-top: 2rem;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-pt-\\[16\\.67\\%\\] {\n padding-top: 16.67%;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-pt-\\[20vh\\] {\n padding-top: 20vh;\n}\n\n#retorik-container.rf-large.rf-portrait .large-vertical\\:rf-text-basecustomuppercase {\n font-size: 1rem;\n line-height: 1.1rem;\n}\n\n#retorik-container.rf-large.rf-tactile .large-tactile\\:rf-mt-0 {\n margin-top: 0;\n}\n\n#retorik-container.rf-large.rf-tactile .large-tactile\\:rf-flex {\n display: flex;\n}\n\n#retorik-container.rf-large.rf-tactile .large-tactile\\:rf-hidden {\n display: none;\n}\n\n#retorik-container.rf-large:not(.rf-portrait) .desktop\\:rf-h-full {\n height: 100%;\n}\n\n@media (height <= 700px) and (width <= 300px) {\n .small-mobile\\:rf-row-span-6 {\n grid-row: span 6 / span 6;\n }\n\n .small-mobile\\:rf-row-span-7 {\n grid-row: span 7 / span 7;\n }\n\n .small-mobile\\:rf-row-start-5 {\n grid-row-start: 5;\n }\n}\n";
|
|
121
121
|
|
|
122
122
|
|
|
123
123
|
var $b0c4d46435bb1afc$exports = {};
|
|
@@ -184,6 +184,8 @@ var $71c613e2e831c34c$export$ec1e04e4e5ef8233;
|
|
|
184
184
|
DeviceType[DeviceType["borne"] = 2] = "borne";
|
|
185
185
|
DeviceType[DeviceType["landscape"] = 3] = "landscape";
|
|
186
186
|
DeviceType[DeviceType["widget"] = 4] = "widget";
|
|
187
|
+
DeviceType[DeviceType["widgetLandscape"] = 5] = "widgetLandscape";
|
|
188
|
+
DeviceType[DeviceType["widgetBorne"] = 6] = "widgetBorne";
|
|
187
189
|
})($71c613e2e831c34c$export$ec1e04e4e5ef8233 || ($71c613e2e831c34c$export$ec1e04e4e5ef8233 = {}));
|
|
188
190
|
var $71c613e2e831c34c$export$bd7313a2f8345cae;
|
|
189
191
|
(function(LoaderSteps) {
|
|
@@ -301,6 +303,19 @@ const $0b4f07c0f09dbbcf$export$78f16669b353a880 = [
|
|
|
301
303
|
(0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile,
|
|
302
304
|
(0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widget
|
|
303
305
|
];
|
|
306
|
+
const $0b4f07c0f09dbbcf$export$909f4c209eb70365 = [
|
|
307
|
+
(0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widget,
|
|
308
|
+
(0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widgetBorne,
|
|
309
|
+
(0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widgetLandscape
|
|
310
|
+
];
|
|
311
|
+
const $0b4f07c0f09dbbcf$export$baf53ca377ebf861 = [
|
|
312
|
+
(0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).landscape,
|
|
313
|
+
(0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widgetLandscape
|
|
314
|
+
];
|
|
315
|
+
const $0b4f07c0f09dbbcf$export$a8576d98c9c928de = [
|
|
316
|
+
(0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).borne,
|
|
317
|
+
(0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widgetBorne
|
|
318
|
+
];
|
|
304
319
|
const $0b4f07c0f09dbbcf$export$c0da64553318f2cb = {
|
|
305
320
|
primary: "#00D7FF",
|
|
306
321
|
secondary: "#1999B1",
|
|
@@ -614,7 +629,7 @@ const $547da4225675b90f$var$getOpeningParenthesis = (text, index)=>{
|
|
|
614
629
|
|
|
615
630
|
const $48f0df83bc0817a8$var$regexLink = /<\/?a([^>])+>/g;
|
|
616
631
|
const $48f0df83bc0817a8$var$regexImg = /<\/?img([^>])+>/g;
|
|
617
|
-
const $48f0df83bc0817a8$export$1b8fbc30fb87d9aa = (text)=>{
|
|
632
|
+
const $48f0df83bc0817a8$export$1b8fbc30fb87d9aa = (text, skipAttachments)=>{
|
|
618
633
|
const md = new (0, ($parcel$interopDefault($dWhh5$markdownit)))({
|
|
619
634
|
breaks: true,
|
|
620
635
|
html: true,
|
|
@@ -631,8 +646,10 @@ const $48f0df83bc0817a8$export$1b8fbc30fb87d9aa = (text)=>{
|
|
|
631
646
|
// text = `(Como estas ?)[lang:"es-ES"][1s] Parti - pour le test - (greenage)[lang:"en-US"]. Mettons une image .[500ms] En anglais, (parce-que en Français ce n'est pas ça...) greenage se dit (greenage)[lang:"en-US"]. Fin de message (aufwiedersehen)[lang:"de-DE"]`
|
|
632
647
|
// text = `(Le petit chien va dans sa niche car bien escalader archiduchesse long fiente)[ipa:"lə pəti ʃjɛ̃ va dɑ̃ sa niʃ kaʁ bjɛ̃ ɛskalade ar̥ʃidyʃɛːs lɔ̃ fjɑ̃t"]`
|
|
633
648
|
const speechMarkdownReplacedData = (0, $547da4225675b90f$export$f355fac925ad880f)(text);
|
|
634
|
-
|
|
635
|
-
|
|
649
|
+
if (!skipAttachments) {
|
|
650
|
+
const parsed = md.parseInline(speechMarkdownReplacedData.text);
|
|
651
|
+
parsed.length && (attachmentsToCreate = $48f0df83bc0817a8$var$createNewAttachments(parsed[0].children));
|
|
652
|
+
}
|
|
636
653
|
const textWithHtmlTags = md.render(text);
|
|
637
654
|
// Strip html tags from rendered text
|
|
638
655
|
const newText = $48f0df83bc0817a8$var$stripHtml(textWithHtmlTags);
|
|
@@ -996,6 +1013,7 @@ const $70e3d65f5a106231$var$initialState = {
|
|
|
996
1013
|
currentNewsActivity: undefined,
|
|
997
1014
|
retorikNewsEnded: false,
|
|
998
1015
|
userIsTyping: false,
|
|
1016
|
+
userIsSwiping: false,
|
|
999
1017
|
askedForKioskParametersOpening: false,
|
|
1000
1018
|
detailedAttachmentTriggers: [
|
|
1001
1019
|
{
|
|
@@ -1010,8 +1028,12 @@ const $70e3d65f5a106231$var$initialState = {
|
|
|
1010
1028
|
}
|
|
1011
1029
|
],
|
|
1012
1030
|
modalFullscreenContent: null,
|
|
1013
|
-
printingCallback: null
|
|
1031
|
+
printingCallback: null,
|
|
1032
|
+
GDPRDisplay: true,
|
|
1033
|
+
GDPRWindowData: undefined,
|
|
1034
|
+
GDPRUserConsent: false
|
|
1014
1035
|
};
|
|
1036
|
+
let $70e3d65f5a106231$var$timer = null;
|
|
1015
1037
|
const $70e3d65f5a106231$export$77e4cc5334565f28 = (0, $dWhh5$zustand.create)()(()=>{
|
|
1016
1038
|
return $70e3d65f5a106231$var$initialState;
|
|
1017
1039
|
});
|
|
@@ -1090,6 +1112,18 @@ const $70e3d65f5a106231$export$4a471cf3284fc492 = (value)=>{
|
|
|
1090
1112
|
userIsTyping: value
|
|
1091
1113
|
});
|
|
1092
1114
|
};
|
|
1115
|
+
const $70e3d65f5a106231$export$19e9368606a5170f = ()=>{
|
|
1116
|
+
$70e3d65f5a106231$var$timer && clearTimeout($70e3d65f5a106231$var$timer);
|
|
1117
|
+
$70e3d65f5a106231$export$77e4cc5334565f28.setState({
|
|
1118
|
+
userIsSwiping: true
|
|
1119
|
+
});
|
|
1120
|
+
// Switch back to false after 2.5s (because test for typing indicator is done every 2s)
|
|
1121
|
+
$70e3d65f5a106231$var$timer = setTimeout(()=>{
|
|
1122
|
+
$70e3d65f5a106231$export$77e4cc5334565f28.setState({
|
|
1123
|
+
userIsSwiping: false
|
|
1124
|
+
});
|
|
1125
|
+
}, 2500);
|
|
1126
|
+
};
|
|
1093
1127
|
const $70e3d65f5a106231$export$61008920e70c5e8a = ()=>{
|
|
1094
1128
|
$70e3d65f5a106231$export$77e4cc5334565f28.setState({
|
|
1095
1129
|
askedForKioskParametersOpening: true
|
|
@@ -1119,6 +1153,21 @@ const $70e3d65f5a106231$export$7f09d7ad7dbdcd2c = (value)=>{
|
|
|
1119
1153
|
printingCallback: value
|
|
1120
1154
|
});
|
|
1121
1155
|
};
|
|
1156
|
+
const $70e3d65f5a106231$export$ff26692bd8e0fbbd = (value)=>{
|
|
1157
|
+
$70e3d65f5a106231$export$77e4cc5334565f28.setState({
|
|
1158
|
+
GDPRDisplay: value
|
|
1159
|
+
});
|
|
1160
|
+
};
|
|
1161
|
+
const $70e3d65f5a106231$export$2d640df2114a2d77 = (value)=>{
|
|
1162
|
+
$70e3d65f5a106231$export$77e4cc5334565f28.setState({
|
|
1163
|
+
GDPRWindowData: value
|
|
1164
|
+
});
|
|
1165
|
+
};
|
|
1166
|
+
const $70e3d65f5a106231$export$7a09e6b3c59f37ad = (value)=>{
|
|
1167
|
+
$70e3d65f5a106231$export$77e4cc5334565f28.setState({
|
|
1168
|
+
GDPRUserConsent: value
|
|
1169
|
+
});
|
|
1170
|
+
};
|
|
1122
1171
|
const $70e3d65f5a106231$export$93b55f822ac81934 = ()=>{
|
|
1123
1172
|
$70e3d65f5a106231$export$77e4cc5334565f28.setState({
|
|
1124
1173
|
...$70e3d65f5a106231$var$initialState
|
|
@@ -1137,7 +1186,12 @@ const $5f7f457957bd2c8d$var$initialState = {
|
|
|
1137
1186
|
endedActivities: [],
|
|
1138
1187
|
currentOrLastPlayedActivity: undefined,
|
|
1139
1188
|
activeRecognitionState: (0, $71c613e2e831c34c$export$3f0071308968cd80).Closed,
|
|
1140
|
-
lastRecognitionInterim: ""
|
|
1189
|
+
lastRecognitionInterim: "",
|
|
1190
|
+
streamingReplyToId: null,
|
|
1191
|
+
streamingReplyToIdForText: null,
|
|
1192
|
+
streamingQueue: [],
|
|
1193
|
+
streamingQueueForText: [],
|
|
1194
|
+
currentStreaming: null
|
|
1141
1195
|
};
|
|
1142
1196
|
const $5f7f457957bd2c8d$export$f299240efcda25a2 = (0, $dWhh5$zustand.create)()(()=>{
|
|
1143
1197
|
return $5f7f457957bd2c8d$var$initialState;
|
|
@@ -1194,6 +1248,69 @@ const $5f7f457957bd2c8d$export$a5c8d6d0ec4b5ccb = (value)=>{
|
|
|
1194
1248
|
lastRecognitionInterim: value
|
|
1195
1249
|
});
|
|
1196
1250
|
};
|
|
1251
|
+
const $5f7f457957bd2c8d$export$614a80601162ec38 = (value)=>{
|
|
1252
|
+
$5f7f457957bd2c8d$export$f299240efcda25a2.setState({
|
|
1253
|
+
streamingReplyToId: value,
|
|
1254
|
+
streamingReplyToIdForText: value
|
|
1255
|
+
});
|
|
1256
|
+
value === null && $5f7f457957bd2c8d$export$f299240efcda25a2.setState({
|
|
1257
|
+
currentStreaming: null
|
|
1258
|
+
});
|
|
1259
|
+
};
|
|
1260
|
+
const $5f7f457957bd2c8d$export$de8aad637f733113 = (value)=>{
|
|
1261
|
+
$5f7f457957bd2c8d$export$f299240efcda25a2.setState({
|
|
1262
|
+
streamingReplyToIdForText: value
|
|
1263
|
+
});
|
|
1264
|
+
};
|
|
1265
|
+
const $5f7f457957bd2c8d$export$87afd75c41a617d7 = (value)=>{
|
|
1266
|
+
$5f7f457957bd2c8d$export$f299240efcda25a2.setState({
|
|
1267
|
+
streamingQueue: value,
|
|
1268
|
+
streamingQueueForText: value
|
|
1269
|
+
});
|
|
1270
|
+
};
|
|
1271
|
+
const $5f7f457957bd2c8d$export$9a026d007e335fc0 = (value)=>{
|
|
1272
|
+
if (value.replyToId) {
|
|
1273
|
+
// Set replyToId and new queue if replyToId is different from the current one
|
|
1274
|
+
if ($5f7f457957bd2c8d$export$f299240efcda25a2.getState().streamingReplyToId !== value.replyToId) $5f7f457957bd2c8d$export$f299240efcda25a2.setState({
|
|
1275
|
+
streamingReplyToId: value.replyToId,
|
|
1276
|
+
streamingReplyToIdForText: value.replyToId,
|
|
1277
|
+
streamingQueue: [
|
|
1278
|
+
value
|
|
1279
|
+
],
|
|
1280
|
+
streamingQueueForText: [
|
|
1281
|
+
value
|
|
1282
|
+
]
|
|
1283
|
+
});
|
|
1284
|
+
else $5f7f457957bd2c8d$export$f299240efcda25a2.setState({
|
|
1285
|
+
streamingQueue: [
|
|
1286
|
+
...$5f7f457957bd2c8d$export$f299240efcda25a2.getState().streamingQueue,
|
|
1287
|
+
value
|
|
1288
|
+
],
|
|
1289
|
+
streamingQueueForText: [
|
|
1290
|
+
...$5f7f457957bd2c8d$export$f299240efcda25a2.getState().streamingQueueForText,
|
|
1291
|
+
value
|
|
1292
|
+
]
|
|
1293
|
+
});
|
|
1294
|
+
}
|
|
1295
|
+
};
|
|
1296
|
+
const $5f7f457957bd2c8d$export$eb50624bfd363865 = ()=>{
|
|
1297
|
+
const currentQueue = [
|
|
1298
|
+
...$5f7f457957bd2c8d$export$f299240efcda25a2.getState().streamingQueue
|
|
1299
|
+
];
|
|
1300
|
+
if (currentQueue.length) {
|
|
1301
|
+
currentQueue.splice(0, 1);
|
|
1302
|
+
$5f7f457957bd2c8d$export$f299240efcda25a2.setState({
|
|
1303
|
+
streamingQueue: [
|
|
1304
|
+
...currentQueue
|
|
1305
|
+
]
|
|
1306
|
+
});
|
|
1307
|
+
}
|
|
1308
|
+
};
|
|
1309
|
+
const $5f7f457957bd2c8d$export$d300d9470f5679ba = (value)=>{
|
|
1310
|
+
$5f7f457957bd2c8d$export$f299240efcda25a2.setState({
|
|
1311
|
+
currentStreaming: value
|
|
1312
|
+
});
|
|
1313
|
+
};
|
|
1197
1314
|
const $5f7f457957bd2c8d$export$b6d2196a3ce412d8 = ()=>{
|
|
1198
1315
|
$5f7f457957bd2c8d$export$f299240efcda25a2.setState({
|
|
1199
1316
|
...$5f7f457957bd2c8d$var$initialState
|
|
@@ -1203,6 +1320,7 @@ const $5f7f457957bd2c8d$export$b6d2196a3ce412d8 = ()=>{
|
|
|
1203
1320
|
|
|
1204
1321
|
|
|
1205
1322
|
|
|
1323
|
+
|
|
1206
1324
|
const $9acd31406c230961$var$initialState = {
|
|
1207
1325
|
activities: [],
|
|
1208
1326
|
lastBotActivity: undefined,
|
|
@@ -1219,33 +1337,56 @@ const $9acd31406c230961$var$initialState = {
|
|
|
1219
1337
|
lastUserMessageActivity: undefined,
|
|
1220
1338
|
queue: [],
|
|
1221
1339
|
conversationId: null,
|
|
1222
|
-
watermark: 0
|
|
1340
|
+
watermark: 0,
|
|
1341
|
+
retrievingConversation: false
|
|
1223
1342
|
};
|
|
1224
1343
|
let $9acd31406c230961$var$timerRef;
|
|
1225
1344
|
const $9acd31406c230961$export$b56465394e2b1287 = (0, $dWhh5$zustand.create)()(()=>{
|
|
1226
1345
|
return $9acd31406c230961$var$initialState;
|
|
1227
1346
|
});
|
|
1228
|
-
const $9acd31406c230961$var$addActivity = (activity, resetQueue)=>{
|
|
1347
|
+
const $9acd31406c230961$var$addActivity = async (activity, resetQueue)=>{
|
|
1348
|
+
var _activity_from_name;
|
|
1229
1349
|
const currentState = $9acd31406c230961$export$b56465394e2b1287.getState();
|
|
1350
|
+
const shouldNotSetLastBotActivity = currentState.retrievingConversation && !resetQueue;
|
|
1351
|
+
const isBot = activity.from.role === "bot" || activity.replyToId || ((_activity_from_name = activity.from.name) === null || _activity_from_name === void 0 ? void 0 : _activity_from_name.toLowerCase()) === "bot";
|
|
1230
1352
|
if (activity.type === "message") {
|
|
1231
|
-
if (
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1353
|
+
if (isBot) {
|
|
1354
|
+
var _currentState_botMessageActivities, _activity_replyToId;
|
|
1355
|
+
if (((_currentState_botMessageActivities = currentState.botMessageActivities) === null || _currentState_botMessageActivities === void 0 ? void 0 : _currentState_botMessageActivities.length) && ((_activity_replyToId = activity.replyToId) === null || _activity_replyToId === void 0 ? void 0 : _activity_replyToId.substring(activity.replyToId.length - 4)) === "0000") // Special process when retrieving conversation from directline : the first activity is delayed by botframwork-webchat and is treated after the other.
|
|
1356
|
+
// We must put this activity back in first place in the array.
|
|
1357
|
+
$9acd31406c230961$export$b56465394e2b1287.setState({
|
|
1358
|
+
activities: [
|
|
1359
|
+
activity,
|
|
1360
|
+
...currentState.activities
|
|
1361
|
+
],
|
|
1362
|
+
messageActivities: [
|
|
1363
|
+
activity,
|
|
1364
|
+
...currentState.messageActivities
|
|
1365
|
+
],
|
|
1366
|
+
botMessageActivities: [
|
|
1367
|
+
activity,
|
|
1368
|
+
...currentState.botMessageActivities
|
|
1369
|
+
],
|
|
1370
|
+
watermark: currentState.watermark + 1
|
|
1371
|
+
});
|
|
1372
|
+
else $9acd31406c230961$export$b56465394e2b1287.setState({
|
|
1373
|
+
activities: [
|
|
1374
|
+
...currentState.activities,
|
|
1375
|
+
activity
|
|
1376
|
+
],
|
|
1377
|
+
lastBotActivity: shouldNotSetLastBotActivity ? undefined : activity,
|
|
1378
|
+
messageActivities: [
|
|
1379
|
+
...currentState.messageActivities,
|
|
1380
|
+
activity
|
|
1381
|
+
],
|
|
1382
|
+
botMessageActivities: [
|
|
1383
|
+
...currentState.botMessageActivities,
|
|
1384
|
+
activity
|
|
1385
|
+
],
|
|
1386
|
+
lastBotMessageActivity: currentState.retrievingConversation ? resetQueue ? activity : undefined : activity,
|
|
1387
|
+
watermark: currentState.watermark + 1
|
|
1388
|
+
});
|
|
1389
|
+
} else $9acd31406c230961$export$b56465394e2b1287.setState({
|
|
1249
1390
|
activities: [
|
|
1250
1391
|
...currentState.activities,
|
|
1251
1392
|
activity
|
|
@@ -1262,12 +1403,12 @@ const $9acd31406c230961$var$addActivity = (activity, resetQueue)=>{
|
|
|
1262
1403
|
watermark: currentState.watermark + 1
|
|
1263
1404
|
});
|
|
1264
1405
|
} else if (activity.type === "event") {
|
|
1265
|
-
if (
|
|
1406
|
+
if (isBot) $9acd31406c230961$export$b56465394e2b1287.setState({
|
|
1266
1407
|
activities: [
|
|
1267
1408
|
...currentState.activities,
|
|
1268
1409
|
activity
|
|
1269
1410
|
],
|
|
1270
|
-
lastBotActivity: activity,
|
|
1411
|
+
lastBotActivity: shouldNotSetLastBotActivity ? undefined : activity,
|
|
1271
1412
|
eventActivities: [
|
|
1272
1413
|
...currentState.eventActivities,
|
|
1273
1414
|
activity
|
|
@@ -1291,24 +1432,23 @@ const $9acd31406c230961$var$addActivity = (activity, resetQueue)=>{
|
|
|
1291
1432
|
watermark: currentState.watermark + 1
|
|
1292
1433
|
});
|
|
1293
1434
|
}
|
|
1294
|
-
if (resetQueue)
|
|
1295
|
-
|
|
1296
|
-
|
|
1435
|
+
if (resetQueue) {
|
|
1436
|
+
$9acd31406c230961$export$b56465394e2b1287.setState({
|
|
1437
|
+
queue: []
|
|
1438
|
+
});
|
|
1439
|
+
$9acd31406c230961$export$b56465394e2b1287.setState({
|
|
1440
|
+
retrievingConversation: false
|
|
1441
|
+
});
|
|
1442
|
+
}
|
|
1297
1443
|
};
|
|
1298
1444
|
/**
|
|
1299
1445
|
* Deal with the queue of activities that was formed before.
|
|
1300
1446
|
* Call again after splicing the first element of the queue every 100ms
|
|
1301
1447
|
* @param queue Array<RetorikActivity>
|
|
1302
|
-
*/ const $9acd31406c230961$var$addActivitiesFromQueue = (queue)=>{
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
setTimeout(()=>{
|
|
1307
|
-
$9acd31406c230961$var$addActivitiesFromQueue(queue);
|
|
1308
|
-
}, 100);
|
|
1309
|
-
} else $9acd31406c230961$export$b56465394e2b1287.setState({
|
|
1310
|
-
queue: []
|
|
1311
|
-
});
|
|
1448
|
+
*/ const $9acd31406c230961$var$addActivitiesFromQueue = async (queue)=>{
|
|
1449
|
+
// Keep last id to know when we get the last activity
|
|
1450
|
+
const lastId = queue[queue.length - 1].id;
|
|
1451
|
+
for (const activity of queue)await $9acd31406c230961$var$addActivity(activity, activity.id === lastId);
|
|
1312
1452
|
};
|
|
1313
1453
|
const $9acd31406c230961$var$updateActivities = ()=>{
|
|
1314
1454
|
const currentState = $9acd31406c230961$export$b56465394e2b1287.getState();
|
|
@@ -1347,6 +1487,10 @@ const $9acd31406c230961$export$210f7e70e69f7df5 = (activity)=>{
|
|
|
1347
1487
|
});
|
|
1348
1488
|
$9acd31406c230961$export$f9786f6b1a1e81e3(activity);
|
|
1349
1489
|
};
|
|
1490
|
+
const $9acd31406c230961$export$35bf93b87d9ffb15 = (activity)=>{
|
|
1491
|
+
const retrieving = $9acd31406c230961$export$b56465394e2b1287.getState().retrievingConversation;
|
|
1492
|
+
!retrieving && (0, $5f7f457957bd2c8d$export$9a026d007e335fc0)(activity);
|
|
1493
|
+
};
|
|
1350
1494
|
const $9acd31406c230961$export$4365557467e67cdc = (value)=>{
|
|
1351
1495
|
const currentState = $9acd31406c230961$export$b56465394e2b1287.getState();
|
|
1352
1496
|
// Check directline id to know if we have to reset the activities
|
|
@@ -1357,6 +1501,11 @@ const $9acd31406c230961$export$4365557467e67cdc = (value)=>{
|
|
|
1357
1501
|
conversationId: value
|
|
1358
1502
|
});
|
|
1359
1503
|
};
|
|
1504
|
+
const $9acd31406c230961$export$d7e4f7861d387c67 = (value)=>{
|
|
1505
|
+
$9acd31406c230961$export$b56465394e2b1287.setState({
|
|
1506
|
+
retrievingConversation: value
|
|
1507
|
+
});
|
|
1508
|
+
};
|
|
1360
1509
|
const $9acd31406c230961$export$b7b23f8e09258fa6 = ()=>{
|
|
1361
1510
|
$9acd31406c230961$export$b56465394e2b1287.setState({
|
|
1362
1511
|
...$9acd31406c230961$var$initialState
|
|
@@ -1364,6 +1513,7 @@ const $9acd31406c230961$export$b7b23f8e09258fa6 = ()=>{
|
|
|
1364
1513
|
};
|
|
1365
1514
|
|
|
1366
1515
|
|
|
1516
|
+
|
|
1367
1517
|
const $c79349f4444d81d7$var$regexDataCommand = /(\{data-command=")[\p{L}\p{N}\p{Po}\p{Pd}\p{Pc}\s\u0027\u2019]+("\})(<br\s\/>)?/gu;
|
|
1368
1518
|
const $c79349f4444d81d7$var$createCustomStore = (enableConversationCookie, conversationCookieMaxAge, addressData, locale, externalEventHandler, isUsedOnBorne, isRetorikNews)=>{
|
|
1369
1519
|
return (0, $dWhh5$botframeworkwebchat.createStore)({}, ({ dispatch: dispatch })=>(next)=>async (action)=>{
|
|
@@ -1406,13 +1556,13 @@ const $c79349f4444d81d7$var$createCustomStore = (enableConversationCookie, conve
|
|
|
1406
1556
|
break;
|
|
1407
1557
|
}
|
|
1408
1558
|
case "DIRECT_LINE/POST_ACTIVITY":
|
|
1409
|
-
var _action_payload_activity, _action_payload, _action_payload1;
|
|
1559
|
+
var _action_payload_activity, _action_payload, _action_payload_activity1, _action_payload1, _action_payload_activity_name, _action_payload2;
|
|
1410
1560
|
// Prevent typing message from cancelling speech
|
|
1411
|
-
if (((_action_payload = action.payload) === null || _action_payload === void 0 ? void 0 : (_action_payload_activity = _action_payload.activity) === null || _action_payload_activity === void 0 ? void 0 : _action_payload_activity.type) === "typing") return next(action);
|
|
1561
|
+
if (((_action_payload = action.payload) === null || _action_payload === void 0 ? void 0 : (_action_payload_activity = _action_payload.activity) === null || _action_payload_activity === void 0 ? void 0 : _action_payload_activity.type) === "typing" || ((_action_payload1 = action.payload) === null || _action_payload1 === void 0 ? void 0 : (_action_payload_activity1 = _action_payload1.activity) === null || _action_payload_activity1 === void 0 ? void 0 : _action_payload_activity1.type) === "event" && ((_action_payload_activity_name = action.payload.activity.name) === null || _action_payload_activity_name === void 0 ? void 0 : _action_payload_activity_name.toLowerCase().includes("davi.closewindow"))) return next(action);
|
|
1412
1562
|
// Cancel playing utterance if there is one
|
|
1413
1563
|
(0, $5f7f457957bd2c8d$export$d0df6aec4e971f52)(true);
|
|
1414
1564
|
// Send pagination and position data in channelData on each activity sent to the chatbot, using local storage to get up to date data
|
|
1415
|
-
if ((
|
|
1565
|
+
if ((_action_payload2 = action.payload) === null || _action_payload2 === void 0 ? void 0 : _action_payload2.activity) {
|
|
1416
1566
|
const paginationAsString = localStorage.getItem("Retorik.Framework.Pagination");
|
|
1417
1567
|
const positionAsString = localStorage.getItem("Retorik.Framework.Location");
|
|
1418
1568
|
const position = positionAsString ? JSON.parse(positionAsString) : undefined;
|
|
@@ -1448,15 +1598,26 @@ const $c79349f4444d81d7$var$createCustomStore = (enableConversationCookie, conve
|
|
|
1448
1598
|
};
|
|
1449
1599
|
break;
|
|
1450
1600
|
case "DIRECT_LINE/INCOMING_ACTIVITY":
|
|
1451
|
-
var
|
|
1452
|
-
if (((
|
|
1601
|
+
var _action_payload_activity2, _action_payload3, _action_payload_activity3, _action_payload4, _action_payload_activity4, _action_payload5, _action_payload_activity_name1, _action_payload_activity5, _action_payload6, _action_payload_activity6, _action_payload7, _action_payload_activity7, _action_payload8, _action_payload_activity8, _action_payload9, _action_payload_activity9, _action_payload10;
|
|
1602
|
+
if (((_action_payload3 = action.payload) === null || _action_payload3 === void 0 ? void 0 : (_action_payload_activity2 = _action_payload3.activity) === null || _action_payload_activity2 === void 0 ? void 0 : _action_payload_activity2.type) === "event" && ((_action_payload4 = action.payload) === null || _action_payload4 === void 0 ? void 0 : (_action_payload_activity3 = _action_payload4.activity) === null || _action_payload_activity3 === void 0 ? void 0 : _action_payload_activity3.name) === "EndOfSpeechEvent") return;
|
|
1603
|
+
if (((_action_payload5 = action.payload) === null || _action_payload5 === void 0 ? void 0 : (_action_payload_activity4 = _action_payload5.activity) === null || _action_payload_activity4 === void 0 ? void 0 : _action_payload_activity4.type) === "event" && ((_action_payload6 = action.payload) === null || _action_payload6 === void 0 ? void 0 : (_action_payload_activity5 = _action_payload6.activity) === null || _action_payload_activity5 === void 0 ? void 0 : (_action_payload_activity_name1 = _action_payload_activity5.name) === null || _action_payload_activity_name1 === void 0 ? void 0 : _action_payload_activity_name1.toLowerCase()) === "davi.streammessageactivity") {
|
|
1604
|
+
var _action_payload_activity_text;
|
|
1605
|
+
if ((_action_payload_activity_text = action.payload.activity.text) === null || _action_payload_activity_text === void 0 ? void 0 : _action_payload_activity_text.trim().length) {
|
|
1606
|
+
// Create speak field from the text one
|
|
1607
|
+
const processedText = (0, $48f0df83bc0817a8$export$1b8fbc30fb87d9aa)(action.payload.activity.text, true);
|
|
1608
|
+
action.payload.activity.text = processedText.text;
|
|
1609
|
+
action.payload.activity.speak = processedText.text;
|
|
1610
|
+
(0, $9acd31406c230961$export$35bf93b87d9ffb15)(action.payload.activity);
|
|
1611
|
+
}
|
|
1612
|
+
return next(action);
|
|
1613
|
+
}
|
|
1453
1614
|
// Only process message activities from the bot
|
|
1454
|
-
if (((
|
|
1455
|
-
var
|
|
1615
|
+
if (((_action_payload7 = action.payload) === null || _action_payload7 === void 0 ? void 0 : (_action_payload_activity6 = _action_payload7.activity) === null || _action_payload_activity6 === void 0 ? void 0 : _action_payload_activity6.type) === "message" && action.payload.activity.from.role === "bot") {
|
|
1616
|
+
var _action_payload_activity10, _action_payload11, _action_payload_activity_suggestedActions, _action_payload_activity_attachmentLayout, _action_payload_activity11;
|
|
1456
1617
|
(0, $70e3d65f5a106231$export$f03cfde7db70aa27)(false);
|
|
1457
1618
|
// If the application is used on a borne and there are attachments, check if a received attachment is a multi-link one.
|
|
1458
1619
|
// If there is some, we need to split it in several attachments, one for each link.
|
|
1459
|
-
if (isUsedOnBorne && ((
|
|
1620
|
+
if (isUsedOnBorne && ((_action_payload11 = action.payload) === null || _action_payload11 === void 0 ? void 0 : (_action_payload_activity10 = _action_payload11.activity) === null || _action_payload_activity10 === void 0 ? void 0 : _action_payload_activity10.attachments) && action.payload.activity.attachments.length > 0) {
|
|
1460
1621
|
var _attachment_content;
|
|
1461
1622
|
let count = 0;
|
|
1462
1623
|
const tempAttachments = [];
|
|
@@ -1528,7 +1689,7 @@ const $c79349f4444d81d7$var$createCustomStore = (enableConversationCookie, conve
|
|
|
1528
1689
|
] : action.payload.activity.attachments.push(suggestedActionAttachment);
|
|
1529
1690
|
}
|
|
1530
1691
|
// Deal with text containing [data command] data to make them usable in text mode
|
|
1531
|
-
if (((
|
|
1692
|
+
if (((_action_payload_activity11 = action.payload.activity) === null || _action_payload_activity11 === void 0 ? void 0 : _action_payload_activity11.text) && action.payload.activity.text.includes("{data-command=")) {
|
|
1532
1693
|
const splitText = action.payload.activity.text.split("{data-command=");
|
|
1533
1694
|
const dataForAttachment = [];
|
|
1534
1695
|
for(let i = 1; i < splitText.length; i++){
|
|
@@ -1562,9 +1723,9 @@ const $c79349f4444d81d7$var$createCustomStore = (enableConversationCookie, conve
|
|
|
1562
1723
|
action.payload.activity.htmlText = action.payload.activity.htmlText.replaceAll($c79349f4444d81d7$var$regexDataCommand, "");
|
|
1563
1724
|
}
|
|
1564
1725
|
(0, $9acd31406c230961$export$210f7e70e69f7df5)(action.payload.activity);
|
|
1565
|
-
} else if (((
|
|
1566
|
-
else if (((
|
|
1567
|
-
else if (((
|
|
1726
|
+
} else if (((_action_payload8 = action.payload) === null || _action_payload8 === void 0 ? void 0 : (_action_payload_activity7 = _action_payload8.activity) === null || _action_payload_activity7 === void 0 ? void 0 : _action_payload_activity7.type) === "message" && action.payload.activity.from.role === "user") (0, $9acd31406c230961$export$f9786f6b1a1e81e3)(action.payload.activity);
|
|
1727
|
+
else if (((_action_payload9 = action.payload) === null || _action_payload9 === void 0 ? void 0 : (_action_payload_activity8 = _action_payload9.activity) === null || _action_payload_activity8 === void 0 ? void 0 : _action_payload_activity8.type) === "event" && action.payload.activity.from.role === "bot") (0, $9acd31406c230961$export$f9786f6b1a1e81e3)(action.payload.activity);
|
|
1728
|
+
else if (((_action_payload10 = action.payload) === null || _action_payload10 === void 0 ? void 0 : (_action_payload_activity9 = _action_payload10.activity) === null || _action_payload_activity9 === void 0 ? void 0 : _action_payload_activity9.type) === "event" && action.payload.activity.from.role === "user") (0, $9acd31406c230961$export$f9786f6b1a1e81e3)(action.payload.activity);
|
|
1568
1729
|
break;
|
|
1569
1730
|
case "WEB_CHAT/START_DICTATE":
|
|
1570
1731
|
// Cancel playing utterance if there is one
|
|
@@ -1576,9 +1737,9 @@ const $c79349f4444d81d7$var$createCustomStore = (enableConversationCookie, conve
|
|
|
1576
1737
|
break;
|
|
1577
1738
|
case "WEB_CHAT/SUBMIT_SEND_BOX":
|
|
1578
1739
|
{
|
|
1579
|
-
var _action_payload_channelData,
|
|
1740
|
+
var _action_payload_channelData, _action_payload12;
|
|
1580
1741
|
// Send event containing the speech retrieved from speech recognition
|
|
1581
|
-
const speech = (
|
|
1742
|
+
const speech = (_action_payload12 = action.payload) === null || _action_payload12 === void 0 ? void 0 : (_action_payload_channelData = _action_payload12.channelData) === null || _action_payload_channelData === void 0 ? void 0 : _action_payload_channelData.speech;
|
|
1582
1743
|
if (speech) {
|
|
1583
1744
|
const speechEvent = new CustomEvent("retorikSpeechRecognitionEnded", {
|
|
1584
1745
|
detail: speech
|
|
@@ -1667,7 +1828,6 @@ const $c7242af7a2bc5e50$export$ca8db8ed18ea1d2c = (value)=>{
|
|
|
1667
1828
|
});
|
|
1668
1829
|
};
|
|
1669
1830
|
const $c7242af7a2bc5e50$export$29ec02ff899d2b53 = (value)=>{
|
|
1670
|
-
console.log("set layoutChanged", $c7242af7a2bc5e50$export$bd22554f31e5f96f.getState().layoutChanged, value);
|
|
1671
1831
|
$c7242af7a2bc5e50$export$bd22554f31e5f96f.setState({
|
|
1672
1832
|
layoutChanged: value
|
|
1673
1833
|
});
|
|
@@ -2026,27 +2186,27 @@ $951e6c0f34dcf14e$exports = JSON.parse('{"1":"Startseite","2":"Live-Infokanal","
|
|
|
2026
2186
|
|
|
2027
2187
|
|
|
2028
2188
|
var $3e7fcd5de3105b5a$exports = {};
|
|
2029
|
-
$3e7fcd5de3105b5a$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."}}');
|
|
2189
|
+
$3e7fcd5de3105b5a$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."},"GDPR":{"title":"processing personal data transmitted to the bot","message":"by accepting, you consent that all data transmitted to the chatbot can be used for analysis about the use of the tool, and for the improvement of the knowledge base.\\n\\nYour conversations are kept 6 month before deletion.","link":"open confidency policy","buttonAccept":"I understand and I accept","buttonRefuse":"I refuse","messageAccepted":"your acceptation has been saved","messageRefused":"your refusal has been saved"}}');
|
|
2030
2190
|
|
|
2031
2191
|
|
|
2032
2192
|
var $53a0b5ae6dcafec1$exports = {};
|
|
2033
|
-
$53a0b5ae6dcafec1$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."}}');
|
|
2193
|
+
$53a0b5ae6dcafec1$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."},"GDPR":{"title":"processing personal data transmitted to the bot","message":"by accepting, you consent that all data transmitted to the chatbot can be used for analysis about the use of the tool, and for the improvement of the knowledge base.\\n\\nYour conversations are kept 6 month before deletion.","link":"open confidency policy","buttonAccept":"I understand and I accept","buttonRefuse":"I refuse","messageAccepted":"your acceptation has been saved","messageRefused":"your refusal has been saved"}}');
|
|
2034
2194
|
|
|
2035
2195
|
|
|
2036
2196
|
var $baab15f78d193de4$exports = {};
|
|
2037
|
-
$baab15f78d193de4$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."}}');
|
|
2197
|
+
$baab15f78d193de4$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."},"GDPR":{"title":"processing personal data transmitted to the bot","message":"by accepting, you consent that all data transmitted to the chatbot can be used for analysis about the use of the tool, and for the improvement of the knowledge base.\\n\\nYour conversations are kept 6 month before deletion.","link":"open confidency policy","buttonAccept":"I understand and I accept","buttonRefuse":"I refuse","messageAccepted":"your acceptation has been saved","messageRefused":"your refusal has been saved"}}');
|
|
2038
2198
|
|
|
2039
2199
|
|
|
2040
2200
|
var $5c03d927d50c9cfe$exports = {};
|
|
2041
|
-
$5c03d927d50c9cfe$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."}}');
|
|
2201
|
+
$5c03d927d50c9cfe$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."},"GDPR":{"title":"processing personal data transmitted to the bot","message":"by accepting, you consent that all data transmitted to the chatbot can be used for analysis about the use of the tool, and for the improvement of the knowledge base.\\n\\nYour conversations are kept 6 month before deletion.","link":"open confidency policy","buttonAccept":"I understand and I accept","buttonRefuse":"I refuse","messageAccepted":"your acceptation has been saved","messageRefused":"your refusal has been saved"}}');
|
|
2042
2202
|
|
|
2043
2203
|
|
|
2044
2204
|
var $02f6577a03965692$exports = {};
|
|
2045
|
-
$02f6577a03965692$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."}}');
|
|
2205
|
+
$02f6577a03965692$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."},"GDPR":{"title":"processing personal data transmitted to the bot","message":"by accepting, you consent that all data transmitted to the chatbot can be used for analysis about the use of the tool, and for the improvement of the knowledge base.\\n\\nYour conversations are kept 6 month before deletion.","link":"open confidency policy","buttonAccept":"I understand and I accept","buttonRefuse":"I refuse","messageAccepted":"your acceptation has been saved","messageRefused":"your refusal has been saved"}}');
|
|
2046
2206
|
|
|
2047
2207
|
|
|
2048
2208
|
var $bb85f87939e5d184$exports = {};
|
|
2049
|
-
$bb85f87939e5d184$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."}}');
|
|
2209
|
+
$bb85f87939e5d184$exports = JSON.parse('{"1":"home","2":"live info channel","3":"weather","4":"emergency numbers","1000":"history","1001":"tutorial","common":{"abort":"abort","all":"all","back":"back","close":"close","continue":"continue","download":"download","downloadsheet":"download this sheet","downloadsheetmobile":"download this sheet on smartphone","filter":"filter","history":"history","lang":"languages","menu":"menu","mode":"mode","needhelp":"Need help ?","parameters":"parameters","print":"print","printsheet":"print this sheet","result":"result","results":"results","singleLang":"language","sound":"sound","submit":"submit","subtitle":"subtitle","tutorial":"tutorial","validate":"validate"},"emergency":{"samu":"maeu","police":"police","firefighter":"firefighters","general":"general","citypolice":"Local police","hospital":"Hospital","homeless":"Homeless (free call)","poison":"Poison Control Center","emergency":"European emergencies"},"error":{"title":"An error occurred","button":"Launch the application again"},"history":{"title":"chat history"},"inputs":{"choose":"Choose an answer"},"language":{"change":"change the language","select":"select the language you want to use"},"link":{"buttontext":"View the document","goto":"Go to address","click":"Click here","scanQR":"by scanning the QrCode"},"loader":{"loader":{"optimal":"For an optimal experience,","classic":"For a more classical experience,","vocal":"I communicate by speaking with the agent.","text":"I communicate by text with the agent."},"modes":{"vocal":"vocal mode","text":"text mode"},"loaderValidation":"Start conversation","locale":"checking language","supported":"checking supported languages","addressdata":"retrieving data","store":"store","directline":"directline","ponyfill":"ponyfill"},"menu":{"message":"Enter your message","allowMicrophone":"Give your browser permission to use microphone to continue","backconversation":"back to the conversation","answer":" answers your questions"},"mobileLandscapePreventer":{"firstline":"For an optimal experience,","secondline":"flip your screen"},"news":{"warningtext":"You are about to access the information channel, the sound of your device will be activated","live":"live","continuous":"continuous"},"poi":{"comment":"customer review","route":"route","nodata":"No content corresponds to your search","openinghours":"Opening hours","prices":"Prices","paymentmethods":"Payment methods","numberofplaces":"number of places","openroutemobile":"open Google Maps route on smartphone","FoodEstablishment":"Where to eat","LodgingBusiness":"Where to sleep","TouristDestination":"What to see","TouristAttraction":"What to do","Product":"Local products","Service":"Services","Event":"Events","City":"Cities","Wine":"Wines"},"suggestion":{"consult":"Check out","thetutorial":"the tutorial"},"template":{"reset":"reset filters","showresults":"Show results","suggestiontitle":"Research suggestions","reminder":"Don\'t forget,\\n I can answer your questions."},"GDPR":{"title":"processing personal data transmitted to the bot","message":"by accepting, you consent that all data transmitted to the chatbot can be used for analysis about the use of the tool, and for the improvement of the knowledge base.\\n\\nYour conversations are kept 6 month before deletion.","link":"open confidency policy","buttonAccept":"I understand and I accept","buttonRefuse":"I refuse","messageAccepted":"your acceptation has been saved","messageRefused":"your refusal has been saved"}}');
|
|
2050
2210
|
|
|
2051
2211
|
|
|
2052
2212
|
var $af55b141294954cc$exports = {};
|
|
@@ -2062,19 +2222,19 @@ $09e3c655db596397$exports = JSON.parse('{"1":"kotisivu","2":"live-uutiskanava","
|
|
|
2062
2222
|
|
|
2063
2223
|
|
|
2064
2224
|
var $95d45285e8bde83a$exports = {};
|
|
2065
|
-
$95d45285e8bde83a$exports = JSON.parse('{"1":"accueil","2":"cha\xeene info live","3":"m\xe9t\xe9o","4":"num\xe9ros d\'urgence","1000":"historique","1001":"tutoriel","common":{"abort":"annuler","all":"tous","back":"retour","close":"fermer","continue":"continuer","download":"t\xe9l\xe9charger","downloadsheet":"t\xe9l\xe9charger cette fiche","downloadsheetmobile":"t\xe9l\xe9charger cette fiche sur mobile","filter":"filtrer","history":"historique","lang":"langues","menu":"menu","mode":"mode","needhelp":"besoin d\'aide ?","parameters":"param\xe8tres","print":"imprimer","printsheet":"imprimer cette fiche","result":"r\xe9sultat","results":"r\xe9sultats","singleLang":"langue","sound":"son","submit":"valider","subtitle":"sous-titre","tutorial":"tutoriel","validate":"valider"},"emergency":{"samu":"samu","police":"police","firefighter":"pompiers","general":"g\xe9n\xe9ral","citypolice":"Police municipale","hospital":"H\xf4pital","homeless":"Sans abris (appel gratuit)","poison":"Centre anti-poison","emergency":"Urgences europ\xe9ennes"},"error":{"title":"une erreur est survenue","button":"Relancer l\'application"},"history":{"title":"historique de conversation"},"inputs":{"choose":"Choisissez une r\xe9ponse"},"language":{"change":"changer la langue","select":"s\xe9lectionnez la langue de votre choix"},"link":{"buttonText":"Voir le document","goto":"Acc\xe9der \xe0 l\'adresse","click":"Cliquez-ici","scanQR":"en scannant le QrCode"},"loader":{"loader":{"optimal":"Pour une exp\xe9rience optimale,","classic":"Pour une exp\xe9rience plus classique,","vocal":"j\'\xe9change de vive voix avec l\'agent.","text":"j\'\xe9change \xe0 l\'\xe9crit avec l\'agent."},"modes":{"vocal":"mode vocal","text":"mode texte"},"loaderValidation":"D\xe9marrer la conversation","locale":"v\xe9rification de la langue","supported":"v\xe9rification des langues disponibles","store":"cr\xe9ation du store","directline":"connection au directline","ponyfill":"cr\xe9ation du ponyfill","addressdata":"r\xe9cup\xe9ration des donn\xe9es"},"menu":{"message":"Saisissez votre message","allowMicrophone":"Autorisez votre navigateur \xe0 utiliser votre micro pour continuer","backconversation":"retour \xe0 la conversation","answer":" r\xe9pond \xe0 vos questions"},"mobileLandscapePreventer":{"firstline":"Pour une exp\xe9rience optimale,","secondline":"basculez votre \xe9cran"},"news":{"warningtext":"Vous allez acc\xe9der \xe0 la cha\xeene info, le son de votre appareil va \xeatre activ\xe9","live":"direct","continuous":"en continu"},"poi":{"comment":"avis clients","route":"y Aller","nodata":"Aucun contenu ne correspond \xe0 votre recherche","openinghours":"Horaires","prices":"Tarifs","paymentmethods":"Modes de paiement","numberofplaces":"nombre de couverts","openroutemobile":"ouvrir l\'itin\xe9raire Google Maps sur mobile","FoodEstablishment":"O\xf9 manger","LodgingBusiness":"O\xf9 dormir","TouristDestination":"A voir","TouristAttraction":"A faire","Product":"Produits locaux","Service":"Services","Event":"Ev\xe8nements","City":"Villes","Wine":"Vins"},"suggestion":{"consult":"Consultez","thetutorial":"le tutoriel"},"template":{"reset":"effacer tout","showresults":"Afficher les r\xe9sultats","suggestiontitle":"Suggestions de recherches","reminder":"N\'oubliez pas,\\n je peux r\xe9pondre \xe0 vos questions."}}');
|
|
2225
|
+
$95d45285e8bde83a$exports = JSON.parse('{"1":"accueil","2":"cha\xeene info live","3":"m\xe9t\xe9o","4":"num\xe9ros d\'urgence","1000":"historique","1001":"tutoriel","common":{"abort":"annuler","all":"tous","back":"retour","close":"fermer","continue":"continuer","download":"t\xe9l\xe9charger","downloadsheet":"t\xe9l\xe9charger cette fiche","downloadsheetmobile":"t\xe9l\xe9charger cette fiche sur mobile","filter":"filtrer","history":"historique","lang":"langues","menu":"menu","mode":"mode","needhelp":"besoin d\'aide ?","parameters":"param\xe8tres","print":"imprimer","printsheet":"imprimer cette fiche","result":"r\xe9sultat","results":"r\xe9sultats","singleLang":"langue","sound":"son","submit":"valider","subtitle":"sous-titre","tutorial":"tutoriel","validate":"valider"},"emergency":{"samu":"samu","police":"police","firefighter":"pompiers","general":"g\xe9n\xe9ral","citypolice":"Police municipale","hospital":"H\xf4pital","homeless":"Sans abris (appel gratuit)","poison":"Centre anti-poison","emergency":"Urgences europ\xe9ennes"},"error":{"title":"une erreur est survenue","button":"Relancer l\'application"},"history":{"title":"historique de conversation"},"inputs":{"choose":"Choisissez une r\xe9ponse"},"language":{"change":"changer la langue","select":"s\xe9lectionnez la langue de votre choix"},"link":{"buttonText":"Voir le document","goto":"Acc\xe9der \xe0 l\'adresse","click":"Cliquez-ici","scanQR":"en scannant le QrCode"},"loader":{"loader":{"optimal":"Pour une exp\xe9rience optimale,","classic":"Pour une exp\xe9rience plus classique,","vocal":"j\'\xe9change de vive voix avec l\'agent.","text":"j\'\xe9change \xe0 l\'\xe9crit avec l\'agent."},"modes":{"vocal":"mode vocal","text":"mode texte"},"loaderValidation":"D\xe9marrer la conversation","locale":"v\xe9rification de la langue","supported":"v\xe9rification des langues disponibles","store":"cr\xe9ation du store","directline":"connection au directline","ponyfill":"cr\xe9ation du ponyfill","addressdata":"r\xe9cup\xe9ration des donn\xe9es"},"menu":{"message":"Saisissez votre message","allowMicrophone":"Autorisez votre navigateur \xe0 utiliser votre micro pour continuer","backconversation":"retour \xe0 la conversation","answer":" r\xe9pond \xe0 vos questions"},"mobileLandscapePreventer":{"firstline":"Pour une exp\xe9rience optimale,","secondline":"basculez votre \xe9cran"},"news":{"warningtext":"Vous allez acc\xe9der \xe0 la cha\xeene info, le son de votre appareil va \xeatre activ\xe9","live":"direct","continuous":"en continu"},"poi":{"comment":"avis clients","route":"y Aller","nodata":"Aucun contenu ne correspond \xe0 votre recherche","openinghours":"Horaires","prices":"Tarifs","paymentmethods":"Modes de paiement","numberofplaces":"nombre de couverts","openroutemobile":"ouvrir l\'itin\xe9raire Google Maps sur mobile","FoodEstablishment":"O\xf9 manger","LodgingBusiness":"O\xf9 dormir","TouristDestination":"A voir","TouristAttraction":"A faire","Product":"Produits locaux","Service":"Services","Event":"Ev\xe8nements","City":"Villes","Wine":"Vins"},"suggestion":{"consult":"Consultez","thetutorial":"le tutoriel"},"template":{"reset":"effacer tout","showresults":"Afficher les r\xe9sultats","suggestiontitle":"Suggestions de recherches","reminder":"N\'oubliez pas,\\n je peux r\xe9pondre \xe0 vos questions."},"GDPR":{"title":"traitement des donn\xe9es personnelles transmises au bot","message":"en acceptant ce dialogue, vous consentez \xe0 ce que toutes les donn\xe9es transmises au chatbot soient exploit\xe9es \xe0 des fins d\'analyse de l\'utilisation de l\'outil et d\'enrichissement de la base de connaissance.\\n\\nVos conversations sont conserv\xe9es 6 mois avant de faire l\'objet d\'une suppression.","link":"lien pour consulter les politiques de confidentialit\xe9","buttonAccept":"j\'ai compris et j\'accepte","buttonRefuse":"je refuse","messageAccepted":"votre consentement est bien pris en compte","messageRefused":"votre refus est bien pris en compte"}}');
|
|
2066
2226
|
|
|
2067
2227
|
|
|
2068
2228
|
var $097ad979da96f7cd$exports = {};
|
|
2069
|
-
$097ad979da96f7cd$exports = JSON.parse('{"1":"accueil","2":"cha\xeene info live","3":"m\xe9t\xe9o","4":"num\xe9ros d\'urgence","1000":"historique","1001":"tutoriel","common":{"abort":"annuler","all":"tous","back":"retour","close":"fermer","continue":"continuer","download":"t\xe9l\xe9charger","downloadsheet":"t\xe9l\xe9charger cette fiche","downloadsheetmobile":"t\xe9l\xe9charger cette fiche sur mobile","filter":"filtrer","history":"historique","lang":"langues","menu":"menu","mode":"mode","needhelp":"besoin d\'aide ?","parameters":"param\xe8tres","print":"imprimer","printsheet":"imprimer cette fiche","result":"r\xe9sultat","results":"r\xe9sultats","singleLang":"langue","sound":"son","submit":"valider","subtitle":"sous-titre","tutorial":"tutoriel","validate":"valider"},"emergency":{"samu":"samu","police":"police","firefighter":"pompiers","general":"g\xe9n\xe9ral","citypolice":"Police municipale","hospital":"H\xf4pital","homeless":"Sans abris (appel gratuit)","poison":"Centre anti-poison","emergency":"Urgences europ\xe9ennes"},"error":{"title":"une erreur est survenue","button":"Relancer l\'application"},"history":{"title":"historique de conversation"},"inputs":{"choose":"Choisissez une r\xe9ponse"},"language":{"change":"changer la langue","select":"s\xe9lectionnez la langue de votre choix"},"link":{"buttonText":"Voir le document","goto":"Acc\xe9der \xe0 l\'adresse","click":"Cliquez-ici","scanQR":"en scannant le QrCode"},"loader":{"loader":{"optimal":"Pour une exp\xe9rience optimale,","classic":"Pour une exp\xe9rience plus classique,","vocal":"j\'\xe9change de vive voix avec l\'agent.","text":"j\'\xe9change \xe0 l\'\xe9crit avec l\'agent."},"modes":{"vocal":"mode vocal","text":"mode texte"},"loaderValidation":"D\xe9marrer la conversation","locale":"v\xe9rification de la langue","supported":"v\xe9rification des langues disponibles","store":"cr\xe9ation du store","directline":"connection au directline","ponyfill":"cr\xe9ation du ponyfill","addressdata":"r\xe9cup\xe9ration des donn\xe9es"},"menu":{"message":"Saisissez votre message","allowMicrophone":"Autorisez votre navigateur \xe0 utiliser votre micro pour continuer","backconversation":"retour \xe0 la conversation","answer":" r\xe9pond \xe0 vos questions"},"mobileLandscapePreventer":{"firstline":"Pour une exp\xe9rience optimale,","secondline":"basculez votre \xe9cran"},"news":{"warningtext":"Vous allez acc\xe9der \xe0 la cha\xeene info, le son de votre appareil va \xeatre activ\xe9","live":"direct","continuous":"en continu"},"poi":{"comment":"avis clients","route":"y Aller","nodata":"Aucun contenu ne correspond \xe0 votre recherche","openinghours":"Horaires","prices":"Tarifs","paymentmethods":"Modes de paiement","numberofplaces":"nombre de couverts","openroutemobile":"ouvrir l\'itin\xe9raire Google Maps sur mobile","FoodEstablishment":"O\xf9 manger","LodgingBusiness":"O\xf9 dormir","TouristDestination":"A voir","TouristAttraction":"A faire","Product":"Produits locaux","Service":"Services","Event":"Ev\xe8nements","City":"Villes","Wine":"Vins"},"suggestion":{"consult":"Consultez","thetutorial":"le tutoriel"},"template":{"reset":"effacer tout","showresults":"Afficher les r\xe9sultats","suggestiontitle":"Suggestions de recherches","reminder":"N\'oubliez pas,\\n je peux r\xe9pondre \xe0 vos questions."}}');
|
|
2229
|
+
$097ad979da96f7cd$exports = JSON.parse('{"1":"accueil","2":"cha\xeene info live","3":"m\xe9t\xe9o","4":"num\xe9ros d\'urgence","1000":"historique","1001":"tutoriel","common":{"abort":"annuler","all":"tous","back":"retour","close":"fermer","continue":"continuer","download":"t\xe9l\xe9charger","downloadsheet":"t\xe9l\xe9charger cette fiche","downloadsheetmobile":"t\xe9l\xe9charger cette fiche sur mobile","filter":"filtrer","history":"historique","lang":"langues","menu":"menu","mode":"mode","needhelp":"besoin d\'aide ?","parameters":"param\xe8tres","print":"imprimer","printsheet":"imprimer cette fiche","result":"r\xe9sultat","results":"r\xe9sultats","singleLang":"langue","sound":"son","submit":"valider","subtitle":"sous-titre","tutorial":"tutoriel","validate":"valider"},"emergency":{"samu":"samu","police":"police","firefighter":"pompiers","general":"g\xe9n\xe9ral","citypolice":"Police municipale","hospital":"H\xf4pital","homeless":"Sans abris (appel gratuit)","poison":"Centre anti-poison","emergency":"Urgences europ\xe9ennes"},"error":{"title":"une erreur est survenue","button":"Relancer l\'application"},"history":{"title":"historique de conversation"},"inputs":{"choose":"Choisissez une r\xe9ponse"},"language":{"change":"changer la langue","select":"s\xe9lectionnez la langue de votre choix"},"link":{"buttonText":"Voir le document","goto":"Acc\xe9der \xe0 l\'adresse","click":"Cliquez-ici","scanQR":"en scannant le QrCode"},"loader":{"loader":{"optimal":"Pour une exp\xe9rience optimale,","classic":"Pour une exp\xe9rience plus classique,","vocal":"j\'\xe9change de vive voix avec l\'agent.","text":"j\'\xe9change \xe0 l\'\xe9crit avec l\'agent."},"modes":{"vocal":"mode vocal","text":"mode texte"},"loaderValidation":"D\xe9marrer la conversation","locale":"v\xe9rification de la langue","supported":"v\xe9rification des langues disponibles","store":"cr\xe9ation du store","directline":"connection au directline","ponyfill":"cr\xe9ation du ponyfill","addressdata":"r\xe9cup\xe9ration des donn\xe9es"},"menu":{"message":"Saisissez votre message","allowMicrophone":"Autorisez votre navigateur \xe0 utiliser votre micro pour continuer","backconversation":"retour \xe0 la conversation","answer":" r\xe9pond \xe0 vos questions"},"mobileLandscapePreventer":{"firstline":"Pour une exp\xe9rience optimale,","secondline":"basculez votre \xe9cran"},"news":{"warningtext":"Vous allez acc\xe9der \xe0 la cha\xeene info, le son de votre appareil va \xeatre activ\xe9","live":"direct","continuous":"en continu"},"poi":{"comment":"avis clients","route":"y Aller","nodata":"Aucun contenu ne correspond \xe0 votre recherche","openinghours":"Horaires","prices":"Tarifs","paymentmethods":"Modes de paiement","numberofplaces":"nombre de couverts","openroutemobile":"ouvrir l\'itin\xe9raire Google Maps sur mobile","FoodEstablishment":"O\xf9 manger","LodgingBusiness":"O\xf9 dormir","TouristDestination":"A voir","TouristAttraction":"A faire","Product":"Produits locaux","Service":"Services","Event":"Ev\xe8nements","City":"Villes","Wine":"Vins"},"suggestion":{"consult":"Consultez","thetutorial":"le tutoriel"},"template":{"reset":"effacer tout","showresults":"Afficher les r\xe9sultats","suggestiontitle":"Suggestions de recherches","reminder":"N\'oubliez pas,\\n je peux r\xe9pondre \xe0 vos questions."},"GDPR":{"title":"traitement des donn\xe9es personnelles transmises au bot","message":"en acceptant ce dialogue, vous consentez \xe0 ce que toutes les donn\xe9es transmises au chatbot soient exploit\xe9es \xe0 des fins d\'analyse de l\'utilisation de l\'outil et d\'enrichissement de la base de connaissance.\\n\\nVos conversations sont conserv\xe9es 6 mois avant de faire l\'objet d\'une suppression.","link":"lien pour consulter les politiques de confidentialit\xe9","buttonAccept":"j\'ai compris et j\'accepte","buttonRefuse":"je refuse","messageAccepted":"votre consentement est bien pris en compte","messageRefused":"votre refus est bien pris en compte"}}');
|
|
2070
2230
|
|
|
2071
2231
|
|
|
2072
2232
|
var $346507cd11192c21$exports = {};
|
|
2073
|
-
$346507cd11192c21$exports = JSON.parse('{"1":"accueil","2":"cha\xeene info live","3":"m\xe9t\xe9o","4":"num\xe9ros d\'urgence","1000":"historique","1001":"tutoriel","common":{"abort":"annuler","all":"tous","back":"retour","close":"fermer","continue":"continuer","download":"t\xe9l\xe9charger","downloadsheet":"t\xe9l\xe9charger cette fiche","downloadsheetmobile":"t\xe9l\xe9charger cette fiche sur mobile","filter":"filtrer","history":"historique","lang":"langues","menu":"menu","mode":"mode","needhelp":"besoin d\'aide ?","parameters":"param\xe8tres","print":"imprimer","printsheet":"imprimer cette fiche","result":"r\xe9sultat","results":"r\xe9sultats","singleLang":"langue","sound":"son","submit":"valider","subtitle":"sous-titre","tutorial":"tutoriel","validate":"valider"},"emergency":{"samu":"samu","police":"police","firefighter":"pompiers","general":"g\xe9n\xe9ral","citypolice":"Police municipale","hospital":"H\xf4pital","homeless":"Sans abris (appel gratuit)","poison":"Centre anti-poison","emergency":"Urgences europ\xe9ennes"},"error":{"title":"une erreur est survenue","button":"Relancer l\'application"},"history":{"title":"historique de conversation"},"inputs":{"choose":"Choisissez une r\xe9ponse"},"language":{"change":"changer la langue","select":"s\xe9lectionnez la langue de votre choix"},"link":{"buttonText":"Voir le document","goto":"Acc\xe9der \xe0 l\'adresse","click":"Cliquez-ici","scanQR":"en scannant le QrCode"},"loader":{"loader":{"optimal":"Pour une exp\xe9rience optimale,","classic":"Pour une exp\xe9rience plus classique,","vocal":"j\'\xe9change de vive voix avec l\'agent.","text":"j\'\xe9change \xe0 l\'\xe9crit avec l\'agent."},"modes":{"vocal":"mode vocal","text":"mode texte"},"loaderValidation":"D\xe9marrer la conversation","locale":"v\xe9rification de la langue","supported":"v\xe9rification des langues disponibles","store":"cr\xe9ation du store","directline":"connection au directline","ponyfill":"cr\xe9ation du ponyfill","addressdata":"r\xe9cup\xe9ration des donn\xe9es"},"menu":{"message":"Saisissez votre message","allowMicrophone":"Autorisez votre navigateur \xe0 utiliser votre micro pour continuer","backconversation":"retour \xe0 la conversation","answer":" r\xe9pond \xe0 vos questions"},"mobileLandscapePreventer":{"firstline":"Pour une exp\xe9rience optimale,","secondline":"basculez votre \xe9cran"},"news":{"warningtext":"Vous allez acc\xe9der \xe0 la cha\xeene info, le son de votre appareil va \xeatre activ\xe9","live":"direct","continuous":"en continu"},"poi":{"comment":"avis clients","route":"y Aller","nodata":"Aucun contenu ne correspond \xe0 votre recherche","openinghours":"Horaires","prices":"Tarifs","paymentmethods":"Modes de paiement","numberofplaces":"nombre de couverts","openroutemobile":"ouvrir l\'itin\xe9raire Google Maps sur mobile","FoodEstablishment":"O\xf9 manger","LodgingBusiness":"O\xf9 dormir","TouristDestination":"A voir","TouristAttraction":"A faire","Product":"Produits locaux","Service":"Services","Event":"Ev\xe8nements","City":"Villes","Wine":"Vins"},"suggestion":{"consult":"Consultez","thetutorial":"le tutoriel"},"template":{"reset":"effacer tout","showresults":"Afficher les r\xe9sultats","suggestiontitle":"Suggestions de recherches","reminder":"N\'oubliez pas,\\n je peux r\xe9pondre \xe0 vos questions."}}');
|
|
2233
|
+
$346507cd11192c21$exports = JSON.parse('{"1":"accueil","2":"cha\xeene info live","3":"m\xe9t\xe9o","4":"num\xe9ros d\'urgence","1000":"historique","1001":"tutoriel","common":{"abort":"annuler","all":"tous","back":"retour","close":"fermer","continue":"continuer","download":"t\xe9l\xe9charger","downloadsheet":"t\xe9l\xe9charger cette fiche","downloadsheetmobile":"t\xe9l\xe9charger cette fiche sur mobile","filter":"filtrer","history":"historique","lang":"langues","menu":"menu","mode":"mode","needhelp":"besoin d\'aide ?","parameters":"param\xe8tres","print":"imprimer","printsheet":"imprimer cette fiche","result":"r\xe9sultat","results":"r\xe9sultats","singleLang":"langue","sound":"son","submit":"valider","subtitle":"sous-titre","tutorial":"tutoriel","validate":"valider"},"emergency":{"samu":"samu","police":"police","firefighter":"pompiers","general":"g\xe9n\xe9ral","citypolice":"Police municipale","hospital":"H\xf4pital","homeless":"Sans abris (appel gratuit)","poison":"Centre anti-poison","emergency":"Urgences europ\xe9ennes"},"error":{"title":"une erreur est survenue","button":"Relancer l\'application"},"history":{"title":"historique de conversation"},"inputs":{"choose":"Choisissez une r\xe9ponse"},"language":{"change":"changer la langue","select":"s\xe9lectionnez la langue de votre choix"},"link":{"buttonText":"Voir le document","goto":"Acc\xe9der \xe0 l\'adresse","click":"Cliquez-ici","scanQR":"en scannant le QrCode"},"loader":{"loader":{"optimal":"Pour une exp\xe9rience optimale,","classic":"Pour une exp\xe9rience plus classique,","vocal":"j\'\xe9change de vive voix avec l\'agent.","text":"j\'\xe9change \xe0 l\'\xe9crit avec l\'agent."},"modes":{"vocal":"mode vocal","text":"mode texte"},"loaderValidation":"D\xe9marrer la conversation","locale":"v\xe9rification de la langue","supported":"v\xe9rification des langues disponibles","store":"cr\xe9ation du store","directline":"connection au directline","ponyfill":"cr\xe9ation du ponyfill","addressdata":"r\xe9cup\xe9ration des donn\xe9es"},"menu":{"message":"Saisissez votre message","allowMicrophone":"Autorisez votre navigateur \xe0 utiliser votre micro pour continuer","backconversation":"retour \xe0 la conversation","answer":" r\xe9pond \xe0 vos questions"},"mobileLandscapePreventer":{"firstline":"Pour une exp\xe9rience optimale,","secondline":"basculez votre \xe9cran"},"news":{"warningtext":"Vous allez acc\xe9der \xe0 la cha\xeene info, le son de votre appareil va \xeatre activ\xe9","live":"direct","continuous":"en continu"},"poi":{"comment":"avis clients","route":"y Aller","nodata":"Aucun contenu ne correspond \xe0 votre recherche","openinghours":"Horaires","prices":"Tarifs","paymentmethods":"Modes de paiement","numberofplaces":"nombre de couverts","openroutemobile":"ouvrir l\'itin\xe9raire Google Maps sur mobile","FoodEstablishment":"O\xf9 manger","LodgingBusiness":"O\xf9 dormir","TouristDestination":"A voir","TouristAttraction":"A faire","Product":"Produits locaux","Service":"Services","Event":"Ev\xe8nements","City":"Villes","Wine":"Vins"},"suggestion":{"consult":"Consultez","thetutorial":"le tutoriel"},"template":{"reset":"effacer tout","showresults":"Afficher les r\xe9sultats","suggestiontitle":"Suggestions de recherches","reminder":"N\'oubliez pas,\\n je peux r\xe9pondre \xe0 vos questions."},"GDPR":{"title":"traitement des donn\xe9es personnelles transmises au bot","message":"en acceptant ce dialogue, vous consentez \xe0 ce que toutes les donn\xe9es transmises au chatbot soient exploit\xe9es \xe0 des fins d\'analyse de l\'utilisation de l\'outil et d\'enrichissement de la base de connaissance.\\n\\nVos conversations sont conserv\xe9es 6 mois avant de faire l\'objet d\'une suppression.","link":"lien pour consulter les politiques de confidentialit\xe9","buttonAccept":"j\'ai compris et j\'accepte","buttonRefuse":"je refuse","messageAccepted":"votre consentement est bien pris en compte","messageRefused":"votre refus est bien pris en compte"}}');
|
|
2074
2234
|
|
|
2075
2235
|
|
|
2076
2236
|
var $622a013796bd38cb$exports = {};
|
|
2077
|
-
$622a013796bd38cb$exports = JSON.parse('{"1":"accueil","2":"cha\xeene info live","3":"m\xe9t\xe9o","4":"num\xe9ros d\'urgence","1000":"historique","1001":"tutoriel","common":{"abort":"annuler","all":"tous","back":"retour","close":"fermer","continue":"continuer","download":"t\xe9l\xe9charger","downloadsheet":"t\xe9l\xe9charger cette fiche","downloadsheetmobile":"t\xe9l\xe9charger cette fiche sur mobile","filter":"filtrer","history":"historique","lang":"langues","menu":"menu","mode":"mode","needhelp":"besoin d\'aide ?","parameters":"param\xe8tres","print":"imprimer","printsheet":"imprimer cette fiche","result":"r\xe9sultat","results":"r\xe9sultats","singleLang":"langue","sound":"son","submit":"valider","subtitle":"sous-titre","tutorial":"tutoriel","validate":"valider"},"emergency":{"samu":"samu","police":"police","firefighter":"pompiers","general":"g\xe9n\xe9ral","citypolice":"Police municipale","hospital":"H\xf4pital","homeless":"Sans abris (appel gratuit)","poison":"Centre anti-poison","emergency":"Urgences europ\xe9ennes"},"error":{"title":"une erreur est survenue","button":"Relancer l\'application"},"history":{"title":"historique de conversation"},"inputs":{"choose":"Choisissez une r\xe9ponse"},"language":{"change":"changer la langue","select":"s\xe9lectionnez la langue de votre choix"},"link":{"buttonText":"Voir le document","goto":"Acc\xe9der \xe0 l\'adresse","click":"Cliquez-ici","scanQR":"en scannant le QrCode"},"loader":{"loader":{"optimal":"Pour une exp\xe9rience optimale,","classic":"Pour une exp\xe9rience plus classique,","vocal":"j\'\xe9change de vive voix avec l\'agent.","text":"j\'\xe9change \xe0 l\'\xe9crit avec l\'agent."},"modes":{"vocal":"mode vocal","text":"mode texte"},"loaderValidation":"D\xe9marrer la conversation","locale":"v\xe9rification de la langue","supported":"v\xe9rification des langues disponibles","store":"cr\xe9ation du store","directline":"connection au directline","ponyfill":"cr\xe9ation du ponyfill","addressdata":"r\xe9cup\xe9ration des donn\xe9es"},"menu":{"message":"Saisissez votre message","allowMicrophone":"Autorisez votre navigateur \xe0 utiliser votre micro pour continuer","backconversation":"retour \xe0 la conversation","answer":" r\xe9pond \xe0 vos questions"},"mobileLandscapePreventer":{"firstline":"Pour une exp\xe9rience optimale,","secondline":"basculez votre \xe9cran"},"news":{"warningtext":"Vous allez acc\xe9der \xe0 la cha\xeene info, le son de votre appareil va \xeatre activ\xe9","live":"direct","continuous":"en continu"},"poi":{"comment":"avis clients","route":"y Aller","nodata":"Aucun contenu ne correspond \xe0 votre recherche","openinghours":"Horaires","prices":"Tarifs","paymentmethods":"Modes de paiement","numberofplaces":"nombre de couverts","openroutemobile":"ouvrir l\'itin\xe9raire Google Maps sur mobile","FoodEstablishment":"O\xf9 manger","LodgingBusiness":"O\xf9 dormir","TouristDestination":"A voir","TouristAttraction":"A faire","Product":"Produits locaux","Service":"Services","Event":"Ev\xe8nements","City":"Villes","Wine":"Vins"},"suggestion":{"consult":"Consultez","thetutorial":"le tutoriel"},"template":{"reset":"effacer tout","showresults":"Afficher les r\xe9sultats","suggestiontitle":"Suggestions de recherches","reminder":"N\'oubliez pas,\\n je peux r\xe9pondre \xe0 vos questions."}}');
|
|
2237
|
+
$622a013796bd38cb$exports = JSON.parse('{"1":"accueil","2":"cha\xeene info live","3":"m\xe9t\xe9o","4":"num\xe9ros d\'urgence","1000":"historique","1001":"tutoriel","common":{"abort":"annuler","all":"tous","back":"retour","close":"fermer","continue":"continuer","download":"t\xe9l\xe9charger","downloadsheet":"t\xe9l\xe9charger cette fiche","downloadsheetmobile":"t\xe9l\xe9charger cette fiche sur mobile","filter":"filtrer","history":"historique","lang":"langues","menu":"menu","mode":"mode","needhelp":"besoin d\'aide ?","parameters":"param\xe8tres","print":"imprimer","printsheet":"imprimer cette fiche","result":"r\xe9sultat","results":"r\xe9sultats","singleLang":"langue","sound":"son","submit":"valider","subtitle":"sous-titre","tutorial":"tutoriel","validate":"valider"},"emergency":{"samu":"samu","police":"police","firefighter":"pompiers","general":"g\xe9n\xe9ral","citypolice":"Police municipale","hospital":"H\xf4pital","homeless":"Sans abris (appel gratuit)","poison":"Centre anti-poison","emergency":"Urgences europ\xe9ennes"},"error":{"title":"une erreur est survenue","button":"Relancer l\'application"},"history":{"title":"historique de conversation"},"inputs":{"choose":"Choisissez une r\xe9ponse"},"language":{"change":"changer la langue","select":"s\xe9lectionnez la langue de votre choix"},"link":{"buttonText":"Voir le document","goto":"Acc\xe9der \xe0 l\'adresse","click":"Cliquez-ici","scanQR":"en scannant le QrCode"},"loader":{"loader":{"optimal":"Pour une exp\xe9rience optimale,","classic":"Pour une exp\xe9rience plus classique,","vocal":"j\'\xe9change de vive voix avec l\'agent.","text":"j\'\xe9change \xe0 l\'\xe9crit avec l\'agent."},"modes":{"vocal":"mode vocal","text":"mode texte"},"loaderValidation":"D\xe9marrer la conversation","locale":"v\xe9rification de la langue","supported":"v\xe9rification des langues disponibles","store":"cr\xe9ation du store","directline":"connection au directline","ponyfill":"cr\xe9ation du ponyfill","addressdata":"r\xe9cup\xe9ration des donn\xe9es"},"menu":{"message":"Saisissez votre message","allowMicrophone":"Autorisez votre navigateur \xe0 utiliser votre micro pour continuer","backconversation":"retour \xe0 la conversation","answer":" r\xe9pond \xe0 vos questions"},"mobileLandscapePreventer":{"firstline":"Pour une exp\xe9rience optimale,","secondline":"basculez votre \xe9cran"},"news":{"warningtext":"Vous allez acc\xe9der \xe0 la cha\xeene info, le son de votre appareil va \xeatre activ\xe9","live":"direct","continuous":"en continu"},"poi":{"comment":"avis clients","route":"y Aller","nodata":"Aucun contenu ne correspond \xe0 votre recherche","openinghours":"Horaires","prices":"Tarifs","paymentmethods":"Modes de paiement","numberofplaces":"nombre de couverts","openroutemobile":"ouvrir l\'itin\xe9raire Google Maps sur mobile","FoodEstablishment":"O\xf9 manger","LodgingBusiness":"O\xf9 dormir","TouristDestination":"A voir","TouristAttraction":"A faire","Product":"Produits locaux","Service":"Services","Event":"Ev\xe8nements","City":"Villes","Wine":"Vins"},"suggestion":{"consult":"Consultez","thetutorial":"le tutoriel"},"template":{"reset":"effacer tout","showresults":"Afficher les r\xe9sultats","suggestiontitle":"Suggestions de recherches","reminder":"N\'oubliez pas,\\n je peux r\xe9pondre \xe0 vos questions."},"GDPR":{"title":"traitement des donn\xe9es personnelles transmises au bot","message":"en acceptant ce dialogue, vous consentez \xe0 ce que toutes les donn\xe9es transmises au chatbot soient exploit\xe9es \xe0 des fins d\'analyse de l\'utilisation de l\'outil et d\'enrichissement de la base de connaissance.\\n\\nVos conversations sont conserv\xe9es 6 mois avant de faire l\'objet d\'une suppression.","link":"lien pour consulter les politiques de confidentialit\xe9","buttonAccept":"j\'ai compris et j\'accepte","buttonRefuse":"je refuse","messageAccepted":"votre consentement est bien pris en compte","messageRefused":"votre refus est bien pris en compte"}}');
|
|
2078
2238
|
|
|
2079
2239
|
|
|
2080
2240
|
var $dcb762542f944ac8$exports = {};
|
|
@@ -2213,7 +2373,7 @@ const $b6a8688e7db7a7b9$export$3118ae18000e2700 = ()=>{
|
|
|
2213
2373
|
const $e37833e47d877d3a$var$useToggleMicrophone = ()=>{
|
|
2214
2374
|
const mode = (0, $c7242af7a2bc5e50$export$bd22554f31e5f96f)((state)=>state.mode);
|
|
2215
2375
|
const activeRecognitionState = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.activeRecognitionState);
|
|
2216
|
-
const toggleMicrophone = (0, $dWhh5$react.useCallback)(()=>{
|
|
2376
|
+
const toggleMicrophone = (0, $dWhh5$react.useCallback)((fromExpectedInput)=>{
|
|
2217
2377
|
if (mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).text) (0, $5f7f457957bd2c8d$export$45913366c4ba414f)((0, $71c613e2e831c34c$export$3f0071308968cd80).Closed);
|
|
2218
2378
|
else switch(activeRecognitionState){
|
|
2219
2379
|
// Do nothing if we are in a transition state
|
|
@@ -2226,7 +2386,7 @@ const $e37833e47d877d3a$var$useToggleMicrophone = ()=>{
|
|
|
2226
2386
|
break;
|
|
2227
2387
|
case (0, $71c613e2e831c34c$export$3f0071308968cd80).Closed:
|
|
2228
2388
|
(0, $5f7f457957bd2c8d$export$45913366c4ba414f)((0, $71c613e2e831c34c$export$3f0071308968cd80).Initializing);
|
|
2229
|
-
(0, $5f7f457957bd2c8d$export$d0df6aec4e971f52)(true);
|
|
2389
|
+
!fromExpectedInput && (0, $5f7f457957bd2c8d$export$d0df6aec4e971f52)(true);
|
|
2230
2390
|
break;
|
|
2231
2391
|
}
|
|
2232
2392
|
}, [
|
|
@@ -2246,12 +2406,14 @@ var $071bb34c9db044ce$var$EventsReceived;
|
|
|
2246
2406
|
EventsReceived[EventsReceived["retorikStartListening"] = 3] = "retorikStartListening";
|
|
2247
2407
|
EventsReceived[EventsReceived["retorikDisplaySubtitles"] = 4] = "retorikDisplaySubtitles";
|
|
2248
2408
|
})($071bb34c9db044ce$var$EventsReceived || ($071bb34c9db044ce$var$EventsReceived = {}));
|
|
2249
|
-
const $071bb34c9db044ce$var$SendActivityEventListener = ({ isRetorikNews: isRetorikNews, hasConversationCookie: hasConversationCookie, userData: userData
|
|
2409
|
+
const $071bb34c9db044ce$var$SendActivityEventListener = ({ isRetorikNews: isRetorikNews, hasConversationCookie: hasConversationCookie, userData: userData })=>{
|
|
2250
2410
|
const sendPostActivity = $071bb34c9db044ce$var$usePostActivity();
|
|
2251
2411
|
const sendEvent = $071bb34c9db044ce$var$useSendEvent();
|
|
2252
2412
|
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
2253
2413
|
const activityToSend = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.activityToSend);
|
|
2254
2414
|
const eventToSend = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.eventToSend);
|
|
2415
|
+
const displayGDPR = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.GDPRDisplay);
|
|
2416
|
+
const userConsent = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.GDPRUserConsent);
|
|
2255
2417
|
const { appAvailable: appAvailable, loaderClosed: loaderClosed, configuration: { skipWelcome: skipWelcome } } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
2256
2418
|
const toggleMicrophone = (0, $e37833e47d877d3a$export$2e2bcd8739ae039)();
|
|
2257
2419
|
const [eventReceived, setEventReceived] = (0, $dWhh5$react.useState)(null);
|
|
@@ -2272,7 +2434,7 @@ const $071bb34c9db044ce$var$SendActivityEventListener = ({ isRetorikNews: isReto
|
|
|
2272
2434
|
eventReceived.detail && sendEvent(eventReceived.detail.name, eventReceived.detail.value);
|
|
2273
2435
|
}
|
|
2274
2436
|
} catch (e) {
|
|
2275
|
-
console.warn("Error on event reception");
|
|
2437
|
+
console.warn("Retorik Framework > Error on event reception");
|
|
2276
2438
|
}
|
|
2277
2439
|
}, [
|
|
2278
2440
|
eventReceived
|
|
@@ -2295,22 +2457,27 @@ const $071bb34c9db044ce$var$SendActivityEventListener = ({ isRetorikNews: isReto
|
|
|
2295
2457
|
};
|
|
2296
2458
|
}, []);
|
|
2297
2459
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
2298
|
-
if (isRetorikNews || hasConversationCookie)
|
|
2299
|
-
|
|
2300
|
-
(0, $c7242af7a2bc5e50$export$702dee93694750db)(true);
|
|
2301
|
-
} else if (!userAlreadySet && (appAvailable || loaderClosed)) {
|
|
2302
|
-
console.log("changedLayout", changedLayout, appAvailable, loaderClosed);
|
|
2460
|
+
if (isRetorikNews || hasConversationCookie) (0, $c7242af7a2bc5e50$export$702dee93694750db)(true);
|
|
2461
|
+
else if (!userAlreadySet && appAvailable && !displayGDPR) {
|
|
2303
2462
|
(0, $c7242af7a2bc5e50$export$702dee93694750db)(true);
|
|
2463
|
+
// Send mandatory events : setUser to start conversation, Davi.GDPRConsent for GDPR module
|
|
2464
|
+
sendEvent("setUser", {
|
|
2465
|
+
user: {
|
|
2466
|
+
...userData,
|
|
2467
|
+
gdprConsent: true
|
|
2468
|
+
},
|
|
2469
|
+
skipWelcome: !!skipWelcome
|
|
2470
|
+
});
|
|
2304
2471
|
setTimeout(()=>{
|
|
2305
|
-
sendEvent("
|
|
2306
|
-
|
|
2307
|
-
skipWelcome: !!skipWelcome
|
|
2472
|
+
sendEvent("Davi.GDPRConsent", {
|
|
2473
|
+
userConsent: userConsent
|
|
2308
2474
|
});
|
|
2309
|
-
},
|
|
2475
|
+
}, 100);
|
|
2310
2476
|
}
|
|
2311
2477
|
}, [
|
|
2312
2478
|
appAvailable,
|
|
2313
|
-
loaderClosed
|
|
2479
|
+
loaderClosed,
|
|
2480
|
+
displayGDPR
|
|
2314
2481
|
]);
|
|
2315
2482
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
2316
2483
|
if (activityToSend) {
|
|
@@ -2597,7 +2764,10 @@ const $6acc5d637072b42e$var$ViewContextDefaultValues = {
|
|
|
2597
2764
|
themeColors: (0, $04a533cfb295ca20$export$d80fe84b82195dbd),
|
|
2598
2765
|
isTactile: false,
|
|
2599
2766
|
isMobile: false,
|
|
2767
|
+
isWidget: false,
|
|
2768
|
+
isLandscape: true,
|
|
2600
2769
|
isMobileLandscape: false,
|
|
2770
|
+
isBorne: false,
|
|
2601
2771
|
displayControls: true,
|
|
2602
2772
|
showHomeAttachments: undefined,
|
|
2603
2773
|
mediumLandscape: false,
|
|
@@ -2623,11 +2793,10 @@ function $6acc5d637072b42e$export$50e22524de02f5db({ viewsConfiguration: viewsCo
|
|
|
2623
2793
|
currentWidth
|
|
2624
2794
|
]);
|
|
2625
2795
|
const [isTactile, setIsTactile] = (0, $dWhh5$react.useState)(false);
|
|
2626
|
-
const isMobile = (0, $dWhh5$react.
|
|
2627
|
-
|
|
2628
|
-
|
|
2629
|
-
|
|
2630
|
-
]);
|
|
2796
|
+
const [isMobile, setIsMobile] = (0, $dWhh5$react.useState)((0, $0b4f07c0f09dbbcf$export$78f16669b353a880).includes(currentDeviceType));
|
|
2797
|
+
const [isWidget, setIsWidget] = (0, $dWhh5$react.useState)((0, $0b4f07c0f09dbbcf$export$909f4c209eb70365).includes(currentDeviceType));
|
|
2798
|
+
const [isLandscape, setIsLandscape] = (0, $dWhh5$react.useState)((0, $0b4f07c0f09dbbcf$export$baf53ca377ebf861).includes(currentDeviceType));
|
|
2799
|
+
const [isBorne, setIsBorne] = (0, $dWhh5$react.useState)((0, $0b4f07c0f09dbbcf$export$a8576d98c9c928de).includes(currentDeviceType));
|
|
2631
2800
|
const isMobileLandscape = (0, $dWhh5$react.useMemo)(()=>{
|
|
2632
2801
|
if (currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile && currentHeight < currentWidth) return true;
|
|
2633
2802
|
return false;
|
|
@@ -2647,6 +2816,9 @@ function $6acc5d637072b42e$export$50e22524de02f5db({ viewsConfiguration: viewsCo
|
|
|
2647
2816
|
themeColors: themeColors,
|
|
2648
2817
|
isTactile: isTactile,
|
|
2649
2818
|
isMobile: isMobile,
|
|
2819
|
+
isWidget: isWidget,
|
|
2820
|
+
isLandscape: isLandscape,
|
|
2821
|
+
isBorne: isBorne,
|
|
2650
2822
|
isMobileLandscape: isMobileLandscape,
|
|
2651
2823
|
displayControls: displayControls,
|
|
2652
2824
|
showHomeAttachments: showHomeAttachments,
|
|
@@ -2665,6 +2837,10 @@ function $6acc5d637072b42e$export$50e22524de02f5db({ viewsConfiguration: viewsCo
|
|
|
2665
2837
|
currentWidth,
|
|
2666
2838
|
themeColors,
|
|
2667
2839
|
isTactile,
|
|
2840
|
+
isMobile,
|
|
2841
|
+
isWidget,
|
|
2842
|
+
isLandscape,
|
|
2843
|
+
isBorne,
|
|
2668
2844
|
isMobileLandscape,
|
|
2669
2845
|
displayControls,
|
|
2670
2846
|
showHomeAttachments,
|
|
@@ -2676,6 +2852,14 @@ function $6acc5d637072b42e$export$50e22524de02f5db({ viewsConfiguration: viewsCo
|
|
|
2676
2852
|
setDisplayControls,
|
|
2677
2853
|
setShowHomeAttachments
|
|
2678
2854
|
]);
|
|
2855
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
2856
|
+
setIsMobile((0, $0b4f07c0f09dbbcf$export$78f16669b353a880).includes(currentDeviceType));
|
|
2857
|
+
setIsWidget((0, $0b4f07c0f09dbbcf$export$909f4c209eb70365).includes(currentDeviceType));
|
|
2858
|
+
setIsLandscape((0, $0b4f07c0f09dbbcf$export$baf53ca377ebf861).includes(currentDeviceType));
|
|
2859
|
+
setIsBorne((0, $0b4f07c0f09dbbcf$export$a8576d98c9c928de).includes(currentDeviceType));
|
|
2860
|
+
}, [
|
|
2861
|
+
currentDeviceType
|
|
2862
|
+
]);
|
|
2679
2863
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
2680
2864
|
setIsTactile("ontouchstart" in window || navigator.maxTouchPoints > 0);
|
|
2681
2865
|
}, []);
|
|
@@ -4496,7 +4680,7 @@ const $123aaace3a01fe9a$var$POIAttachment = ({ media: media, title: title, subti
|
|
|
4496
4680
|
media && ((_media_ = media[0]) === null || _media_ === void 0 ? void 0 : _media_.url) ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
4497
4681
|
className: "rf-relative rf-w-full rf-rounded rf-aspect-video",
|
|
4498
4682
|
style: {
|
|
4499
|
-
backgroundImage: `url(${media[0].url})`,
|
|
4683
|
+
backgroundImage: `url(${media[0].url.replaceAll("'", "%27")})`,
|
|
4500
4684
|
backgroundSize: "cover",
|
|
4501
4685
|
backgroundRepeat: "no-repeat",
|
|
4502
4686
|
backgroundPosition: "center"
|
|
@@ -8313,6 +8497,7 @@ let $85d8b0d1ec40dae5$var$iconsInitialized = false;
|
|
|
8313
8497
|
|
|
8314
8498
|
|
|
8315
8499
|
|
|
8500
|
+
|
|
8316
8501
|
// Add markdown-it to window for markdown processing
|
|
8317
8502
|
window.markdownit = (0, ($parcel$interopDefault($dWhh5$markdownit)));
|
|
8318
8503
|
(0, $85d8b0d1ec40dae5$export$6108075486421829)();
|
|
@@ -8372,6 +8557,8 @@ const $c610b7db00433cde$var$defaultUser = {
|
|
|
8372
8557
|
conversationId: cookieConversationId,
|
|
8373
8558
|
watermark: "0"
|
|
8374
8559
|
}));
|
|
8560
|
+
// Tell the activity store that we will retrieve several activities from an existing conversation, so that it displays only the last one
|
|
8561
|
+
(0, $9acd31406c230961$export$d7e4f7861d387c67)(true);
|
|
8375
8562
|
setHasConversationCookie(true);
|
|
8376
8563
|
test = false;
|
|
8377
8564
|
}
|
|
@@ -8398,9 +8585,13 @@ const $c610b7db00433cde$var$defaultUser = {
|
|
|
8398
8585
|
}, [
|
|
8399
8586
|
ponyfillCredentials
|
|
8400
8587
|
]);
|
|
8401
|
-
// Initialize the store
|
|
8588
|
+
// Initialize the store on mount and close directline on unmount
|
|
8402
8589
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
8403
8590
|
initStore();
|
|
8591
|
+
return ()=>{
|
|
8592
|
+
var _subscriptionRef_current;
|
|
8593
|
+
subscriptionRef === null || subscriptionRef === void 0 ? void 0 : (_subscriptionRef_current = subscriptionRef.current) === null || _subscriptionRef_current === void 0 ? void 0 : _subscriptionRef_current.unsubscribe();
|
|
8594
|
+
};
|
|
8404
8595
|
}, []);
|
|
8405
8596
|
// Create custom store
|
|
8406
8597
|
function initStore() {
|
|
@@ -8427,10 +8618,6 @@ const $c610b7db00433cde$var$defaultUser = {
|
|
|
8427
8618
|
if (directLine) subscriptionRef.current = directLine.connectionStatus$.subscribe((newStatus)=>{
|
|
8428
8619
|
setConnectionStatus(newStatus);
|
|
8429
8620
|
});
|
|
8430
|
-
return ()=>{
|
|
8431
|
-
var _subscriptionRef_current;
|
|
8432
|
-
subscriptionRef === null || subscriptionRef === void 0 ? void 0 : (_subscriptionRef_current = subscriptionRef.current) === null || _subscriptionRef_current === void 0 ? void 0 : _subscriptionRef_current.unsubscribe();
|
|
8433
|
-
};
|
|
8434
8621
|
}, [
|
|
8435
8622
|
directLine
|
|
8436
8623
|
]);
|
|
@@ -8518,35 +8705,34 @@ var $99db97028d95da41$export$2e2bcd8739ae039 = $99db97028d95da41$var$BackgroundV
|
|
|
8518
8705
|
|
|
8519
8706
|
|
|
8520
8707
|
|
|
8521
|
-
|
|
8708
|
+
/**
|
|
8709
|
+
* Use javascript ResizeOberver object to catch element's resize and return current size
|
|
8710
|
+
* @param {React.RefObject<HTMLElement>} ref element for which we want to get the size when resized
|
|
8711
|
+
* @returns {Dimensions} dimension data (width, height)
|
|
8712
|
+
*/ const $b81eedb00aebd99e$var$useRefDimensions = (ref)=>{
|
|
8522
8713
|
const [dimensions, setDimensions] = (0, $dWhh5$react.useState)({
|
|
8523
8714
|
width: 1,
|
|
8524
8715
|
height: 1
|
|
8525
8716
|
});
|
|
8526
|
-
const [
|
|
8527
|
-
|
|
8528
|
-
|
|
8529
|
-
|
|
8530
|
-
|
|
8531
|
-
setWindowSize({
|
|
8532
|
-
width: window.innerWidth,
|
|
8533
|
-
height: window.innerHeight
|
|
8717
|
+
const [observer, setObserver] = (0, $dWhh5$react.useState)();
|
|
8718
|
+
const handleResizeObserverTick = (entries)=>{
|
|
8719
|
+
entries.length && entries[0].contentBoxSize.length && setDimensions({
|
|
8720
|
+
width: entries[0].contentBoxSize[0].inlineSize,
|
|
8721
|
+
height: entries[0].contentBoxSize[0].blockSize
|
|
8534
8722
|
});
|
|
8535
8723
|
};
|
|
8536
|
-
(0, $dWhh5$react.
|
|
8537
|
-
|
|
8538
|
-
|
|
8539
|
-
|
|
8540
|
-
|
|
8541
|
-
|
|
8542
|
-
|
|
8543
|
-
});
|
|
8724
|
+
(0, $dWhh5$react.useLayoutEffect)(()=>{
|
|
8725
|
+
if (!observer) {
|
|
8726
|
+
const obs = new ResizeObserver(handleResizeObserverTick);
|
|
8727
|
+
if (ref === null || ref === void 0 ? void 0 : ref.current) {
|
|
8728
|
+
obs.observe(ref.current);
|
|
8729
|
+
setObserver(obs);
|
|
8730
|
+
}
|
|
8544
8731
|
}
|
|
8545
|
-
return ()=>
|
|
8546
|
-
|
|
8547
|
-
|
|
8548
|
-
|
|
8549
|
-
]);
|
|
8732
|
+
return ()=>{
|
|
8733
|
+
observer === null || observer === void 0 ? void 0 : observer.disconnect();
|
|
8734
|
+
};
|
|
8735
|
+
}, []);
|
|
8550
8736
|
return dimensions;
|
|
8551
8737
|
};
|
|
8552
8738
|
var $b81eedb00aebd99e$export$2e2bcd8739ae039 = $b81eedb00aebd99e$var$useRefDimensions;
|
|
@@ -8711,11 +8897,11 @@ var $f49c2c2bc5cff629$export$2e2bcd8739ae039 = $f49c2c2bc5cff629$var$VoiceInput;
|
|
|
8711
8897
|
|
|
8712
8898
|
const $6af0aee9119363c4$var$UserRequest = ()=>{
|
|
8713
8899
|
const mode = (0, $c7242af7a2bc5e50$export$bd22554f31e5f96f)((state)=>state.mode);
|
|
8714
|
-
const { isMobile: isMobile,
|
|
8900
|
+
const { isMobile: isMobile, isBorne: isBorne, mediumLandscape: mediumLandscape } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
8715
8901
|
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {
|
|
8716
8902
|
children: !isMobile && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
8717
8903
|
className: `rf-relative rf-h-full
|
|
8718
|
-
${
|
|
8904
|
+
${isBorne && mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal ? "rf-w-4/9" : "rf-w-3/5"}
|
|
8719
8905
|
${mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).text && mediumLandscape ? "rf-col-start-4" : "rf-col-start-5"} rf-col-span-full rf-row-start-1 ${mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).text ? "rf-row-end-4" : "rf-row-end-5"} rf-py-4
|
|
8720
8906
|
large-vertical:rf-col-start-1 large-vertical:rf-col-span-full large-vertical:rf-row-start-5 large-vertical:rf-row-end-7
|
|
8721
8907
|
large-vertical:rf-py-5
|
|
@@ -9017,7 +9203,6 @@ var $adcadcb46808f0da$export$2e2bcd8739ae039 = $adcadcb46808f0da$var$ListContext
|
|
|
9017
9203
|
|
|
9018
9204
|
|
|
9019
9205
|
|
|
9020
|
-
|
|
9021
9206
|
const $d14cc799951c2f96$var$Desktop = ({ className: className, background: background, children: children })=>{
|
|
9022
9207
|
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
9023
9208
|
className: `rf-z-dropdown rf-relative rf-col-start-5 rf-col-end-13 rf-row-start-1 rf-row-span-full rf-w-3/5 rf-justify-self-center tactile:rf-pt-1/5 rf-flex rf-flex-col rf-justify-start rf-items-center rf-bg-templateBackground rf-shadow-[3px_3px_6px_#00000029] rf-overflow-y-scroll rf-scrollbar-hidden ${className}`,
|
|
@@ -9428,7 +9613,7 @@ var $e30af8373281dae5$export$2e2bcd8739ae039 = $e30af8373281dae5$var$AbsoluteLar
|
|
|
9428
9613
|
|
|
9429
9614
|
|
|
9430
9615
|
const $bd338a637fd5b066$var$SubMenu = ({ background: background, onClick: onClick, children: children })=>{
|
|
9431
|
-
const {
|
|
9616
|
+
const { isMobile: isMobile, isLandscape: isLandscape, isBorne: isBorne } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
9432
9617
|
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {
|
|
9433
9618
|
children: [
|
|
9434
9619
|
!isMobile && onClick && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $e30af8373281dae5$export$2e2bcd8739ae039), {
|
|
@@ -9436,14 +9621,14 @@ const $bd338a637fd5b066$var$SubMenu = ({ background: background, onClick: onClic
|
|
|
9436
9621
|
zIndexClassname: "rf-z-util",
|
|
9437
9622
|
onClick: onClick
|
|
9438
9623
|
}),
|
|
9439
|
-
|
|
9624
|
+
isBorne ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, $e126bc061f6f032b$export$2e2bcd8739ae039), {
|
|
9440
9625
|
className: "rf-z-dropdown rf-flex rf-flex-col rf-pt-[25vh] rf-pb-[15vh] rf-justify-start rf-items-center rf-shadow-[20px_3px_20px_#00000029] rf-overflow-y-scroll rf-scrollbar-hidden",
|
|
9441
9626
|
background: background || "#FFFFFF",
|
|
9442
9627
|
children: [
|
|
9443
9628
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $85e61aba8b9a5198$export$2e2bcd8739ae039), {}),
|
|
9444
9629
|
children
|
|
9445
9630
|
]
|
|
9446
|
-
}) :
|
|
9631
|
+
}) : isLandscape ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $d14cc799951c2f96$export$2e2bcd8739ae039), {
|
|
9447
9632
|
background: background || "#FFFFFF",
|
|
9448
9633
|
children: children
|
|
9449
9634
|
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $5b0a263fc6ebfb59$export$2e2bcd8739ae039), {
|
|
@@ -9471,6 +9656,7 @@ const $a0e7200eb5fb20c5$var$BackButton = ({ title: title, className: className,
|
|
|
9471
9656
|
className: `rf-flex rf-flex-row rf-items-center ${className}`,
|
|
9472
9657
|
onClick: handleBack,
|
|
9473
9658
|
"aria-label": title,
|
|
9659
|
+
"data-map": "fermer",
|
|
9474
9660
|
children: [
|
|
9475
9661
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $cd300cd0eae996ab$export$2e2bcd8739ae039), {
|
|
9476
9662
|
className: "rf-w-8"
|
|
@@ -10868,7 +11054,7 @@ var $0641c78f051b69fe$export$2e2bcd8739ae039 = $0641c78f051b69fe$var$SubMenuClos
|
|
|
10868
11054
|
|
|
10869
11055
|
|
|
10870
11056
|
const $6597700a5925d4dd$var$FullScreenRemoteClosing = ({ className: className, background: background, closeButtonClassName: closeButtonClassName, remoteCloseButtonZIndex: remoteCloseButtonZIndex, mobileReturnTitle: mobileReturnTitle, handleClose: handleClose, onClick: onClick, animation: animation, children: children })=>{
|
|
10871
|
-
const {
|
|
11057
|
+
const { isMobile: isMobile, isLandscape: isLandscape, isBorne: isBorne } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
10872
11058
|
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {
|
|
10873
11059
|
children: [
|
|
10874
11060
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, $e126bc061f6f032b$export$2e2bcd8739ae039), {
|
|
@@ -10877,7 +11063,7 @@ const $6597700a5925d4dd$var$FullScreenRemoteClosing = ({ className: className, b
|
|
|
10877
11063
|
onClick: onClick,
|
|
10878
11064
|
animation: animation,
|
|
10879
11065
|
children: [
|
|
10880
|
-
|
|
11066
|
+
isLandscape && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $de01a0272b83cb88$export$2e2bcd8739ae039), {
|
|
10881
11067
|
onClick: handleClose,
|
|
10882
11068
|
className: closeButtonClassName,
|
|
10883
11069
|
showLabel: true
|
|
@@ -10890,7 +11076,7 @@ const $6597700a5925d4dd$var$FullScreenRemoteClosing = ({ className: className, b
|
|
|
10890
11076
|
children
|
|
10891
11077
|
]
|
|
10892
11078
|
}),
|
|
10893
|
-
|
|
11079
|
+
isBorne && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $e30af8373281dae5$export$2e2bcd8739ae039), {
|
|
10894
11080
|
dashboardVisible: true,
|
|
10895
11081
|
zIndexClassname: remoteCloseButtonZIndex,
|
|
10896
11082
|
onClick: handleClose
|
|
@@ -11373,7 +11559,6 @@ var $c044fb293a895d75$export$2e2bcd8739ae039 = $c044fb293a895d75$var$MobileDispl
|
|
|
11373
11559
|
|
|
11374
11560
|
|
|
11375
11561
|
|
|
11376
|
-
|
|
11377
11562
|
// Check if we should let the event propagate. For example leaflet events should pass to allow map panning
|
|
11378
11563
|
const $9eb4669b72b0cf4a$var$checkShouldPropagate = (e)=>{
|
|
11379
11564
|
if (e.target) try {
|
|
@@ -11416,8 +11601,20 @@ const $9eb4669b72b0cf4a$var$handleTouch = (e)=>{
|
|
|
11416
11601
|
localStorage.setItem("Retorik.Framework.TouchY", `${e.touches[0].screenY}`);
|
|
11417
11602
|
e.touches.length > 1 && !$9eb4669b72b0cf4a$var$checkShouldPropagate(e) && e.cancelable && e.preventDefault();
|
|
11418
11603
|
};
|
|
11419
|
-
|
|
11420
|
-
|
|
11604
|
+
/**
|
|
11605
|
+
* Attach wheel | touch events on either a HTMLElement or a reference to a HTMLDivElement to prevent the propagation of this events to parent window.
|
|
11606
|
+
* @param {HTMLElement | null} element HTMLElement to which we will attach the events
|
|
11607
|
+
* @param {React.RefObject<HTMLDivElement>} ref reference to the HTMLDivElement to which we will attach the events
|
|
11608
|
+
* @param {AbortSignal} signal abort signal to remove events when needed
|
|
11609
|
+
*/ const $9eb4669b72b0cf4a$var$preventEvents = (element, ref, signal)=>{
|
|
11610
|
+
// Add abort signal to options if present
|
|
11611
|
+
const options = signal ? {
|
|
11612
|
+
passive: false,
|
|
11613
|
+
signal: signal
|
|
11614
|
+
} : {
|
|
11615
|
+
passive: false
|
|
11616
|
+
};
|
|
11617
|
+
if (ref === null || ref === void 0 ? void 0 : ref.current) {
|
|
11421
11618
|
try {
|
|
11422
11619
|
ref.current.removeEventListener("wheel", (e)=>$9eb4669b72b0cf4a$var$handleRefStop(e, ref));
|
|
11423
11620
|
ref.current.removeEventListener("touchstart", (e)=>$9eb4669b72b0cf4a$var$handleTouch(e));
|
|
@@ -11425,25 +11622,13 @@ const $9eb4669b72b0cf4a$var$preventEvents = (element, ref)=>{
|
|
|
11425
11622
|
} catch (err) {
|
|
11426
11623
|
console.warn(err);
|
|
11427
11624
|
}
|
|
11428
|
-
ref.current.addEventListener("wheel", (e)=>$9eb4669b72b0cf4a$var$handleRefStop(e, ref),
|
|
11429
|
-
|
|
11430
|
-
|
|
11431
|
-
ref.current.addEventListener("touchstart", (e)=>$9eb4669b72b0cf4a$var$handleTouch(e), {
|
|
11432
|
-
passive: false
|
|
11433
|
-
});
|
|
11434
|
-
ref.current.addEventListener("touchmove", (e)=>$9eb4669b72b0cf4a$var$handleRefStop(e, ref), {
|
|
11435
|
-
passive: false
|
|
11436
|
-
});
|
|
11625
|
+
ref.current.addEventListener("wheel", (e)=>$9eb4669b72b0cf4a$var$handleRefStop(e, ref), options);
|
|
11626
|
+
ref.current.addEventListener("touchstart", (e)=>$9eb4669b72b0cf4a$var$handleTouch(e), options);
|
|
11627
|
+
ref.current.addEventListener("touchmove", (e)=>$9eb4669b72b0cf4a$var$handleRefStop(e, ref), options);
|
|
11437
11628
|
} else if (element) {
|
|
11438
|
-
element.addEventListener("wheel", (e)=>$9eb4669b72b0cf4a$var$handleStop(e),
|
|
11439
|
-
|
|
11440
|
-
|
|
11441
|
-
element.addEventListener("touchstart", (e)=>$9eb4669b72b0cf4a$var$handleTouch(e), {
|
|
11442
|
-
passive: false
|
|
11443
|
-
});
|
|
11444
|
-
element.addEventListener("touchmove", (e)=>$9eb4669b72b0cf4a$var$handleStop(e), {
|
|
11445
|
-
passive: false
|
|
11446
|
-
});
|
|
11629
|
+
element.addEventListener("wheel", (e)=>$9eb4669b72b0cf4a$var$handleStop(e), options);
|
|
11630
|
+
element.addEventListener("touchstart", (e)=>$9eb4669b72b0cf4a$var$handleTouch(e), options);
|
|
11631
|
+
element.addEventListener("touchmove", (e)=>$9eb4669b72b0cf4a$var$handleStop(e), options);
|
|
11447
11632
|
}
|
|
11448
11633
|
};
|
|
11449
11634
|
var $9eb4669b72b0cf4a$export$2e2bcd8739ae039 = $9eb4669b72b0cf4a$var$preventEvents;
|
|
@@ -11452,12 +11637,12 @@ var $9eb4669b72b0cf4a$export$2e2bcd8739ae039 = $9eb4669b72b0cf4a$var$preventEven
|
|
|
11452
11637
|
const $55a6a0d3c4977a41$var$FilterMobile = ({ className: className, setFiltersOpened: setFiltersOpened, handleClose: handleClose })=>{
|
|
11453
11638
|
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
11454
11639
|
const { resetFilters: resetFilters } = (0, $4859746455f78ba2$export$f9763ecd339e95eb)();
|
|
11455
|
-
const {
|
|
11640
|
+
const { isWidget: isWidget } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
11456
11641
|
const [open, setOpen] = (0, $dWhh5$react.useState)(false);
|
|
11457
11642
|
const [currentOpened, setCurrentOpened] = (0, $dWhh5$react.useState)(undefined);
|
|
11458
11643
|
const divRef = (0, $dWhh5$react.useRef)(null);
|
|
11459
11644
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
11460
|
-
if (divRef === null || divRef === void 0 ? void 0 : divRef.current)
|
|
11645
|
+
if (divRef === null || divRef === void 0 ? void 0 : divRef.current) isWidget && (0, $9eb4669b72b0cf4a$export$2e2bcd8739ae039)(null, divRef);
|
|
11461
11646
|
}, [
|
|
11462
11647
|
divRef === null || divRef === void 0 ? void 0 : divRef.current
|
|
11463
11648
|
]);
|
|
@@ -11644,6 +11829,7 @@ const $48a18493bc0e99f6$export$93d01adc5582c83e = ({ direction: direction, displ
|
|
|
11644
11829
|
};
|
|
11645
11830
|
|
|
11646
11831
|
|
|
11832
|
+
|
|
11647
11833
|
const { useSendPostBack: $a0c42cb8428afc95$var$useSendPostBack } = (0, $dWhh5$botframeworkwebchatcomponent.hooks);
|
|
11648
11834
|
let $a0c42cb8428afc95$var$timer = null;
|
|
11649
11835
|
const $a0c42cb8428afc95$var$ListContainer = ({ hasFilterOrSuggestedAction: hasFilterOrSuggestedAction, numberOfResults: numberOfResults })=>{
|
|
@@ -11651,7 +11837,7 @@ const $a0c42cb8428afc95$var$ListContainer = ({ hasFilterOrSuggestedAction: hasFi
|
|
|
11651
11837
|
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
11652
11838
|
const sendPostback = $a0c42cb8428afc95$var$useSendPostBack();
|
|
11653
11839
|
const { content: content, selectedFilters: selectedFilters, loadingData: loadingData, setLoadingData: setLoadingData } = (0, $4859746455f78ba2$export$f9763ecd339e95eb)();
|
|
11654
|
-
const { currentDeviceType: currentDeviceType, isMobile: isMobile } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
11840
|
+
const { currentDeviceType: currentDeviceType, isMobile: isMobile, isWidget: isWidget } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
11655
11841
|
const currentPagination = (0, $c581f9c34f3754ec$export$2e2bcd8739ae039)();
|
|
11656
11842
|
const [contentToDisplay, setContentToDisplay] = (0, $dWhh5$react.useState)([]);
|
|
11657
11843
|
const [landscapeStyle, setLandscapeStyle] = (0, $dWhh5$react.useState)("large:rf-h-3/5");
|
|
@@ -11661,6 +11847,7 @@ const $a0c42cb8428afc95$var$ListContainer = ({ hasFilterOrSuggestedAction: hasFi
|
|
|
11661
11847
|
const scrollRef = (0, $dWhh5$react.useRef)(null);
|
|
11662
11848
|
const contentRef = (0, $dWhh5$react.useRef)(null);
|
|
11663
11849
|
const numberOfDisplayed = (0, $dWhh5$react.useRef)();
|
|
11850
|
+
const [abortController, setAbortController] = (0, $dWhh5$react.useState)(null);
|
|
11664
11851
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
11665
11852
|
setLandscapeStyle(hasFilterOrSuggestedAction ? "large:rf-h-[60vh]" : "");
|
|
11666
11853
|
}, [
|
|
@@ -11750,6 +11937,21 @@ const $a0c42cb8428afc95$var$ListContainer = ({ hasFilterOrSuggestedAction: hasFi
|
|
|
11750
11937
|
}, [
|
|
11751
11938
|
contentToDisplay
|
|
11752
11939
|
]);
|
|
11940
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
11941
|
+
if ((contentRef === null || contentRef === void 0 ? void 0 : contentRef.current) && isWidget) {
|
|
11942
|
+
if (currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widgetLandscape) {
|
|
11943
|
+
const ab = new AbortController();
|
|
11944
|
+
setAbortController(ab);
|
|
11945
|
+
(0, $9eb4669b72b0cf4a$export$2e2bcd8739ae039)(null, contentRef, ab.signal);
|
|
11946
|
+
} else {
|
|
11947
|
+
abortController === null || abortController === void 0 ? void 0 : abortController.abort();
|
|
11948
|
+
setAbortController(null);
|
|
11949
|
+
}
|
|
11950
|
+
}
|
|
11951
|
+
}, [
|
|
11952
|
+
contentRef === null || contentRef === void 0 ? void 0 : contentRef.current,
|
|
11953
|
+
currentDeviceType
|
|
11954
|
+
]);
|
|
11753
11955
|
/**
|
|
11754
11956
|
* Click on 'see more' button in mobile mode or scroll to the end of the list in desktop / borne modes.
|
|
11755
11957
|
* This will send a postback message with 'hospitality.pointOfInterest.nextPage' name to get new content
|
|
@@ -11770,7 +11972,8 @@ const $a0c42cb8428afc95$var$ListContainer = ({ hasFilterOrSuggestedAction: hasFi
|
|
|
11770
11972
|
* Scroll to the scrollRef HTMLDivElement at the top of the view
|
|
11771
11973
|
*/ const scrollToRef = ()=>{
|
|
11772
11974
|
if (scrollRef && scrollRef.current !== null) scrollRef.current.scrollIntoView({
|
|
11773
|
-
behavior: "smooth"
|
|
11975
|
+
behavior: "smooth",
|
|
11976
|
+
block: "nearest"
|
|
11774
11977
|
});
|
|
11775
11978
|
setLoadingData(false);
|
|
11776
11979
|
};
|
|
@@ -11960,10 +12163,10 @@ const $7a4829033e41af4d$var$List = ({ activity: activity, onClose: onClose })=>{
|
|
|
11960
12163
|
var _content_channelData, _content_suggestedActions_actions, _content_suggestedActions, _content_channelData1, _content_suggestedActions1;
|
|
11961
12164
|
const mode = (0, $c7242af7a2bc5e50$export$bd22554f31e5f96f)((state)=>state.mode);
|
|
11962
12165
|
const sendEvent = (0, $dWhh5$botframeworkwebchatapilibhooks.useSendEvent)();
|
|
11963
|
-
const { isMobile: isMobile, currentDeviceType: currentDeviceType } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
12166
|
+
const { isMobile: isMobile, isWidget: isWidget, currentDeviceType: currentDeviceType } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
11964
12167
|
const { content: content, filters: filters, selectedFilters: selectedFilters, setContent: setContent } = (0, $4859746455f78ba2$export$f9763ecd339e95eb)();
|
|
11965
|
-
const
|
|
11966
|
-
const
|
|
12168
|
+
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
12169
|
+
const lastListActivity = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.lastListActivity);
|
|
11967
12170
|
const [mobileFiltersOpened, setMobileFiltersOpened] = (0, $dWhh5$react.useState)(false);
|
|
11968
12171
|
const [largeFilterOpenedKey, setLargeFilterOpenedKey] = (0, $dWhh5$react.useState)(undefined);
|
|
11969
12172
|
const scrollRef = (0, $dWhh5$react.useRef)(null);
|
|
@@ -11974,6 +12177,7 @@ const $7a4829033e41af4d$var$List = ({ activity: activity, onClose: onClose })=>{
|
|
|
11974
12177
|
}));
|
|
11975
12178
|
const timerRef = (0, $dWhh5$react.useRef)(null);
|
|
11976
12179
|
const divRef = (0, $dWhh5$react.useRef)(null);
|
|
12180
|
+
const [abortController, setAbortController] = (0, $dWhh5$react.useState)(null);
|
|
11977
12181
|
/**
|
|
11978
12182
|
* On call :
|
|
11979
12183
|
* - set ListContext's content state to undefined
|
|
@@ -12020,13 +12224,24 @@ const $7a4829033e41af4d$var$List = ({ activity: activity, onClose: onClose })=>{
|
|
|
12020
12224
|
* - scroll to the scrollRef HTML element at the top of the view
|
|
12021
12225
|
*/ const scrollToRef = ()=>{
|
|
12022
12226
|
if (scrollRef && scrollRef.current !== null) scrollRef.current.scrollIntoView({
|
|
12023
|
-
behavior: "smooth"
|
|
12227
|
+
behavior: "smooth",
|
|
12228
|
+
block: "nearest"
|
|
12024
12229
|
});
|
|
12025
12230
|
};
|
|
12026
12231
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
12027
|
-
if (divRef === null || divRef === void 0 ? void 0 : divRef.current)
|
|
12232
|
+
if ((divRef === null || divRef === void 0 ? void 0 : divRef.current) && isWidget) {
|
|
12233
|
+
if (currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widget) {
|
|
12234
|
+
const ab = new AbortController();
|
|
12235
|
+
setAbortController(ab);
|
|
12236
|
+
(0, $9eb4669b72b0cf4a$export$2e2bcd8739ae039)(null, divRef, ab.signal);
|
|
12237
|
+
} else {
|
|
12238
|
+
abortController === null || abortController === void 0 ? void 0 : abortController.abort();
|
|
12239
|
+
setAbortController(null);
|
|
12240
|
+
}
|
|
12241
|
+
}
|
|
12028
12242
|
}, [
|
|
12029
|
-
divRef === null || divRef === void 0 ? void 0 : divRef.current
|
|
12243
|
+
divRef === null || divRef === void 0 ? void 0 : divRef.current,
|
|
12244
|
+
currentDeviceType
|
|
12030
12245
|
]);
|
|
12031
12246
|
/**
|
|
12032
12247
|
* On content change :
|
|
@@ -12152,10 +12367,12 @@ const $2a0863637e76884f$var$Card = ({ children: children, className: className,
|
|
|
12152
12367
|
if (to === "bottom") setScrollButtonDirection("top");
|
|
12153
12368
|
else setScrollButtonDirection("bottom");
|
|
12154
12369
|
if (from === "button" && botEndRef && botEndRef.current !== null && to === "bottom") botEndRef.current.scrollIntoView({
|
|
12155
|
-
behavior: "smooth"
|
|
12370
|
+
behavior: "smooth",
|
|
12371
|
+
block: "nearest"
|
|
12156
12372
|
});
|
|
12157
12373
|
else if (to === "top" && cardRef && cardRef.current) cardRef.current.children[1].scrollIntoView({
|
|
12158
|
-
behavior: "smooth"
|
|
12374
|
+
behavior: "smooth",
|
|
12375
|
+
block: "nearest"
|
|
12159
12376
|
});
|
|
12160
12377
|
};
|
|
12161
12378
|
const handleScroll = ()=>{
|
|
@@ -12311,6 +12528,8 @@ var $8bc9b4e77f6f09d6$export$2e2bcd8739ae039 = $8bc9b4e77f6f09d6$var$Swiper;
|
|
|
12311
12528
|
|
|
12312
12529
|
|
|
12313
12530
|
|
|
12531
|
+
|
|
12532
|
+
|
|
12314
12533
|
const $872024d5c381e99a$var$springEnterDuration = 1000;
|
|
12315
12534
|
// Cards' width coefficients depending on the mode and display type
|
|
12316
12535
|
const $872024d5c381e99a$var$widthCoefficients = {
|
|
@@ -12336,7 +12555,7 @@ const $872024d5c381e99a$var$Carousel = /*#__PURE__*/ (0, ($parcel$interopDefault
|
|
|
12336
12555
|
currentDeviceType
|
|
12337
12556
|
]);
|
|
12338
12557
|
const coefficient = (0, $dWhh5$react.useMemo)(()=>{
|
|
12339
|
-
return mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal ? currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).landscape ? history ? $872024d5c381e99a$var$widthCoefficients.textAndVocalMobile : $872024d5c381e99a$var$widthCoefficients.vocalDesktop : currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).borne ? history ? $872024d5c381e99a$var$widthCoefficients.vocalDesktop : $872024d5c381e99a$var$widthCoefficients.vocalBorne : $872024d5c381e99a$var$widthCoefficients.textAndVocalMobile : $872024d5c381e99a$var$widthCoefficients.textAndVocalMobile;
|
|
12558
|
+
return mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal ? currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).landscape || currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widgetLandscape ? history ? $872024d5c381e99a$var$widthCoefficients.textAndVocalMobile : $872024d5c381e99a$var$widthCoefficients.vocalDesktop : currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).borne || currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widgetBorne ? history ? $872024d5c381e99a$var$widthCoefficients.vocalDesktop : $872024d5c381e99a$var$widthCoefficients.vocalBorne : $872024d5c381e99a$var$widthCoefficients.textAndVocalMobile : $872024d5c381e99a$var$widthCoefficients.textAndVocalMobile;
|
|
12340
12559
|
}, [
|
|
12341
12560
|
mode,
|
|
12342
12561
|
currentDeviceType
|
|
@@ -12353,6 +12572,7 @@ const $872024d5c381e99a$var$Carousel = /*#__PURE__*/ (0, ($parcel$interopDefault
|
|
|
12353
12572
|
const [wheeling, setWheeling] = (0, $dWhh5$react.useState)(0);
|
|
12354
12573
|
const divRef = (0, $dWhh5$react.useRef)(null);
|
|
12355
12574
|
const timerRef = (0, $dWhh5$react.useRef)(null);
|
|
12575
|
+
const dimensions = (0, $b81eedb00aebd99e$export$2e2bcd8739ae039)(divRef);
|
|
12356
12576
|
const [spring, api] = (0, $dWhh5$reactspringweb.useSpring)(()=>({
|
|
12357
12577
|
from: {
|
|
12358
12578
|
transform: "translateX(0%)"
|
|
@@ -12383,13 +12603,13 @@ const $872024d5c381e99a$var$Carousel = /*#__PURE__*/ (0, ($parcel$interopDefault
|
|
|
12383
12603
|
* On component unmount :
|
|
12384
12604
|
* - clear timeout
|
|
12385
12605
|
*/ (0, $dWhh5$react.useEffect)(()=>{
|
|
12386
|
-
if (
|
|
12387
|
-
let newCardWidth = Math.floor(
|
|
12606
|
+
if (dimensions) {
|
|
12607
|
+
let newCardWidth = Math.floor(dimensions.width * coefficient);
|
|
12388
12608
|
if (forceMobileView && newCardWidth > 400) {
|
|
12389
12609
|
newCardWidth = 400;
|
|
12390
|
-
setCurrentPadding((
|
|
12391
|
-
if (nbCards * newCardWidth <
|
|
12392
|
-
} else setCurrentPadding((1 - coefficient) *
|
|
12610
|
+
setCurrentPadding((dimensions.width - newCardWidth - 5 * (nbCards - 1)) / 2);
|
|
12611
|
+
if (nbCards * newCardWidth < dimensions.width) setEnableTranslation(false);
|
|
12612
|
+
} else setCurrentPadding((1 - coefficient) * dimensions.width / 2);
|
|
12393
12613
|
const newCardHeight = Math.ceil(newCardWidth * 10 / 16);
|
|
12394
12614
|
// Space needed to center to cards
|
|
12395
12615
|
// Cards' width (all dispositions) and height (only used in vertical disposition)
|
|
@@ -12400,7 +12620,7 @@ const $872024d5c381e99a$var$Carousel = /*#__PURE__*/ (0, ($parcel$interopDefault
|
|
|
12400
12620
|
}
|
|
12401
12621
|
return ()=>timerRef && clearTimeout(timerRef.current);
|
|
12402
12622
|
}, [
|
|
12403
|
-
|
|
12623
|
+
dimensions,
|
|
12404
12624
|
coefficient,
|
|
12405
12625
|
nbCards,
|
|
12406
12626
|
currentDeviceType,
|
|
@@ -12457,6 +12677,8 @@ const $872024d5c381e99a$var$Carousel = /*#__PURE__*/ (0, ($parcel$interopDefault
|
|
|
12457
12677
|
* @param distance : number
|
|
12458
12678
|
* @param elpasedTime : number
|
|
12459
12679
|
*/ const onSwipeLeft = (distance, elapsedTime)=>{
|
|
12680
|
+
// Utils store util to show that the user is swiping
|
|
12681
|
+
(0, $70e3d65f5a106231$export$19e9368606a5170f)();
|
|
12460
12682
|
const velocity = Math.abs(distance / elapsedTime);
|
|
12461
12683
|
setTransitionDuration($872024d5c381e99a$var$defaultTransitionDuration);
|
|
12462
12684
|
if (currentCard !== nbCards - 1 && cardWidth) {
|
|
@@ -12476,6 +12698,8 @@ const $872024d5c381e99a$var$Carousel = /*#__PURE__*/ (0, ($parcel$interopDefault
|
|
|
12476
12698
|
* @param distance : number
|
|
12477
12699
|
* @param elpasedTime : number
|
|
12478
12700
|
*/ const onSwipeRight = (distance, elapsedTime)=>{
|
|
12701
|
+
// Utils store util to show that the user is swiping
|
|
12702
|
+
(0, $70e3d65f5a106231$export$19e9368606a5170f)();
|
|
12479
12703
|
const velocity = Math.abs(distance / elapsedTime);
|
|
12480
12704
|
setTransitionDuration($872024d5c381e99a$var$defaultTransitionDuration);
|
|
12481
12705
|
if (currentCard !== 0 && cardWidth) {
|
|
@@ -12540,6 +12764,8 @@ const $872024d5c381e99a$var$Carousel = /*#__PURE__*/ (0, ($parcel$interopDefault
|
|
|
12540
12764
|
* - update currentCard state with the key parameter
|
|
12541
12765
|
* @param key : number
|
|
12542
12766
|
*/ const handleClick = (key)=>{
|
|
12767
|
+
// Utils store util to show that the user is swiping
|
|
12768
|
+
(0, $70e3d65f5a106231$export$19e9368606a5170f)();
|
|
12543
12769
|
setTransitionDuration($872024d5c381e99a$var$defaultTransitionDuration);
|
|
12544
12770
|
setCurrentCard(key);
|
|
12545
12771
|
};
|
|
@@ -12549,7 +12775,11 @@ const $872024d5c381e99a$var$Carousel = /*#__PURE__*/ (0, ($parcel$interopDefault
|
|
|
12549
12775
|
* - set wheeling state to a positive or negative unique value (here Date.now() is used as unique)
|
|
12550
12776
|
* @param delta : number
|
|
12551
12777
|
*/ const handleWheel = (delta)=>{
|
|
12552
|
-
if (delta !== undefined)
|
|
12778
|
+
if (delta !== undefined) {
|
|
12779
|
+
// Utils store util to show that the user is swiping
|
|
12780
|
+
(0, $70e3d65f5a106231$export$19e9368606a5170f)();
|
|
12781
|
+
setWheeling(delta > 0 ? Date.now() : -Date.now());
|
|
12782
|
+
}
|
|
12553
12783
|
};
|
|
12554
12784
|
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, $dWhh5$reactspringweb.animated).div, {
|
|
12555
12785
|
ref: divRef,
|
|
@@ -12893,7 +13123,7 @@ var $9e5ad86f0a7e1d05$export$2e2bcd8739ae039 = $9e5ad86f0a7e1d05$var$HistoryItem
|
|
|
12893
13123
|
|
|
12894
13124
|
const $4c0e94df62fa6718$var$HistoryList = ()=>{
|
|
12895
13125
|
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
12896
|
-
const {
|
|
13126
|
+
const { isWidget: isWidget, isBorne: isBorne } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
12897
13127
|
const activities = (0, $0a0255973b22d31f$export$2e2bcd8739ae039)();
|
|
12898
13128
|
const scrollRef = (0, $dWhh5$react.useRef)(null);
|
|
12899
13129
|
const divRef = (0, $dWhh5$react.useRef)(null);
|
|
@@ -12903,7 +13133,8 @@ const $4c0e94df62fa6718$var$HistoryList = ()=>{
|
|
|
12903
13133
|
* - scroll to the scrollRef HTML element at the bottom of the view
|
|
12904
13134
|
*/ const scrollToRef = ()=>{
|
|
12905
13135
|
if (scrollRef && scrollRef.current !== null) scrollRef.current.scrollIntoView({
|
|
12906
|
-
behavior: "smooth"
|
|
13136
|
+
behavior: "smooth",
|
|
13137
|
+
block: "nearest"
|
|
12907
13138
|
});
|
|
12908
13139
|
};
|
|
12909
13140
|
/**
|
|
@@ -12915,7 +13146,7 @@ const $4c0e94df62fa6718$var$HistoryList = ()=>{
|
|
|
12915
13146
|
}, 200);
|
|
12916
13147
|
}, []);
|
|
12917
13148
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
12918
|
-
|
|
13149
|
+
(divRef === null || divRef === void 0 ? void 0 : divRef.current) && isWidget && (0, $9eb4669b72b0cf4a$export$2e2bcd8739ae039)(null, divRef);
|
|
12919
13150
|
}, [
|
|
12920
13151
|
divRef === null || divRef === void 0 ? void 0 : divRef.current
|
|
12921
13152
|
]);
|
|
@@ -12930,7 +13161,7 @@ const $4c0e94df62fa6718$var$HistoryList = ()=>{
|
|
|
12930
13161
|
title: translation.history.title,
|
|
12931
13162
|
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
12932
13163
|
ref: divRef,
|
|
12933
|
-
className: `rf-pb-4 rf-overflow-y-scroll ${
|
|
13164
|
+
className: `rf-pb-4 rf-overflow-y-scroll ${isBorne ? "rf-scrollbar-thin" : "rf-scrollbar-hidden"}`,
|
|
12934
13165
|
children: [
|
|
12935
13166
|
activities.map((activity, key)=>{
|
|
12936
13167
|
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $9e5ad86f0a7e1d05$export$2e2bcd8739ae039), {
|
|
@@ -12957,16 +13188,21 @@ var $4c0e94df62fa6718$export$2e2bcd8739ae039 = $4c0e94df62fa6718$var$HistoryList
|
|
|
12957
13188
|
|
|
12958
13189
|
|
|
12959
13190
|
|
|
13191
|
+
|
|
12960
13192
|
const $6bd994e5ef61a032$var$LanguageChoice = ()=>{
|
|
12961
13193
|
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
12962
13194
|
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
12963
13195
|
const supported = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.supported);
|
|
13196
|
+
const { configuration: { skipWelcome: skipWelcome } } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
12964
13197
|
const sendEvent = (0, $dWhh5$botframeworkwebchatapilibhooks.useSendEvent)();
|
|
12965
13198
|
const [currentLanguage, setCurrentLanguage] = (0, $dWhh5$react.useState)(locale);
|
|
12966
|
-
const handleClose = ()=>{
|
|
13199
|
+
const handleClose = (changed)=>{
|
|
12967
13200
|
(0, $70e3d65f5a106231$export$f0c096b4ecd7115d)((0, $71c613e2e831c34c$export$f05d0fed0593ead7).none);
|
|
12968
|
-
|
|
12969
|
-
|
|
13201
|
+
// Only send events when language has not been changed, either way it will collide with the TriggerWelcome event
|
|
13202
|
+
if (!changed) {
|
|
13203
|
+
sendEvent("Davi.CloseWindow", null);
|
|
13204
|
+
sendEvent("Davi.CloseWindowLanguages", null);
|
|
13205
|
+
}
|
|
12970
13206
|
};
|
|
12971
13207
|
const handleChange = (language)=>{
|
|
12972
13208
|
setCurrentLanguage(language);
|
|
@@ -12976,16 +13212,17 @@ const $6bd994e5ef61a032$var$LanguageChoice = ()=>{
|
|
|
12976
13212
|
* Send a 'TriggerWelcome' event to get the welcome message in the new language.
|
|
12977
13213
|
* @param language string
|
|
12978
13214
|
*/ const handleSelect = (language)=>{
|
|
12979
|
-
|
|
13215
|
+
const changed = language !== locale;
|
|
13216
|
+
if (changed) {
|
|
12980
13217
|
(0, $b6a8688e7db7a7b9$export$c8aadf3621e41efb)(language);
|
|
12981
|
-
setTimeout(()=>{
|
|
13218
|
+
!skipWelcome && setTimeout(()=>{
|
|
12982
13219
|
sendEvent("TriggerWelcome", undefined);
|
|
12983
13220
|
}, 150);
|
|
12984
13221
|
}
|
|
12985
|
-
handleClose();
|
|
13222
|
+
handleClose(changed);
|
|
12986
13223
|
};
|
|
12987
13224
|
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, $0641c78f051b69fe$export$2e2bcd8739ae039), {
|
|
12988
|
-
handleClose: handleClose,
|
|
13225
|
+
handleClose: ()=>handleClose(false),
|
|
12989
13226
|
children: [
|
|
12990
13227
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
12991
13228
|
className: "large:rf-mt-[20vh] large-tactile:rf-mt-0 rf-title-bold-size-auto rf-font-bold",
|
|
@@ -13464,12 +13701,11 @@ const $5565d7860328960f$var$DownloadQR = ({ url: url })=>{
|
|
|
13464
13701
|
var $5565d7860328960f$export$2e2bcd8739ae039 = $5565d7860328960f$var$DownloadQR;
|
|
13465
13702
|
|
|
13466
13703
|
|
|
13467
|
-
|
|
13468
13704
|
const $fe50c85aaca30261$var$DownloadQRHeight = 200;
|
|
13469
13705
|
const $fe50c85aaca30261$var$DownloadSheetHeight = 100;
|
|
13470
13706
|
const $fe50c85aaca30261$var$DetailedText = ({ text: text, otherInformations: otherInformations, color: color, url: url, titleHeight: titleHeight })=>{
|
|
13471
13707
|
const { configuration: { isUsedOnBorne: isUsedOnBorne } } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
13472
|
-
const {
|
|
13708
|
+
const { currentHeight: currentHeight, isMobile: isMobile, isLandscape: isLandscape } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
13473
13709
|
const textRef = (0, $dWhh5$react.useRef)(null);
|
|
13474
13710
|
const otherInformationsRef = (0, $dWhh5$react.useRef)(null);
|
|
13475
13711
|
const [opacityStyle, setOpacityStyle] = (0, $dWhh5$react.useState)("");
|
|
@@ -13489,8 +13725,8 @@ const $fe50c85aaca30261$var$DetailedText = ({ text: text, otherInformations: oth
|
|
|
13489
13725
|
const [otherInformationsMaxHeight, setOtherInformationsMaxHeight] = (0, $dWhh5$react.useState)(0);
|
|
13490
13726
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
13491
13727
|
if ((textRef === null || textRef === void 0 ? void 0 : textRef.current) && (otherInformationsRef === null || otherInformationsRef === void 0 ? void 0 : otherInformationsRef.current) && textContainerMaxHeight && !isMobile) {
|
|
13492
|
-
const textHeight =
|
|
13493
|
-
const otherInformationsHeight =
|
|
13728
|
+
const textHeight = isLandscape ? textContainerMaxHeight * 58 / 100 : currentHeight * 30 / 100;
|
|
13729
|
+
const otherInformationsHeight = isLandscape ? textContainerMaxHeight * 40 / 100 : currentHeight * 18 / 100;
|
|
13494
13730
|
if (textRef.current.scrollHeight > textHeight) {
|
|
13495
13731
|
if (otherInformationsRef.current.scrollHeight > otherInformationsHeight) {
|
|
13496
13732
|
setTextMaxHeight(textHeight);
|
|
@@ -13554,7 +13790,7 @@ const $fe50c85aaca30261$var$DetailedText = ({ text: text, otherInformations: oth
|
|
|
13554
13790
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
13555
13791
|
className: "rf-w-full rf-flex rf-flex-col rf-items-start",
|
|
13556
13792
|
style: {
|
|
13557
|
-
maxHeight:
|
|
13793
|
+
maxHeight: isLandscape ? textContainerMaxHeight : undefined
|
|
13558
13794
|
},
|
|
13559
13795
|
children: [
|
|
13560
13796
|
processedText && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
@@ -13600,7 +13836,7 @@ const $fe50c85aaca30261$var$DetailedText = ({ text: text, otherInformations: oth
|
|
|
13600
13836
|
})
|
|
13601
13837
|
]
|
|
13602
13838
|
}),
|
|
13603
|
-
|
|
13839
|
+
isLandscape && url && (isUsedOnBorne ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $5565d7860328960f$export$2e2bcd8739ae039), {
|
|
13604
13840
|
url: url
|
|
13605
13841
|
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $9982aaf71fbd3e1f$export$2e2bcd8739ae039), {
|
|
13606
13842
|
url: url
|
|
@@ -14284,9 +14520,8 @@ var $c9b17a03b9c46905$export$2e2bcd8739ae039 = $c9b17a03b9c46905$var$Map;
|
|
|
14284
14520
|
|
|
14285
14521
|
|
|
14286
14522
|
|
|
14287
|
-
|
|
14288
14523
|
const $6cacbade32b06d0d$var$DetailedAddress = ({ address: address, phoneNumber: phoneNumber, coordinates: coordinates, color: color, customerReviews: customerReviews, url: url })=>{
|
|
14289
|
-
const { currentWidth: currentWidth,
|
|
14524
|
+
const { currentWidth: currentWidth, isMobile: isMobile, isLandscape: isLandscape, isBorne: isBorne } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
14290
14525
|
const { configuration: configuration } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
14291
14526
|
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
14292
14527
|
className: "rf-relative rf-w-1/3 vertical:rf-w-full large:rf-bg-truewhite rf-flex rf-flex-col large-vertical:rf-flex-row",
|
|
@@ -14297,13 +14532,13 @@ const $6cacbade32b06d0d$var$DetailedAddress = ({ address: address, phoneNumber:
|
|
|
14297
14532
|
customerReviews: customerReviews
|
|
14298
14533
|
}),
|
|
14299
14534
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
14300
|
-
className: `rf-px-6 rf-flex rf-flex-col large-vertical:rf-w-1/2 rf-items-center rf-text-center ${customerReviews ?
|
|
14535
|
+
className: `rf-px-6 rf-flex rf-flex-col large-vertical:rf-w-1/2 rf-items-center rf-text-center ${customerReviews ? isBorne ? "rf-bg-truewhite rf-justify-center" : "rf-bg-truewhite rf-justify-start" : "rf-justify-center"}`,
|
|
14301
14536
|
style: {
|
|
14302
|
-
height: isMobile ? customerReviews ? currentWidth : undefined :
|
|
14537
|
+
height: isMobile ? customerReviews ? currentWidth : undefined : isLandscape ? coordinates && coordinates.latitude && coordinates.longitude ? "50%" : "100%" : "calc(50vw - 3rem)"
|
|
14303
14538
|
},
|
|
14304
14539
|
children: [
|
|
14305
14540
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
14306
|
-
className: customerReviews &&
|
|
14541
|
+
className: customerReviews && !isBorne ? isLandscape ? "rf-pt-[26vh] rf-pb-12" : "rf-pt-11/20 rf-pb-12" : "rf-py-12",
|
|
14307
14542
|
children: address && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {
|
|
14308
14543
|
children: [
|
|
14309
14544
|
address.street && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
@@ -14318,7 +14553,7 @@ const $6cacbade32b06d0d$var$DetailedAddress = ({ address: address, phoneNumber:
|
|
|
14318
14553
|
phoneNumber && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $2ed0c554c11c571c$export$2e2bcd8739ae039), {
|
|
14319
14554
|
phoneNumber: phoneNumber
|
|
14320
14555
|
}),
|
|
14321
|
-
coordinates && coordinates.latitude && coordinates.longitude &&
|
|
14556
|
+
coordinates && coordinates.latitude && coordinates.longitude && isBorne && url && (configuration.isUsedOnBorne ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $5565d7860328960f$export$2e2bcd8739ae039), {
|
|
14322
14557
|
url: url
|
|
14323
14558
|
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $9982aaf71fbd3e1f$export$2e2bcd8739ae039), {
|
|
14324
14559
|
className: "rf-justify-center",
|
|
@@ -14329,14 +14564,14 @@ const $6cacbade32b06d0d$var$DetailedAddress = ({ address: address, phoneNumber:
|
|
|
14329
14564
|
coordinates && coordinates.latitude && coordinates.longitude ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
14330
14565
|
className: "rf-relative large-vertical:rf-w-1/2",
|
|
14331
14566
|
style: {
|
|
14332
|
-
height: isMobile ? currentWidth :
|
|
14567
|
+
height: isMobile ? currentWidth : isLandscape ? "50%" : "calc(50vw - 3rem)"
|
|
14333
14568
|
},
|
|
14334
14569
|
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $c9b17a03b9c46905$export$2e2bcd8739ae039), {
|
|
14335
14570
|
latitude: coordinates.latitude,
|
|
14336
14571
|
longitude: coordinates.longitude,
|
|
14337
14572
|
color: color
|
|
14338
14573
|
})
|
|
14339
|
-
}) :
|
|
14574
|
+
}) : isBorne ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
14340
14575
|
className: "rf-flex rf-justify-center rf-items-center rf-h-[calc(50vw-3rem)] rf-w-1/2",
|
|
14341
14576
|
children: url && (configuration.isUsedOnBorne ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $5565d7860328960f$export$2e2bcd8739ae039), {
|
|
14342
14577
|
url: url
|
|
@@ -14365,7 +14600,7 @@ const $d796192f79db347a$var$AttachmentDetails = ()=>{
|
|
|
14365
14600
|
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
14366
14601
|
const { configuration: { isUsedOnBorne: isUsedOnBorne }, baseAddress: baseAddress } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
14367
14602
|
const mode = (0, $c7242af7a2bc5e50$export$bd22554f31e5f96f)((state)=>state.mode);
|
|
14368
|
-
const { themeColors: themeColors, isMobile: isMobile, currentDeviceType: currentDeviceType } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
14603
|
+
const { themeColors: themeColors, isMobile: isMobile, isWidget: isWidget, currentDeviceType: currentDeviceType } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
14369
14604
|
const [content, setContent] = (0, $dWhh5$react.useState)(undefined);
|
|
14370
14605
|
const [color, setColor] = (0, $dWhh5$react.useState)(themeColors.secondary);
|
|
14371
14606
|
const [titleHeight, setTitleHeight] = (0, $dWhh5$react.useState)(0);
|
|
@@ -14383,7 +14618,7 @@ const $d796192f79db347a$var$AttachmentDetails = ()=>{
|
|
|
14383
14618
|
detailedItemContent
|
|
14384
14619
|
]);
|
|
14385
14620
|
(0, $dWhh5$react.useLayoutEffect)(()=>{
|
|
14386
|
-
if (divRef === null || divRef === void 0 ? void 0 : divRef.current)
|
|
14621
|
+
if (divRef === null || divRef === void 0 ? void 0 : divRef.current) isWidget && (0, $9eb4669b72b0cf4a$export$2e2bcd8739ae039)(null, divRef);
|
|
14387
14622
|
});
|
|
14388
14623
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
14389
14624
|
if (content) {
|
|
@@ -14840,7 +15075,7 @@ async function $ebb9a848c3dddb50$export$cdd2c9f4b3acf5fb(data) {
|
|
|
14840
15075
|
const $2b55f3947c65e277$export$6478e9f7582bd8fc = ()=>{
|
|
14841
15076
|
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
14842
15077
|
const { addressData: addressData } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
14843
|
-
const { isMobile: isMobile,
|
|
15078
|
+
const { isMobile: isMobile, isWidget: isWidget } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
14844
15079
|
const [municipalPoliceNumber, setMunicipalPoliceNumber] = (0, $dWhh5$react.useState)("");
|
|
14845
15080
|
const [localHospitalName, setLocalHospitalName] = (0, $dWhh5$react.useState)("");
|
|
14846
15081
|
const [localHospitalNumber, setLocalHospitalNumber] = (0, $dWhh5$react.useState)("");
|
|
@@ -14849,7 +15084,7 @@ const $2b55f3947c65e277$export$6478e9f7582bd8fc = ()=>{
|
|
|
14849
15084
|
const subView = (0, $71c613e2e831c34c$export$3b4d92ba873f009a).emergency;
|
|
14850
15085
|
const divRef = (0, $dWhh5$react.useRef)(null);
|
|
14851
15086
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
14852
|
-
if (divRef === null || divRef === void 0 ? void 0 : divRef.current)
|
|
15087
|
+
if (divRef === null || divRef === void 0 ? void 0 : divRef.current) isWidget && (0, $9eb4669b72b0cf4a$export$2e2bcd8739ae039)(null, divRef);
|
|
14853
15088
|
}, [
|
|
14854
15089
|
divRef === null || divRef === void 0 ? void 0 : divRef.current
|
|
14855
15090
|
]);
|
|
@@ -15178,43 +15413,6 @@ var $7e9357b001e113dc$export$2e2bcd8739ae039 = $7e9357b001e113dc$var$SubViews;
|
|
|
15178
15413
|
|
|
15179
15414
|
|
|
15180
15415
|
|
|
15181
|
-
const $1068fd56b5926747$export$d95eb9b67812311f = (0, $dWhh5$zustand.create)()(()=>{
|
|
15182
|
-
return {
|
|
15183
|
-
widgetDisplayType: "large",
|
|
15184
|
-
open: false,
|
|
15185
|
-
loaded: false
|
|
15186
|
-
};
|
|
15187
|
-
});
|
|
15188
|
-
const $1068fd56b5926747$export$a1c83309c736819f = ()=>{
|
|
15189
|
-
$1068fd56b5926747$export$d95eb9b67812311f.setState({
|
|
15190
|
-
open: true,
|
|
15191
|
-
loaded: true
|
|
15192
|
-
});
|
|
15193
|
-
};
|
|
15194
|
-
const $1068fd56b5926747$export$d27f1b0993b666c = ()=>{
|
|
15195
|
-
$1068fd56b5926747$export$d95eb9b67812311f.setState({
|
|
15196
|
-
open: false,
|
|
15197
|
-
loaded: true
|
|
15198
|
-
});
|
|
15199
|
-
};
|
|
15200
|
-
const $1068fd56b5926747$export$77c0ba4d0d97cee5 = ()=>{
|
|
15201
|
-
const open = $1068fd56b5926747$export$d95eb9b67812311f.getState().open;
|
|
15202
|
-
$1068fd56b5926747$export$d95eb9b67812311f.setState({
|
|
15203
|
-
open: !open,
|
|
15204
|
-
loaded: true
|
|
15205
|
-
});
|
|
15206
|
-
};
|
|
15207
|
-
const $1068fd56b5926747$export$f0e9d14ede4c01bd = ()=>{
|
|
15208
|
-
const displayType = $1068fd56b5926747$export$d95eb9b67812311f.getState().widgetDisplayType;
|
|
15209
|
-
$1068fd56b5926747$export$d95eb9b67812311f.setState({
|
|
15210
|
-
widgetDisplayType: displayType === "large" ? "thumbnail" : "large"
|
|
15211
|
-
});
|
|
15212
|
-
};
|
|
15213
|
-
|
|
15214
|
-
|
|
15215
|
-
|
|
15216
|
-
|
|
15217
|
-
|
|
15218
15416
|
|
|
15219
15417
|
function $970df85ce5628c51$export$2e2bcd8739ae039() {
|
|
15220
15418
|
const activities = (0, $9acd31406c230961$export$b56465394e2b1287)((state)=>state.messageActivities);
|
|
@@ -15260,6 +15458,46 @@ function $970df85ce5628c51$export$2e2bcd8739ae039() {
|
|
|
15260
15458
|
|
|
15261
15459
|
|
|
15262
15460
|
|
|
15461
|
+
/* eslint-disable react/jsx-boolean-value */
|
|
15462
|
+
|
|
15463
|
+
|
|
15464
|
+
|
|
15465
|
+
|
|
15466
|
+
|
|
15467
|
+
const $1068fd56b5926747$export$d95eb9b67812311f = (0, $dWhh5$zustand.create)()(()=>{
|
|
15468
|
+
return {
|
|
15469
|
+
widgetDisplayType: "large",
|
|
15470
|
+
open: false,
|
|
15471
|
+
loaded: false
|
|
15472
|
+
};
|
|
15473
|
+
});
|
|
15474
|
+
const $1068fd56b5926747$export$a1c83309c736819f = ()=>{
|
|
15475
|
+
$1068fd56b5926747$export$d95eb9b67812311f.setState({
|
|
15476
|
+
open: true,
|
|
15477
|
+
loaded: true
|
|
15478
|
+
});
|
|
15479
|
+
};
|
|
15480
|
+
const $1068fd56b5926747$export$d27f1b0993b666c = ()=>{
|
|
15481
|
+
$1068fd56b5926747$export$d95eb9b67812311f.setState({
|
|
15482
|
+
open: false,
|
|
15483
|
+
loaded: true
|
|
15484
|
+
});
|
|
15485
|
+
};
|
|
15486
|
+
const $1068fd56b5926747$export$77c0ba4d0d97cee5 = ()=>{
|
|
15487
|
+
const open = $1068fd56b5926747$export$d95eb9b67812311f.getState().open;
|
|
15488
|
+
$1068fd56b5926747$export$d95eb9b67812311f.setState({
|
|
15489
|
+
open: !open,
|
|
15490
|
+
loaded: true
|
|
15491
|
+
});
|
|
15492
|
+
};
|
|
15493
|
+
const $1068fd56b5926747$export$f0e9d14ede4c01bd = ()=>{
|
|
15494
|
+
const displayType = $1068fd56b5926747$export$d95eb9b67812311f.getState().widgetDisplayType;
|
|
15495
|
+
$1068fd56b5926747$export$d95eb9b67812311f.setState({
|
|
15496
|
+
widgetDisplayType: displayType === "large" ? "thumbnail" : "large"
|
|
15497
|
+
});
|
|
15498
|
+
};
|
|
15499
|
+
|
|
15500
|
+
|
|
15263
15501
|
|
|
15264
15502
|
|
|
15265
15503
|
|
|
@@ -15268,7 +15506,8 @@ function $970df85ce5628c51$export$2e2bcd8739ae039() {
|
|
|
15268
15506
|
|
|
15269
15507
|
|
|
15270
15508
|
|
|
15271
|
-
const $016ac743b008b7bc$export$aa0c5ba341a0028 = ({ agentName: agentName = "L\xe9a", companyName: companyName
|
|
15509
|
+
const $016ac743b008b7bc$export$aa0c5ba341a0028 = ({ agentName: agentName = "L\xe9a", companyName: companyName, companyNameLocalized: companyNameLocalized, subCompanyMessage: subCompanyMessage, subCompanyMessageLocalized: subCompanyMessageLocalized, imageUrl: imageUrl = "" })=>{
|
|
15510
|
+
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
15272
15511
|
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
15273
15512
|
const { themeColors: themeColors } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
15274
15513
|
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
@@ -15280,7 +15519,7 @@ const $016ac743b008b7bc$export$aa0c5ba341a0028 = ({ agentName: agentName = "L\xe
|
|
|
15280
15519
|
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("img", {
|
|
15281
15520
|
src: imageUrl,
|
|
15282
15521
|
alt: "Agent",
|
|
15283
|
-
className:
|
|
15522
|
+
className: "rf-w-full rf-max-h-28 rf-aspect-square rf-rounded-half rf-border-secondary rf-border-2 rf-bg-truewhite"
|
|
15284
15523
|
})
|
|
15285
15524
|
}),
|
|
15286
15525
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
@@ -15288,11 +15527,11 @@ const $016ac743b008b7bc$export$aa0c5ba341a0028 = ({ agentName: agentName = "L\xe
|
|
|
15288
15527
|
style: {
|
|
15289
15528
|
color: themeColors.companyName
|
|
15290
15529
|
},
|
|
15291
|
-
children: companyName
|
|
15530
|
+
children: (companyNameLocalized === null || companyNameLocalized === void 0 ? void 0 : companyNameLocalized[locale]) || companyName || "Davi"
|
|
15292
15531
|
}),
|
|
15293
15532
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15294
15533
|
className: "rf-col-start-2 rf-col-span-full rf-row-start-3 rf-row-end-4 rf-flex rf-items-start rf-text-sm rf-italic",
|
|
15295
|
-
children: subCompanyMessage || `${agentName} ${translation.menu.answer}`
|
|
15534
|
+
children: (subCompanyMessageLocalized === null || subCompanyMessageLocalized === void 0 ? void 0 : subCompanyMessageLocalized[locale]) || subCompanyMessage || `${agentName} ${translation.menu.answer}`
|
|
15296
15535
|
}),
|
|
15297
15536
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15298
15537
|
className: "rf-col-start-2 rf-col-span-full rf-row-start-2 rf-row-end-3 -rf-ml-2 rf-flex rf-items-center",
|
|
@@ -15306,84 +15545,230 @@ const $016ac743b008b7bc$export$aa0c5ba341a0028 = ({ agentName: agentName = "L\xe
|
|
|
15306
15545
|
|
|
15307
15546
|
|
|
15308
15547
|
|
|
15309
|
-
|
|
15310
|
-
|
|
15311
|
-
|
|
15312
|
-
|
|
15313
|
-
|
|
15314
|
-
|
|
15315
|
-
|
|
15316
|
-
|
|
15317
|
-
|
|
15318
|
-
|
|
15319
|
-
|
|
15320
|
-
|
|
15321
|
-
|
|
15322
|
-
|
|
15323
|
-
|
|
15324
|
-
|
|
15325
|
-
|
|
15326
|
-
|
|
15327
|
-
|
|
15328
|
-
|
|
15329
|
-
|
|
15330
|
-
const
|
|
15331
|
-
const
|
|
15332
|
-
|
|
15333
|
-
|
|
15334
|
-
|
|
15335
|
-
|
|
15548
|
+
|
|
15549
|
+
|
|
15550
|
+
|
|
15551
|
+
|
|
15552
|
+
|
|
15553
|
+
|
|
15554
|
+
|
|
15555
|
+
|
|
15556
|
+
|
|
15557
|
+
|
|
15558
|
+
/**
|
|
15559
|
+
* Check if the activity data need a display as list to be triggered
|
|
15560
|
+
* @param activity : RetorikActivity
|
|
15561
|
+
* @returns boolean
|
|
15562
|
+
*/ const $1a0bdae30bc87d45$export$7c55936a30618336 = (activity)=>{
|
|
15563
|
+
var _activity_attachmentLayout, _activity_attachments;
|
|
15564
|
+
return !!((activity === null || activity === void 0 ? void 0 : (_activity_attachmentLayout = activity.attachmentLayout) === null || _activity_attachmentLayout === void 0 ? void 0 : _activity_attachmentLayout.toLowerCase()) === "davilist" || (activity === null || activity === void 0 ? void 0 : activity.attachmentLayout) !== "carousel" && (activity === null || activity === void 0 ? void 0 : (_activity_attachments = activity.attachments) === null || _activity_attachments === void 0 ? void 0 : _activity_attachments.length) && activity.attachments.length > 1);
|
|
15565
|
+
};
|
|
15566
|
+
|
|
15567
|
+
|
|
15568
|
+
const $a2a195f52aaf1332$var$DisplayStandard = ({ botResponses: botResponses, isMobile: isMobile })=>{
|
|
15569
|
+
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
15570
|
+
const { configuration: { forceMobileView: forceMobileView } } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
15571
|
+
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15572
|
+
id: "retorik-botResponses",
|
|
15573
|
+
className: "rf-flex rf-flex-col rf-text-size-auto rf-gap-2 rf-scrollbar-hidden",
|
|
15574
|
+
children: botResponses.map((activity, key)=>{
|
|
15575
|
+
var _activity_attachments;
|
|
15576
|
+
const answerTime = activity.localTimestamp ? new Date(activity.localTimestamp) : activity.timestamp ? new Date(activity.timestamp) : new Date();
|
|
15577
|
+
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
15578
|
+
className: `${key > 0 && "rf-pt-2"} rf-text-textModePanelConversationBot rf-animate-slideBottom rf-flex rf-flex-col rf-items-start rf-gap-2`,
|
|
15579
|
+
children: [
|
|
15580
|
+
isMobile && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15581
|
+
className: "rf-px-4 rf-text-[#9A9A9A]",
|
|
15582
|
+
children: answerTime.toLocaleString(locale, {
|
|
15583
|
+
hour: "numeric",
|
|
15584
|
+
minute: "numeric"
|
|
15585
|
+
})
|
|
15586
|
+
}),
|
|
15587
|
+
activity.htmlText ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15588
|
+
className: "rf-px-4",
|
|
15589
|
+
dangerouslySetInnerHTML: {
|
|
15590
|
+
__html: activity.htmlText
|
|
15591
|
+
}
|
|
15592
|
+
}) : activity.text ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15593
|
+
className: "rf-px-4",
|
|
15594
|
+
children: (0, $547da4225675b90f$export$d6c6ec86eedacfd9)(activity.text)
|
|
15595
|
+
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {}),
|
|
15596
|
+
!!(activity === null || activity === void 0 ? void 0 : (_activity_attachments = activity.attachments) === null || _activity_attachments === void 0 ? void 0 : _activity_attachments.length) && !(0, $1a0bdae30bc87d45$export$7c55936a30618336)(activity) && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15597
|
+
className: `${forceMobileView ? "rf-m-auto" : "rf-w-full"} ${activity.attachments.length <= 1 && "rf-px-4"} rf-flex rf-flex-col rf-gap-2`,
|
|
15598
|
+
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $c0f9a707e7db7f07$export$2e2bcd8739ae039), {
|
|
15599
|
+
activity: activity
|
|
15600
|
+
})
|
|
15601
|
+
})
|
|
15602
|
+
]
|
|
15603
|
+
}, key);
|
|
15604
|
+
})
|
|
15605
|
+
});
|
|
15606
|
+
};
|
|
15607
|
+
var $a2a195f52aaf1332$export$2e2bcd8739ae039 = $a2a195f52aaf1332$var$DisplayStandard;
|
|
15608
|
+
|
|
15609
|
+
|
|
15610
|
+
|
|
15611
|
+
|
|
15612
|
+
|
|
15613
|
+
const $8113fa9a024156c4$var$interval = 25;
|
|
15614
|
+
const $8113fa9a024156c4$var$DisplayStreaming = ({ streamingQueue: streamingQueue, triggerScroll: triggerScroll })=>{
|
|
15615
|
+
const [streamingTextToDisplay, setStreamingTextToDisplay] = (0, $dWhh5$react.useState)("");
|
|
15616
|
+
const [currentTextEnded, setCurrentTextEnded] = (0, $dWhh5$react.useState)(true);
|
|
15617
|
+
const [currentQueueIndex, setCurrentQueueIndex] = (0, $dWhh5$react.useState)(0);
|
|
15618
|
+
const intervalRef = (0, $dWhh5$react.useRef)(null);
|
|
15619
|
+
const streamRef = (0, $dWhh5$react.useRef)([]);
|
|
15620
|
+
const handleNewStreaming = (text)=>{
|
|
15621
|
+
setCurrentTextEnded(false);
|
|
15622
|
+
// Create array containing indexes of \n parts to replace them with html <br /> tag later
|
|
15623
|
+
const slashNIndexesArray = [];
|
|
15624
|
+
let searchIndex = 0;
|
|
15625
|
+
while(text.indexOf("\n", searchIndex) !== -1){
|
|
15626
|
+
const index = text.indexOf("\n", searchIndex);
|
|
15627
|
+
slashNIndexesArray.push(index);
|
|
15628
|
+
searchIndex = index + 2;
|
|
15629
|
+
}
|
|
15630
|
+
streamRef.current = text.split("");
|
|
15631
|
+
let currentIndex = 0;
|
|
15632
|
+
intervalRef.current = setInterval(()=>{
|
|
15633
|
+
var _streamRef_current;
|
|
15634
|
+
if ((_streamRef_current = streamRef.current) === null || _streamRef_current === void 0 ? void 0 : _streamRef_current.length) {
|
|
15635
|
+
const current = streamRef.current[0];
|
|
15636
|
+
if (slashNIndexesArray.includes(currentIndex)) {
|
|
15637
|
+
// If the current index is present in the array of indexes, then it means it is a \n so replace it with <br /> and jump 2 characters after
|
|
15638
|
+
setStreamingTextToDisplay((value)=>`${value}<br />`);
|
|
15639
|
+
streamRef.current = streamRef.current.slice(1);
|
|
15640
|
+
} else {
|
|
15641
|
+
setStreamingTextToDisplay((value)=>`${value}${current}`);
|
|
15642
|
+
streamRef.current = streamRef.current.slice(1);
|
|
15643
|
+
}
|
|
15644
|
+
currentIndex++;
|
|
15645
|
+
} else {
|
|
15646
|
+
setCurrentTextEnded(true);
|
|
15647
|
+
intervalRef.current && clearInterval(intervalRef.current);
|
|
15648
|
+
}
|
|
15649
|
+
}, $8113fa9a024156c4$var$interval);
|
|
15650
|
+
};
|
|
15651
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
15652
|
+
if ((streamingQueue === null || streamingQueue === void 0 ? void 0 : streamingQueue.length) && currentTextEnded) {
|
|
15653
|
+
if (streamingQueue.length > currentQueueIndex) {
|
|
15654
|
+
handleNewStreaming(streamingQueue[currentQueueIndex].text || "");
|
|
15655
|
+
setCurrentQueueIndex((value)=>value + 1);
|
|
15656
|
+
} else {
|
|
15657
|
+
setCurrentQueueIndex(0);
|
|
15658
|
+
(0, $5f7f457957bd2c8d$export$de8aad637f733113)(null);
|
|
15659
|
+
}
|
|
15660
|
+
}
|
|
15336
15661
|
}, [
|
|
15337
|
-
|
|
15662
|
+
streamingQueue,
|
|
15663
|
+
currentTextEnded
|
|
15338
15664
|
]);
|
|
15339
|
-
|
|
15340
|
-
|
|
15341
|
-
const lastActivity = activities[activities.length - 1];
|
|
15342
|
-
return lastActivity.answers;
|
|
15343
|
-
} else return undefined;
|
|
15665
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
15666
|
+
streamingTextToDisplay.length % 20 === 0 && triggerScroll();
|
|
15344
15667
|
}, [
|
|
15345
|
-
|
|
15668
|
+
streamingTextToDisplay
|
|
15346
15669
|
]);
|
|
15670
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
15671
|
+
return ()=>{
|
|
15672
|
+
(intervalRef === null || intervalRef === void 0 ? void 0 : intervalRef.current) && clearInterval(intervalRef.current);
|
|
15673
|
+
};
|
|
15674
|
+
}, []);
|
|
15675
|
+
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
15676
|
+
id: "retorik-botResponses",
|
|
15677
|
+
className: "rf-flex rf-flex-col rf-text-size-auto rf-scrollbar-hidden",
|
|
15678
|
+
children: [
|
|
15679
|
+
streamingTextToDisplay && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15680
|
+
className: "rf-px-4 rf-text-textModePanelConversationBot",
|
|
15681
|
+
dangerouslySetInnerHTML: {
|
|
15682
|
+
__html: streamingTextToDisplay
|
|
15683
|
+
}
|
|
15684
|
+
}),
|
|
15685
|
+
currentQueueIndex !== 0 && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15686
|
+
className: "rf-px-4 rf-font-bold rf-text-textModePanelConversationBot rf-animate-blink",
|
|
15687
|
+
children: "..."
|
|
15688
|
+
})
|
|
15689
|
+
]
|
|
15690
|
+
});
|
|
15691
|
+
};
|
|
15692
|
+
var $8113fa9a024156c4$export$2e2bcd8739ae039 = $8113fa9a024156c4$var$DisplayStreaming;
|
|
15693
|
+
|
|
15694
|
+
|
|
15695
|
+
const $4d9ea07b04f0d01b$var$ConversationDisplay = ({ userQuestion: userQuestion, botResponses: botResponses, streamingId: streamingId, streamingQueue: streamingQueue, userQuestionTime: userQuestionTime, isMobile: isMobile, triggerScroll: triggerScroll })=>{
|
|
15696
|
+
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
15697
|
+
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {
|
|
15698
|
+
children: [
|
|
15699
|
+
(userQuestion === null || userQuestion === void 0 ? void 0 : userQuestion.text) && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
15700
|
+
id: "retorik-userQuestion",
|
|
15701
|
+
className: "rf-pb-4 rf-text-textModePanelConversationUser rf-animate-slideBottom rf-flex rf-flex-col rf-justify-start rf-text-size-auto rf-gap-2",
|
|
15702
|
+
children: [
|
|
15703
|
+
userQuestionTime && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15704
|
+
className: "rf-px-4 rf-text-[#9A9A9A]",
|
|
15705
|
+
children: userQuestionTime.toLocaleString(locale, {
|
|
15706
|
+
hour: "numeric",
|
|
15707
|
+
minute: "numeric"
|
|
15708
|
+
})
|
|
15709
|
+
}),
|
|
15710
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15711
|
+
className: "rf-px-4",
|
|
15712
|
+
children: userQuestion.text
|
|
15713
|
+
})
|
|
15714
|
+
]
|
|
15715
|
+
}, userQuestion.id),
|
|
15716
|
+
streamingId && (streamingQueue === null || streamingQueue === void 0 ? void 0 : streamingQueue.length) ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $8113fa9a024156c4$export$2e2bcd8739ae039), {
|
|
15717
|
+
streamingQueue: streamingQueue,
|
|
15718
|
+
triggerScroll: triggerScroll
|
|
15719
|
+
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $a2a195f52aaf1332$export$2e2bcd8739ae039), {
|
|
15720
|
+
botResponses: botResponses || [],
|
|
15721
|
+
isMobile: isMobile
|
|
15722
|
+
})
|
|
15723
|
+
]
|
|
15724
|
+
});
|
|
15725
|
+
};
|
|
15726
|
+
var $4d9ea07b04f0d01b$export$2e2bcd8739ae039 = $4d9ea07b04f0d01b$var$ConversationDisplay;
|
|
15727
|
+
|
|
15728
|
+
|
|
15729
|
+
|
|
15730
|
+
const $7df5d708684c32ba$var$ConversationPanelMobile = ({ homeActivity: homeActivity, itemsInConversation: itemsInConversation })=>{
|
|
15731
|
+
var _retorikConversationRef_current, _homeActivity_attachments;
|
|
15732
|
+
const activities = (0, $970df85ce5628c51$export$2e2bcd8739ae039)();
|
|
15733
|
+
const { configuration: configuration } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
15734
|
+
const { currentDeviceType: currentDeviceType, isWidget: isWidget } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
15735
|
+
const listClosed = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.listClosed);
|
|
15736
|
+
const open = (0, $1068fd56b5926747$export$d95eb9b67812311f)((state)=>state.open);
|
|
15737
|
+
const agentData = (0, $c7242af7a2bc5e50$export$bd22554f31e5f96f)((state)=>state.agentData);
|
|
15738
|
+
const [opacityStyle, setOpacityStyle] = (0, $dWhh5$react.useState)("");
|
|
15739
|
+
const [scrollButtonDisplay, setScrollButtonDisplay] = (0, $dWhh5$react.useState)(false);
|
|
15740
|
+
const [scrollButtonDirection, setScrollButtonDirection] = (0, $dWhh5$react.useState)("bottom");
|
|
15741
|
+
const [preventScroll, setPreventScroll] = (0, $dWhh5$react.useState)(false);
|
|
15742
|
+
const streamingId = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.streamingReplyToIdForText);
|
|
15743
|
+
const streamingQueue = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.streamingQueueForText);
|
|
15744
|
+
const retorikConversationRef = (0, $dWhh5$react.useRef)(null);
|
|
15347
15745
|
const botEndRef = (0, $dWhh5$react.useRef)(null);
|
|
15348
15746
|
const timerRef = (0, $dWhh5$react.useRef)(null);
|
|
15349
|
-
const activitiesNumberWithResponse = (0, $dWhh5$react.useMemo)(()=>{
|
|
15350
|
-
let number = 0;
|
|
15351
|
-
activities.forEach((element)=>{
|
|
15352
|
-
number += element.answers.length + 1;
|
|
15353
|
-
});
|
|
15354
|
-
return number;
|
|
15355
|
-
}, [
|
|
15356
|
-
activities
|
|
15357
|
-
]);
|
|
15358
|
-
const [opacityStyle, setOpacityStyle] = (0, $dWhh5$react.useState)("");
|
|
15359
15747
|
const handleScroll = ()=>{
|
|
15360
15748
|
if (retorikConversationRef.current) {
|
|
15361
|
-
const
|
|
15362
|
-
|
|
15363
|
-
const offsetHeight = retorikConversationRef.current.offsetHeight;
|
|
15364
|
-
const clientHeight = retorikConversationRef.current.clientHeight;
|
|
15365
|
-
if (scrollHeight > offsetHeight) {
|
|
15749
|
+
const current = retorikConversationRef.current;
|
|
15750
|
+
if (current.scrollHeight > current.offsetHeight) {
|
|
15366
15751
|
setScrollButtonDisplay(true);
|
|
15367
|
-
if (scrollHeight - scrollTop === clientHeight) setScrollButtonDirection("top");
|
|
15368
|
-
else if (scrollHeight - scrollTop < clientHeight + 10) setScrollButtonDirection("top");
|
|
15752
|
+
if (current.scrollHeight - current.scrollTop === current.clientHeight) setScrollButtonDirection("top");
|
|
15753
|
+
else if (current.scrollHeight - current.scrollTop < current.clientHeight + 10) setScrollButtonDirection("top");
|
|
15369
15754
|
else setScrollButtonDirection("bottom");
|
|
15370
15755
|
}
|
|
15371
|
-
const
|
|
15372
|
-
const percentage = Math.ceil(scrollTop / maxScroll * 15);
|
|
15756
|
+
const percentage = Math.ceil(current.scrollTop / (current.scrollHeight - current.clientHeight) * 15);
|
|
15373
15757
|
setOpacityStyle(`linear-gradient(to top, black ${100 - percentage}%, transparent 100%)`);
|
|
15374
15758
|
}
|
|
15375
15759
|
};
|
|
15376
15760
|
/**
|
|
15377
|
-
*
|
|
15378
|
-
* - scroll to the botEndRef HTML element at the bottom of the view
|
|
15761
|
+
* Scroll to the botEndRef HTML element at the bottom of the view
|
|
15379
15762
|
*/ const scrollHandler = (to, from)=>{
|
|
15380
15763
|
if (to === "bottom") setScrollButtonDirection("top");
|
|
15381
15764
|
else setScrollButtonDirection("bottom");
|
|
15382
|
-
if ((!preventScroll || from === "button") && botEndRef
|
|
15383
|
-
behavior: "smooth"
|
|
15765
|
+
if ((!preventScroll || from === "button") && (botEndRef === null || botEndRef === void 0 ? void 0 : botEndRef.current) && to === "bottom") botEndRef.current.scrollIntoView({
|
|
15766
|
+
behavior: "smooth",
|
|
15767
|
+
block: "nearest"
|
|
15384
15768
|
});
|
|
15385
|
-
else if (to === "top" && retorikConversationRef
|
|
15386
|
-
behavior: "smooth"
|
|
15769
|
+
else if (to === "top" && (retorikConversationRef === null || retorikConversationRef === void 0 ? void 0 : retorikConversationRef.current)) retorikConversationRef.current.children[1].scrollIntoView({
|
|
15770
|
+
behavior: "smooth",
|
|
15771
|
+
block: "nearest"
|
|
15387
15772
|
});
|
|
15388
15773
|
};
|
|
15389
15774
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
@@ -15395,9 +15780,12 @@ const $248ff5c2ef55c790$export$a1f3f6b0b496333e = ()=>{
|
|
|
15395
15780
|
timerRef.current && clearTimeout(timerRef.current);
|
|
15396
15781
|
};
|
|
15397
15782
|
}, [
|
|
15398
|
-
|
|
15783
|
+
itemsInConversation,
|
|
15399
15784
|
retorikConversationRef === null || retorikConversationRef === void 0 ? void 0 : (_retorikConversationRef_current = retorikConversationRef.current) === null || _retorikConversationRef_current === void 0 ? void 0 : _retorikConversationRef_current.scrollHeight
|
|
15400
15785
|
]);
|
|
15786
|
+
(0, $dWhh5$react.useLayoutEffect)(()=>{
|
|
15787
|
+
if (retorikConversationRef === null || retorikConversationRef === void 0 ? void 0 : retorikConversationRef.current) isWidget && (0, $9eb4669b72b0cf4a$export$2e2bcd8739ae039)(null, retorikConversationRef);
|
|
15788
|
+
});
|
|
15401
15789
|
/**
|
|
15402
15790
|
* On retorikConversationRef change :
|
|
15403
15791
|
* - check if retorikConversationRef.current is defined
|
|
@@ -15411,194 +15799,192 @@ const $248ff5c2ef55c790$export$a1f3f6b0b496333e = ()=>{
|
|
|
15411
15799
|
}, [
|
|
15412
15800
|
retorikConversationRef === null || retorikConversationRef === void 0 ? void 0 : retorikConversationRef.current
|
|
15413
15801
|
]);
|
|
15414
|
-
(0, $dWhh5$react.useLayoutEffect)(()=>{
|
|
15415
|
-
if (retorikConversationRef === null || retorikConversationRef === void 0 ? void 0 : retorikConversationRef.current) currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widget && (0, $9eb4669b72b0cf4a$export$2e2bcd8739ae039)(null, retorikConversationRef);
|
|
15416
|
-
});
|
|
15417
|
-
/**
|
|
15418
|
-
* On call :
|
|
15419
|
-
* - set listClosed state to true
|
|
15420
|
-
*/ const onCloseList = ()=>{
|
|
15421
|
-
(0, $70e3d65f5a106231$export$f03cfde7db70aa27)(true);
|
|
15422
|
-
};
|
|
15423
|
-
/**
|
|
15424
|
-
* On call :
|
|
15425
|
-
* - scroll to the botEndRef HTML element at the bottom of the view
|
|
15426
|
-
* - check if there is an activity in need of List display
|
|
15427
|
-
* - set list state depending on the check's result
|
|
15428
|
-
*/ (0, $dWhh5$react.useEffect)(()=>{
|
|
15429
|
-
setPreventScroll(false);
|
|
15430
|
-
if (isMobile) {
|
|
15431
|
-
const answers = activities && activities.length > 0 ? activities[activities.length - 1].answers : [];
|
|
15432
|
-
setList(answers.some((activity)=>$248ff5c2ef55c790$var$checkListDisplay(activity)));
|
|
15433
|
-
} else botResponses && setList(botResponses.some((activity)=>$248ff5c2ef55c790$var$checkListDisplay(activity)));
|
|
15434
|
-
}, [
|
|
15435
|
-
activitiesNumberWithResponse
|
|
15436
|
-
]);
|
|
15437
15802
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
15438
|
-
if ((listClosed ||
|
|
15439
|
-
|
|
15803
|
+
if ((listClosed || homeActivity) && botEndRef.current) {
|
|
15804
|
+
timerRef.current && clearTimeout(timerRef.current);
|
|
15805
|
+
timerRef.current = setTimeout(()=>{
|
|
15440
15806
|
scrollHandler("bottom", "newMessage");
|
|
15441
15807
|
}, 100);
|
|
15442
|
-
return ()=>timer && clearTimeout(timer);
|
|
15443
15808
|
}
|
|
15444
|
-
return ()=>{};
|
|
15445
15809
|
}, [
|
|
15446
15810
|
listClosed,
|
|
15447
|
-
|
|
15811
|
+
homeActivity
|
|
15448
15812
|
]);
|
|
15449
|
-
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.
|
|
15450
|
-
|
|
15451
|
-
activity: activities[activities.length - 1].answers.find((activity)=>$248ff5c2ef55c790$var$checkListDisplay(activity)),
|
|
15452
|
-
onClose: onCloseList
|
|
15453
|
-
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $81a0d7828d5a453d$export$2e2bcd8739ae039), {
|
|
15454
|
-
activity: botResponses === null || botResponses === void 0 ? void 0 : botResponses.find((activity)=>$248ff5c2ef55c790$var$checkListDisplay(activity)),
|
|
15455
|
-
onClose: onCloseList
|
|
15456
|
-
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
15457
|
-
className: `rf-relative rf-max-h-full ${isMobile && "rf-h-full"} rf-bg-textModePanelBackground ${(configuration === null || configuration === void 0 ? void 0 : configuration.forceMobileView) ? "rf-col-start-1" : mediumLandscape ? "rf-col-start-4" : "rf-col-start-5"} vertical:rf-col-start-1 rf-col-span-full vertical:rf-w-full ${(configuration === null || configuration === void 0 ? void 0 : configuration.forceMobileView) ? "rf-row-start-1" : "rf-row-start-4"} rf-row-end-13 large-vertical:rf-row-start-7 large-vertical:rf-row-span-6 rf-self-start rf-overflow-hidden
|
|
15458
|
-
vertical:rf-row-start-1 vertical:rf-row-span-full vertical:rf-overflow-x-auto rf-justify-self-center large:rf-w-3/5 rf-flex rf-flex-col large:rf-rounded`,
|
|
15459
|
-
children: [
|
|
15460
|
-
isMobile && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $016ac743b008b7bc$export$aa0c5ba341a0028), {
|
|
15461
|
-
agentName: agentData === null || agentData === void 0 ? void 0 : agentData.name,
|
|
15462
|
-
companyName: configuration === null || configuration === void 0 ? void 0 : configuration.companyName,
|
|
15463
|
-
subCompanyMessage: configuration === null || configuration === void 0 ? void 0 : configuration.subCompanyMessage,
|
|
15464
|
-
imageUrl: agentData === null || agentData === void 0 ? void 0 : agentData.portrait,
|
|
15465
|
-
forceMobileView: configuration === null || configuration === void 0 ? void 0 : configuration.forceMobileView
|
|
15466
|
-
}),
|
|
15467
|
-
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
15468
|
-
ref: retorikConversationRef,
|
|
15469
|
-
id: "retorik-conversation",
|
|
15470
|
-
className: `rf-relative rf-max-h-full rf-bg-textModePanelBackground rf-py-4 rf-overflow-y-scroll rf-overflow-x-hidden rf-scrollbar-thin ${isMobile && "rf-self-auto rf-mb-26 rf-h-full"}
|
|
15471
|
-
vertical:rf-overflow-x-auto rf-justify-self-center rf-flex rf-flex-col rf-text-size-auto rf-text-trueblack rf-shadow-[3px_3px_6px_#00000029]`,
|
|
15472
|
-
style: {
|
|
15473
|
-
WebkitMaskImage: currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile ? opacityStyle : undefined
|
|
15474
|
-
},
|
|
15475
|
-
onScroll: handleScroll,
|
|
15476
|
-
children: [
|
|
15477
|
-
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $48a18493bc0e99f6$export$93d01adc5582c83e), {
|
|
15478
|
-
direction: scrollButtonDirection,
|
|
15479
|
-
display: isMobile && scrollButtonDisplay && open,
|
|
15480
|
-
scrollHandler: scrollHandler,
|
|
15481
|
-
setPreventScroll: setPreventScroll,
|
|
15482
|
-
className: "rf-fixed rf-z-ui rf-bottom-40 rf-right-6 rf-w-9 rf-h-9 rf-cursor-pointer rf-bg-[#00000050] rf-p-[7px_12px] rf-rounded-[20px] rf-flex"
|
|
15483
|
-
}),
|
|
15484
|
-
isMobile ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)($248ff5c2ef55c790$var$MultipleActivites, {
|
|
15485
|
-
history: activities,
|
|
15486
|
-
forceMobileView: configuration.forceMobileView
|
|
15487
|
-
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)($248ff5c2ef55c790$var$SingleMessage, {
|
|
15488
|
-
userQuestion: userQuestion,
|
|
15489
|
-
botResponses: botResponses,
|
|
15490
|
-
forceMobileView: configuration.forceMobileView
|
|
15491
|
-
}),
|
|
15492
|
-
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15493
|
-
ref: botEndRef
|
|
15494
|
-
})
|
|
15495
|
-
]
|
|
15496
|
-
})
|
|
15497
|
-
]
|
|
15498
|
-
}))
|
|
15499
|
-
});
|
|
15500
|
-
};
|
|
15501
|
-
const $248ff5c2ef55c790$var$SingleMessage = ({ userQuestion: userQuestion, botResponses: botResponses, userClassName: userClassName = "", forceMobileView: forceMobileView = false })=>{
|
|
15502
|
-
var _showHomeAttachments_attachments;
|
|
15503
|
-
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
15504
|
-
const { isMobile: isMobile, showHomeAttachments: showHomeAttachments } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
15505
|
-
const userQuestionTime = userQuestion ? userQuestion.localTimestamp ? new Date(userQuestion.localTimestamp) : userQuestion.timestamp ? new Date(userQuestion.timestamp) : new Date() : undefined;
|
|
15506
|
-
return isMobile || !showHomeAttachments ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {
|
|
15813
|
+
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
15814
|
+
className: "rf-relative rf-max-h-full rf-h-full rf-max-w-full rf-w-full rf-col-start-1 rf-col-span-full rf-row-start-1 rf-row-end-13 rf-self-start rf-overflow-hidden rf-justify-self-center rf-flex rf-flex-col rf-bg-textModePanelBackground",
|
|
15507
15815
|
children: [
|
|
15508
|
-
|
|
15509
|
-
|
|
15510
|
-
|
|
15816
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $016ac743b008b7bc$export$aa0c5ba341a0028), {
|
|
15817
|
+
agentName: agentData === null || agentData === void 0 ? void 0 : agentData.name,
|
|
15818
|
+
companyName: configuration === null || configuration === void 0 ? void 0 : configuration.companyName,
|
|
15819
|
+
companyNameLocalized: configuration === null || configuration === void 0 ? void 0 : configuration.companyNameLocalized,
|
|
15820
|
+
subCompanyMessage: configuration === null || configuration === void 0 ? void 0 : configuration.subCompanyMessage,
|
|
15821
|
+
subCompanyMessageLocalized: configuration === null || configuration === void 0 ? void 0 : configuration.subCompanyMessageLocalized,
|
|
15822
|
+
imageUrl: agentData === null || agentData === void 0 ? void 0 : agentData.portrait
|
|
15823
|
+
}),
|
|
15824
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
15825
|
+
ref: retorikConversationRef,
|
|
15826
|
+
id: "retorik-conversation",
|
|
15827
|
+
className: "rf-relative rf-max-h-full rf-h-full rf-py-4 rf-overflow-y-scroll rf-scrollbar-thin rf-self-auto rf-mb-26 rf-overflow-x-auto rf-justify-self-center rf-flex rf-flex-col rf-text-size-auto rf-text-trueblack rf-bg-textModePanelBackground rf-shadow-[3px_3px_6px_#00000029]",
|
|
15828
|
+
style: {
|
|
15829
|
+
WebkitMaskImage: currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile ? opacityStyle : undefined
|
|
15830
|
+
},
|
|
15831
|
+
onScroll: handleScroll,
|
|
15511
15832
|
children: [
|
|
15512
|
-
|
|
15513
|
-
|
|
15514
|
-
|
|
15515
|
-
|
|
15516
|
-
|
|
15517
|
-
|
|
15833
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $48a18493bc0e99f6$export$93d01adc5582c83e), {
|
|
15834
|
+
direction: scrollButtonDirection,
|
|
15835
|
+
display: scrollButtonDisplay && open,
|
|
15836
|
+
scrollHandler: scrollHandler,
|
|
15837
|
+
setPreventScroll: setPreventScroll,
|
|
15838
|
+
className: "rf-fixed rf-z-ui rf-bottom-40 rf-right-6 rf-w-9 rf-h-9 rf-cursor-pointer rf-bg-[#00000050] rf-p-[7px_12px] rf-rounded-[20px] rf-flex"
|
|
15839
|
+
}),
|
|
15840
|
+
activities.map((activity, index)=>{
|
|
15841
|
+
const userQuestionTime = activity.question ? activity.question.localTimestamp ? new Date(activity.question.localTimestamp) : activity.question.timestamp ? new Date(activity.question.timestamp) : new Date() : undefined;
|
|
15842
|
+
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15843
|
+
className: "rf-pt-3",
|
|
15844
|
+
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $4d9ea07b04f0d01b$export$2e2bcd8739ae039), {
|
|
15845
|
+
userQuestion: activity.question,
|
|
15846
|
+
botResponses: activity.answers,
|
|
15847
|
+
streamingId: index === activities.length - 1 ? streamingId : null,
|
|
15848
|
+
streamingQueue: streamingQueue,
|
|
15849
|
+
userQuestionTime: userQuestionTime,
|
|
15850
|
+
isMobile: true,
|
|
15851
|
+
triggerScroll: ()=>scrollHandler("bottom", "newMessage")
|
|
15852
|
+
})
|
|
15853
|
+
}, index);
|
|
15518
15854
|
}),
|
|
15855
|
+
(homeActivity === null || homeActivity === void 0 ? void 0 : (_homeActivity_attachments = homeActivity.attachments) === null || _homeActivity_attachments === void 0 ? void 0 : _homeActivity_attachments.length) ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15856
|
+
className: "rf-pt-4 rf-flex rf-flex-col rf-text-size-auto rf-gap-2",
|
|
15857
|
+
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $c0f9a707e7db7f07$export$2e2bcd8739ae039), {
|
|
15858
|
+
activity: homeActivity
|
|
15859
|
+
})
|
|
15860
|
+
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {}),
|
|
15519
15861
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15520
|
-
|
|
15521
|
-
children: userQuestion.text
|
|
15862
|
+
ref: botEndRef
|
|
15522
15863
|
})
|
|
15523
15864
|
]
|
|
15524
|
-
}, userQuestion.id),
|
|
15525
|
-
botResponses && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15526
|
-
id: "retorik-botResponses",
|
|
15527
|
-
className: `${userQuestion && "rf-pt-4"} rf-flex rf-flex-col rf-text-size-auto rf-gap-2 rf-scrollbar-hidden`,
|
|
15528
|
-
children: botResponses.map((activity, key)=>{
|
|
15529
|
-
const answerTime = activity.localTimestamp ? new Date(activity.localTimestamp) : activity.timestamp ? new Date(activity.timestamp) : new Date();
|
|
15530
|
-
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {
|
|
15531
|
-
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)($248ff5c2ef55c790$var$BotMessageActivity, {
|
|
15532
|
-
activity: activity,
|
|
15533
|
-
answerTime: answerTime,
|
|
15534
|
-
isMobile: isMobile,
|
|
15535
|
-
mappingKey: key,
|
|
15536
|
-
locale: locale,
|
|
15537
|
-
forceMobileView: forceMobileView
|
|
15538
|
-
})
|
|
15539
|
-
}, key);
|
|
15540
|
-
})
|
|
15541
15865
|
})
|
|
15542
15866
|
]
|
|
15543
|
-
})
|
|
15544
|
-
className: "rf-pt-4 rf-flex rf-flex-col rf-text-size-auto rf-gap-2",
|
|
15545
|
-
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $c0f9a707e7db7f07$export$2e2bcd8739ae039), {
|
|
15546
|
-
activity: showHomeAttachments
|
|
15547
|
-
})
|
|
15548
|
-
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $dWhh5$reactjsxruntime.Fragment), {});
|
|
15867
|
+
});
|
|
15549
15868
|
};
|
|
15550
|
-
|
|
15551
|
-
|
|
15552
|
-
|
|
15553
|
-
|
|
15554
|
-
|
|
15555
|
-
|
|
15556
|
-
|
|
15557
|
-
|
|
15558
|
-
|
|
15559
|
-
|
|
15560
|
-
|
|
15561
|
-
|
|
15869
|
+
var $7df5d708684c32ba$export$2e2bcd8739ae039 = $7df5d708684c32ba$var$ConversationPanelMobile;
|
|
15870
|
+
|
|
15871
|
+
|
|
15872
|
+
|
|
15873
|
+
|
|
15874
|
+
|
|
15875
|
+
|
|
15876
|
+
|
|
15877
|
+
|
|
15878
|
+
|
|
15879
|
+
const $d65b086bfae1b3b3$var$ConversationPanelLarge = ({ homeActivity: homeActivity, itemsInConversation: itemsInConversation })=>{
|
|
15880
|
+
var _homeActivity_attachments, _homeActivity_attachments1;
|
|
15881
|
+
const activities = (0, $970df85ce5628c51$export$2e2bcd8739ae039)();
|
|
15882
|
+
const { mediumLandscape: mediumLandscape } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
15883
|
+
const streamingId = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.streamingReplyToIdForText);
|
|
15884
|
+
const streamingQueue = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.streamingQueueForText);
|
|
15885
|
+
const botEndRef = (0, $dWhh5$react.useRef)(null);
|
|
15886
|
+
const timerRef = (0, $dWhh5$react.useRef)(null);
|
|
15887
|
+
const userQuestion = (0, $dWhh5$react.useMemo)(()=>{
|
|
15888
|
+
var _activities__question;
|
|
15889
|
+
return activities.length && ((_activities__question = activities[activities.length - 1].question) === null || _activities__question === void 0 ? void 0 : _activities__question.text) ? activities[activities.length - 1].question : undefined;
|
|
15890
|
+
}, [
|
|
15891
|
+
activities
|
|
15892
|
+
]);
|
|
15893
|
+
const botResponses = (0, $dWhh5$react.useMemo)(()=>{
|
|
15894
|
+
return activities.length ? activities[activities.length - 1].answers : undefined;
|
|
15895
|
+
}, [
|
|
15896
|
+
activities
|
|
15897
|
+
]);
|
|
15898
|
+
const handleScroll = ()=>{
|
|
15899
|
+
var _botEndRef_current;
|
|
15900
|
+
botEndRef === null || botEndRef === void 0 ? void 0 : (_botEndRef_current = botEndRef.current) === null || _botEndRef_current === void 0 ? void 0 : _botEndRef_current.scrollIntoView({
|
|
15901
|
+
behavior: "smooth",
|
|
15902
|
+
block: "nearest"
|
|
15903
|
+
});
|
|
15904
|
+
};
|
|
15905
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
15906
|
+
timerRef.current && clearTimeout(timerRef.current);
|
|
15907
|
+
timerRef.current = setTimeout(()=>{
|
|
15908
|
+
handleScroll();
|
|
15909
|
+
}, 100);
|
|
15910
|
+
return ()=>{
|
|
15911
|
+
timerRef.current && clearTimeout(timerRef.current);
|
|
15912
|
+
};
|
|
15913
|
+
}, [
|
|
15914
|
+
itemsInConversation
|
|
15915
|
+
]);
|
|
15916
|
+
return (homeActivity === null || homeActivity === void 0 ? void 0 : (_homeActivity_attachments = homeActivity.attachments) === null || _homeActivity_attachments === void 0 ? void 0 : _homeActivity_attachments.length) || streamingId || userQuestion || botResponses ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15917
|
+
className: `rf-relative rf-max-h-full ${mediumLandscape ? "rf-col-start-4" : "rf-col-start-5"} vertical:rf-col-start-1 rf-col-span-full rf-row-start-4 rf-row-end-12 large-vertical:rf-row-start-7 large-vertical:rf-row-span-6 rf-self-start rf-overflow-hidden rf-justify-self-center rf-w-3/5 rf-flex rf-flex-col rf-rounded rf-bg-textModePanelBackground`,
|
|
15918
|
+
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
15919
|
+
id: "retorik-conversation",
|
|
15920
|
+
className: "rf-relative rf-max-h-full rf-bg-textModePanelBackground rf-py-4 rf-overflow-y-scroll rf-overflow-x-hidden rf-scrollbar-thin vertical:rf-overflow-x-auto rf-justify-self-center rf-flex rf-flex-col rf-text-size-auto rf-text-trueblack rf-shadow-[3px_3px_6px_#00000029]",
|
|
15921
|
+
children: [
|
|
15922
|
+
(homeActivity === null || homeActivity === void 0 ? void 0 : (_homeActivity_attachments1 = homeActivity.attachments) === null || _homeActivity_attachments1 === void 0 ? void 0 : _homeActivity_attachments1.length) ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15923
|
+
className: "rf-pt-4 rf-flex rf-flex-col rf-text-size-auto rf-gap-2",
|
|
15924
|
+
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $c0f9a707e7db7f07$export$2e2bcd8739ae039), {
|
|
15925
|
+
activity: homeActivity
|
|
15562
15926
|
})
|
|
15563
|
-
},
|
|
15564
|
-
|
|
15565
|
-
|
|
15566
|
-
|
|
15567
|
-
|
|
15568
|
-
|
|
15927
|
+
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $4d9ea07b04f0d01b$export$2e2bcd8739ae039), {
|
|
15928
|
+
userQuestion: userQuestion,
|
|
15929
|
+
botResponses: botResponses,
|
|
15930
|
+
streamingId: streamingId,
|
|
15931
|
+
streamingQueue: streamingQueue,
|
|
15932
|
+
triggerScroll: handleScroll
|
|
15933
|
+
}),
|
|
15934
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
15935
|
+
ref: botEndRef
|
|
15569
15936
|
})
|
|
15570
|
-
|
|
15571
|
-
|
|
15572
|
-
});
|
|
15937
|
+
]
|
|
15938
|
+
})
|
|
15939
|
+
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {});
|
|
15573
15940
|
};
|
|
15574
|
-
|
|
15575
|
-
|
|
15576
|
-
|
|
15577
|
-
|
|
15578
|
-
|
|
15579
|
-
|
|
15580
|
-
|
|
15581
|
-
|
|
15582
|
-
|
|
15583
|
-
|
|
15584
|
-
|
|
15585
|
-
|
|
15586
|
-
|
|
15587
|
-
|
|
15588
|
-
|
|
15589
|
-
|
|
15590
|
-
|
|
15591
|
-
|
|
15592
|
-
|
|
15593
|
-
|
|
15594
|
-
|
|
15595
|
-
|
|
15596
|
-
|
|
15597
|
-
|
|
15598
|
-
|
|
15599
|
-
|
|
15600
|
-
|
|
15601
|
-
|
|
15941
|
+
var $d65b086bfae1b3b3$export$2e2bcd8739ae039 = $d65b086bfae1b3b3$var$ConversationPanelLarge;
|
|
15942
|
+
|
|
15943
|
+
|
|
15944
|
+
|
|
15945
|
+
const $248ff5c2ef55c790$export$a1f3f6b0b496333e = ()=>{
|
|
15946
|
+
const activities = (0, $970df85ce5628c51$export$2e2bcd8739ae039)();
|
|
15947
|
+
const { configuration: { forceMobileView: forceMobileView } } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
15948
|
+
const { isMobile: isMobile, showHomeAttachments: showHomeAttachments } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
15949
|
+
const listClosed = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.listClosed);
|
|
15950
|
+
const [listActivity, setListActivity] = (0, $dWhh5$react.useState)(undefined);
|
|
15951
|
+
/**
|
|
15952
|
+
* Number of questions and answers in the conversation. Used to trigger useEffects more efficiently
|
|
15953
|
+
*/ const itemsInConversation = (0, $dWhh5$react.useMemo)(()=>{
|
|
15954
|
+
let number = 0;
|
|
15955
|
+
activities.forEach((element)=>{
|
|
15956
|
+
number += element.answers.length + 1;
|
|
15957
|
+
});
|
|
15958
|
+
return number;
|
|
15959
|
+
}, [
|
|
15960
|
+
activities
|
|
15961
|
+
]);
|
|
15962
|
+
/**
|
|
15963
|
+
* Scroll to the botEndRef HTML element at the bottom of the view, then check if there is an activity in need of List display.
|
|
15964
|
+
* Finally, set list state depending on the check's result.
|
|
15965
|
+
*/ (0, $dWhh5$react.useEffect)(()=>{
|
|
15966
|
+
const answers = activities.length ? activities[activities.length - 1].answers : [];
|
|
15967
|
+
setListActivity(answers.find((activity)=>(0, $1a0bdae30bc87d45$export$7c55936a30618336)(activity)));
|
|
15968
|
+
}, [
|
|
15969
|
+
itemsInConversation
|
|
15970
|
+
]);
|
|
15971
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
15972
|
+
if (listClosed || showHomeAttachments) setListActivity(undefined);
|
|
15973
|
+
}, [
|
|
15974
|
+
listClosed,
|
|
15975
|
+
showHomeAttachments
|
|
15976
|
+
]);
|
|
15977
|
+
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {
|
|
15978
|
+
children: listActivity && !listClosed ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $81a0d7828d5a453d$export$2e2bcd8739ae039), {
|
|
15979
|
+
activity: listActivity,
|
|
15980
|
+
onClose: ()=>(0, $70e3d65f5a106231$export$f03cfde7db70aa27)(true)
|
|
15981
|
+
}) : isMobile || forceMobileView ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $7df5d708684c32ba$export$2e2bcd8739ae039), {
|
|
15982
|
+
homeActivity: showHomeAttachments,
|
|
15983
|
+
itemsInConversation: itemsInConversation
|
|
15984
|
+
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $d65b086bfae1b3b3$export$2e2bcd8739ae039), {
|
|
15985
|
+
homeActivity: showHomeAttachments,
|
|
15986
|
+
itemsInConversation: itemsInConversation
|
|
15987
|
+
})
|
|
15602
15988
|
});
|
|
15603
15989
|
};
|
|
15604
15990
|
|
|
@@ -15853,14 +16239,13 @@ var $40c9c7ece5949bcc$export$2e2bcd8739ae039 = $40c9c7ece5949bcc$var$Mobile;
|
|
|
15853
16239
|
|
|
15854
16240
|
|
|
15855
16241
|
|
|
15856
|
-
|
|
15857
16242
|
const $e2e69d564c00882c$var$ParametersAndDashboardContainer = ({ handleBack: handleBack, hideMenu: hideMenu = false })=>{
|
|
15858
16243
|
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
15859
16244
|
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
15860
|
-
const {
|
|
16245
|
+
const { isWidget: isWidget } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
15861
16246
|
const divRef = (0, $dWhh5$react.useRef)(null);
|
|
15862
16247
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
15863
|
-
(divRef === null || divRef === void 0 ? void 0 : divRef.current) &&
|
|
16248
|
+
(divRef === null || divRef === void 0 ? void 0 : divRef.current) && isWidget && (0, $9eb4669b72b0cf4a$export$2e2bcd8739ae039)(null, divRef);
|
|
15864
16249
|
}, [
|
|
15865
16250
|
divRef.current
|
|
15866
16251
|
]);
|
|
@@ -16515,6 +16900,7 @@ var $d399eaf5da71d3d6$export$2e2bcd8739ae039 = $d399eaf5da71d3d6$var$News;
|
|
|
16515
16900
|
|
|
16516
16901
|
|
|
16517
16902
|
|
|
16903
|
+
|
|
16518
16904
|
var $9b9bf2fb80ceb1cd$var$Steps;
|
|
16519
16905
|
// Steps enum
|
|
16520
16906
|
(function(Steps) {
|
|
@@ -16527,6 +16913,7 @@ var $9b9bf2fb80ceb1cd$var$Steps;
|
|
|
16527
16913
|
const $9b9bf2fb80ceb1cd$var$NewsView = ({ chatbotData: chatbotData, hideMenu: hideMenu, isRetorikNews: isRetorikNews, handleEndedWithoutloop: handleEndedWithoutloop })=>{
|
|
16528
16914
|
var _configurations_views_news;
|
|
16529
16915
|
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
16916
|
+
const sendEvent = (0, $dWhh5$botframeworkwebchatapilibhooks.useSendEvent)();
|
|
16530
16917
|
const { configuration: configuration } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
16531
16918
|
const agentData = (0, $c7242af7a2bc5e50$export$bd22554f31e5f96f)((state)=>state.agentData);
|
|
16532
16919
|
const muted = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.muted);
|
|
@@ -16546,6 +16933,10 @@ const $9b9bf2fb80ceb1cd$var$NewsView = ({ chatbotData: chatbotData, hideMenu: hi
|
|
|
16546
16933
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
16547
16934
|
setDisplayControls(false);
|
|
16548
16935
|
muted && (0, $5f7f457957bd2c8d$export$a1680ba91cc9be33)(false);
|
|
16936
|
+
return ()=>{
|
|
16937
|
+
sendEvent("Davi.CloseWindow", null);
|
|
16938
|
+
sendEvent("Davi.CloseWindowNews", null);
|
|
16939
|
+
};
|
|
16549
16940
|
}, []);
|
|
16550
16941
|
/**
|
|
16551
16942
|
* On step change :
|
|
@@ -16696,14 +17087,15 @@ var $9b9bf2fb80ceb1cd$export$2e2bcd8739ae039 = $9b9bf2fb80ceb1cd$var$NewsView;
|
|
|
16696
17087
|
|
|
16697
17088
|
|
|
16698
17089
|
|
|
17090
|
+
|
|
16699
17091
|
const $3b4c49538547c1bc$var$WarningBeforeNewsView = ({ propsToTransfer: propsToTransfer })=>{
|
|
16700
17092
|
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
17093
|
+
const sendEvent = (0, $dWhh5$botframeworkwebchatapilibhooks.useSendEvent)();
|
|
16701
17094
|
const { setRoute: setRoute } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
16702
17095
|
const [waiting, setWaiting] = (0, $dWhh5$react.useState)(true);
|
|
16703
|
-
(0, $dWhh5$react.useEffect)(()=>{
|
|
16704
|
-
setWaiting(true);
|
|
16705
|
-
}, []);
|
|
16706
17096
|
const handleClick = (goHome)=>{
|
|
17097
|
+
sendEvent("Davi.CloseWindow", null);
|
|
17098
|
+
sendEvent("Davi.CloseWindowNewsSoundActivated", null);
|
|
16707
17099
|
goHome ? setRoute((0, $71c613e2e831c34c$export$3565eb3d00ca5a74).Home) : setWaiting(false);
|
|
16708
17100
|
};
|
|
16709
17101
|
return waiting ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
@@ -16866,12 +17258,7 @@ const $9242b50f1c1199a7$var$Container = ({ fullSize: fullSize, width: width, hei
|
|
|
16866
17258
|
* - check and set the classes in the main div that will allow us to use tailwind variants
|
|
16867
17259
|
* - set the main div dimensions in context
|
|
16868
17260
|
*/ (0, $dWhh5$react.useEffect)(()=>{
|
|
16869
|
-
|
|
16870
|
-
if (parent === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget) {
|
|
16871
|
-
setPortrait("rf-portrait");
|
|
16872
|
-
setLarge("");
|
|
16873
|
-
setCurrentDeviceType((0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widget);
|
|
16874
|
-
} else if (forceMobileView) {
|
|
17261
|
+
if (forceMobileView) {
|
|
16875
17262
|
setLarge("");
|
|
16876
17263
|
setCurrentDeviceType((0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile);
|
|
16877
17264
|
setPortrait("rf-portrait");
|
|
@@ -16880,27 +17267,28 @@ const $9242b50f1c1199a7$var$Container = ({ fullSize: fullSize, width: width, hei
|
|
|
16880
17267
|
if (isPortrait) {
|
|
16881
17268
|
if (dimensions.width > (0, $0b4f07c0f09dbbcf$export$2e65b7c7134e01f0)) {
|
|
16882
17269
|
setLarge("rf-large");
|
|
16883
|
-
setCurrentDeviceType((0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).borne);
|
|
17270
|
+
setCurrentDeviceType(parent === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget ? (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widgetBorne : (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).borne);
|
|
16884
17271
|
} else {
|
|
16885
17272
|
setLarge("");
|
|
16886
|
-
setCurrentDeviceType((0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile);
|
|
17273
|
+
setCurrentDeviceType(parent === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget ? (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widget : (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile);
|
|
16887
17274
|
}
|
|
16888
17275
|
} else if (dimensions.height > (0, $0b4f07c0f09dbbcf$export$2e65b7c7134e01f0)) {
|
|
16889
17276
|
setLarge("rf-large");
|
|
16890
|
-
setCurrentDeviceType((0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).landscape);
|
|
17277
|
+
setCurrentDeviceType(parent === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget ? (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widgetLandscape : (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).landscape);
|
|
16891
17278
|
} else {
|
|
16892
17279
|
setLarge("");
|
|
16893
|
-
setCurrentDeviceType((0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile);
|
|
17280
|
+
setCurrentDeviceType(parent === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget ? (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widget : (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile);
|
|
16894
17281
|
}
|
|
16895
17282
|
} else if (0, $dWhh5$reactdevicedetect.isMobile) {
|
|
16896
17283
|
setPortrait("rf-portrait");
|
|
16897
17284
|
setLarge("");
|
|
16898
|
-
setCurrentDeviceType((0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile);
|
|
17285
|
+
setCurrentDeviceType(parent === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget ? (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widget : (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile);
|
|
16899
17286
|
} else {
|
|
16900
17287
|
const isPortrait = checkPortrait(dimensions.width, dimensions.height);
|
|
16901
17288
|
// Check for 'rf-large' class
|
|
16902
|
-
setLarge("rf-large");
|
|
16903
|
-
|
|
17289
|
+
setLarge(parent === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget && dimensions.width < (0, $0b4f07c0f09dbbcf$export$2e65b7c7134e01f0) ? "" : "rf-large");
|
|
17290
|
+
if (isPortrait) setCurrentDeviceType(parent === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget ? dimensions.width > (0, $0b4f07c0f09dbbcf$export$2e65b7c7134e01f0) ? (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widgetBorne : (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widget : (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).borne);
|
|
17291
|
+
else setCurrentDeviceType(parent === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget ? (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).widgetLandscape : (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).landscape);
|
|
16904
17292
|
}
|
|
16905
17293
|
dimensions.height && setCurrentHeight(dimensions.height);
|
|
16906
17294
|
dimensions.width && setCurrentWidth(dimensions.width);
|
|
@@ -16908,7 +17296,7 @@ const $9242b50f1c1199a7$var$Container = ({ fullSize: fullSize, width: width, hei
|
|
|
16908
17296
|
dimensions
|
|
16909
17297
|
]);
|
|
16910
17298
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
16911
|
-
(container === null || container === void 0 ? void 0 : container.current) &&
|
|
17299
|
+
(container === null || container === void 0 ? void 0 : container.current) && (0, $0b4f07c0f09dbbcf$export$909f4c209eb70365).includes(currentDeviceType) && (0, $9eb4669b72b0cf4a$export$2e2bcd8739ae039)(container.current);
|
|
16912
17300
|
}, [
|
|
16913
17301
|
container.current
|
|
16914
17302
|
]);
|
|
@@ -17155,6 +17543,8 @@ var $68ec406cc754e31c$export$2e2bcd8739ae039 = $68ec406cc754e31c$var$getThemeCol
|
|
|
17155
17543
|
|
|
17156
17544
|
const $d441ea54333b2073$var$buildSSML = (activity, speechMarkdownParser, sayAsWords)=>{
|
|
17157
17545
|
let speech = activity.speak || activity.text;
|
|
17546
|
+
// Replace character not recognized in Microsoft TTS
|
|
17547
|
+
speech = speech.replaceAll("\u2019", "'");
|
|
17158
17548
|
if (sayAsWords && sayAsWords.length) {
|
|
17159
17549
|
const wordsUsed = [];
|
|
17160
17550
|
sayAsWords.forEach((tuple)=>{
|
|
@@ -17169,7 +17559,7 @@ const $d441ea54333b2073$var$buildSSML = (activity, speechMarkdownParser, sayAsWo
|
|
|
17169
17559
|
try {
|
|
17170
17560
|
textParsedAsSSML = speechMarkdownParser.toSSML(speech);
|
|
17171
17561
|
} catch (e) {
|
|
17172
|
-
console.warn("Error in speechmarkdown parser : ", e);
|
|
17562
|
+
console.warn("Retorik Framework > Error in speechmarkdown parser : ", e);
|
|
17173
17563
|
}
|
|
17174
17564
|
return `<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="https://www.w3.org/2001/mstts" xmlns:emo="http://www.w3.org/2009/10/emotionml" xml:lang="${activity.locale}">` + textParsedAsSSML + "</speak>";
|
|
17175
17565
|
};
|
|
@@ -17196,6 +17586,86 @@ function $d441ea54333b2073$export$2e2bcd8739ae039({ activity: activity, voice: v
|
|
|
17196
17586
|
|
|
17197
17587
|
|
|
17198
17588
|
|
|
17589
|
+
const $82efec5aad0741fa$export$52a3c04e084af2a0 = {
|
|
17590
|
+
onesecond: `${(0, $0b4f07c0f09dbbcf$export$eefca12493f9e9b9)}/onesecond.mp3`,
|
|
17591
|
+
speechrecognition: `${(0, $0b4f07c0f09dbbcf$export$eefca12493f9e9b9)}/blip.mp3`
|
|
17592
|
+
};
|
|
17593
|
+
|
|
17594
|
+
|
|
17595
|
+
class $e7fbc91b362e1033$var$IndexedDbManager {
|
|
17596
|
+
constructor(){
|
|
17597
|
+
this.version = 1;
|
|
17598
|
+
this.storeName = "speechSynthesisData";
|
|
17599
|
+
this.checkDB = async ()=>{
|
|
17600
|
+
return new Promise((resolve)=>{
|
|
17601
|
+
const request = indexedDB.open("retorik-framework-db", this.version);
|
|
17602
|
+
request.onsuccess = ()=>{
|
|
17603
|
+
resolve(true);
|
|
17604
|
+
};
|
|
17605
|
+
request.onerror = ()=>{
|
|
17606
|
+
resolve(false);
|
|
17607
|
+
};
|
|
17608
|
+
request.onupgradeneeded = ()=>{
|
|
17609
|
+
const db = request.result;
|
|
17610
|
+
// If the data object store doesn't exist, create it
|
|
17611
|
+
if (!db.objectStoreNames.contains(this.storeName)) db.createObjectStore(this.storeName, {
|
|
17612
|
+
keyPath: "id"
|
|
17613
|
+
});
|
|
17614
|
+
};
|
|
17615
|
+
});
|
|
17616
|
+
};
|
|
17617
|
+
this.addSpeechData = async (data)=>{
|
|
17618
|
+
return new Promise((resolve)=>{
|
|
17619
|
+
const request = indexedDB.open("retorik-framework-db", this.version);
|
|
17620
|
+
request.onsuccess = ()=>{
|
|
17621
|
+
const db = request.result;
|
|
17622
|
+
const tx = db.transaction(this.storeName, "readwrite");
|
|
17623
|
+
const store = tx.objectStore(this.storeName);
|
|
17624
|
+
// Base 64 encode
|
|
17625
|
+
data.id = window.btoa(encodeURI(data.id));
|
|
17626
|
+
store.add(data);
|
|
17627
|
+
resolve(true);
|
|
17628
|
+
};
|
|
17629
|
+
request.onerror = ()=>{
|
|
17630
|
+
resolve(false);
|
|
17631
|
+
};
|
|
17632
|
+
});
|
|
17633
|
+
};
|
|
17634
|
+
this.getSpeechData = async (id)=>{
|
|
17635
|
+
return new Promise((resolve)=>{
|
|
17636
|
+
const request = indexedDB.open("retorik-framework-db", this.version);
|
|
17637
|
+
request.onsuccess = ()=>{
|
|
17638
|
+
const db = request.result;
|
|
17639
|
+
const tx = db.transaction(this.storeName, "readonly");
|
|
17640
|
+
const store = tx.objectStore(this.storeName);
|
|
17641
|
+
// Base 64 encode
|
|
17642
|
+
const data = store.get(window.btoa(encodeURI(id)));
|
|
17643
|
+
data.onsuccess = ()=>{
|
|
17644
|
+
resolve(data.result);
|
|
17645
|
+
};
|
|
17646
|
+
};
|
|
17647
|
+
request.onerror = ()=>{
|
|
17648
|
+
resolve(null);
|
|
17649
|
+
};
|
|
17650
|
+
});
|
|
17651
|
+
};
|
|
17652
|
+
}
|
|
17653
|
+
}
|
|
17654
|
+
var $e7fbc91b362e1033$export$2e2bcd8739ae039 = $e7fbc91b362e1033$var$IndexedDbManager;
|
|
17655
|
+
|
|
17656
|
+
|
|
17657
|
+
|
|
17658
|
+
|
|
17659
|
+
|
|
17660
|
+
|
|
17661
|
+
|
|
17662
|
+
|
|
17663
|
+
|
|
17664
|
+
|
|
17665
|
+
|
|
17666
|
+
|
|
17667
|
+
|
|
17668
|
+
|
|
17199
17669
|
|
|
17200
17670
|
|
|
17201
17671
|
|
|
@@ -17214,47 +17684,66 @@ var $acf3b62642941e13$export$2e2bcd8739ae039 = $acf3b62642941e13$var$Animation;
|
|
|
17214
17684
|
|
|
17215
17685
|
|
|
17216
17686
|
|
|
17217
|
-
|
|
17218
|
-
|
|
17687
|
+
const $59a12b6e2b34e902$var$springEnterDuration = 500;
|
|
17688
|
+
const $59a12b6e2b34e902$var$springLeaveDuration = 1000;
|
|
17219
17689
|
const $59a12b6e2b34e902$var$LoaderCallToAction = ({ handleValidation: handleValidation })=>{
|
|
17690
|
+
var _loaderInformationTextsLocalized_vocal_top, _loaderInformationTextsLocalized_vocal, _loaderInformationTextsLocalized_text_top, _loaderInformationTextsLocalized_text, _loaderInformationTextsLocalized_vocal_top1, _loaderInformationTextsLocalized_vocal1, _loaderInformationTexts_vocal, _loaderInformationTextsLocalized_text_top1, _loaderInformationTextsLocalized_text1, _loaderInformationTexts_text, _loaderInformationTexts_vocal1, _loaderInformationTexts_text1, _loaderInformationTextsLocalized_vocal_bottom, _loaderInformationTextsLocalized_vocal2, _loaderInformationTextsLocalized_text_bottom, _loaderInformationTextsLocalized_text2, _loaderInformationTextsLocalized_vocal_bottom1, _loaderInformationTextsLocalized_vocal3, _loaderInformationTexts_vocal2, _loaderInformationTextsLocalized_text_bottom1, _loaderInformationTextsLocalized_text3, _loaderInformationTexts_text2;
|
|
17691
|
+
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
17220
17692
|
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
17221
|
-
const { configuration: { loaderInformationTexts: loaderInformationTexts, hideRetorikLogo: hideRetorikLogo, disableSpeechMode: disabledSpeechMode } } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
17693
|
+
const { configuration: { loaderInformationTexts: loaderInformationTexts, loaderInformationTextsLocalized: loaderInformationTextsLocalized, hideRetorikLogo: hideRetorikLogo, disableSpeechMode: disabledSpeechMode } } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
17222
17694
|
const mode = (0, $c7242af7a2bc5e50$export$bd22554f31e5f96f)((state)=>state.mode);
|
|
17223
|
-
const { themeColors: themeColors
|
|
17224
|
-
const [textSize, setTextSize] = (0, $dWhh5$react.useState)("landscape");
|
|
17695
|
+
const { themeColors: themeColors } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
17225
17696
|
const container = (0, $dWhh5$react.useRef)(null);
|
|
17226
|
-
const dimensions = (0, $b81eedb00aebd99e$export$2e2bcd8739ae039)(container);
|
|
17227
17697
|
const [hover, setHover] = (0, $dWhh5$react.useState)(false);
|
|
17228
17698
|
const animationColor = {
|
|
17229
17699
|
"--rf-color-loader-animation": themeColors.loader.animation
|
|
17230
17700
|
};
|
|
17231
|
-
|
|
17232
|
-
|
|
17233
|
-
|
|
17234
|
-
|
|
17235
|
-
|
|
17236
|
-
|
|
17237
|
-
|
|
17238
|
-
|
|
17239
|
-
|
|
17240
|
-
|
|
17241
|
-
|
|
17242
|
-
|
|
17701
|
+
const animationTimerRef = (0, $dWhh5$react.useRef)();
|
|
17702
|
+
const [spring, api] = (0, $dWhh5$reactspringweb.useSpring)(()=>({
|
|
17703
|
+
from: {
|
|
17704
|
+
opacity: 0
|
|
17705
|
+
}
|
|
17706
|
+
}));
|
|
17707
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
17708
|
+
api.start({
|
|
17709
|
+
from: {
|
|
17710
|
+
opacity: 0
|
|
17711
|
+
},
|
|
17712
|
+
to: {
|
|
17713
|
+
opacity: 1
|
|
17714
|
+
},
|
|
17715
|
+
config: {
|
|
17716
|
+
duration: $59a12b6e2b34e902$var$springEnterDuration
|
|
17717
|
+
}
|
|
17718
|
+
});
|
|
17719
|
+
return ()=>{
|
|
17720
|
+
(animationTimerRef === null || animationTimerRef === void 0 ? void 0 : animationTimerRef.current) && clearTimeout(animationTimerRef.current);
|
|
17721
|
+
};
|
|
17722
|
+
}, []);
|
|
17243
17723
|
const handleChange = (modeId)=>{
|
|
17244
17724
|
const tempMode = modeId === 1 ? (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal : (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).text;
|
|
17245
17725
|
(0, $c7242af7a2bc5e50$export$d4f039427a1beff1)(tempMode);
|
|
17246
17726
|
};
|
|
17247
|
-
|
|
17248
|
-
|
|
17249
|
-
|
|
17250
|
-
|
|
17251
|
-
|
|
17252
|
-
|
|
17253
|
-
|
|
17727
|
+
const handleValidate = ()=>{
|
|
17728
|
+
handleValidation();
|
|
17729
|
+
api.start({
|
|
17730
|
+
from: {
|
|
17731
|
+
opacity: 1
|
|
17732
|
+
},
|
|
17733
|
+
to: {
|
|
17734
|
+
opacity: 0
|
|
17735
|
+
},
|
|
17736
|
+
config: {
|
|
17737
|
+
duration: $59a12b6e2b34e902$var$springLeaveDuration
|
|
17738
|
+
}
|
|
17739
|
+
});
|
|
17740
|
+
};
|
|
17741
|
+
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, $dWhh5$reactspringweb.animated).div, {
|
|
17742
|
+
className: "rf-h-full rf-w-full rf-flex rf-flex-col rf-items-center rf-animate-loaderFadeIn",
|
|
17254
17743
|
ref: container,
|
|
17255
17744
|
style: {
|
|
17256
|
-
|
|
17257
|
-
...
|
|
17745
|
+
...animationColor,
|
|
17746
|
+
...spring
|
|
17258
17747
|
},
|
|
17259
17748
|
children: [
|
|
17260
17749
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
@@ -17270,14 +17759,14 @@ const $59a12b6e2b34e902$var$LoaderCallToAction = ({ handleValidation: handleVali
|
|
|
17270
17759
|
color: themeColors.loader.text
|
|
17271
17760
|
},
|
|
17272
17761
|
children: [
|
|
17273
|
-
(loaderInformationTexts === null || loaderInformationTexts === void 0 ? void 0 : loaderInformationTexts.vocal.top) && loaderInformationTexts.text.top ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("p", {
|
|
17274
|
-
children: mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal ? loaderInformationTexts === null || loaderInformationTexts === void 0 ? void 0 : loaderInformationTexts.vocal.top : loaderInformationTexts.text.top
|
|
17762
|
+
(loaderInformationTexts === null || loaderInformationTexts === void 0 ? void 0 : loaderInformationTexts.vocal.top) && loaderInformationTexts.text.top || (loaderInformationTextsLocalized === null || loaderInformationTextsLocalized === void 0 ? void 0 : (_loaderInformationTextsLocalized_vocal = loaderInformationTextsLocalized.vocal) === null || _loaderInformationTextsLocalized_vocal === void 0 ? void 0 : (_loaderInformationTextsLocalized_vocal_top = _loaderInformationTextsLocalized_vocal.top) === null || _loaderInformationTextsLocalized_vocal_top === void 0 ? void 0 : _loaderInformationTextsLocalized_vocal_top[locale]) && ((_loaderInformationTextsLocalized_text = loaderInformationTextsLocalized.text) === null || _loaderInformationTextsLocalized_text === void 0 ? void 0 : (_loaderInformationTextsLocalized_text_top = _loaderInformationTextsLocalized_text.top) === null || _loaderInformationTextsLocalized_text_top === void 0 ? void 0 : _loaderInformationTextsLocalized_text_top[locale]) ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("p", {
|
|
17763
|
+
children: mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal ? (loaderInformationTextsLocalized === null || loaderInformationTextsLocalized === void 0 ? void 0 : (_loaderInformationTextsLocalized_vocal1 = loaderInformationTextsLocalized.vocal) === null || _loaderInformationTextsLocalized_vocal1 === void 0 ? void 0 : (_loaderInformationTextsLocalized_vocal_top1 = _loaderInformationTextsLocalized_vocal1.top) === null || _loaderInformationTextsLocalized_vocal_top1 === void 0 ? void 0 : _loaderInformationTextsLocalized_vocal_top1[locale]) || (loaderInformationTexts === null || loaderInformationTexts === void 0 ? void 0 : (_loaderInformationTexts_vocal = loaderInformationTexts.vocal) === null || _loaderInformationTexts_vocal === void 0 ? void 0 : _loaderInformationTexts_vocal.top) : (loaderInformationTextsLocalized === null || loaderInformationTextsLocalized === void 0 ? void 0 : (_loaderInformationTextsLocalized_text1 = loaderInformationTextsLocalized.text) === null || _loaderInformationTextsLocalized_text1 === void 0 ? void 0 : (_loaderInformationTextsLocalized_text_top1 = _loaderInformationTextsLocalized_text1.top) === null || _loaderInformationTextsLocalized_text_top1 === void 0 ? void 0 : _loaderInformationTextsLocalized_text_top1[locale]) || (loaderInformationTexts === null || loaderInformationTexts === void 0 ? void 0 : (_loaderInformationTexts_text = loaderInformationTexts.text) === null || _loaderInformationTexts_text === void 0 ? void 0 : _loaderInformationTexts_text.top)
|
|
17275
17764
|
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("p", {
|
|
17276
17765
|
children: mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal ? translation.loader.loader.optimal : translation.loader.loader.classic
|
|
17277
17766
|
}),
|
|
17278
|
-
(loaderInformationTexts === null || loaderInformationTexts === void 0 ? void 0 : loaderInformationTexts.vocal.
|
|
17767
|
+
(loaderInformationTexts === null || loaderInformationTexts === void 0 ? void 0 : (_loaderInformationTexts_vocal1 = loaderInformationTexts.vocal) === null || _loaderInformationTexts_vocal1 === void 0 ? void 0 : _loaderInformationTexts_vocal1.bottom) && ((_loaderInformationTexts_text1 = loaderInformationTexts.text) === null || _loaderInformationTexts_text1 === void 0 ? void 0 : _loaderInformationTexts_text1.bottom) || (loaderInformationTextsLocalized === null || loaderInformationTextsLocalized === void 0 ? void 0 : (_loaderInformationTextsLocalized_vocal2 = loaderInformationTextsLocalized.vocal) === null || _loaderInformationTextsLocalized_vocal2 === void 0 ? void 0 : (_loaderInformationTextsLocalized_vocal_bottom = _loaderInformationTextsLocalized_vocal2.bottom) === null || _loaderInformationTextsLocalized_vocal_bottom === void 0 ? void 0 : _loaderInformationTextsLocalized_vocal_bottom[locale]) && ((_loaderInformationTextsLocalized_text2 = loaderInformationTextsLocalized.text) === null || _loaderInformationTextsLocalized_text2 === void 0 ? void 0 : (_loaderInformationTextsLocalized_text_bottom = _loaderInformationTextsLocalized_text2.bottom) === null || _loaderInformationTextsLocalized_text_bottom === void 0 ? void 0 : _loaderInformationTextsLocalized_text_bottom[locale]) ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("p", {
|
|
17279
17768
|
className: "rf-font-bold",
|
|
17280
|
-
children: mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal ? loaderInformationTexts === null || loaderInformationTexts === void 0 ? void 0 : loaderInformationTexts.vocal.bottom : loaderInformationTexts.text.bottom
|
|
17769
|
+
children: mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal ? (loaderInformationTextsLocalized === null || loaderInformationTextsLocalized === void 0 ? void 0 : (_loaderInformationTextsLocalized_vocal3 = loaderInformationTextsLocalized.vocal) === null || _loaderInformationTextsLocalized_vocal3 === void 0 ? void 0 : (_loaderInformationTextsLocalized_vocal_bottom1 = _loaderInformationTextsLocalized_vocal3.bottom) === null || _loaderInformationTextsLocalized_vocal_bottom1 === void 0 ? void 0 : _loaderInformationTextsLocalized_vocal_bottom1[locale]) || (loaderInformationTexts === null || loaderInformationTexts === void 0 ? void 0 : (_loaderInformationTexts_vocal2 = loaderInformationTexts.vocal) === null || _loaderInformationTexts_vocal2 === void 0 ? void 0 : _loaderInformationTexts_vocal2.bottom) : (loaderInformationTextsLocalized === null || loaderInformationTextsLocalized === void 0 ? void 0 : (_loaderInformationTextsLocalized_text3 = loaderInformationTextsLocalized.text) === null || _loaderInformationTextsLocalized_text3 === void 0 ? void 0 : (_loaderInformationTextsLocalized_text_bottom1 = _loaderInformationTextsLocalized_text3.bottom) === null || _loaderInformationTextsLocalized_text_bottom1 === void 0 ? void 0 : _loaderInformationTextsLocalized_text_bottom1[locale]) || (loaderInformationTexts === null || loaderInformationTexts === void 0 ? void 0 : (_loaderInformationTexts_text2 = loaderInformationTexts.text) === null || _loaderInformationTexts_text2 === void 0 ? void 0 : _loaderInformationTexts_text2.bottom)
|
|
17281
17770
|
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("p", {
|
|
17282
17771
|
className: "rf-font-bold",
|
|
17283
17772
|
children: mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal ? translation.loader.loader.vocal : translation.loader.loader.text
|
|
@@ -17286,48 +17775,38 @@ const $59a12b6e2b34e902$var$LoaderCallToAction = ({ handleValidation: handleVali
|
|
|
17286
17775
|
})
|
|
17287
17776
|
]
|
|
17288
17777
|
}),
|
|
17289
|
-
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.
|
|
17778
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
17290
17779
|
className: `rf-w-full rf-h-1/2 rf-flex rf-flex-col ${hideRetorikLogo ? "rf-justify-start" : "rf-justify-between"} rf-items-center`,
|
|
17291
|
-
children:
|
|
17292
|
-
|
|
17293
|
-
|
|
17294
|
-
|
|
17295
|
-
|
|
17296
|
-
|
|
17297
|
-
|
|
17298
|
-
|
|
17299
|
-
|
|
17300
|
-
|
|
17301
|
-
|
|
17302
|
-
|
|
17303
|
-
|
|
17304
|
-
|
|
17305
|
-
|
|
17306
|
-
|
|
17307
|
-
|
|
17308
|
-
|
|
17309
|
-
|
|
17310
|
-
|
|
17311
|
-
|
|
17312
|
-
|
|
17313
|
-
|
|
17314
|
-
|
|
17315
|
-
|
|
17316
|
-
|
|
17317
|
-
|
|
17318
|
-
children: translation.loader.loaderValidation
|
|
17319
|
-
})
|
|
17320
|
-
]
|
|
17321
|
-
}),
|
|
17322
|
-
!hideRetorikLogo && (isMobile ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $2fd3bc7c6f6085ca$export$2e2bcd8739ae039), {
|
|
17323
|
-
className: "rf-mb-10 rf-h-14"
|
|
17324
|
-
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
17325
|
-
className: "rf-w-full rf-flex rf-justify-start",
|
|
17326
|
-
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $2fd3bc7c6f6085ca$export$2e2bcd8739ae039), {
|
|
17327
|
-
className: "rf-ml-4 rf-mb-4 rf-h-14"
|
|
17780
|
+
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
17781
|
+
className: "rf-flex rf-flex-col rf-items-center",
|
|
17782
|
+
children: [
|
|
17783
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $60db13994a4969cf$export$2e2bcd8739ae039), {
|
|
17784
|
+
texts: {
|
|
17785
|
+
left: translation.loader.modes.vocal,
|
|
17786
|
+
leftId: 1,
|
|
17787
|
+
right: translation.loader.modes.text,
|
|
17788
|
+
rightId: 2
|
|
17789
|
+
},
|
|
17790
|
+
colors: themeColors.loader.toggle,
|
|
17791
|
+
defaultChecked: mode,
|
|
17792
|
+
handleChange: handleChange,
|
|
17793
|
+
showLeft: !disabledSpeechMode,
|
|
17794
|
+
showRight: true
|
|
17795
|
+
}),
|
|
17796
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("button", {
|
|
17797
|
+
className: "rf-font-bold rf-border-2 rf-rounded-lg rf-px-6 rf-py-3 rf-mt-8",
|
|
17798
|
+
style: {
|
|
17799
|
+
color: hover ? themeColors.loader.button.text.hover : themeColors.loader.button.text.default,
|
|
17800
|
+
borderColor: hover ? themeColors.loader.button.border.hover : themeColors.loader.button.border.default,
|
|
17801
|
+
background: hover ? themeColors.loader.button.background.hover : themeColors.loader.button.background.default
|
|
17802
|
+
},
|
|
17803
|
+
onClick: handleValidate,
|
|
17804
|
+
onMouseEnter: ()=>setHover(true),
|
|
17805
|
+
onMouseLeave: ()=>setHover(false),
|
|
17806
|
+
children: translation.loader.loaderValidation
|
|
17328
17807
|
})
|
|
17329
|
-
|
|
17330
|
-
|
|
17808
|
+
]
|
|
17809
|
+
})
|
|
17331
17810
|
})
|
|
17332
17811
|
]
|
|
17333
17812
|
});
|
|
@@ -17336,81 +17815,244 @@ var $59a12b6e2b34e902$export$2e2bcd8739ae039 = $59a12b6e2b34e902$var$LoaderCallT
|
|
|
17336
17815
|
|
|
17337
17816
|
|
|
17338
17817
|
|
|
17339
|
-
const $82efec5aad0741fa$export$52a3c04e084af2a0 = {
|
|
17340
|
-
onesecond: `${(0, $0b4f07c0f09dbbcf$export$eefca12493f9e9b9)}/onesecond.mp3`,
|
|
17341
|
-
speechrecognition: `${(0, $0b4f07c0f09dbbcf$export$eefca12493f9e9b9)}/blip.mp3`
|
|
17342
|
-
};
|
|
17343
17818
|
|
|
17344
17819
|
|
|
17345
|
-
|
|
17346
|
-
|
|
17347
|
-
|
|
17348
|
-
|
|
17349
|
-
|
|
17350
|
-
|
|
17351
|
-
|
|
17352
|
-
|
|
17353
|
-
|
|
17354
|
-
|
|
17355
|
-
|
|
17356
|
-
|
|
17357
|
-
|
|
17358
|
-
|
|
17359
|
-
|
|
17360
|
-
|
|
17361
|
-
|
|
17362
|
-
|
|
17363
|
-
|
|
17364
|
-
|
|
17365
|
-
|
|
17820
|
+
|
|
17821
|
+
|
|
17822
|
+
|
|
17823
|
+
|
|
17824
|
+
const $7f65f9ca51e19c19$var$springDuration = 500;
|
|
17825
|
+
const $7f65f9ca51e19c19$var$finalMessageDisplayDuration = 2500;
|
|
17826
|
+
const $7f65f9ca51e19c19$var$GdprWindow = ({ titleTextSize: titleTextSize })=>{
|
|
17827
|
+
const data = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.GDPRWindowData);
|
|
17828
|
+
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
17829
|
+
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
17830
|
+
const { themeColors: themeColors, isMobile: isMobile } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
17831
|
+
const [finalMessage, setFinalMessage] = (0, $dWhh5$react.useState)(null);
|
|
17832
|
+
const finalMessageTimerRef = (0, $dWhh5$react.useRef)();
|
|
17833
|
+
const animationTimerRef = (0, $dWhh5$react.useRef)();
|
|
17834
|
+
const [spring, api] = (0, $dWhh5$reactspringweb.useSpring)(()=>({
|
|
17835
|
+
from: {
|
|
17836
|
+
opacity: 0
|
|
17837
|
+
}
|
|
17838
|
+
}));
|
|
17839
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
17840
|
+
api.start({
|
|
17841
|
+
from: {
|
|
17842
|
+
opacity: 0
|
|
17843
|
+
},
|
|
17844
|
+
to: {
|
|
17845
|
+
opacity: 1
|
|
17846
|
+
},
|
|
17847
|
+
config: {
|
|
17848
|
+
duration: $7f65f9ca51e19c19$var$springDuration
|
|
17849
|
+
}
|
|
17850
|
+
});
|
|
17851
|
+
return ()=>{
|
|
17852
|
+
(finalMessageTimerRef === null || finalMessageTimerRef === void 0 ? void 0 : finalMessageTimerRef.current) && clearTimeout(finalMessageTimerRef.current);
|
|
17853
|
+
(animationTimerRef === null || animationTimerRef === void 0 ? void 0 : animationTimerRef.current) && clearTimeout(animationTimerRef.current);
|
|
17366
17854
|
};
|
|
17367
|
-
|
|
17368
|
-
|
|
17369
|
-
|
|
17370
|
-
|
|
17371
|
-
|
|
17372
|
-
|
|
17373
|
-
|
|
17374
|
-
|
|
17375
|
-
|
|
17376
|
-
|
|
17377
|
-
|
|
17378
|
-
};
|
|
17379
|
-
request.onerror = ()=>{
|
|
17380
|
-
resolve(false);
|
|
17381
|
-
};
|
|
17382
|
-
});
|
|
17855
|
+
}, []);
|
|
17856
|
+
const texts = (0, $dWhh5$react.useMemo)(()=>{
|
|
17857
|
+
var _data_title, _data_message, _data_link, _data_buttonAccept, _data_buttonRefuse, _data_messageAccepted, _data_messageRefused;
|
|
17858
|
+
return {
|
|
17859
|
+
title: (data === null || data === void 0 ? void 0 : (_data_title = data.title) === null || _data_title === void 0 ? void 0 : _data_title[locale]) || translation.GDPR.title,
|
|
17860
|
+
message: (data === null || data === void 0 ? void 0 : (_data_message = data.message) === null || _data_message === void 0 ? void 0 : _data_message[locale]) || translation.GDPR.message,
|
|
17861
|
+
link: (data === null || data === void 0 ? void 0 : (_data_link = data.link) === null || _data_link === void 0 ? void 0 : _data_link[locale]) || translation.GDPR.link,
|
|
17862
|
+
buttonAccept: (data === null || data === void 0 ? void 0 : (_data_buttonAccept = data.buttonAccept) === null || _data_buttonAccept === void 0 ? void 0 : _data_buttonAccept[locale]) || translation.GDPR.buttonAccept,
|
|
17863
|
+
buttonRefuse: (data === null || data === void 0 ? void 0 : (_data_buttonRefuse = data.buttonRefuse) === null || _data_buttonRefuse === void 0 ? void 0 : _data_buttonRefuse[locale]) || translation.GDPR.buttonRefuse,
|
|
17864
|
+
messageAccepted: (data === null || data === void 0 ? void 0 : (_data_messageAccepted = data.messageAccepted) === null || _data_messageAccepted === void 0 ? void 0 : _data_messageAccepted[locale]) || translation.GDPR.messageAccepted,
|
|
17865
|
+
messageRefused: (data === null || data === void 0 ? void 0 : (_data_messageRefused = data.messageRefused) === null || _data_messageRefused === void 0 ? void 0 : _data_messageRefused[locale]) || translation.GDPR.messageRefused
|
|
17383
17866
|
};
|
|
17384
|
-
|
|
17385
|
-
|
|
17386
|
-
|
|
17387
|
-
|
|
17388
|
-
|
|
17389
|
-
|
|
17390
|
-
|
|
17391
|
-
|
|
17392
|
-
|
|
17393
|
-
|
|
17394
|
-
|
|
17395
|
-
|
|
17396
|
-
|
|
17397
|
-
|
|
17398
|
-
|
|
17399
|
-
|
|
17867
|
+
}, [
|
|
17868
|
+
translation,
|
|
17869
|
+
locale
|
|
17870
|
+
]);
|
|
17871
|
+
const handleCheck = (value)=>{
|
|
17872
|
+
(0, $70e3d65f5a106231$export$7a09e6b3c59f37ad)(value);
|
|
17873
|
+
setFinalMessage(value ? texts.messageAccepted : texts.messageRefused);
|
|
17874
|
+
finalMessageTimerRef.current = setTimeout(()=>{
|
|
17875
|
+
api.start({
|
|
17876
|
+
from: {
|
|
17877
|
+
opacity: 1
|
|
17878
|
+
},
|
|
17879
|
+
to: {
|
|
17880
|
+
opacity: 0
|
|
17881
|
+
},
|
|
17882
|
+
config: {
|
|
17883
|
+
duration: $7f65f9ca51e19c19$var$springDuration
|
|
17884
|
+
}
|
|
17400
17885
|
});
|
|
17401
|
-
};
|
|
17402
|
-
|
|
17403
|
-
|
|
17404
|
-
|
|
17886
|
+
}, $7f65f9ca51e19c19$var$finalMessageDisplayDuration);
|
|
17887
|
+
animationTimerRef.current = setTimeout(()=>{
|
|
17888
|
+
(0, $70e3d65f5a106231$export$ff26692bd8e0fbbd)(false);
|
|
17889
|
+
}, $7f65f9ca51e19c19$var$springDuration + $7f65f9ca51e19c19$var$finalMessageDisplayDuration);
|
|
17890
|
+
};
|
|
17891
|
+
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, $dWhh5$reactspringweb.animated).div, {
|
|
17892
|
+
className: "rf-h-full rf-w-full rf-flex rf-flex-col rf-gap-12 rf-justify-center rf-items-center rf-text-center",
|
|
17893
|
+
style: {
|
|
17894
|
+
...spring
|
|
17895
|
+
},
|
|
17896
|
+
children: [
|
|
17897
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
17898
|
+
className: `${isMobile ? "rf-w-3/4" : "rf-w-1/2"} ${titleTextSize}`,
|
|
17899
|
+
children: (0, $04321743da31c8db$export$d07f57595c356899)(texts.title, locale)
|
|
17900
|
+
}),
|
|
17901
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
17902
|
+
className: `${isMobile ? "rf-w-3/4" : "rf-w-1/2"} rf-flex rf-flex-col rf-items-center rf-gap-4`,
|
|
17903
|
+
children: [
|
|
17904
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
17905
|
+
dangerouslySetInnerHTML: {
|
|
17906
|
+
__html: (0, $04321743da31c8db$export$d07f57595c356899)(texts.message, locale).replaceAll("\n", "<br>")
|
|
17907
|
+
}
|
|
17908
|
+
}),
|
|
17909
|
+
(data === null || data === void 0 ? void 0 : data.linkURL) && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("a", {
|
|
17910
|
+
href: data.linkURL,
|
|
17911
|
+
target: "_blank",
|
|
17912
|
+
rel: "noreferrer noopener",
|
|
17913
|
+
style: {
|
|
17914
|
+
color: themeColors.primary,
|
|
17915
|
+
textDecoration: "underline"
|
|
17916
|
+
},
|
|
17917
|
+
children: (0, $04321743da31c8db$export$d07f57595c356899)(texts.link, locale)
|
|
17918
|
+
})
|
|
17919
|
+
]
|
|
17920
|
+
}),
|
|
17921
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
17922
|
+
className: "rf-w-full rf-h-16 rf-flex rf-flex-row rf-justify-center rf-gap-4",
|
|
17923
|
+
children: finalMessage ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
17924
|
+
className: `${isMobile ? "rf-w-3/4" : "rf-w-1/2"} rf-animate-fadeIn`,
|
|
17925
|
+
children: (0, $04321743da31c8db$export$d07f57595c356899)(finalMessage, locale)
|
|
17926
|
+
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {
|
|
17927
|
+
children: [
|
|
17928
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("button", {
|
|
17929
|
+
className: "rf-h-fit rf-px-4 rf-py-2 rf-rounded-lg",
|
|
17930
|
+
onClick: ()=>handleCheck(true),
|
|
17931
|
+
style: {
|
|
17932
|
+
color: themeColors.loader.toggle.text,
|
|
17933
|
+
background: themeColors.loader.toggle.background,
|
|
17934
|
+
borderColor: themeColors.loader.toggle.background
|
|
17935
|
+
},
|
|
17936
|
+
children: (0, $04321743da31c8db$export$d07f57595c356899)(texts.buttonAccept, locale)
|
|
17937
|
+
}),
|
|
17938
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("button", {
|
|
17939
|
+
className: "rf-h-fit rf-px-4 rf-py-2 rf-rounded-lg",
|
|
17940
|
+
onClick: ()=>handleCheck(false),
|
|
17941
|
+
style: {
|
|
17942
|
+
color: themeColors.loader.toggle.text,
|
|
17943
|
+
background: themeColors.loader.toggle.background,
|
|
17944
|
+
borderColor: themeColors.loader.toggle.background
|
|
17945
|
+
},
|
|
17946
|
+
children: (0, $04321743da31c8db$export$d07f57595c356899)(texts.buttonRefuse, locale)
|
|
17947
|
+
})
|
|
17948
|
+
]
|
|
17949
|
+
})
|
|
17950
|
+
})
|
|
17951
|
+
]
|
|
17952
|
+
});
|
|
17953
|
+
};
|
|
17954
|
+
var $7f65f9ca51e19c19$export$2e2bcd8739ae039 = $7f65f9ca51e19c19$var$GdprWindow;
|
|
17405
17955
|
|
|
17406
17956
|
|
|
17957
|
+
const $9a1eaae49cbafe0e$var$springEnterDuration = 500;
|
|
17958
|
+
const $9a1eaae49cbafe0e$var$springLeaveDuration = 1000;
|
|
17959
|
+
const $9a1eaae49cbafe0e$var$GdprAndLoader = ({ appAvailable: appAvailable, handleValidation: handleValidation })=>{
|
|
17960
|
+
const displayGDPR = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.GDPRDisplay);
|
|
17961
|
+
const { configuration: { hideRetorikLogo: hideRetorikLogo }, loaderClosed: loaderClosed } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
17962
|
+
const { themeColors: themeColors, isMobile: isMobile, isWidget: isWidget } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
17963
|
+
const [textSize, setTextSize] = (0, $dWhh5$react.useState)("");
|
|
17964
|
+
const [titleTextSize, setTitleTextSize] = (0, $dWhh5$react.useState)();
|
|
17965
|
+
const container = (0, $dWhh5$react.useRef)(null);
|
|
17966
|
+
const dimensions = (0, $b81eedb00aebd99e$export$2e2bcd8739ae039)(container);
|
|
17967
|
+
const animationTimerRef = (0, $dWhh5$react.useRef)();
|
|
17968
|
+
const [spring, api] = (0, $dWhh5$reactspringweb.useSpring)(()=>({
|
|
17969
|
+
from: {
|
|
17970
|
+
opacity: 0
|
|
17971
|
+
}
|
|
17972
|
+
}));
|
|
17973
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
17974
|
+
api.start({
|
|
17975
|
+
from: {
|
|
17976
|
+
opacity: 0
|
|
17977
|
+
},
|
|
17978
|
+
to: {
|
|
17979
|
+
opacity: 1
|
|
17980
|
+
},
|
|
17981
|
+
config: {
|
|
17982
|
+
duration: $9a1eaae49cbafe0e$var$springEnterDuration
|
|
17983
|
+
}
|
|
17984
|
+
});
|
|
17985
|
+
return ()=>{
|
|
17986
|
+
(animationTimerRef === null || animationTimerRef === void 0 ? void 0 : animationTimerRef.current) && clearTimeout(animationTimerRef.current);
|
|
17987
|
+
};
|
|
17988
|
+
}, []);
|
|
17989
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
17990
|
+
if (dimensions.width && dimensions.height && dimensions.width > 600) {
|
|
17991
|
+
if (dimensions.width < dimensions.height) {
|
|
17992
|
+
setTextSize("rf-text-lgcustom");
|
|
17993
|
+
setTitleTextSize("rf-text-3xl");
|
|
17994
|
+
} else {
|
|
17995
|
+
setTextSize("rf-text-basecustom");
|
|
17996
|
+
setTitleTextSize("rf-text-4xl");
|
|
17997
|
+
}
|
|
17998
|
+
} else {
|
|
17999
|
+
setTextSize("rf-text-sm");
|
|
18000
|
+
setTitleTextSize("rf-text-2xl");
|
|
18001
|
+
}
|
|
18002
|
+
}, [
|
|
18003
|
+
dimensions
|
|
18004
|
+
]);
|
|
18005
|
+
const handleValidate = ()=>{
|
|
18006
|
+
handleValidation();
|
|
18007
|
+
api.start({
|
|
18008
|
+
from: {
|
|
18009
|
+
opacity: 1
|
|
18010
|
+
},
|
|
18011
|
+
to: {
|
|
18012
|
+
opacity: 0
|
|
18013
|
+
},
|
|
18014
|
+
config: {
|
|
18015
|
+
duration: $9a1eaae49cbafe0e$var$springLeaveDuration
|
|
18016
|
+
}
|
|
18017
|
+
});
|
|
18018
|
+
};
|
|
18019
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
18020
|
+
(container === null || container === void 0 ? void 0 : container.current) && isWidget && (0, $9eb4669b72b0cf4a$export$2e2bcd8739ae039)(container.current);
|
|
18021
|
+
}, [
|
|
18022
|
+
container === null || container === void 0 ? void 0 : container.current
|
|
18023
|
+
]);
|
|
18024
|
+
return displayGDPR || !(appAvailable || loaderClosed) ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, $dWhh5$reactspringweb.animated).div, {
|
|
18025
|
+
id: "retorik-GDPR-and-loader",
|
|
18026
|
+
className: `rf-absolute rf-z-modal rf-top-0 rf-left-0 rf-h-full rf-w-full rf-font-default
|
|
18027
|
+
${textSize}`,
|
|
18028
|
+
ref: container,
|
|
18029
|
+
style: {
|
|
18030
|
+
background: themeColors.loader.background,
|
|
18031
|
+
color: themeColors.loader.text,
|
|
18032
|
+
...spring
|
|
18033
|
+
},
|
|
18034
|
+
children: [
|
|
18035
|
+
displayGDPR ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $7f65f9ca51e19c19$export$2e2bcd8739ae039), {
|
|
18036
|
+
titleTextSize: titleTextSize
|
|
18037
|
+
}) : !(appAvailable || loaderClosed) ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $59a12b6e2b34e902$export$2e2bcd8739ae039), {
|
|
18038
|
+
handleValidation: handleValidate
|
|
18039
|
+
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {}),
|
|
18040
|
+
!hideRetorikLogo && (isMobile ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $2fd3bc7c6f6085ca$export$2e2bcd8739ae039), {
|
|
18041
|
+
className: "rf-absolute rf-bottom-10 rf-h-14"
|
|
18042
|
+
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $2fd3bc7c6f6085ca$export$2e2bcd8739ae039), {
|
|
18043
|
+
className: "rf-absolute rf-left-4 rf-bottom-4 rf-h-14"
|
|
18044
|
+
}))
|
|
18045
|
+
]
|
|
18046
|
+
}) : /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {});
|
|
18047
|
+
};
|
|
18048
|
+
var $9a1eaae49cbafe0e$export$2e2bcd8739ae039 = $9a1eaae49cbafe0e$var$GdprAndLoader;
|
|
17407
18049
|
|
|
17408
18050
|
|
|
17409
18051
|
const $d31b268c3b702355$var$DBManager = new (0, $e7fbc91b362e1033$export$2e2bcd8739ae039)();
|
|
17410
18052
|
const $d31b268c3b702355$var$tagsRemoverRegex = /<[^<>]+>/g;
|
|
17411
|
-
const $d31b268c3b702355$var$RetorikSpeech = ({ ponyfill: ponyfill, onEnd: onEnd, onError: onError, onStart: onStart, utterance: utterance, appAvailable: appAvailable })=>{
|
|
18053
|
+
const $d31b268c3b702355$var$RetorikSpeech = ({ ponyfill: ponyfill, onEnd: onEnd, onError: onError, onStart: onStart, utterance: utterance, nextUtterance: nextUtterance, appAvailable: appAvailable })=>{
|
|
17412
18054
|
const locale = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.locale);
|
|
17413
|
-
const { loaderClosed: loaderClosed, setLoaderClosed: setLoaderClosed, configuration: { enableSpeechCaching: enableSpeechCaching, speechRecognitionOptions: speechRecognitionOptions } } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
18055
|
+
const { loaderClosed: loaderClosed, setLoaderClosed: setLoaderClosed, configuration: { enableSpeechCaching: enableSpeechCaching, speechRecognitionOptions: speechRecognitionOptions, isUsedOnBorne: isUsedOnBorne } } = (0, $1d4f8108de9ab73a$export$d8760bee47331b1d)();
|
|
17414
18056
|
const { voice: voice } = (0, $df401eb9a10f9e0e$export$57e792e009c800a0)();
|
|
17415
18057
|
const muted = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.muted);
|
|
17416
18058
|
const activeRecognitionState = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.activeRecognitionState);
|
|
@@ -17419,6 +18061,9 @@ const $d31b268c3b702355$var$RetorikSpeech = ({ ponyfill: ponyfill, onEnd: onEnd,
|
|
|
17419
18061
|
const speechRecognitionAudioRef = (0, $dWhh5$react.useRef)(null);
|
|
17420
18062
|
const [DBReady, setDBReady] = (0, $dWhh5$react.useState)(false);
|
|
17421
18063
|
const [playingBlob, setPlayingBlob] = (0, $dWhh5$react.useState)(false);
|
|
18064
|
+
const [nextUtteranceData, setNextUtteranceData] = (0, $dWhh5$react.useState)(null);
|
|
18065
|
+
const nextUtteranceBoundariesRef = (0, $dWhh5$react.useRef)([]);
|
|
18066
|
+
const nextUtteranceVisemesRef = (0, $dWhh5$react.useRef)([]);
|
|
17422
18067
|
const emptyTextUtteranceRef = (0, $dWhh5$react.useRef)(null);
|
|
17423
18068
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
17424
18069
|
$d31b268c3b702355$var$DBManager.checkDB().then((result)=>setDBReady(result));
|
|
@@ -17428,70 +18073,103 @@ const $d31b268c3b702355$var$RetorikSpeech = ({ ponyfill: ponyfill, onEnd: onEnd,
|
|
|
17428
18073
|
var _audioRef_current;
|
|
17429
18074
|
// Cancel synthesis if using synthesizer
|
|
17430
18075
|
if (!playingBlob) ponyfill && ponyfill.speechSynthesis.cancel();
|
|
18076
|
+
resetNextUtteranceData();
|
|
17431
18077
|
if (audioRef.current && !((_audioRef_current = audioRef.current) === null || _audioRef_current === void 0 ? void 0 : _audioRef_current.paused)) {
|
|
17432
18078
|
audioRef.current.pause();
|
|
17433
18079
|
handleEnd();
|
|
17434
18080
|
}
|
|
17435
18081
|
}
|
|
17436
18082
|
};
|
|
18083
|
+
const attachEvents = (tempUtterance, isMainUtterance)=>{
|
|
18084
|
+
tempUtterance.onerror = (event)=>{
|
|
18085
|
+
isMainUtterance ? handleError(event) : setNextUtteranceData(null);
|
|
18086
|
+
};
|
|
18087
|
+
tempUtterance.onsynthesiscompleted = ()=>{
|
|
18088
|
+
const endBoundary = {
|
|
18089
|
+
word: "",
|
|
18090
|
+
startTime: 0,
|
|
18091
|
+
endTime: 0,
|
|
18092
|
+
boundaryType: "EndBoundary"
|
|
18093
|
+
};
|
|
18094
|
+
if (isMainUtterance) {
|
|
18095
|
+
const tempBoundaries = (boundaryRef === null || boundaryRef === void 0 ? void 0 : boundaryRef.current) || [];
|
|
18096
|
+
boundaryRef.current = [
|
|
18097
|
+
...tempBoundaries,
|
|
18098
|
+
endBoundary
|
|
18099
|
+
];
|
|
18100
|
+
(0, $5f7f457957bd2c8d$export$c24886139fddc386)([
|
|
18101
|
+
...tempBoundaries,
|
|
18102
|
+
endBoundary
|
|
18103
|
+
]);
|
|
18104
|
+
} else nextUtteranceBoundariesRef.current = [
|
|
18105
|
+
...nextUtteranceBoundariesRef.current,
|
|
18106
|
+
endBoundary
|
|
18107
|
+
];
|
|
18108
|
+
};
|
|
18109
|
+
tempUtterance.onboundary = (event)=>{
|
|
18110
|
+
if (event.boundaryType !== "Viseme") {
|
|
18111
|
+
const newBoundary = {
|
|
18112
|
+
word: event.name,
|
|
18113
|
+
startTime: event.elapsedTime,
|
|
18114
|
+
endTime: event.elapsedTime + event.duration,
|
|
18115
|
+
boundaryType: event.boundaryType
|
|
18116
|
+
};
|
|
18117
|
+
if (isMainUtterance) {
|
|
18118
|
+
// Update the boundaryData state with the new data.
|
|
18119
|
+
const tempBoundaries = (boundaryRef === null || boundaryRef === void 0 ? void 0 : boundaryRef.current) || [];
|
|
18120
|
+
boundaryRef.current = [
|
|
18121
|
+
...tempBoundaries,
|
|
18122
|
+
newBoundary
|
|
18123
|
+
];
|
|
18124
|
+
(0, $5f7f457957bd2c8d$export$c24886139fddc386)([
|
|
18125
|
+
...tempBoundaries,
|
|
18126
|
+
newBoundary
|
|
18127
|
+
]);
|
|
18128
|
+
} else nextUtteranceBoundariesRef.current = [
|
|
18129
|
+
...nextUtteranceBoundariesRef.current,
|
|
18130
|
+
newBoundary
|
|
18131
|
+
];
|
|
18132
|
+
}
|
|
18133
|
+
};
|
|
18134
|
+
tempUtterance.onviseme = (event)=>{
|
|
18135
|
+
const newViseme = {
|
|
18136
|
+
word: event.name,
|
|
18137
|
+
startTime: event.elapsedTime,
|
|
18138
|
+
endTime: event.elapsedTime + event.duration,
|
|
18139
|
+
boundaryType: event.boundaryType
|
|
18140
|
+
};
|
|
18141
|
+
if (isMainUtterance) ;
|
|
18142
|
+
else nextUtteranceVisemesRef.current = [
|
|
18143
|
+
...nextUtteranceVisemesRef.current,
|
|
18144
|
+
newViseme
|
|
18145
|
+
];
|
|
18146
|
+
};
|
|
18147
|
+
return tempUtterance;
|
|
18148
|
+
};
|
|
18149
|
+
const processNextData = (data)=>{
|
|
18150
|
+
setNextUtteranceData((data === null || data === void 0 ? void 0 : data.byteLength) ? {
|
|
18151
|
+
speechData: data,
|
|
18152
|
+
boundaries: nextUtteranceBoundariesRef.current,
|
|
18153
|
+
visemes: nextUtteranceVisemesRef.current
|
|
18154
|
+
} : null);
|
|
18155
|
+
// Reset boundary / viseme data
|
|
18156
|
+
resetNextUtteranceData(true);
|
|
18157
|
+
};
|
|
18158
|
+
const resetNextUtteranceData = (keepArrayBufferData)=>{
|
|
18159
|
+
!keepArrayBufferData && setNextUtteranceData(null);
|
|
18160
|
+
nextUtteranceBoundariesRef.current = [];
|
|
18161
|
+
nextUtteranceVisemesRef.current = [];
|
|
18162
|
+
};
|
|
17437
18163
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
17438
18164
|
if (utterance) {
|
|
17439
18165
|
if (utterance.text) {
|
|
17440
18166
|
if (ponyfill && (audioRef === null || audioRef === void 0 ? void 0 : audioRef.current)) {
|
|
17441
|
-
|
|
17442
|
-
|
|
17443
|
-
|
|
17444
|
-
|
|
17445
|
-
|
|
17446
|
-
|
|
17447
|
-
startTime: 0,
|
|
17448
|
-
endTime: 0,
|
|
17449
|
-
boundaryType: "EndBoundary"
|
|
17450
|
-
};
|
|
17451
|
-
const tempBoundaries = (boundaryRef === null || boundaryRef === void 0 ? void 0 : boundaryRef.current) || [];
|
|
17452
|
-
boundaryRef.current = [
|
|
17453
|
-
...tempBoundaries,
|
|
17454
|
-
endBoundary
|
|
17455
|
-
];
|
|
17456
|
-
(0, $5f7f457957bd2c8d$export$c24886139fddc386)([
|
|
17457
|
-
...tempBoundaries,
|
|
17458
|
-
endBoundary
|
|
17459
|
-
]);
|
|
17460
|
-
};
|
|
17461
|
-
utterance.onboundary = (event)=>{
|
|
17462
|
-
if (event.boundaryType !== "Viseme") {
|
|
17463
|
-
// Get the current word and its start time and end time.
|
|
17464
|
-
const word = event.name;
|
|
17465
|
-
const startTime = event.elapsedTime;
|
|
17466
|
-
const endTime = event.elapsedTime + event.duration;
|
|
17467
|
-
const boundaryType = event.boundaryType;
|
|
17468
|
-
// Update the boundaryData state with the new data.
|
|
17469
|
-
const tempBoundaries = (boundaryRef === null || boundaryRef === void 0 ? void 0 : boundaryRef.current) || [];
|
|
17470
|
-
boundaryRef.current = [
|
|
17471
|
-
...tempBoundaries,
|
|
17472
|
-
{
|
|
17473
|
-
word: word,
|
|
17474
|
-
startTime: startTime,
|
|
17475
|
-
endTime: endTime,
|
|
17476
|
-
boundaryType: boundaryType
|
|
17477
|
-
}
|
|
17478
|
-
];
|
|
17479
|
-
(0, $5f7f457957bd2c8d$export$c24886139fddc386)([
|
|
17480
|
-
...tempBoundaries,
|
|
17481
|
-
{
|
|
17482
|
-
word: word,
|
|
17483
|
-
startTime: startTime,
|
|
17484
|
-
endTime: endTime,
|
|
17485
|
-
boundaryType: boundaryType
|
|
17486
|
-
}
|
|
17487
|
-
]);
|
|
17488
|
-
}
|
|
17489
|
-
};
|
|
17490
|
-
utterance.onviseme = ()=>{
|
|
17491
|
-
// console.log('Viseme : ', e)
|
|
17492
|
-
};
|
|
17493
|
-
// Play utterance whether by asking for a speech synthesis, or by retrieving data fro indexeddb
|
|
17494
|
-
playUtterance();
|
|
18167
|
+
if (nextUtteranceData) {
|
|
18168
|
+
boundaryRef.current = nextUtteranceData.boundaries;
|
|
18169
|
+
(0, $5f7f457957bd2c8d$export$c24886139fddc386)(nextUtteranceData.boundaries);
|
|
18170
|
+
processData(nextUtteranceData.speechData, true);
|
|
18171
|
+
} else // Play utterance whether by asking for a speech synthesis, or by retrieving data fro indexeddb
|
|
18172
|
+
playUtterance(attachEvents(utterance, true));
|
|
17495
18173
|
} else stopCurrentPlaying();
|
|
17496
18174
|
} else handleEmptyTextUtterance();
|
|
17497
18175
|
} else stopCurrentPlaying();
|
|
@@ -17502,33 +18180,43 @@ const $d31b268c3b702355$var$RetorikSpeech = ({ ponyfill: ponyfill, onEnd: onEnd,
|
|
|
17502
18180
|
}, [
|
|
17503
18181
|
utterance
|
|
17504
18182
|
]);
|
|
17505
|
-
|
|
17506
|
-
if (
|
|
17507
|
-
const
|
|
18183
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
18184
|
+
if ((nextUtterance === null || nextUtterance === void 0 ? void 0 : nextUtterance.text) && ponyfill) {
|
|
18185
|
+
const tempUtterance = attachEvents(nextUtterance);
|
|
18186
|
+
ponyfill.speechSynthesis.synthesizeAndGetArrayData(tempUtterance, processNextData);
|
|
18187
|
+
} else resetNextUtteranceData();
|
|
18188
|
+
}, [
|
|
18189
|
+
nextUtterance
|
|
18190
|
+
]);
|
|
18191
|
+
const playUtterance = async (utt)=>{
|
|
18192
|
+
if (DBReady && enableSpeechCaching !== false && utt) {
|
|
18193
|
+
const dataFromIndexedDB = await $d31b268c3b702355$var$DBManager.getSpeechData(`${locale}.${voice === null || voice === void 0 ? void 0 : voice.name}.${utt.text.replace($d31b268c3b702355$var$tagsRemoverRegex, "").substring(0, 50)}`);
|
|
17508
18194
|
if (dataFromIndexedDB) {
|
|
17509
18195
|
boundaryRef.current = dataFromIndexedDB.boundaries;
|
|
17510
18196
|
(0, $5f7f457957bd2c8d$export$c24886139fddc386)(dataFromIndexedDB.boundaries);
|
|
17511
18197
|
processData(dataFromIndexedDB.value, true);
|
|
17512
|
-
} else ponyfill === null || ponyfill === void 0 ? void 0 : ponyfill.speechSynthesis.synthesizeAndGetArrayData(
|
|
17513
|
-
} else ponyfill === null || ponyfill === void 0 ? void 0 : ponyfill.speechSynthesis.synthesizeAndGetArrayData(
|
|
18198
|
+
} else ponyfill === null || ponyfill === void 0 ? void 0 : ponyfill.speechSynthesis.synthesizeAndGetArrayData(utt, processData);
|
|
18199
|
+
} else ponyfill === null || ponyfill === void 0 ? void 0 : ponyfill.speechSynthesis.synthesizeAndGetArrayData(utt, processData);
|
|
17514
18200
|
};
|
|
17515
18201
|
const processData = (data, alreadyExistsInDB)=>{
|
|
17516
|
-
|
|
17517
|
-
|
|
17518
|
-
|
|
17519
|
-
|
|
17520
|
-
|
|
17521
|
-
|
|
17522
|
-
|
|
17523
|
-
|
|
17524
|
-
|
|
17525
|
-
|
|
17526
|
-
|
|
17527
|
-
|
|
17528
|
-
|
|
17529
|
-
|
|
17530
|
-
|
|
17531
|
-
|
|
18202
|
+
if (data === null || data === void 0 ? void 0 : data.byteLength) {
|
|
18203
|
+
const blob = new Blob([
|
|
18204
|
+
data
|
|
18205
|
+
], {
|
|
18206
|
+
type: "audio/mp3"
|
|
18207
|
+
});
|
|
18208
|
+
enableSpeechCaching !== false && !alreadyExistsInDB && DBReady && (boundaryRef === null || boundaryRef === void 0 ? void 0 : boundaryRef.current) && utterance && $d31b268c3b702355$var$DBManager.addSpeechData({
|
|
18209
|
+
id: `${locale}.${voice === null || voice === void 0 ? void 0 : voice.name}.${utterance.text.replace($d31b268c3b702355$var$tagsRemoverRegex, "").substring(0, 50)}`,
|
|
18210
|
+
value: data,
|
|
18211
|
+
boundaries: boundaryRef.current
|
|
18212
|
+
});
|
|
18213
|
+
const url = URL.createObjectURL(blob);
|
|
18214
|
+
if (audioRef === null || audioRef === void 0 ? void 0 : audioRef.current) {
|
|
18215
|
+
setPlayingBlob(true);
|
|
18216
|
+
audioRef.current.src = url;
|
|
18217
|
+
audioRef.current.play().catch((e)=>console.warn(e));
|
|
18218
|
+
}
|
|
18219
|
+
} else handleEmptyTextUtterance();
|
|
17532
18220
|
};
|
|
17533
18221
|
const resetData = ()=>{
|
|
17534
18222
|
boundaryRef.current = [];
|
|
@@ -17536,7 +18224,7 @@ const $d31b268c3b702355$var$RetorikSpeech = ({ ponyfill: ponyfill, onEnd: onEnd,
|
|
|
17536
18224
|
setPlayingBlob(false);
|
|
17537
18225
|
};
|
|
17538
18226
|
const handleStart = ()=>{
|
|
17539
|
-
if (appAvailable || loaderClosed) onStart
|
|
18227
|
+
if (appAvailable || loaderClosed) onStart === null || onStart === void 0 ? void 0 : onStart();
|
|
17540
18228
|
};
|
|
17541
18229
|
const handleEnd = ()=>{
|
|
17542
18230
|
if (appAvailable || loaderClosed) {
|
|
@@ -17591,7 +18279,8 @@ const $d31b268c3b702355$var$RetorikSpeech = ({ ponyfill: ponyfill, onEnd: onEnd,
|
|
|
17591
18279
|
preload: "auto",
|
|
17592
18280
|
muted: appAvailable || loaderClosed ? muted : true
|
|
17593
18281
|
}),
|
|
17594
|
-
!
|
|
18282
|
+
!isUsedOnBorne && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $9a1eaae49cbafe0e$export$2e2bcd8739ae039), {
|
|
18283
|
+
appAvailable: appAvailable,
|
|
17595
18284
|
handleValidation: primeRetorikSpeech
|
|
17596
18285
|
})
|
|
17597
18286
|
]
|
|
@@ -17681,6 +18370,9 @@ const $5679d80e89b3df01$export$4bf371fc4fa74a28 = (voices, locale, customVoice,
|
|
|
17681
18370
|
|
|
17682
18371
|
const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews })=>{
|
|
17683
18372
|
const cancel = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.cancel);
|
|
18373
|
+
const streamingReplyToId = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.streamingReplyToId);
|
|
18374
|
+
const streamingQueue = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.streamingQueue);
|
|
18375
|
+
const cancelRef = (0, $dWhh5$react.useRef)(false);
|
|
17684
18376
|
const currentPlaying = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.currentPlaying);
|
|
17685
18377
|
const currentReplyToId = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.currentReplyToId);
|
|
17686
18378
|
const endedActivities = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.endedActivities);
|
|
@@ -17694,6 +18386,7 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
17694
18386
|
const lastBotActivity = (0, $9acd31406c230961$export$b56465394e2b1287)((state)=>state.lastBotMessageActivity);
|
|
17695
18387
|
const toggleMicrophone = (0, $e37833e47d877d3a$export$2e2bcd8739ae039)();
|
|
17696
18388
|
const [utterance, setUtterance] = (0, $dWhh5$react.useState)(null);
|
|
18389
|
+
const [nextUtterance, setNextUtterance] = (0, $dWhh5$react.useState)(null);
|
|
17697
18390
|
const [utteranceEnded, setUtteranceEnded] = (0, $dWhh5$react.useState)(false);
|
|
17698
18391
|
const queuedActivitiesRef = (0, $dWhh5$react.useRef)([]);
|
|
17699
18392
|
const currentActivityRef = (0, $dWhh5$react.useRef)(null);
|
|
@@ -17703,6 +18396,7 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
17703
18396
|
const [ponyfill, setPonyfill] = (0, $dWhh5$react.useState)(undefined);
|
|
17704
18397
|
const refreshTimerRef = (0, $dWhh5$react.useRef)(null);
|
|
17705
18398
|
const [lastListTextPlayed, setLastListTextPlayed] = (0, $dWhh5$react.useState)("");
|
|
18399
|
+
const tempCurrentStreamingRef = (0, $dWhh5$react.useRef)(null);
|
|
17706
18400
|
/**
|
|
17707
18401
|
* Async function to retrieve a new token and assign it to the speechConfig inside ponyfill.speechSynthesis
|
|
17708
18402
|
* @param region string
|
|
@@ -17859,6 +18553,7 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
17859
18553
|
queuedActivitiesRef.current = [];
|
|
17860
18554
|
(0, $5f7f457957bd2c8d$export$d0df6aec4e971f52)(false);
|
|
17861
18555
|
setUtterance(null);
|
|
18556
|
+
setNextUtterance(null);
|
|
17862
18557
|
!isRetorikNews && setIsNewsView(route === (0, $71c613e2e831c34c$export$3565eb3d00ca5a74).News);
|
|
17863
18558
|
}, [
|
|
17864
18559
|
route
|
|
@@ -17869,7 +18564,8 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
17869
18564
|
* - no utterance is created while appAvailable isn't true
|
|
17870
18565
|
* - if during the waiting time, some activities were queued, when appAvailable comes to true, let's begin creating the utterances and playing them
|
|
17871
18566
|
*/ (0, $dWhh5$react.useEffect)(()=>{
|
|
17872
|
-
|
|
18567
|
+
var _queuedActivitiesRef_current;
|
|
18568
|
+
if (appAvailable && ((_queuedActivitiesRef_current = queuedActivitiesRef.current) === null || _queuedActivitiesRef_current === void 0 ? void 0 : _queuedActivitiesRef_current.length)) {
|
|
17873
18569
|
const activity = queuedActivitiesRef.current[0];
|
|
17874
18570
|
currentActivityRef.current = activity;
|
|
17875
18571
|
const params = {
|
|
@@ -17893,8 +18589,11 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
17893
18589
|
* - if an utterance is being played, set it to null to stop playing and prevent data in queue from being played
|
|
17894
18590
|
* - setting an utterance to null will trigger the handleUtteranceEnded method automatically
|
|
17895
18591
|
*/ (0, $dWhh5$react.useEffect)(()=>{
|
|
17896
|
-
|
|
17897
|
-
|
|
18592
|
+
cancelRef.current = cancel;
|
|
18593
|
+
if (cancel) {
|
|
18594
|
+
utterance ? setUtterance(null) : (0, $5f7f457957bd2c8d$export$d0df6aec4e971f52)(false);
|
|
18595
|
+
setNextUtterance(null);
|
|
18596
|
+
}
|
|
17898
18597
|
}, [
|
|
17899
18598
|
cancel
|
|
17900
18599
|
]);
|
|
@@ -17908,67 +18607,76 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
17908
18607
|
* - if an utterance is being played, process the new one (do nothing / put it in the queue / stop the current one and play the new one)
|
|
17909
18608
|
* - if an utterance has to be created, create it and set the utterance state
|
|
17910
18609
|
*/ (0, $dWhh5$react.useEffect)(()=>{
|
|
17911
|
-
if (ponyfill && voice) {
|
|
17912
|
-
|
|
17913
|
-
|
|
17914
|
-
|
|
17915
|
-
|
|
17916
|
-
|
|
18610
|
+
if (ponyfill && voice && (lastBotActivity === null || lastBotActivity === void 0 ? void 0 : lastBotActivity.id)) {
|
|
18611
|
+
let createNewUtterance = false;
|
|
18612
|
+
if (!lastBotActivity.replyToId) {
|
|
18613
|
+
var _queuedActivitiesRef_current;
|
|
18614
|
+
if (isNewsView) ;
|
|
18615
|
+
else if (currentPlaying || ((_queuedActivitiesRef_current = queuedActivitiesRef.current) === null || _queuedActivitiesRef_current === void 0 ? void 0 : _queuedActivitiesRef_current.length)) queuedActivitiesRef.current = [
|
|
18616
|
+
...queuedActivitiesRef.current,
|
|
18617
|
+
lastBotActivity
|
|
18618
|
+
];
|
|
18619
|
+
else if (endedActivities.length === 0 || endedActivities[endedActivities.length - 1] !== lastBotActivity.id) createNewUtterance = true;
|
|
18620
|
+
} else if (lastBotActivity.replyToId === streamingReplyToId) {
|
|
18621
|
+
var _lastBotActivity_value;
|
|
18622
|
+
if ((_lastBotActivity_value = lastBotActivity.value) === null || _lastBotActivity_value === void 0 ? void 0 : _lastBotActivity_value.streamingId) {
|
|
18623
|
+
(0, $5f7f457957bd2c8d$export$b03f86112d469252)(lastBotActivity);
|
|
18624
|
+
currentPlayingRef.current = lastBotActivity;
|
|
18625
|
+
} else queuedActivitiesRef.current = [
|
|
18626
|
+
...queuedActivitiesRef.current,
|
|
18627
|
+
lastBotActivity
|
|
18628
|
+
];
|
|
18629
|
+
} else if (!appAvailable) {
|
|
18630
|
+
if (!currentReplyToId) {
|
|
18631
|
+
(0, $5f7f457957bd2c8d$export$96a5fb7d9bf39b8a)(lastBotActivity.replyToId);
|
|
18632
|
+
queuedActivitiesRef.current = [
|
|
18633
|
+
lastBotActivity
|
|
18634
|
+
];
|
|
18635
|
+
} else if (currentReplyToId === lastBotActivity.replyToId) {
|
|
18636
|
+
var _queuedActivitiesRef_current1;
|
|
18637
|
+
let count = 0;
|
|
18638
|
+
if ((_queuedActivitiesRef_current1 = queuedActivitiesRef.current) === null || _queuedActivitiesRef_current1 === void 0 ? void 0 : _queuedActivitiesRef_current1.length) queuedActivitiesRef.current.forEach((activity)=>{
|
|
18639
|
+
if (activity.id === lastBotActivity.id) count++;
|
|
18640
|
+
});
|
|
18641
|
+
if (count === 0) queuedActivitiesRef.current = [
|
|
17917
18642
|
...queuedActivitiesRef.current,
|
|
17918
18643
|
lastBotActivity
|
|
17919
18644
|
];
|
|
17920
|
-
|
|
17921
|
-
|
|
17922
|
-
|
|
17923
|
-
|
|
17924
|
-
queuedActivitiesRef.current = [
|
|
17925
|
-
lastBotActivity
|
|
17926
|
-
];
|
|
17927
|
-
} else if (currentReplyToId === lastBotActivity.replyToId) {
|
|
17928
|
-
let count = 0;
|
|
17929
|
-
if (queuedActivitiesRef.current && queuedActivitiesRef.current.length > 0) queuedActivitiesRef.current.forEach((activity)=>{
|
|
17930
|
-
if (activity.id === lastBotActivity.id) count++;
|
|
17931
|
-
});
|
|
17932
|
-
if (count === 0) queuedActivitiesRef.current = [
|
|
17933
|
-
...queuedActivitiesRef.current,
|
|
17934
|
-
lastBotActivity
|
|
17935
|
-
];
|
|
17936
|
-
} else {
|
|
17937
|
-
(0, $5f7f457957bd2c8d$export$96a5fb7d9bf39b8a)(lastBotActivity.replyToId);
|
|
17938
|
-
queuedActivitiesRef.current = [
|
|
17939
|
-
lastBotActivity
|
|
17940
|
-
];
|
|
17941
|
-
}
|
|
17942
|
-
} else if (currentActivityRef === null || currentActivityRef === void 0 ? void 0 : currentActivityRef.current) {
|
|
17943
|
-
const returnCode = (0, $549323f244f4782c$export$2e2bcd8739ae039)(lastBotActivity, currentActivityRef.current, currentReplyToId, queuedActivitiesRef.current, endedActivities);
|
|
17944
|
-
const queue = [
|
|
17945
|
-
...queuedActivitiesRef.current
|
|
18645
|
+
} else {
|
|
18646
|
+
(0, $5f7f457957bd2c8d$export$96a5fb7d9bf39b8a)(lastBotActivity.replyToId);
|
|
18647
|
+
queuedActivitiesRef.current = [
|
|
18648
|
+
lastBotActivity
|
|
17946
18649
|
];
|
|
17947
|
-
switch(returnCode){
|
|
17948
|
-
case 0:
|
|
17949
|
-
break;
|
|
17950
|
-
case 1:
|
|
17951
|
-
// Add the activity to the queue
|
|
17952
|
-
queue.push(lastBotActivity);
|
|
17953
|
-
queuedActivitiesRef.current = queue;
|
|
17954
|
-
break;
|
|
17955
|
-
case 2:
|
|
17956
|
-
// Stop current activity and play the new one
|
|
17957
|
-
queuedActivitiesRef.current = [];
|
|
17958
|
-
createNewUtterance = true;
|
|
17959
|
-
break;
|
|
17960
|
-
}
|
|
17961
|
-
} else createNewUtterance = !endedActivities.includes(lastBotActivity.id);
|
|
17962
|
-
if (createNewUtterance) {
|
|
17963
|
-
currentActivityRef.current = lastBotActivity;
|
|
17964
|
-
(0, $5f7f457957bd2c8d$export$96a5fb7d9bf39b8a)(lastBotActivity.replyToId || "customReplyToIdIfNotPresent");
|
|
17965
|
-
const params = {
|
|
17966
|
-
activity: lastBotActivity,
|
|
17967
|
-
voice: getVoiceAfterCheckingActivityLocale(lastBotActivity.locale || locale),
|
|
17968
|
-
locale: lastBotActivity.locale || locale
|
|
17969
|
-
};
|
|
17970
|
-
setUtterance(checkActivityAndCreateUtterance(params));
|
|
17971
18650
|
}
|
|
18651
|
+
} else if (currentActivityRef === null || currentActivityRef === void 0 ? void 0 : currentActivityRef.current) {
|
|
18652
|
+
const returnCode = (0, $549323f244f4782c$export$2e2bcd8739ae039)(lastBotActivity, currentActivityRef.current, currentReplyToId, queuedActivitiesRef.current, endedActivities);
|
|
18653
|
+
const queue = [
|
|
18654
|
+
...queuedActivitiesRef.current
|
|
18655
|
+
];
|
|
18656
|
+
switch(returnCode){
|
|
18657
|
+
case 0:
|
|
18658
|
+
break;
|
|
18659
|
+
case 1:
|
|
18660
|
+
// Add the activity to the queue
|
|
18661
|
+
queue.push(lastBotActivity);
|
|
18662
|
+
queuedActivitiesRef.current = queue;
|
|
18663
|
+
break;
|
|
18664
|
+
case 2:
|
|
18665
|
+
// Stop current activity and play the new one
|
|
18666
|
+
queuedActivitiesRef.current = [];
|
|
18667
|
+
createNewUtterance = true;
|
|
18668
|
+
break;
|
|
18669
|
+
}
|
|
18670
|
+
} else createNewUtterance = !endedActivities.includes(lastBotActivity.id);
|
|
18671
|
+
if (createNewUtterance) {
|
|
18672
|
+
currentActivityRef.current = lastBotActivity;
|
|
18673
|
+
(0, $5f7f457957bd2c8d$export$96a5fb7d9bf39b8a)(lastBotActivity.replyToId || "customReplyToIdIfNotPresent");
|
|
18674
|
+
const params = {
|
|
18675
|
+
activity: lastBotActivity,
|
|
18676
|
+
voice: getVoiceAfterCheckingActivityLocale(lastBotActivity.locale || locale),
|
|
18677
|
+
locale: lastBotActivity.locale || locale
|
|
18678
|
+
};
|
|
18679
|
+
setUtterance(checkActivityAndCreateUtterance(params));
|
|
17972
18680
|
}
|
|
17973
18681
|
}
|
|
17974
18682
|
}, [
|
|
@@ -17976,6 +18684,24 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
17976
18684
|
ponyfill,
|
|
17977
18685
|
voice
|
|
17978
18686
|
]);
|
|
18687
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
18688
|
+
if (streamingReplyToId && streamingQueue.length) {
|
|
18689
|
+
const tempActivity = streamingQueue[0];
|
|
18690
|
+
const params = {
|
|
18691
|
+
activity: tempActivity,
|
|
18692
|
+
voice: getVoiceAfterCheckingActivityLocale(locale),
|
|
18693
|
+
locale: locale
|
|
18694
|
+
};
|
|
18695
|
+
(0, $5f7f457957bd2c8d$export$eb50624bfd363865)();
|
|
18696
|
+
setUtterance(checkSayAsWordsAndCreateUtterance(params));
|
|
18697
|
+
(0, $5f7f457957bd2c8d$export$b03f86112d469252)(undefined);
|
|
18698
|
+
currentPlayingRef.current = null;
|
|
18699
|
+
currentActivityRef.current = null;
|
|
18700
|
+
tempCurrentStreamingRef.current = tempActivity.text || null;
|
|
18701
|
+
}
|
|
18702
|
+
}, [
|
|
18703
|
+
streamingReplyToId
|
|
18704
|
+
]);
|
|
17979
18705
|
/**
|
|
17980
18706
|
* On utteranceEnded state change :
|
|
17981
18707
|
* - if the state is true, an utterance just ended, so the steps are :
|
|
@@ -18005,6 +18731,20 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
18005
18731
|
currentPlayingRef.current = currentActivityRef.current;
|
|
18006
18732
|
}
|
|
18007
18733
|
dispatchSpeechEvent(true);
|
|
18734
|
+
// Set next utterance to prepare synthesis data in order to improve fluidity
|
|
18735
|
+
if (streamingReplyToId && streamingQueue.length) {
|
|
18736
|
+
const tempActivity = streamingQueue[0];
|
|
18737
|
+
if (tempActivity.text) {
|
|
18738
|
+
const params = {
|
|
18739
|
+
activity: tempActivity,
|
|
18740
|
+
voice: getVoiceAfterCheckingActivityLocale(locale),
|
|
18741
|
+
locale: locale
|
|
18742
|
+
};
|
|
18743
|
+
const tempUtterance = checkSayAsWordsAndCreateUtterance(params);
|
|
18744
|
+
tempUtterance.text !== (nextUtterance === null || nextUtterance === void 0 ? void 0 : nextUtterance.text) ? setNextUtterance(tempUtterance) : setNextUtterance(null);
|
|
18745
|
+
} else setNextUtterance(null);
|
|
18746
|
+
} else setNextUtterance(null);
|
|
18747
|
+
(0, $5f7f457957bd2c8d$export$d300d9470f5679ba)(tempCurrentStreamingRef === null || tempCurrentStreamingRef === void 0 ? void 0 : tempCurrentStreamingRef.current);
|
|
18008
18748
|
};
|
|
18009
18749
|
/**
|
|
18010
18750
|
* On call :
|
|
@@ -18016,7 +18756,7 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
18016
18756
|
dispatchSpeechEvent(false);
|
|
18017
18757
|
};
|
|
18018
18758
|
const checkDictateState = ()=>{
|
|
18019
|
-
!preventExpectedInputHint && mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal && toggleMicrophone();
|
|
18759
|
+
!preventExpectedInputHint && mode === (0, $71c613e2e831c34c$export$9484bbecc3c49a2e).vocal && toggleMicrophone(true);
|
|
18020
18760
|
};
|
|
18021
18761
|
/**
|
|
18022
18762
|
* On call :
|
|
@@ -18025,7 +18765,7 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
18025
18765
|
* - if it wasn't a cancel, deal with the queue
|
|
18026
18766
|
* - if this was the last activity of the queue, check if the microphone has to be opened automatically (inputHint = expectingInput)
|
|
18027
18767
|
*/ const handleEnded = ()=>{
|
|
18028
|
-
let
|
|
18768
|
+
let futureUtterance = null;
|
|
18029
18769
|
const ended = [
|
|
18030
18770
|
...endedActivities
|
|
18031
18771
|
];
|
|
@@ -18037,13 +18777,27 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
18037
18777
|
(0, $5f7f457957bd2c8d$export$b03f86112d469252)(undefined);
|
|
18038
18778
|
(0, $5f7f457957bd2c8d$export$7cbdb517d05b0ba6)(ended);
|
|
18039
18779
|
// Check if the audio ended because of a cancel call
|
|
18040
|
-
if (
|
|
18780
|
+
if (cancelRef.current) {
|
|
18041
18781
|
queuedActivitiesRef.current = [];
|
|
18782
|
+
(0, $5f7f457957bd2c8d$export$614a80601162ec38)(null);
|
|
18783
|
+
tempCurrentStreamingRef.current = null;
|
|
18784
|
+
(0, $5f7f457957bd2c8d$export$87afd75c41a617d7)([]);
|
|
18042
18785
|
(0, $5f7f457957bd2c8d$export$d0df6aec4e971f52)(false);
|
|
18786
|
+
} else if (streamingQueue.length) {
|
|
18787
|
+
const tempActivity = streamingQueue[0];
|
|
18788
|
+
const params = {
|
|
18789
|
+
activity: tempActivity,
|
|
18790
|
+
voice: getVoiceAfterCheckingActivityLocale(locale),
|
|
18791
|
+
locale: locale
|
|
18792
|
+
};
|
|
18793
|
+
(0, $5f7f457957bd2c8d$export$eb50624bfd363865)();
|
|
18794
|
+
futureUtterance = checkSayAsWordsAndCreateUtterance(params);
|
|
18795
|
+
tempCurrentStreamingRef.current = tempActivity.text || null;
|
|
18043
18796
|
} else {
|
|
18044
|
-
var _currentPlayingRef_current;
|
|
18797
|
+
var _queuedActivitiesRef_current, _currentPlayingRef_current;
|
|
18798
|
+
(0, $5f7f457957bd2c8d$export$614a80601162ec38)(null);
|
|
18045
18799
|
// Launch next activity in the queue and remove it from the queue
|
|
18046
|
-
if (
|
|
18800
|
+
if ((_queuedActivitiesRef_current = queuedActivitiesRef.current) === null || _queuedActivitiesRef_current === void 0 ? void 0 : _queuedActivitiesRef_current.length) {
|
|
18047
18801
|
const activity = queuedActivitiesRef.current[0];
|
|
18048
18802
|
currentActivityRef.current = activity;
|
|
18049
18803
|
const params = {
|
|
@@ -18051,7 +18805,7 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
18051
18805
|
voice: getVoiceAfterCheckingActivityLocale(activity.locale || locale),
|
|
18052
18806
|
locale: activity.locale || locale
|
|
18053
18807
|
};
|
|
18054
|
-
|
|
18808
|
+
futureUtterance = checkActivityAndCreateUtterance(params);
|
|
18055
18809
|
const queue = [
|
|
18056
18810
|
...queuedActivitiesRef.current
|
|
18057
18811
|
];
|
|
@@ -18060,12 +18814,13 @@ const $ad561f5c61e38c20$var$SynthesisManager = ({ isRetorikNews: isRetorikNews }
|
|
|
18060
18814
|
} else if ((currentPlayingRef === null || currentPlayingRef === void 0 ? void 0 : (_currentPlayingRef_current = currentPlayingRef.current) === null || _currentPlayingRef_current === void 0 ? void 0 : _currentPlayingRef_current.inputHint) === "expectingInput") checkDictateState();
|
|
18061
18815
|
}
|
|
18062
18816
|
currentPlayingRef.current = null;
|
|
18063
|
-
setUtterance(
|
|
18817
|
+
setUtterance(futureUtterance);
|
|
18064
18818
|
};
|
|
18065
18819
|
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $d31b268c3b702355$export$2e2bcd8739ae039), {
|
|
18066
18820
|
ponyfill: ponyfill,
|
|
18067
18821
|
appAvailable: appAvailable,
|
|
18068
18822
|
utterance: utterance,
|
|
18823
|
+
nextUtterance: nextUtterance,
|
|
18069
18824
|
onStart: handleUtteranceStart,
|
|
18070
18825
|
onError: handleUtteranceEnd,
|
|
18071
18826
|
onEnd: handleUtteranceEnd
|
|
@@ -18294,6 +19049,52 @@ var $9e19251bfed127fc$export$2e2bcd8739ae039 = $9e19251bfed127fc$var$SpeechManag
|
|
|
18294
19049
|
|
|
18295
19050
|
|
|
18296
19051
|
|
|
19052
|
+
|
|
19053
|
+
const $fa132146e65c60c8$var$FocusManager = ()=>{
|
|
19054
|
+
const { currentDeviceType: currentDeviceType } = (0, $6acc5d637072b42e$export$3abe3478af3cb63b)();
|
|
19055
|
+
const muted = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.muted);
|
|
19056
|
+
const activeRecognitionState = (0, $5f7f457957bd2c8d$export$f299240efcda25a2)((state)=>state.activeRecognitionState);
|
|
19057
|
+
const focusedRef = (0, $dWhh5$react.useRef)(true);
|
|
19058
|
+
const oldMutedRef = (0, $dWhh5$react.useRef)(muted);
|
|
19059
|
+
const recognitionStateRef = (0, $dWhh5$react.useRef)(activeRecognitionState);
|
|
19060
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
19061
|
+
focusedRef.current && (oldMutedRef.current = muted);
|
|
19062
|
+
}, [
|
|
19063
|
+
muted
|
|
19064
|
+
]);
|
|
19065
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
19066
|
+
recognitionStateRef.current = activeRecognitionState;
|
|
19067
|
+
}, [
|
|
19068
|
+
activeRecognitionState
|
|
19069
|
+
]);
|
|
19070
|
+
const handleVisibilityChange = ()=>{
|
|
19071
|
+
if (document.visibilityState === "visible") {
|
|
19072
|
+
focusedRef.current = true;
|
|
19073
|
+
oldMutedRef.current === false && (0, $5f7f457957bd2c8d$export$a1680ba91cc9be33)(false);
|
|
19074
|
+
} else {
|
|
19075
|
+
focusedRef.current = false;
|
|
19076
|
+
(0, $5f7f457957bd2c8d$export$d0df6aec4e971f52)(true);
|
|
19077
|
+
(0, $5f7f457957bd2c8d$export$a1680ba91cc9be33)(true);
|
|
19078
|
+
recognitionStateRef.current === (0, $71c613e2e831c34c$export$3f0071308968cd80).Listening && (0, $5f7f457957bd2c8d$export$45913366c4ba414f)((0, $71c613e2e831c34c$export$3f0071308968cd80).ForceClosing);
|
|
19079
|
+
}
|
|
19080
|
+
};
|
|
19081
|
+
(0, $dWhh5$react.useEffect)(()=>{
|
|
19082
|
+
currentDeviceType === (0, $71c613e2e831c34c$export$ec1e04e4e5ef8233).mobile && document.addEventListener("visibilitychange", handleVisibilityChange);
|
|
19083
|
+
return ()=>{
|
|
19084
|
+
document.removeEventListener("visibilitychange", handleVisibilityChange);
|
|
19085
|
+
};
|
|
19086
|
+
}, [
|
|
19087
|
+
currentDeviceType
|
|
19088
|
+
]);
|
|
19089
|
+
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {});
|
|
19090
|
+
};
|
|
19091
|
+
var $fa132146e65c60c8$export$2e2bcd8739ae039 = $fa132146e65c60c8$var$FocusManager;
|
|
19092
|
+
|
|
19093
|
+
|
|
19094
|
+
|
|
19095
|
+
|
|
19096
|
+
|
|
19097
|
+
|
|
18297
19098
|
const $184baaa1aacf568a$export$ad7b40b81d5409c = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO4AAADuCAYAAAA+7jsiAAAABHNCSVQICAgIfAhkiAAAF/VJREFUeF7tXQkUdVMVzixjGSLCrwwViZCIIqm0pEJRMrRSmSIqJZZVi0pL0aCkxJ+xiFpNf0UkKmT9izQYs8xT5nms77Pes+5/3fveHc6+b+/7vr3WXu+9+87ZZ59vv++de8841wskk0bglXDgNQNdBa8rQBeDLpLRBfH+SejjmdcH8f62gd6E12ugf4NePukKqXx7BOayL0IlZBBYAu8/CH0PlCRdyQgdEpl6PvTbA3IbFSWzk0BAxLVFnfhuAv0q9FXQxW2LK7XO1vlG6Fegp0L/NyE/VGwiBETcREBmzMyH9+tCfwJdDjpv+iJaWXxm0ALvitcLoY+1sqbME0FAxE0H+4ow9VnonulMdmJpFkr5BPS6TkpTIUkQEHHbw7geTBwPZQdTE+Ft6/XQOwYt4T/wegX0bui90Hug90HZci+a0WXxfk3oGlC+fwmUz81s8ZvItcj0EeifmmRWnm4REHGb4/12ZD0KymfXOkKCng3984Ak/6qTuULaGUjzRuhG0C2hK1fIk01yKz4cAD2lZj4l7xABEbc+2Kshy89rEpYkPRbKXl52EnUpSw2IvBNet61RMIeXPgS9pEYeJe0IARG3HtBsKd9aMcstSPcx6AVQ9up6kAXgxOuh34XyNruKXIpEm0IfrpJYabpBQMSthvO+SHYEdNzz49NIczT0kAFZPQ+7cILHPtAvVKgXe6IPHaSthphSmSIg4o6Gl51BF0FfPSYKD+F7jtV+GcofeSSZG87uAj0S+qIxjnNSx+ug/41UwT762mfivhABewLKVrCJvAOZOFQySh7Bl2xdv96kAId53g+f+Cw+jsA7IA3HqSUTQqDPxGXvLTtm3gv9RU18T0f6943Jcxy+5zOs59vhmtV+LvnheMcx6VHCDrdNoU81LUT5miPQZ+JyQv78A2i+j9ePV4CJk/k5hsrx0DLhRP5toDdXsBc5CR8TOCT0rhGV4C0zx5HvjFzRiL73mbicwMBJ/UO5Cm/4fMbb2yJZFRdnQ9lpUyY744uTIga6hc8k7qg7Fv5Bbgxl77OkIwT6TFyOQ+ZbTs7L5aT//I9se1xj6zJPCe60xUkNd3UUF2/FcHEEx6BfW+IYO+T43HuGN8f76k+ficve4A0KAsdnUq5j5SQKEvUDUK5/LZPv4AvO5e3js2yd3zV/K3tBuUywTD6FL9g7LTFGoM/E/RGw461tU2FvNGcbndbUQE/z8c+Qk0rKxrR3x3fsmZYYItBn4nKVDlvLJsLnNj7zctxS8nwElsQlLkooGzbiYgUuvJAYIdBn4nJNbNMOk7WQl73LknIEuFrpMih7lYvkw7g4UwDaINBn4hKxps+lvA3U+OT43xxnXbEvYf2SpJqoMR7DRin6TtxHgQrHZusKJ+Nz1pVkPAKjWl7+cXIzvKvHm1GKOgj0nbhciD5u+l4RXt/ExU/WAXLK07Ll5TNv0dpfririMzH7DSSJEOg7cbko/KUNsSJ594M2vd1uWGzobGV483aaC/uFZaLw9p24nJ7IrWWaCjuoNoRqLWo1BNnyEquix5MDcZ1zoCUJEOg7cblqZ/+WOPE5mYvPuReUZDwC7GUuw4r7cgnH8RiOTdF34nLj8Z+NRaFagjcjmTZSq4YVZ5p9qyAp54kvXM2EUo1CoO/E5Rxb7pCYQrhogcsEJdUQOBPJuIoqLyfjAmekSVog0Hfisn7szRy35cwoCP+NL9lqcw4uySuphgDngROv/OkN7KDizphcrSVpiEDfiUtYloZy47Ysebmahcr5yHyG/QuUt8FcAcMxR47h8pAtvqontOGPC9nYsUds83IDLsxoblY5p4G4jDLryW1VedoAp+mxJRgSUsS05QFvjXcsKOLTuNaXLX9sESywPi3E7RxYFTgHAg/gE3fUyArvZhaCNt0TbKohFnGnOvydVZ4nKvymoDSt320YAhG3IXDKVhsBPtfyUSUv3CpIE1xqwini1gRMyRsjwPXN7EnO/+YOxrUvNbY6pRlF3CkN/ISqXdbqcg9sndNbIygibg2wlLQ1AsvAwu0FVrbCtV+3tj5FBkTcKQq2k6ryAO2X53zhMy57nTU0VzFIIm5FoJQsGQJcrcVVW1khYXkwt84kqgiziFsRKCVLhgB3zOA0VC4BzMof8WGzZKX03JCI2/MAO60eT7zn6YZZYecUO6kkFRAQcSuApCTJEeBtMQ9ly4uWTlaEWsStCJSSJUfgEljM7w55Lq5tnrykHhpMQVza4Kl4Zefu9BA20ypxVRK177IPKsh9vbKiNc8Vo96UuCvAPg9+/jx0RsWylKw6Auxl/QP0UOjl0PurZw2Tkpv4cXO5vHA7V63VHRPGusRdE/ZmQnlKgKQ7BLj87RBo2RGh3XmStqTrC/74ueXNvmmL6Z+1OsQ9EdXXliOT+w2wFd4a+qvJuZC85GNgkYeEZeVifHhD8pJ6ZrAqcf+OenOHPsnkEeAwyucm70YSD94CK3wkyAp3JOE6XckIBKoQl3su8blD4gcBEjc/DurHu3qeFE1zfBlMcLshSQkC44hbtlMfzbHn83QoB9MfhHIPJ0l7BNg7zzNo+azH7XbyM4xYAn/s3M+Jt5XRhYsOuPggK9vhA397khIERhG3bKMvmuLZpzwDVWKLAM89+id0uYJi7sI1TmSILrNRgXVylTgKn9tuZB8dl5H+jyJu2S3yR2HxuF6j4q9y3CmRf6R54d3OEf7creXRV5A6/8zOHTc5i0pSgkAZcV+L9NwNMS/sBeRJ75JuEeDt8k3QfMt7W8G1bj1rXxrnA8zKmeHzLZ9zJTWJy4F/bimSFa6Z5P5AkskgwJUznBKYl1VwgWtco0rZvOVx/S9R65vE7zJwONCfX6mhM2OTQN7KCFuifKvbhx5mbtGa74RbDNfY6SkpQKCIuNzxv+g0du5Q8JBjFLeAb2dBud6zibDOyzuvY1EvP/sb2O8QWTh2mz+ak7tkcGaVpCJxiw7K4lAPFxJ43ry6bMf8OoFfC4l5Jq5XOQiOHZZz7mx8fptXhyv6xbnYbGGzwpVDl1bMP3XJilrcomcOEnYB58TlnQJ7KNlq1hXicAbU+9jhLvBxZq5y7ETMD6fUrf+k098DB16cc4In2P910o55Lb9PxPWKcUq/doWxE3pIXC7nWyJXr03w+cKU4PXJlogbK5p9JS43iVsyFwrthjHityniirgeEOAssPyh4VyAcJ4H5zz6IOJ6jEq5T31tce9ElXmOcVY4SnBOrPB0562I2x3WKUrqK3GLWlzuPVU04SQFjuFtiLixQthX4t6HMHAYMisaDtIzbix2jvC2r8TlxJ6Fc/VeHZ+v7k3kElekbYtLcPeDcnKGJB0CV8LU16D5Nc59JS43Q+c8gaxwM7miA8LSoRzYUlvi3oy6N5nwEBiyzlznZAvu85WVvhL3KVQyv70vW+C+bY6X7MfTlrhFvYHJnJtyQ4ej/gdOAXE5t7xoH2mtDhpBAAvicueCH0PZ4aDtbEb/+3BiPaf6cbolT7HLyrQQl3Xm5nDEgWtwqVx7zJMOJCUIpCQub3f4XKKjEuv/3BiHvaHcZ2oo00Tc+ohNeY6UxOX+uMdOOZ5tq8/VMMPN5kXctmj2OH8q4rI7n+t1Je0Q2AbZhyuURNx2WPY6dyri3giUVuo1Ut1ULrsWWsTtBvOQpaQi7rWo/aohEfDn9HCDcBHXX2zceCTiugnFc46IuP5i4s4jEdddSJ49pYCiFtdfbNx4JOK6CYVaXH+h8OuRiOsvNmpx/cXEnUcirruQ6FbZX0j8eSTi+ouJWlx/MXHnkYjrLiRqcf2FxJ9HIq6/mKjF9RcTdx6JuO5CohbXX0j8eSTi+ouJWlx/MXHnkYjrLiRqcf2FxJ9HIq6/mKjF9RcTdx6JuO5CohbXX0j8eSTi+ouJWlx/MXHnkYjrLiRqcf2FxJ9HIq6/mKjF9RcTdx6JuO5CohbXX0j8eSTi+ouJWlx/MXHnkYjrLiRqcf2FxJ9HIq6/mKjF9RcTdx6JuO5CohbXX0j8eSTi+ouJWlx/MXHnkYjrLiRqcf2FxJ9HIq6/mKjF9RcTdx6JuO5CohbXX0j8eSTi+ouJWlx/MXHnkYjrLiRqcf2FxJ9HIq6/mKjF9RcTdx6JuO5CohbXX0j8eSTi+ouJWlx/MXHnkYjrLiRqcf2FxJ9HIq6/mKjF9RcTdx6JuO5CohbXX0j8eSTi+ouJWlx/MXHnkYjrLiRqcf2FxJ9HIq6/mKjF9RcTdx6JuO5CohbXX0j8eSTi+ouJWlx/MXHnkYjrLiRqcf2FxJ9HIq6/mKjF9RcTdx6JuO5CohbXX0j8eSTi+ouJWlx/MXHnkYjrLiRqcf2FxJ9HIq6/mKjF9RcTdx6JuO5CohbXX0j8eSTi+otJ0xZ3C1RlH+h60GX9VUseDRB4Bq+3Q2+B/hp6DPTOuuiIuHURs09fl7iz4dLF0D3sXVMJRghcAbvvhN5c1b6IWxWp7tLVJe4lcG1d6DzduaiSjBA4C3a3gw5/A6XFiLhGEWhhti5x2eLeAd2yRZnK6geBG+DKKtCnRrkk4voJ2NCTusS9DBnXgX4cegB0GejC/qolj2ogcN2AvGpxa4A26aR1iXstHF510k6r/MoILIGUa0D3gm414k/2dHy3fZlVtbiV8e4sYV3i0rF5oU935qEKSoXA3DB0NLSsY3EDfMc+jOeJiJsqBOnsNCEueyRnpXNBljpGYEeUd3JBmdfg2moibsfRaFhcE+KytX0R9KGGZSrb5BFgy8vb57ysjQuX5y+qxZ18wPIeNCEubTwGZc/yhVASeeyQgr+qT71HDwCBRXMofAmfDxZx/f82mhJ3WDPOzKFKukWAQ3JvhrJHuKl8HRn3z2V+FJ8XEnGbQtpdvrbE7c5TlZRH4Je4sHULWF6IvI8U5J8f157MXtetcguUjbKmIO718I3/1JL0CCwCkyuWmD0X1zdvUSRnvz0BZW9zVth/cb+I2wLZDrK2IS6ny53ZgY/TXgSJtRv02BwQKYj7OGzmp69yUs0cCxHU4vr7CTYlLgf27/VXnV57tBxqd1OmhRRxex3u0ZVrQlz2Jv92ijGbZNV3QeEzBw6IuJOMxITLbkLc+eDzyEnpE65Tn4vnM++DIm6fQ1ytbnWJ+x+YfUU100plgACnmw57fNXiGgAcxWRd4g5XB0WpX9/8ZEfVcJ64iNu36Naoj4hbAywHSUVcB0Hw4IKI6yEK1X0Qcatj1euUIm6s8Iq4seJl5q2IawatiWER1wTWeEZF3FgxE3FjxcvMWxHXDFoTwyKuCazxjIq4sWIm4saKl5m3Iq4ZtCaGRVwTWOMZFXFjxUzEjRUvM29FXDNoTQyLuCawxjMq4saKmYgbK15m3oq4ZtCaGBZxTWCNZ1TEjRUzETdWvMy8FXHNoDUxLOKawBrPqIgbK2Yibqx4mXkr4ppBa2JYxDWBNZ5RETdWzETcWPEy81bENYPWxLCIawJrPKMibqyYibix4mXmrYhrBq2JYRHXBNZ4RkXcWDETcWPFy8xbEdcMWhPDIq4JrPGMirixYibixoqXmbcirhm0JoZFXBNY4xkVcWPFTMSNFS8zb0VcM2hNDIu4JrDGMyrixopZXeLujepdBT27oJo8F1fn48aK/3PeirixAleHuDugaqdBedYQDwvLi4gbK/ZzeCvixgpeHeIehKodBn0Gmj91nrUWcWPFXsQNHC8RN3DwUrquFjclmva2RFx7jEOUIOKGCNNzToq4seJl5q2IawatiWER1wTWeEZF3FgxE3FjxcvMWxHXDFoTwyKuCazxjIq4sWIm4saKl5m3Iq4ZtCaGRVwTWOMZFXFjxUzEjRUvM29FXDNoTQyLuCawxjMq4saKmYgbK15m3oq4ZtCaGBZxTWCNZ1TEjRUzETdWvMy8FXHNoDUxXIe4m8GDc6FPQBco8Earg0xC1I1REbcbnFOVUoe4LHMN6K3Qe0XcVCHwYUfE9RGHql7UJe4ou2pxq6LuMJ2I6zAoI1wScWPFy8xbEdcMWhPDIq4JrPGMirixYibixoqXmbcirhm0JoZFXBNY4xkVcWPFTMSNFS8zb0VcM2hNDIu4JrDGMyrixoqZiBsrXmbeirhm0JoYFnFNYI1nVMSNFTMRN1a8zLwVcc2gNTEs4prAGs+oiBsrZiJurHiZeSvimkFrYljENYE1nlERN1bMRNxY8TLzVsQ1g9bEsIhrAms8oyJurJiJuLHiZeatiGsGrYlhEdcE1nhGRdxYMRNxY8XLzFsR1wxaE8Mirgms8YyKuLFiJuLGipeZtyKuGbQmhkVcE1jjGRVxY8VMxI0VLzNvRVwzaE0Mi7gmsMYzKuLGipmIGyteZt6KuGbQmhgWcU1gjWdUxI0Vs9DEvRNYLxMLb5fevhpe/XPg2eF4PTDn5a74fELu2mX4vI7L2kyHU6GJ+xRitCD06emIlVkt94PlI2sSl+fQLG/mkQyPQ2A+JOAhXhQe6LX5uAwjvu/8CBL6cgH0TS2cnvasiwEAHgTFf3BK1RaXaReCPjrtAE6o/oug3AcjE5e+Hw/dDTp8TpsQluGKXWnwb/3yjOd1iLsX8n03XK374fC3UI1PRCcu/f8v9CLo+WoFxv4ySdT1oEV3KnWIy4JWhV47tkQlSInARjD254zBkLfKKQGRrXq3ykO82Op+BvqIADRF4MWw/n3odrlSwhCXjm5qCtF0Gn8G1Z4BvTlX/V3xOd+rXITQY7hIG5L0CLADqeg0eZaUgrjs6Br2cwy9Z//H8Dn62WtzFdTrJbh2R+46e4vpbFGvMSsiSYsA+wiKiFeVuGm9kbWqCJyKhDtWTVyQbmlc49BqXubNcy8FcVv4qaw1ERhHXAb9duj90OEQRc0ilLwBAuQRh+X2hM7RMta0dSLS75TLw0Z02bwdEbcmshNOXkbcW+DXNtBLJuyfim+HAIf0OB8iKxzb/0ZfiXsoKrYhdC1o01t3tlJ/g54B/Wk7/M1ylxGXwX7crFQZ7gKBWSjkHQUFrYZr1/SNuOujQr+DspcvpXidTFJEXPYgL5yy8rLVOQJHo0SOxeflPFx4S5E3kW+V2bI+BB3eWrBDh/N2Of2yiSyHTNmpg3/E582aGDLMU0RcFncSdGfDcmXaBoHFYfZPUN4pFskMXLyhb8Tl7ey2g0rtjtcfQNsOgXDe6RXQ1Qd2SVwS2IuUEZf+8Vb5Z1De6s+GPuzFafkxBwIr4BMf6w6BLgXND/0ME38Zbw4qwy5yi3s3KrUE9EroqxL+OIjJk1C26MdBP5rQdltTo4jb1rby+0HgHLiyxSh3ohKXA9LsTKIU9rq1jAFbK07cZ2fV61vaSpldxE2Jpk9bZ8Gt4Z1kqYdRicuWli0uZQ/o9xLHYEhc3nKum9h2G3O7IPPMNgaU1zUC+8O7o6p4WERcPjDfl8vMZ8f5oZ7W2w7JdSH82qRKZWuk4eQFPu+eBv1gjXzWSfnMc5h1IbLfOQLHoMQDoOxsrSRFxM0uDM4aIaEfqGS1m0R8DhguWt4Y77OrNNp4kB1P4yTyM9sYS5z357D37sQ2Za5bBEjOf0Evhx47eF97LXURcVkNGs+PDXKsabjusNuqFpfGHrm7Ml/dhPe/h7JjqYlwKIh/AMMxYQ56c/Dbk3Ba3UtLHOIifN7WExPejWhNtKfIJfaljLhfRDnsrs4Kybxo4vLbmvswDHB5FSdhpxSuKea4btM/gZS+DG1tiTe/KTG8D67zj1VktUDeoc0y4r4Gvv69wN8f4hp3uPAkfPbmov0VoVxdUVancT5zHJQT9H8JZU+1J+Ef043QotaWY9i85ZJMEQKjfuS8Dy8aHyVxSWBJNwiQtPxj4m4LefHWedYNIiplZOvE56VLSzDiYu6PQZtOLxT01RB4JZLx9njlguR8luXaackUIjDutvIUYFI2HMJby99COYbKvYD5XChphwCnv5Gkm0K5IPsNJeb4h8nOtKJF1+08UO4QCIwjLivBKYXDubshKjUFTr4NdTx7CuqpKpYgUIW4fMbi8y53EZRMFgH2Gu8APX2ybqj0SSNQhbj0kenYEfL+wftJ+z2N5XPdLY8oKVzmNY2ATHOdqxJ3iBH3vuHMorWnGbSO634PyuNeRJ+Geppy2jEMKi6LQF3iDvNykj8n93OrDY4t8sAvHsUgaYcAb4U50YU9xtwUgLsGeppy2a52yp0Mgf8DujwcdkiK8zwAAAAASUVORK5CYII=";
|
|
18298
19099
|
|
|
18299
19100
|
|
|
@@ -18392,14 +19193,16 @@ const $4b02e31a53a4d2e7$var$SendTypingIndicator = ()=>{
|
|
|
18392
19193
|
const listOpened = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.listOpened);
|
|
18393
19194
|
const retorikEvent = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.retorikEvent);
|
|
18394
19195
|
const userIsTyping = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.userIsTyping);
|
|
19196
|
+
const userIsSwiping = (0, $70e3d65f5a106231$export$77e4cc5334565f28)((state)=>state.userIsSwiping);
|
|
18395
19197
|
const dataRef = (0, $dWhh5$react.useRef)(false);
|
|
18396
19198
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
18397
|
-
dataRef.current = !loaderClosed || lastRecognitionInterim !== "" || userIsTyping || speaking || currentSubView !== (0, $71c613e2e831c34c$export$f05d0fed0593ead7).none || route === (0, $71c613e2e831c34c$export$3565eb3d00ca5a74).News || retorikEvent === (0, $71c613e2e831c34c$export$4f7cd669585dc69f).DetailViewOpen || listOpened;
|
|
19199
|
+
dataRef.current = !loaderClosed || lastRecognitionInterim !== "" || userIsTyping || userIsSwiping || speaking || currentSubView !== (0, $71c613e2e831c34c$export$f05d0fed0593ead7).none || route === (0, $71c613e2e831c34c$export$3565eb3d00ca5a74).News || retorikEvent === (0, $71c613e2e831c34c$export$4f7cd669585dc69f).DetailViewOpen || listOpened;
|
|
18398
19200
|
}, [
|
|
18399
19201
|
appAvailable,
|
|
18400
19202
|
loaderClosed,
|
|
18401
19203
|
lastRecognitionInterim,
|
|
18402
19204
|
userIsTyping,
|
|
19205
|
+
userIsSwiping,
|
|
18403
19206
|
speaking,
|
|
18404
19207
|
currentSubView,
|
|
18405
19208
|
route,
|
|
@@ -18455,6 +19258,7 @@ const $bbc725a084d1069a$var$RetorikContainer = ({ parent: parent, isConfigUpdate
|
|
|
18455
19258
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $9e19251bfed127fc$export$2e2bcd8739ae039), {
|
|
18456
19259
|
isRetorikNews: parent === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).news
|
|
18457
19260
|
}),
|
|
19261
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $fa132146e65c60c8$export$2e2bcd8739ae039), {}),
|
|
18458
19262
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $9242b50f1c1199a7$export$2e2bcd8739ae039), {
|
|
18459
19263
|
fullSize: parent !== (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget && props.config.fullSize !== false,
|
|
18460
19264
|
width: props.width,
|
|
@@ -18559,7 +19363,9 @@ const $ba3150a69d33f468$var$processJson = (json, retorikProps, baseAddress)=>{
|
|
|
18559
19363
|
pagination: undefined,
|
|
18560
19364
|
remote: undefined,
|
|
18561
19365
|
companyName: json.companyName,
|
|
19366
|
+
companyNameLocalized: json.companyNameLocalized,
|
|
18562
19367
|
subCompanyMessage: json.subCompanyMessage,
|
|
19368
|
+
subCompanyMessageLocalized: json.subCompanyMessageLocalized,
|
|
18563
19369
|
loaderInformationTexts: {
|
|
18564
19370
|
text: {
|
|
18565
19371
|
top: json.textModeHomeTitle,
|
|
@@ -18570,6 +19376,16 @@ const $ba3150a69d33f468$var$processJson = (json, retorikProps, baseAddress)=>{
|
|
|
18570
19376
|
bottom: json.voiceModeHomeSubtitle
|
|
18571
19377
|
}
|
|
18572
19378
|
},
|
|
19379
|
+
loaderInformationTextsLocalized: {
|
|
19380
|
+
text: {
|
|
19381
|
+
top: json.textModeHomeTitleLocalized,
|
|
19382
|
+
bottom: json.textModeHomeSubtitleLocalized
|
|
19383
|
+
},
|
|
19384
|
+
vocal: {
|
|
19385
|
+
top: json.voiceModeHomeTitleLocalized,
|
|
19386
|
+
bottom: json.voiceModeHomeSubtitleLocalized
|
|
19387
|
+
}
|
|
19388
|
+
},
|
|
18573
19389
|
hideRetorikLogo: json.hideRetorikLogo,
|
|
18574
19390
|
baseMenu: retorikProps === null || retorikProps === void 0 ? void 0 : (_retorikProps_menuConfig = retorikProps.menuConfig) === null || _retorikProps_menuConfig === void 0 ? void 0 : _retorikProps_menuConfig.baseMenu,
|
|
18575
19391
|
customMenu: retorikProps === null || retorikProps === void 0 ? void 0 : (_retorikProps_menuConfig1 = retorikProps.menuConfig) === null || _retorikProps_menuConfig1 === void 0 ? void 0 : _retorikProps_menuConfig1.customMenu,
|
|
@@ -18835,6 +19651,68 @@ var $9569bd86e01b07fd$export$2e2bcd8739ae039 = $9569bd86e01b07fd$var$Loader;
|
|
|
18835
19651
|
|
|
18836
19652
|
|
|
18837
19653
|
|
|
19654
|
+
|
|
19655
|
+
|
|
19656
|
+
|
|
19657
|
+
const $9b7229e19d910060$export$284b58786299e6c5 = async ({ configurationData: configurationData, addressData: addressData })=>{
|
|
19658
|
+
if (configurationData) {
|
|
19659
|
+
if (typeof configurationData.userConsent === "boolean") return {
|
|
19660
|
+
displayGDPR: false,
|
|
19661
|
+
userConsent: configurationData.userConsent
|
|
19662
|
+
};
|
|
19663
|
+
else return {
|
|
19664
|
+
displayGDPR: true,
|
|
19665
|
+
data: configurationData
|
|
19666
|
+
};
|
|
19667
|
+
} else {
|
|
19668
|
+
var _addressData_baseURI;
|
|
19669
|
+
const baseAddress = `${((_addressData_baseURI = addressData.baseURI) === null || _addressData_baseURI === void 0 ? void 0 : _addressData_baseURI.length) ? (0, $82b306c512e33035$export$2e2bcd8739ae039)(addressData.baseURI) : (0, $c6d7669b9282aea4$export$2e2bcd8739ae039)(addressData.prefix)}/${addressData.tenant ? addressData.tenant + "/" : ""}`;
|
|
19670
|
+
const fullAddress = `${baseAddress}api/gdpr/settings`;
|
|
19671
|
+
const response = await fetch(fullAddress).then((res)=>res.json()).catch((error)=>{
|
|
19672
|
+
console.warn(error);
|
|
19673
|
+
return undefined;
|
|
19674
|
+
});
|
|
19675
|
+
if (response) {
|
|
19676
|
+
// Format response data to get a GDPR-type object
|
|
19677
|
+
const responseToData = {
|
|
19678
|
+
title: {},
|
|
19679
|
+
message: {},
|
|
19680
|
+
link: {},
|
|
19681
|
+
linkURL: undefined,
|
|
19682
|
+
buttonAccept: {},
|
|
19683
|
+
buttonRefuse: {},
|
|
19684
|
+
messageAccepted: {},
|
|
19685
|
+
messageRefused: {}
|
|
19686
|
+
};
|
|
19687
|
+
for(const locale in response.localizationContainer){
|
|
19688
|
+
var // Title
|
|
19689
|
+
_response_localizationContainer_locale, _response_localizationContainer_locale1, // Message
|
|
19690
|
+
_response_localizationContainer_locale2, _response_localizationContainer_locale3, // Link
|
|
19691
|
+
_response_localizationContainer_locale4, _response_localizationContainer_locale5, // Message accepted
|
|
19692
|
+
_response_localizationContainer_locale6, _response_localizationContainer_locale7, // Message refused
|
|
19693
|
+
_response_localizationContainer_locale8, _response_localizationContainer_locale9;
|
|
19694
|
+
((_response_localizationContainer_locale = response.localizationContainer[locale]) === null || _response_localizationContainer_locale === void 0 ? void 0 : _response_localizationContainer_locale.ConsentTitle) && (responseToData.title[locale] = (_response_localizationContainer_locale1 = response.localizationContainer[locale]) === null || _response_localizationContainer_locale1 === void 0 ? void 0 : _response_localizationContainer_locale1.ConsentTitle);
|
|
19695
|
+
((_response_localizationContainer_locale2 = response.localizationContainer[locale]) === null || _response_localizationContainer_locale2 === void 0 ? void 0 : _response_localizationContainer_locale2.ConsentBody) && (responseToData.message[locale] = (_response_localizationContainer_locale3 = response.localizationContainer[locale]) === null || _response_localizationContainer_locale3 === void 0 ? void 0 : _response_localizationContainer_locale3.ConsentBody);
|
|
19696
|
+
((_response_localizationContainer_locale4 = response.localizationContainer[locale]) === null || _response_localizationContainer_locale4 === void 0 ? void 0 : _response_localizationContainer_locale4.PrivacyStatementTitle) && (responseToData.link[locale] = (_response_localizationContainer_locale5 = response.localizationContainer[locale]) === null || _response_localizationContainer_locale5 === void 0 ? void 0 : _response_localizationContainer_locale5.PrivacyStatementTitle);
|
|
19697
|
+
((_response_localizationContainer_locale6 = response.localizationContainer[locale]) === null || _response_localizationContainer_locale6 === void 0 ? void 0 : _response_localizationContainer_locale6.ConsentAknowledgementAccepted) && (responseToData.messageAccepted[locale] = (_response_localizationContainer_locale7 = response.localizationContainer[locale]) === null || _response_localizationContainer_locale7 === void 0 ? void 0 : _response_localizationContainer_locale7.ConsentAknowledgementAccepted);
|
|
19698
|
+
((_response_localizationContainer_locale8 = response.localizationContainer[locale]) === null || _response_localizationContainer_locale8 === void 0 ? void 0 : _response_localizationContainer_locale8.ConsentAknowledgementRefused) && (responseToData.messageRefused[locale] = (_response_localizationContainer_locale9 = response.localizationContainer[locale]) === null || _response_localizationContainer_locale9 === void 0 ? void 0 : _response_localizationContainer_locale9.ConsentAknowledgementRefused);
|
|
19699
|
+
}
|
|
19700
|
+
// LinkURl is the same for all languages
|
|
19701
|
+
responseToData.linkURL = response.privacyStatementUrl;
|
|
19702
|
+
return {
|
|
19703
|
+
displayGDPR: response.enableConsent,
|
|
19704
|
+
data: responseToData
|
|
19705
|
+
};
|
|
19706
|
+
}
|
|
19707
|
+
}
|
|
19708
|
+
return {
|
|
19709
|
+
displayGDPR: false,
|
|
19710
|
+
userConsent: false
|
|
19711
|
+
};
|
|
19712
|
+
};
|
|
19713
|
+
|
|
19714
|
+
|
|
19715
|
+
|
|
18838
19716
|
const $ce7633a58d99dcca$var$RetorikConfigHandler = (props)=>{
|
|
18839
19717
|
var _mainConfig_config;
|
|
18840
19718
|
const [mainConfig, setMainConfig] = (0, $dWhh5$react.useState)(undefined);
|
|
@@ -18852,8 +19730,9 @@ const $ce7633a58d99dcca$var$RetorikConfigHandler = (props)=>{
|
|
|
18852
19730
|
...configuration
|
|
18853
19731
|
};
|
|
18854
19732
|
if (!data) {
|
|
18855
|
-
var
|
|
18856
|
-
const
|
|
19733
|
+
var _tempConfiguration_config;
|
|
19734
|
+
const views = ((_tempConfiguration_config = tempConfiguration.config) === null || _tempConfiguration_config === void 0 ? void 0 : _tempConfiguration_config.baseMenu) || (0, $0b4f07c0f09dbbcf$export$9bbca248acc786d3);
|
|
19735
|
+
const tempBaseMenu = views.filter((menu)=>// @ts-ignore : error on menu.view that doesn't exist in type CustomMenu
|
|
18857
19736
|
!menu.view || menu.view !== (0, $71c613e2e831c34c$export$3b4d92ba873f009a).emergency);
|
|
18858
19737
|
tempConfiguration.config && (tempConfiguration.config.baseMenu = tempBaseMenu);
|
|
18859
19738
|
}
|
|
@@ -18866,8 +19745,7 @@ const $ce7633a58d99dcca$var$RetorikConfigHandler = (props)=>{
|
|
|
18866
19745
|
const getUpdatedConfig = async ()=>{
|
|
18867
19746
|
const fetchedConfig = await (0, $ba3150a69d33f468$export$2e2bcd8739ae039)(props);
|
|
18868
19747
|
if (fetchedConfig && fetchedConfig.config) {
|
|
18869
|
-
const { config: { skipLoader: skipLoader = false, defaultMode: defaultMode, config: _config, viewsConfig: viewsConfig, chatbotData: chatbotData, chatbotDataWidget: chatbotDataWidget, agentData: agentData, ponyfillFactoryCredentials: ponyfillFactoryCredentials, addressData: addressData, userData: userData, customVoice: customVoice, colors: colors }
|
|
18870
|
-
console.log(externalConfigEnabled);
|
|
19748
|
+
const { config: { skipLoader: skipLoader = false, defaultMode: defaultMode, config: _config, viewsConfig: viewsConfig, chatbotData: chatbotData, chatbotDataWidget: chatbotDataWidget, agentData: agentData, ponyfillFactoryCredentials: ponyfillFactoryCredentials, addressData: addressData, userData: userData, customVoice: customVoice, colors: colors } } = fetchedConfig;
|
|
18871
19749
|
const fetchedMainConfig = {
|
|
18872
19750
|
config: _config,
|
|
18873
19751
|
viewsConfig: viewsConfig,
|
|
@@ -18889,7 +19767,7 @@ const $ce7633a58d99dcca$var$RetorikConfigHandler = (props)=>{
|
|
|
18889
19767
|
}
|
|
18890
19768
|
};
|
|
18891
19769
|
if (props.config !== undefined) {
|
|
18892
|
-
console.log("Get config from manualConfig");
|
|
19770
|
+
console.log("Retorik Framework > Get config from manualConfig");
|
|
18893
19771
|
// Check mandatory properties
|
|
18894
19772
|
if (props.viewsConfig && props.chatbotData && props.agentData && props.ponyfillFactoryCredentials) {
|
|
18895
19773
|
const copyConfig = {
|
|
@@ -18900,19 +19778,34 @@ const $ce7633a58d99dcca$var$RetorikConfigHandler = (props)=>{
|
|
|
18900
19778
|
checkEmergencyAndSetConfig(copyConfig);
|
|
18901
19779
|
} else {
|
|
18902
19780
|
// Warnings for missing data in props
|
|
18903
|
-
console.warn("Mandatory configuration data missing : ");
|
|
19781
|
+
console.warn("Retorik Framework > Mandatory configuration data missing : ");
|
|
18904
19782
|
!props.viewsConfig && console.warn(" * viewsConfig");
|
|
18905
19783
|
!props.chatbotData && console.warn(" * chatbotData");
|
|
18906
19784
|
!props.agentData && console.warn(" * agentData");
|
|
18907
19785
|
!props.ponyfillFactoryCredentials && console.warn(" * ponyfillFactoryCredentials");
|
|
18908
19786
|
}
|
|
18909
19787
|
} else if (!isConfigUpdated) {
|
|
18910
|
-
console.log("Get config from Retorik");
|
|
19788
|
+
console.log("Retorik Framework > Get config from Retorik Studio");
|
|
18911
19789
|
getUpdatedConfig();
|
|
18912
19790
|
}
|
|
18913
19791
|
}, [
|
|
18914
19792
|
props
|
|
18915
19793
|
]);
|
|
19794
|
+
/**
|
|
19795
|
+
* Set GDPR data from either manual configuration or fetch from Retorik Studio
|
|
19796
|
+
*/ (0, $dWhh5$react.useEffect)(()=>{
|
|
19797
|
+
const checkGDPR = async ()=>{
|
|
19798
|
+
const data = await (0, $9b7229e19d910060$export$284b58786299e6c5)({
|
|
19799
|
+
configurationData: props.GDPR,
|
|
19800
|
+
addressData: props.addressData
|
|
19801
|
+
});
|
|
19802
|
+
// Set GDPR data in utilsStore
|
|
19803
|
+
data.data && (0, $70e3d65f5a106231$export$2d640df2114a2d77)(data.data);
|
|
19804
|
+
(0, $70e3d65f5a106231$export$ff26692bd8e0fbbd)(data.displayGDPR);
|
|
19805
|
+
typeof data.userConsent === "boolean" && (0, $70e3d65f5a106231$export$7a09e6b3c59f37ad)(data.userConsent);
|
|
19806
|
+
};
|
|
19807
|
+
props.addressData && checkGDPR();
|
|
19808
|
+
}, []);
|
|
18916
19809
|
return mainConfig && configurationFetchingEnded ? /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $bbc725a084d1069a$export$2e2bcd8739ae039), {
|
|
18917
19810
|
parent: props.parent,
|
|
18918
19811
|
config: mainConfig,
|
|
@@ -18984,11 +19877,12 @@ const $cb4344834e1c512f$export$5bc78eab59412c50 = (buttonData)=>{
|
|
|
18984
19877
|
|
|
18985
19878
|
|
|
18986
19879
|
const $5f80e5f73a172bb5$var$LayoutHandler = (props)=>{
|
|
18987
|
-
var
|
|
19880
|
+
var _props_widgetConfig, _props_widgetConfig_button, _props_widgetConfig1, _props_widgetConfig_button_text, _props_widgetConfig_button1, _props_widgetConfig2, _props_widgetConfig_button_background, _props_widgetConfig_button2, _props_widgetConfig3, _props_widgetConfig_button_border, _props_widgetConfig_button3, _props_widgetConfig4, _props_widgetConfig_button_border1, _props_widgetConfig_button4, _props_widgetConfig5, _props_widgetConfig_button_border2, _props_widgetConfig_button5, _props_widgetConfig6, _props_widgetConfig_button_position, _props_widgetConfig_button6, _props_widgetConfig7, _props_widgetConfig_button_position1, _props_widgetConfig_button7, _props_widgetConfig8, _props_widgetConfig_button_position2, _props_widgetConfig_button8, _props_widgetConfig9, _props_widgetConfig_button_position3, _props_widgetConfig_button9, _props_widgetConfig10, _props_widgetConfig_button_position4, _props_widgetConfig_button10, _props_widgetConfig11, _props_widgetConfig_button_position5, _props_widgetConfig_button11, _props_widgetConfig12, _props_widgetConfig_button_position6, _props_widgetConfig_button12, _props_widgetConfig13, _props_widgetConfig_button_position7, _props_widgetConfig_button13, _props_widgetConfig14, _props_widgetConfig_button_position8, _props_widgetConfig_button14, _props_widgetConfig15, _props_widgetConfig_button_position9, _props_widgetConfig_button15, _props_widgetConfig16, _props_widgetConfig_button_position10, _props_widgetConfig_button16, _props_widgetConfig17, _props_widgetConfig_button_position11, _props_widgetConfig_button17, _props_widgetConfig18, _props_widgetConfig_button_image, _props_widgetConfig_button18, _props_widgetConfig19, _props_widgetConfig_button_image1, _props_widgetConfig_button19, _props_widgetConfig20, _props_widgetConfig_button20, _props_widgetConfig21, _props_widgetConfig_button21, _props_widgetConfig22, _props_widgetConfig_button_text1, _props_widgetConfig_button22, _props_widgetConfig23, _props_widgetConfig_button_image2, _props_widgetConfig_button23, _props_widgetConfig24, _props_widgetConfig_button_image3, _props_widgetConfig_button24, _props_widgetConfig25, _props_widgetConfig_button25, _props_widgetConfig26, _props_widgetConfig_button26, _props_widgetConfig27;
|
|
18988
19881
|
const translation = (0, $b6a8688e7db7a7b9$export$6650dace022cfacc)((state)=>state.currentTranslations);
|
|
19882
|
+
const currentLayout = (0, $c7242af7a2bc5e50$export$bd22554f31e5f96f)((state)=>state.currentLayout);
|
|
18989
19883
|
const displayChangeLayoutButton = (0, $c7242af7a2bc5e50$export$bd22554f31e5f96f)((state)=>state.changeLayoutButtonDisplay);
|
|
18990
19884
|
const { open: open, loaded: loaded, widgetDisplayType: widgetDisplayType } = (0, $1068fd56b5926747$export$d95eb9b67812311f)();
|
|
18991
|
-
const [currentConfiguration, setCurrentConfiguration] = (0, $dWhh5$react.useState)((
|
|
19885
|
+
const [currentConfiguration, setCurrentConfiguration] = (0, $dWhh5$react.useState)((_props_widgetConfig = props.widgetConfig) === null || _props_widgetConfig === void 0 ? void 0 : _props_widgetConfig.large);
|
|
18992
19886
|
const [widgetButton, setWidgetButton] = (0, $dWhh5$react.useState)("");
|
|
18993
19887
|
const [widgetBorder, setWidgetBorder] = (0, $dWhh5$react.useState)("");
|
|
18994
19888
|
const [mobileWidth, setMobileWidth] = (0, $dWhh5$react.useState)(window.innerWidth < 600);
|
|
@@ -18997,8 +19891,8 @@ const $5f80e5f73a172bb5$var$LayoutHandler = (props)=>{
|
|
|
18997
19891
|
setMobileWidth(window.innerWidth < 600);
|
|
18998
19892
|
};
|
|
18999
19893
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
19000
|
-
var
|
|
19001
|
-
setWidgetButton((0, $cb4344834e1c512f$export$5bc78eab59412c50)((
|
|
19894
|
+
var _props_widgetConfig;
|
|
19895
|
+
setWidgetButton((0, $cb4344834e1c512f$export$5bc78eab59412c50)((_props_widgetConfig = props.widgetConfig) === null || _props_widgetConfig === void 0 ? void 0 : _props_widgetConfig.button));
|
|
19002
19896
|
window.addEventListener("resize", handleResize);
|
|
19003
19897
|
return ()=>window.removeEventListener("resize", handleResize);
|
|
19004
19898
|
}, []);
|
|
@@ -19021,14 +19915,14 @@ const $5f80e5f73a172bb5$var$LayoutHandler = (props)=>{
|
|
|
19021
19915
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
19022
19916
|
switch(widgetDisplayType){
|
|
19023
19917
|
case "large":
|
|
19024
|
-
var
|
|
19025
|
-
setCurrentConfiguration((
|
|
19026
|
-
setWidgetBorder((0, $cb4344834e1c512f$export$d6ad062ea094ff6f)((
|
|
19918
|
+
var _props_widgetConfig, _props_widgetConfig_large, _props_widgetConfig1;
|
|
19919
|
+
setCurrentConfiguration((_props_widgetConfig = props.widgetConfig) === null || _props_widgetConfig === void 0 ? void 0 : _props_widgetConfig.large);
|
|
19920
|
+
setWidgetBorder((0, $cb4344834e1c512f$export$d6ad062ea094ff6f)((_props_widgetConfig1 = props.widgetConfig) === null || _props_widgetConfig1 === void 0 ? void 0 : (_props_widgetConfig_large = _props_widgetConfig1.large) === null || _props_widgetConfig_large === void 0 ? void 0 : _props_widgetConfig_large.border));
|
|
19027
19921
|
break;
|
|
19028
19922
|
case "thumbnail":
|
|
19029
|
-
var
|
|
19030
|
-
setCurrentConfiguration(((
|
|
19031
|
-
setWidgetBorder((0, $cb4344834e1c512f$export$d6ad062ea094ff6f)(((
|
|
19923
|
+
var _props_widgetConfig2, _props_widgetConfig3, _props_widgetConfig_thumbnail, _props_widgetConfig4, _props_widgetConfig_large1, _props_widgetConfig5;
|
|
19924
|
+
setCurrentConfiguration(((_props_widgetConfig2 = props.widgetConfig) === null || _props_widgetConfig2 === void 0 ? void 0 : _props_widgetConfig2.thumbnail) || ((_props_widgetConfig3 = props.widgetConfig) === null || _props_widgetConfig3 === void 0 ? void 0 : _props_widgetConfig3.large));
|
|
19925
|
+
setWidgetBorder((0, $cb4344834e1c512f$export$d6ad062ea094ff6f)(((_props_widgetConfig4 = props.widgetConfig) === null || _props_widgetConfig4 === void 0 ? void 0 : (_props_widgetConfig_thumbnail = _props_widgetConfig4.thumbnail) === null || _props_widgetConfig_thumbnail === void 0 ? void 0 : _props_widgetConfig_thumbnail.border) || ((_props_widgetConfig5 = props.widgetConfig) === null || _props_widgetConfig5 === void 0 ? void 0 : (_props_widgetConfig_large1 = _props_widgetConfig5.large) === null || _props_widgetConfig_large1 === void 0 ? void 0 : _props_widgetConfig_large1.border)));
|
|
19032
19926
|
break;
|
|
19033
19927
|
default:
|
|
19034
19928
|
break;
|
|
@@ -19037,92 +19931,96 @@ const $5f80e5f73a172bb5$var$LayoutHandler = (props)=>{
|
|
|
19037
19931
|
widgetDisplayType
|
|
19038
19932
|
]);
|
|
19039
19933
|
const extendButtonHandler = ()=>{
|
|
19040
|
-
var
|
|
19934
|
+
var _props_widgetConfig, _props_widgetConfig1;
|
|
19041
19935
|
// if different display type available
|
|
19042
|
-
if (((
|
|
19936
|
+
if (((_props_widgetConfig = props.widgetConfig) === null || _props_widgetConfig === void 0 ? void 0 : _props_widgetConfig.large) && ((_props_widgetConfig1 = props.widgetConfig) === null || _props_widgetConfig1 === void 0 ? void 0 : _props_widgetConfig1.thumbnail)) (0, $1068fd56b5926747$export$f0e9d14ede4c01bd)();
|
|
19043
19937
|
else {
|
|
19044
19938
|
(0, $c7242af7a2bc5e50$export$29ec02ff899d2b53)(true);
|
|
19045
19939
|
(0, $c7242af7a2bc5e50$export$e8437af1f2483b8e)((0, $71c613e2e831c34c$export$a31c5a03aaeee5f).agent);
|
|
19046
19940
|
}
|
|
19047
19941
|
};
|
|
19048
|
-
return
|
|
19942
|
+
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, $dWhh5$reactjsxruntime.Fragment), {
|
|
19049
19943
|
children: [
|
|
19050
|
-
((
|
|
19944
|
+
((_props_widgetConfig1 = props.widgetConfig) === null || _props_widgetConfig1 === void 0 ? void 0 : (_props_widgetConfig_button = _props_widgetConfig1.button) === null || _props_widgetConfig_button === void 0 ? void 0 : _props_widgetConfig_button.display) !== false && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("button", {
|
|
19051
19945
|
className: `rf-fixed rf-px-2 rf-flex rf-flex-row rf-items-center ${widgetButton}`,
|
|
19052
19946
|
style: {
|
|
19053
|
-
color: ((
|
|
19054
|
-
backgroundColor: ((
|
|
19055
|
-
borderWidth: ((
|
|
19056
|
-
borderColor: ((
|
|
19057
|
-
top: (
|
|
19058
|
-
bottom: ((
|
|
19059
|
-
left: (
|
|
19060
|
-
right: ((
|
|
19947
|
+
color: ((_props_widgetConfig2 = props.widgetConfig) === null || _props_widgetConfig2 === void 0 ? void 0 : (_props_widgetConfig_button1 = _props_widgetConfig2.button) === null || _props_widgetConfig_button1 === void 0 ? void 0 : (_props_widgetConfig_button_text = _props_widgetConfig_button1.text) === null || _props_widgetConfig_button_text === void 0 ? void 0 : _props_widgetConfig_button_text.color) || (0, $04a533cfb295ca20$export$4aebf65ed07cf17b).rgb,
|
|
19948
|
+
backgroundColor: ((_props_widgetConfig3 = props.widgetConfig) === null || _props_widgetConfig3 === void 0 ? void 0 : (_props_widgetConfig_button2 = _props_widgetConfig3.button) === null || _props_widgetConfig_button2 === void 0 ? void 0 : (_props_widgetConfig_button_background = _props_widgetConfig_button2.background) === null || _props_widgetConfig_button_background === void 0 ? void 0 : _props_widgetConfig_button_background.color) || "transparent",
|
|
19949
|
+
borderWidth: ((_props_widgetConfig4 = props.widgetConfig) === null || _props_widgetConfig4 === void 0 ? void 0 : (_props_widgetConfig_button3 = _props_widgetConfig4.button) === null || _props_widgetConfig_button3 === void 0 ? void 0 : (_props_widgetConfig_button_border = _props_widgetConfig_button3.border) === null || _props_widgetConfig_button_border === void 0 ? void 0 : _props_widgetConfig_button_border.thickness) !== undefined ? `${(_props_widgetConfig5 = props.widgetConfig) === null || _props_widgetConfig5 === void 0 ? void 0 : (_props_widgetConfig_button4 = _props_widgetConfig5.button) === null || _props_widgetConfig_button4 === void 0 ? void 0 : (_props_widgetConfig_button_border1 = _props_widgetConfig_button4.border) === null || _props_widgetConfig_button_border1 === void 0 ? void 0 : _props_widgetConfig_button_border1.thickness}px` : "1px",
|
|
19950
|
+
borderColor: ((_props_widgetConfig6 = props.widgetConfig) === null || _props_widgetConfig6 === void 0 ? void 0 : (_props_widgetConfig_button5 = _props_widgetConfig6.button) === null || _props_widgetConfig_button5 === void 0 ? void 0 : (_props_widgetConfig_button_border2 = _props_widgetConfig_button5.border) === null || _props_widgetConfig_button_border2 === void 0 ? void 0 : _props_widgetConfig_button_border2.color) || (0, $04a533cfb295ca20$export$4aebf65ed07cf17b).rgb,
|
|
19951
|
+
top: (_props_widgetConfig7 = props.widgetConfig) === null || _props_widgetConfig7 === void 0 ? void 0 : (_props_widgetConfig_button6 = _props_widgetConfig7.button) === null || _props_widgetConfig_button6 === void 0 ? void 0 : (_props_widgetConfig_button_position = _props_widgetConfig_button6.position) === null || _props_widgetConfig_button_position === void 0 ? void 0 : _props_widgetConfig_button_position.top,
|
|
19952
|
+
bottom: ((_props_widgetConfig8 = props.widgetConfig) === null || _props_widgetConfig8 === void 0 ? void 0 : (_props_widgetConfig_button7 = _props_widgetConfig8.button) === null || _props_widgetConfig_button7 === void 0 ? void 0 : (_props_widgetConfig_button_position1 = _props_widgetConfig_button7.position) === null || _props_widgetConfig_button_position1 === void 0 ? void 0 : _props_widgetConfig_button_position1.bottom) ? (_props_widgetConfig9 = props.widgetConfig) === null || _props_widgetConfig9 === void 0 ? void 0 : (_props_widgetConfig_button8 = _props_widgetConfig9.button) === null || _props_widgetConfig_button8 === void 0 ? void 0 : (_props_widgetConfig_button_position2 = _props_widgetConfig_button8.position) === null || _props_widgetConfig_button_position2 === void 0 ? void 0 : _props_widgetConfig_button_position2.bottom : ((_props_widgetConfig10 = props.widgetConfig) === null || _props_widgetConfig10 === void 0 ? void 0 : (_props_widgetConfig_button9 = _props_widgetConfig10.button) === null || _props_widgetConfig_button9 === void 0 ? void 0 : (_props_widgetConfig_button_position3 = _props_widgetConfig_button9.position) === null || _props_widgetConfig_button_position3 === void 0 ? void 0 : _props_widgetConfig_button_position3.top) || ((_props_widgetConfig11 = props.widgetConfig) === null || _props_widgetConfig11 === void 0 ? void 0 : (_props_widgetConfig_button10 = _props_widgetConfig11.button) === null || _props_widgetConfig_button10 === void 0 ? void 0 : (_props_widgetConfig_button_position4 = _props_widgetConfig_button10.position) === null || _props_widgetConfig_button_position4 === void 0 ? void 0 : _props_widgetConfig_button_position4.left) || ((_props_widgetConfig12 = props.widgetConfig) === null || _props_widgetConfig12 === void 0 ? void 0 : (_props_widgetConfig_button11 = _props_widgetConfig12.button) === null || _props_widgetConfig_button11 === void 0 ? void 0 : (_props_widgetConfig_button_position5 = _props_widgetConfig_button11.position) === null || _props_widgetConfig_button_position5 === void 0 ? void 0 : _props_widgetConfig_button_position5.right) ? undefined : "1rem",
|
|
19953
|
+
left: (_props_widgetConfig13 = props.widgetConfig) === null || _props_widgetConfig13 === void 0 ? void 0 : (_props_widgetConfig_button12 = _props_widgetConfig13.button) === null || _props_widgetConfig_button12 === void 0 ? void 0 : (_props_widgetConfig_button_position6 = _props_widgetConfig_button12.position) === null || _props_widgetConfig_button_position6 === void 0 ? void 0 : _props_widgetConfig_button_position6.left,
|
|
19954
|
+
right: ((_props_widgetConfig14 = props.widgetConfig) === null || _props_widgetConfig14 === void 0 ? void 0 : (_props_widgetConfig_button13 = _props_widgetConfig14.button) === null || _props_widgetConfig_button13 === void 0 ? void 0 : (_props_widgetConfig_button_position7 = _props_widgetConfig_button13.position) === null || _props_widgetConfig_button_position7 === void 0 ? void 0 : _props_widgetConfig_button_position7.right) ? (_props_widgetConfig15 = props.widgetConfig) === null || _props_widgetConfig15 === void 0 ? void 0 : (_props_widgetConfig_button14 = _props_widgetConfig15.button) === null || _props_widgetConfig_button14 === void 0 ? void 0 : (_props_widgetConfig_button_position8 = _props_widgetConfig_button14.position) === null || _props_widgetConfig_button_position8 === void 0 ? void 0 : _props_widgetConfig_button_position8.right : ((_props_widgetConfig16 = props.widgetConfig) === null || _props_widgetConfig16 === void 0 ? void 0 : (_props_widgetConfig_button15 = _props_widgetConfig16.button) === null || _props_widgetConfig_button15 === void 0 ? void 0 : (_props_widgetConfig_button_position9 = _props_widgetConfig_button15.position) === null || _props_widgetConfig_button_position9 === void 0 ? void 0 : _props_widgetConfig_button_position9.top) || ((_props_widgetConfig17 = props.widgetConfig) === null || _props_widgetConfig17 === void 0 ? void 0 : (_props_widgetConfig_button16 = _props_widgetConfig17.button) === null || _props_widgetConfig_button16 === void 0 ? void 0 : (_props_widgetConfig_button_position10 = _props_widgetConfig_button16.position) === null || _props_widgetConfig_button_position10 === void 0 ? void 0 : _props_widgetConfig_button_position10.bottom) || ((_props_widgetConfig18 = props.widgetConfig) === null || _props_widgetConfig18 === void 0 ? void 0 : (_props_widgetConfig_button17 = _props_widgetConfig18.button) === null || _props_widgetConfig_button17 === void 0 ? void 0 : (_props_widgetConfig_button_position11 = _props_widgetConfig_button17.position) === null || _props_widgetConfig_button_position11 === void 0 ? void 0 : _props_widgetConfig_button_position11.left) ? undefined : "1rem"
|
|
19061
19955
|
},
|
|
19062
19956
|
onClick: (0, $1068fd56b5926747$export$77c0ba4d0d97cee5),
|
|
19063
19957
|
id: "retorik-widget-button",
|
|
19064
19958
|
children: [
|
|
19065
|
-
((
|
|
19066
|
-
className: `${((
|
|
19067
|
-
src: `${props.
|
|
19959
|
+
((_props_widgetConfig19 = props.widgetConfig) === null || _props_widgetConfig19 === void 0 ? void 0 : (_props_widgetConfig_button18 = _props_widgetConfig19.button) === null || _props_widgetConfig_button18 === void 0 ? void 0 : (_props_widgetConfig_button_image = _props_widgetConfig_button18.image) === null || _props_widgetConfig_button_image === void 0 ? void 0 : _props_widgetConfig_button_image.url) && ((_props_widgetConfig20 = props.widgetConfig) === null || _props_widgetConfig20 === void 0 ? void 0 : (_props_widgetConfig_button19 = _props_widgetConfig20.button) === null || _props_widgetConfig_button19 === void 0 ? void 0 : (_props_widgetConfig_button_image1 = _props_widgetConfig_button19.image) === null || _props_widgetConfig_button_image1 === void 0 ? void 0 : _props_widgetConfig_button_image1.position) !== "right" && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("img", {
|
|
19960
|
+
className: `${((_props_widgetConfig21 = props.widgetConfig) === null || _props_widgetConfig21 === void 0 ? void 0 : (_props_widgetConfig_button20 = _props_widgetConfig21.button) === null || _props_widgetConfig_button20 === void 0 ? void 0 : _props_widgetConfig_button20.image.marginY) === false ? "" : "rf-my-1"}`,
|
|
19961
|
+
src: `${props.widgetConfig.button.image.url}`,
|
|
19068
19962
|
alt: "Retorik widget",
|
|
19069
19963
|
style: {
|
|
19070
|
-
height: ((
|
|
19964
|
+
height: ((_props_widgetConfig22 = props.widgetConfig) === null || _props_widgetConfig22 === void 0 ? void 0 : (_props_widgetConfig_button21 = _props_widgetConfig22.button) === null || _props_widgetConfig_button21 === void 0 ? void 0 : _props_widgetConfig_button21.image.height) || "2rem"
|
|
19071
19965
|
}
|
|
19072
19966
|
}),
|
|
19073
19967
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
19074
19968
|
className: "rf-py-2 rf-ml-1",
|
|
19075
|
-
children: ((
|
|
19969
|
+
children: ((_props_widgetConfig23 = props.widgetConfig) === null || _props_widgetConfig23 === void 0 ? void 0 : (_props_widgetConfig_button22 = _props_widgetConfig23.button) === null || _props_widgetConfig_button22 === void 0 ? void 0 : (_props_widgetConfig_button_text1 = _props_widgetConfig_button22.text) === null || _props_widgetConfig_button_text1 === void 0 ? void 0 : _props_widgetConfig_button_text1.content) || translation.common.needhelp
|
|
19076
19970
|
}),
|
|
19077
|
-
((
|
|
19078
|
-
className: `${((
|
|
19079
|
-
src: `${props.
|
|
19971
|
+
((_props_widgetConfig24 = props.widgetConfig) === null || _props_widgetConfig24 === void 0 ? void 0 : (_props_widgetConfig_button23 = _props_widgetConfig24.button) === null || _props_widgetConfig_button23 === void 0 ? void 0 : (_props_widgetConfig_button_image2 = _props_widgetConfig_button23.image) === null || _props_widgetConfig_button_image2 === void 0 ? void 0 : _props_widgetConfig_button_image2.url) && ((_props_widgetConfig25 = props.widgetConfig) === null || _props_widgetConfig25 === void 0 ? void 0 : (_props_widgetConfig_button24 = _props_widgetConfig25.button) === null || _props_widgetConfig_button24 === void 0 ? void 0 : (_props_widgetConfig_button_image3 = _props_widgetConfig_button24.image) === null || _props_widgetConfig_button_image3 === void 0 ? void 0 : _props_widgetConfig_button_image3.position) === "right" && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("img", {
|
|
19972
|
+
className: `${((_props_widgetConfig26 = props.widgetConfig) === null || _props_widgetConfig26 === void 0 ? void 0 : (_props_widgetConfig_button25 = _props_widgetConfig26.button) === null || _props_widgetConfig_button25 === void 0 ? void 0 : _props_widgetConfig_button25.image.marginY) === false ? "" : "rf-my-1"}`,
|
|
19973
|
+
src: `${props.widgetConfig.button.image.url}`,
|
|
19080
19974
|
alt: "Retorik widget",
|
|
19081
19975
|
style: {
|
|
19082
|
-
height: ((
|
|
19976
|
+
height: ((_props_widgetConfig27 = props.widgetConfig) === null || _props_widgetConfig27 === void 0 ? void 0 : (_props_widgetConfig_button26 = _props_widgetConfig27.button) === null || _props_widgetConfig_button26 === void 0 ? void 0 : _props_widgetConfig_button26.image.height) || "2rem"
|
|
19083
19977
|
}
|
|
19084
19978
|
})
|
|
19085
19979
|
]
|
|
19086
19980
|
}),
|
|
19087
19981
|
loaded && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)("div", {
|
|
19088
|
-
className: "rf-fixed rf-pt-8 rf-height-fill-available rf-transition-all rf-overflow-hidden rf-max-w-[100vw]"
|
|
19089
|
-
style: {
|
|
19982
|
+
className: `${currentLayout === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget ? "rf-fixed rf-pt-8 rf-height-fill-available rf-transition-all rf-overflow-hidden rf-max-w-[100vw]" : ""}`,
|
|
19983
|
+
style: currentLayout === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget ? {
|
|
19090
19984
|
...frameStyle,
|
|
19091
19985
|
width: open ? mobileWidth ? "100%" : (currentConfiguration === null || currentConfiguration === void 0 ? void 0 : currentConfiguration.width) || "400px" : "0px",
|
|
19092
19986
|
height: (currentConfiguration === null || currentConfiguration === void 0 ? void 0 : currentConfiguration.height) || (mobileWidth ? "100%" : "630px")
|
|
19093
|
-
},
|
|
19987
|
+
} : {},
|
|
19094
19988
|
"data-testid": "widget-wrapper",
|
|
19095
19989
|
children: [
|
|
19096
|
-
|
|
19097
|
-
|
|
19098
|
-
|
|
19099
|
-
|
|
19100
|
-
|
|
19101
|
-
|
|
19102
|
-
|
|
19103
|
-
|
|
19104
|
-
|
|
19105
|
-
|
|
19106
|
-
|
|
19107
|
-
|
|
19108
|
-
|
|
19109
|
-
|
|
19110
|
-
|
|
19111
|
-
|
|
19112
|
-
|
|
19113
|
-
|
|
19990
|
+
currentLayout === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsxs)((0, ($parcel$interopDefault($dWhh5$react))).Fragment, {
|
|
19991
|
+
children: [
|
|
19992
|
+
displayChangeLayoutButton && !mobileWidth && /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("button", {
|
|
19993
|
+
onClick: extendButtonHandler,
|
|
19994
|
+
"aria-label": "Extend",
|
|
19995
|
+
className: "rf-absolute rf-z-exitwidget rf-flex rf-right-8 rf-top-0 rf-p-1 rf-bg-truewhite rf-border rf-border-trueblack rf-rounded-lg",
|
|
19996
|
+
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $d2c0480827389113$export$2e2bcd8739ae039), {
|
|
19997
|
+
className: "rf-h-4 rf-w-4",
|
|
19998
|
+
color: "#000000",
|
|
19999
|
+
extended: false
|
|
20000
|
+
})
|
|
20001
|
+
}),
|
|
20002
|
+
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("button", {
|
|
20003
|
+
onClick: (0, $1068fd56b5926747$export$77c0ba4d0d97cee5),
|
|
20004
|
+
"aria-label": "Close",
|
|
20005
|
+
className: "rf-absolute rf-z-exitwidget rf-flex rf-right-0 rf-top-0 rf-p-1 rf-bg-truewhite rf-border rf-border-trueblack rf-rounded-lg",
|
|
20006
|
+
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $45c71bcc2a927bde$export$2e2bcd8739ae039), {
|
|
20007
|
+
className: "rf-h-4 rf-w-4",
|
|
20008
|
+
color: "#000000"
|
|
20009
|
+
})
|
|
20010
|
+
})
|
|
20011
|
+
]
|
|
19114
20012
|
}),
|
|
19115
20013
|
/*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)("div", {
|
|
19116
|
-
className: `rf-relative rf-h-full rf-w-full rf-overflow-hidden ${!mobileWidth && widgetBorder}`,
|
|
19117
|
-
style: {
|
|
20014
|
+
className: `${currentLayout === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget ? `rf-relative rf-h-full rf-w-full rf-overflow-hidden ${!mobileWidth && widgetBorder}` : ""}`,
|
|
20015
|
+
style: currentLayout === (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget ? {
|
|
19118
20016
|
borderColor: frameStyle.borderColor
|
|
19119
|
-
},
|
|
20017
|
+
} : {},
|
|
19120
20018
|
children: props.children
|
|
19121
20019
|
})
|
|
19122
20020
|
]
|
|
19123
20021
|
})
|
|
19124
20022
|
]
|
|
19125
|
-
})
|
|
20023
|
+
});
|
|
19126
20024
|
};
|
|
19127
20025
|
var $5f80e5f73a172bb5$export$2e2bcd8739ae039 = $5f80e5f73a172bb5$var$LayoutHandler;
|
|
19128
20026
|
|
|
@@ -19141,28 +20039,17 @@ const $09a824b6b849eeca$var$RetorikWidget = (props)=>{
|
|
|
19141
20039
|
// Ne mettre ici que de la logique spécifique au widget
|
|
19142
20040
|
// Ce qui est commun avec RetorikAgent ou autres doit aller dans RetorikComposer ou ContextProvider
|
|
19143
20041
|
// -------------------------
|
|
19144
|
-
const currentLayout = (0, $c7242af7a2bc5e50$export$bd22554f31e5f96f)((state)=>state.currentLayout);
|
|
19145
20042
|
(0, $dWhh5$react.useEffect)(()=>{
|
|
19146
20043
|
(0, $c7242af7a2bc5e50$export$e8437af1f2483b8e)((0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget);
|
|
19147
20044
|
}, []);
|
|
19148
|
-
const [mobileWidth, setMobileWidth] = (0, $dWhh5$react.useState)(window.innerWidth < 600);
|
|
19149
|
-
const handleResize = ()=>{
|
|
19150
|
-
setMobileWidth(window.innerWidth < 600);
|
|
19151
|
-
};
|
|
19152
|
-
(0, $dWhh5$react.useEffect)(()=>{
|
|
19153
|
-
window.addEventListener("resize", handleResize);
|
|
19154
|
-
return ()=>window.removeEventListener("resize", handleResize);
|
|
19155
|
-
}, []);
|
|
19156
20045
|
return /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $06e5942c9d4d6916$export$2e2bcd8739ae039), {
|
|
19157
20046
|
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $5f80e5f73a172bb5$export$2e2bcd8739ae039), {
|
|
19158
|
-
|
|
19159
|
-
retorikProps: props,
|
|
20047
|
+
...props,
|
|
19160
20048
|
children: /*#__PURE__*/ (0, $dWhh5$reactjsxruntime.jsx)((0, $ce7633a58d99dcca$export$2e2bcd8739ae039), {
|
|
19161
|
-
parent: currentLayout,
|
|
19162
20049
|
...props,
|
|
19163
20050
|
width: "full",
|
|
19164
20051
|
height: "full",
|
|
19165
|
-
|
|
20052
|
+
parent: (0, $71c613e2e831c34c$export$a31c5a03aaeee5f).widget
|
|
19166
20053
|
})
|
|
19167
20054
|
})
|
|
19168
20055
|
});
|