@liip/liipgpt 3.6.1 → 3.6.3

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.
Files changed (43) hide show
  1. package/button/liipgpt-button.iife.js +31 -31
  2. package/chat/liipgpt-chat.iife.js +15 -15
  3. package/config/index.cjs +7 -1
  4. package/config/index.d.ts +14 -2
  5. package/config/index.js +7 -1
  6. package/configurator/_app/env.js +1 -1
  7. package/configurator/_app/immutable/chunks/-NcnoUoN.js +74 -0
  8. package/configurator/_app/immutable/chunks/{DzLbPreo.js → 6JdeEzKi.js} +1 -1
  9. package/configurator/_app/immutable/chunks/{CnzkQxWo.js → BsL0-YLl.js} +1 -1
  10. package/configurator/_app/immutable/chunks/C4ORIoWK.js +1 -0
  11. package/configurator/_app/immutable/chunks/{BdBqI4to.js → C59SVKNf.js} +1 -1
  12. package/configurator/_app/immutable/chunks/{CwB4sTdn.js → CKIDNEuR.js} +1 -1
  13. package/configurator/_app/immutable/chunks/CZiOHSGl.js +1 -0
  14. package/configurator/_app/immutable/chunks/{DFfTn9KD.js → Cz0dIq0O.js} +1 -1
  15. package/configurator/_app/immutable/chunks/D6Qx_EAy.js +29 -0
  16. package/configurator/_app/immutable/chunks/D7xeAlKo.js +143 -0
  17. package/configurator/_app/immutable/chunks/DembPZun.js +2 -0
  18. package/configurator/_app/immutable/chunks/{BpIo1_hS.js → GwQP32Cz.js} +1 -1
  19. package/configurator/_app/immutable/chunks/NtMAcZ7G.js +1 -0
  20. package/configurator/_app/immutable/chunks/{DABlUYYh.js → Nw8j0Xyw.js} +1 -1
  21. package/configurator/_app/immutable/chunks/{BF-6zfFW.js → QyXFn05f.js} +2 -2
  22. package/configurator/_app/immutable/entry/{app.BPWZQddg.js → app.C_qls3uJ.js} +2 -2
  23. package/configurator/_app/immutable/entry/start.CJocbWmY.js +1 -0
  24. package/configurator/_app/immutable/nodes/{0.DxuzEfw5.js → 0.Z8aHQ8Ms.js} +2 -2
  25. package/configurator/_app/immutable/nodes/{1.B-APb2B8.js → 1.D_R2KrSw.js} +1 -1
  26. package/configurator/_app/immutable/nodes/{2.CfEhZdph.js → 2.BoZGqQ9G.js} +6 -4
  27. package/configurator/_app/immutable/nodes/{3.Bn5RTTEX.js → 3.Bg8nwFnb.js} +1 -1
  28. package/configurator/_app/version.json +1 -1
  29. package/configurator/index.html +6 -6
  30. package/configurator/sidebar.html +6 -6
  31. package/index.cjs +7 -1
  32. package/index.d.ts +28 -4
  33. package/index.js +7 -1
  34. package/package.json +1 -1
  35. package/search-summary/liipgpt-search-summary.iife.js +13 -13
  36. package/configurator/_app/immutable/chunks/B5M3tt1h.js +0 -70
  37. package/configurator/_app/immutable/chunks/BLUZvgID.js +0 -2
  38. package/configurator/_app/immutable/chunks/BgnzWwt-.js +0 -1
  39. package/configurator/_app/immutable/chunks/CX0dfddQ.js +0 -1
  40. package/configurator/_app/immutable/chunks/DFBUyDYh.js +0 -29
  41. package/configurator/_app/immutable/chunks/dq9OZHm7.js +0 -143
  42. package/configurator/_app/immutable/chunks/vVBttUZh.js +0 -1
  43. package/configurator/_app/immutable/entry/start.CpjUPnYE.js +0 -1
package/config/index.cjs CHANGED
@@ -13692,7 +13692,10 @@ var translationSchema = exports_external.object({
13692
13692
  lightMode: exports_external.string(),
13693
13693
  darkMode: exports_external.string(),
13694
13694
  ariaMainNavigation: exports_external.string(),
13695
- ariaMainNavigationRegion: exports_external.string(),
13695
+ ariaMainNavigationInfo: exports_external.string(),
13696
+ ariaMainNavigationLinks: exports_external.string(),
13697
+ ariaMainNavigationLanguageSwitch: exports_external.string(),
13698
+ ariaMainNavigationColorMode: exports_external.string(),
13696
13699
  ariaGotoMainNavigation: exports_external.string(),
13697
13700
  ariaAskQuestion: exports_external.string(),
13698
13701
  ariaAskQuestionRegion: exports_external.string(),
@@ -13707,6 +13710,7 @@ var translationSchema = exports_external.object({
13707
13710
  ariaQuestionSent: exports_external.string(),
13708
13711
  ariaAnswerReady: exports_external.string(),
13709
13712
  ariaAnswerFinished: exports_external.string(),
13713
+ ariaAnswerFinishedWithSelectedTopic: exports_external.string(),
13710
13714
  ariaAskQuestionAgain: exports_external.string(),
13711
13715
  ariaAnswerGood: exports_external.string(),
13712
13716
  ariaAnswerBad: exports_external.string(),
@@ -13728,6 +13732,7 @@ var translationSchema = exports_external.object({
13728
13732
  ariaAllSelected: exports_external.string(),
13729
13733
  ariaAllUnselected: exports_external.string(),
13730
13734
  ariaAllReseted: exports_external.string(),
13735
+ ariaChangeTopic: exports_external.string(),
13731
13736
  popups: exports_external.array(popup).optional(),
13732
13737
  termsAcceptButton: exports_external.string().optional(),
13733
13738
  termsReadButton: exports_external.string().optional(),
@@ -13739,6 +13744,7 @@ var translationSchema = exports_external.object({
13739
13744
  selectNone: exports_external.string(),
13740
13745
  resetToDefaults: exports_external.string(),
13741
13746
  messageTooLong: exports_external.string(),
13747
+ selectedTopic: exports_external.string(),
13742
13748
  changeTopic: exports_external.string(),
13743
13749
  searchSummaryExpand: exports_external.string(),
13744
13750
  searchSummaryCollapse: exports_external.string(),
package/config/index.d.ts CHANGED
@@ -3819,7 +3819,10 @@ declare const translationSchema: z.ZodObject<{
3819
3819
  lightMode: z.ZodString;
3820
3820
  darkMode: z.ZodString;
3821
3821
  ariaMainNavigation: z.ZodString;
3822
- ariaMainNavigationRegion: z.ZodString;
3822
+ ariaMainNavigationInfo: z.ZodString;
3823
+ ariaMainNavigationLinks: z.ZodString;
3824
+ ariaMainNavigationLanguageSwitch: z.ZodString;
3825
+ ariaMainNavigationColorMode: z.ZodString;
3823
3826
  ariaGotoMainNavigation: z.ZodString;
3824
3827
  ariaAskQuestion: z.ZodString;
3825
3828
  ariaAskQuestionRegion: z.ZodString;
@@ -3834,6 +3837,7 @@ declare const translationSchema: z.ZodObject<{
3834
3837
  ariaQuestionSent: z.ZodString;
3835
3838
  ariaAnswerReady: z.ZodString;
3836
3839
  ariaAnswerFinished: z.ZodString;
3840
+ ariaAnswerFinishedWithSelectedTopic: z.ZodString;
3837
3841
  ariaAskQuestionAgain: z.ZodString;
3838
3842
  ariaAnswerGood: z.ZodString;
3839
3843
  ariaAnswerBad: z.ZodString;
@@ -3855,6 +3859,7 @@ declare const translationSchema: z.ZodObject<{
3855
3859
  ariaAllSelected: z.ZodString;
3856
3860
  ariaAllUnselected: z.ZodString;
3857
3861
  ariaAllReseted: z.ZodString;
3862
+ ariaChangeTopic: z.ZodString;
3858
3863
  popups: z.ZodOptional<z.ZodArray<z.ZodObject<{
3859
3864
  hash: z.ZodString;
3860
3865
  title: z.ZodString;
@@ -3884,6 +3889,7 @@ declare const translationSchema: z.ZodObject<{
3884
3889
  selectNone: z.ZodString;
3885
3890
  resetToDefaults: z.ZodString;
3886
3891
  messageTooLong: z.ZodString;
3892
+ selectedTopic: z.ZodString;
3887
3893
  changeTopic: z.ZodString;
3888
3894
  searchSummaryExpand: z.ZodString;
3889
3895
  searchSummaryCollapse: z.ZodString;
@@ -6979,7 +6985,10 @@ export declare const chatConfigSchema: z.ZodObject<{
6979
6985
  lightMode: z.ZodOptional<z.ZodString>;
6980
6986
  darkMode: z.ZodOptional<z.ZodString>;
6981
6987
  ariaMainNavigation: z.ZodOptional<z.ZodString>;
6982
- ariaMainNavigationRegion: z.ZodOptional<z.ZodString>;
6988
+ ariaMainNavigationInfo: z.ZodOptional<z.ZodString>;
6989
+ ariaMainNavigationLinks: z.ZodOptional<z.ZodString>;
6990
+ ariaMainNavigationLanguageSwitch: z.ZodOptional<z.ZodString>;
6991
+ ariaMainNavigationColorMode: z.ZodOptional<z.ZodString>;
6983
6992
  ariaGotoMainNavigation: z.ZodOptional<z.ZodString>;
6984
6993
  ariaAskQuestion: z.ZodOptional<z.ZodString>;
6985
6994
  ariaAskQuestionRegion: z.ZodOptional<z.ZodString>;
@@ -6994,6 +7003,7 @@ export declare const chatConfigSchema: z.ZodObject<{
6994
7003
  ariaQuestionSent: z.ZodOptional<z.ZodString>;
6995
7004
  ariaAnswerReady: z.ZodOptional<z.ZodString>;
6996
7005
  ariaAnswerFinished: z.ZodOptional<z.ZodString>;
7006
+ ariaAnswerFinishedWithSelectedTopic: z.ZodOptional<z.ZodString>;
6997
7007
  ariaAskQuestionAgain: z.ZodOptional<z.ZodString>;
6998
7008
  ariaAnswerGood: z.ZodOptional<z.ZodString>;
6999
7009
  ariaAnswerBad: z.ZodOptional<z.ZodString>;
@@ -7015,6 +7025,7 @@ export declare const chatConfigSchema: z.ZodObject<{
7015
7025
  ariaAllSelected: z.ZodOptional<z.ZodString>;
7016
7026
  ariaAllUnselected: z.ZodOptional<z.ZodString>;
7017
7027
  ariaAllReseted: z.ZodOptional<z.ZodString>;
7028
+ ariaChangeTopic: z.ZodOptional<z.ZodString>;
7018
7029
  popups: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
7019
7030
  hash: z.ZodString;
7020
7031
  title: z.ZodString;
@@ -7037,6 +7048,7 @@ export declare const chatConfigSchema: z.ZodObject<{
7037
7048
  selectNone: z.ZodOptional<z.ZodString>;
7038
7049
  resetToDefaults: z.ZodOptional<z.ZodString>;
7039
7050
  messageTooLong: z.ZodOptional<z.ZodString>;
7051
+ selectedTopic: z.ZodOptional<z.ZodString>;
7040
7052
  changeTopic: z.ZodOptional<z.ZodString>;
7041
7053
  searchSummaryExpand: z.ZodOptional<z.ZodString>;
7042
7054
  searchSummaryCollapse: z.ZodOptional<z.ZodString>;
package/config/index.js CHANGED
@@ -13662,7 +13662,10 @@ var translationSchema = exports_external.object({
13662
13662
  lightMode: exports_external.string(),
13663
13663
  darkMode: exports_external.string(),
13664
13664
  ariaMainNavigation: exports_external.string(),
13665
- ariaMainNavigationRegion: exports_external.string(),
13665
+ ariaMainNavigationInfo: exports_external.string(),
13666
+ ariaMainNavigationLinks: exports_external.string(),
13667
+ ariaMainNavigationLanguageSwitch: exports_external.string(),
13668
+ ariaMainNavigationColorMode: exports_external.string(),
13666
13669
  ariaGotoMainNavigation: exports_external.string(),
13667
13670
  ariaAskQuestion: exports_external.string(),
13668
13671
  ariaAskQuestionRegion: exports_external.string(),
@@ -13677,6 +13680,7 @@ var translationSchema = exports_external.object({
13677
13680
  ariaQuestionSent: exports_external.string(),
13678
13681
  ariaAnswerReady: exports_external.string(),
13679
13682
  ariaAnswerFinished: exports_external.string(),
13683
+ ariaAnswerFinishedWithSelectedTopic: exports_external.string(),
13680
13684
  ariaAskQuestionAgain: exports_external.string(),
13681
13685
  ariaAnswerGood: exports_external.string(),
13682
13686
  ariaAnswerBad: exports_external.string(),
@@ -13698,6 +13702,7 @@ var translationSchema = exports_external.object({
13698
13702
  ariaAllSelected: exports_external.string(),
13699
13703
  ariaAllUnselected: exports_external.string(),
13700
13704
  ariaAllReseted: exports_external.string(),
13705
+ ariaChangeTopic: exports_external.string(),
13701
13706
  popups: exports_external.array(popup).optional(),
13702
13707
  termsAcceptButton: exports_external.string().optional(),
13703
13708
  termsReadButton: exports_external.string().optional(),
@@ -13709,6 +13714,7 @@ var translationSchema = exports_external.object({
13709
13714
  selectNone: exports_external.string(),
13710
13715
  resetToDefaults: exports_external.string(),
13711
13716
  messageTooLong: exports_external.string(),
13717
+ selectedTopic: exports_external.string(),
13712
13718
  changeTopic: exports_external.string(),
13713
13719
  searchSummaryExpand: exports_external.string(),
13714
13720
  searchSummaryCollapse: exports_external.string(),
@@ -1 +1 @@
1
- export const env={"PUBLIC_API_URL":"https://liipgpt.api.dev.genai.liip.ch/liipgpt","PUBLIC_CI_COMMIT_TAG":"3.6.1"}
1
+ export const env={"PUBLIC_API_URL":"https://liipgpt.api.dev.genai.liip.ch/liipgpt","PUBLIC_CI_COMMIT_TAG":"3.6.3"}
@@ -0,0 +1,74 @@
1
+ var e=`https://liipgpt.api.dev.genai.liip.ch/liipgpt`,t=`3.6.3`,n=new Map;async function r(e){let t=n.get(e);if(t)return t;let r=await fetch(e),i=r.url,a=await r.arrayBuffer(),o=await crypto.subtle.digest(`SHA-384`,a),s={versionedUrl:i,integrity:`sha384-${btoa(String.fromCharCode(...new Uint8Array(o)))}`};return n.set(e,s),s}var i=/\/\*\s*@host-class:\s*([a-zA-Z_-][\w-]*)\s*\*\//;function a(e,t=`your-custom-class-wrapper`){let n=e.match(i);if(n)return n[1];let r=e.match(/\.([a-zA-Z_-][\w-]*)\s+\.search-summary\b/);if(r)return r[1];let a=e.match(/liipgpt-search-summary\.([a-zA-Z_-][\w-]*)/);return a?a[1]:t}var o=`/* Host tokens — set on the custom element, inherited by .search-summary and descendants */
2
+ liipgpt-search-summary.your-custom-class-wrapper {
3
+ --search-summary-padding: 1rem;
4
+ --search-summary-background: #fff;
5
+ --search-summary-footer-background: #fff;
6
+ }
7
+ .your-custom-class-wrapper .search-summary {
8
+ --search-summary-background: #fff;
9
+ --search-summary-footer-background: #fff;
10
+ padding: var(--search-summary-padding);
11
+ padding-bottom: 0;
12
+ border: 1px solid #e2e8f0;
13
+ border-radius: 0.5rem;
14
+ background: var(--search-summary-background);
15
+ color: #1a202c;
16
+ font-family: system-ui, sans-serif;
17
+ }
18
+ .your-custom-class-wrapper .search-summary__link,
19
+ .your-custom-class-wrapper .search-summary__disclaimer a {
20
+ color: #c44b00;
21
+ }
22
+ /* Slot button styles */
23
+ .your-custom-class-btn {
24
+ display: inline-flex;
25
+ align-items: center;
26
+ padding: 0.5rem 1rem;
27
+ border: 1px solid #c44b00;
28
+ border-radius: 0.25rem;
29
+ background: transparent;
30
+ color: #c44b00;
31
+ cursor: pointer;
32
+ font-size: inherit;
33
+ }
34
+ .your-custom-class-btn--primary {
35
+ background: #c44b00;
36
+ border-color: #c44b00;
37
+ color: #fff;
38
+ }
39
+ .your-custom-class-btn--secondary {
40
+ border-color: transparent;
41
+ background: transparent;
42
+ color: #c44b00;
43
+ }`,s=`liipgpt-search-summary:not(:defined) { visibility: hidden; }
44
+ liipgpt-search-summary:not(:defined) > * { display: none !important; }
45
+ liipgpt-search-summary > [slot] { display: none; }
46
+ liipgpt-search-summary .search-summary:not(.search-summary--ready) { opacity: 0; }`,c=null;function l(e){c||(c=document.createElement(`style`),c.id=`preview-css-injection`,document.head.appendChild(c)),c.textContent=e}function u(){c?.remove(),c=null}var d=e=>e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`'`).replace(/\n/g,`&#10;`),f=(e,t)=>{if(t!==void 0){if(typeof t==`string`)return`${e}="${d(t)}"`;if(typeof t==`boolean`)return t?e:void 0}},p=(e,t)=>{if(!(typeof t!=`string`||!t))return`${e}='${t.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/'/g,`&#39;`)}'`},m=(e,n)=>n===`search-summary`?e.cdn.value?`https://cdn.jsdelivr.net/npm/@liip/liipgpt@${t}/search-summary/liipgpt-search-summary.iife.min.js`:`${e[`api-url`].value}/cdn/npm/@liip/liipgpt/search-summary/liipgpt-search-summary.iife.min.js`:e.cdn.value?`https://cdn.jsdelivr.net/npm/@liip/liipgpt@${t}/${n}/liipgpt-${n}.iife.min.js`:`${e[`api-url`].value}/cdn/npm/@liip/liipgpt/${n}/liipgpt-${n}.iife.min.js`,h=(e,t)=>t?`<script async src="${t.versionedUrl}" integrity="${t.integrity}" crossorigin="anonymous"><\/script>`:`<script async src="${e}"><\/script>`,g=(e,t,n)=>{let r=`<liipgpt-button ${[f(`lang`,e.lang.value),f(`force-theme`,e?.[`force-theme`]?.value),f(`api-url`,e[`api-url`].value),f(`button-class`,e[`button-class`]?.value),f(`button-style`,e[`button-style`]?.value)].filter(Boolean).join(` `)}</liipgpt-button>`;if(t){let t=`${h(m(e,`button`),n)}\n${r}`;return e.CHAT_CONFIG_OVERRIDE.value&&(t=`<script>\n${e.CHAT_CONFIG_OVERRIDE.value}<\/script>\n`+t),e.onclosechat.value&&(t+=`\n<script>${e.onclosechat.value}<\/script>`),t}return r},_=(e,t,n)=>{let r=`<liipgpt-chat ${[f(`lang`,e.lang.value),f(`force-theme`,e?.[`force-theme`]?.value),f(`api-url`,e[`api-url`].value),f(`loader-background`,e[`loader-background`].value),f(`loader-color`,e[`loader-color`].value),f(`flyout`,e.flyout.value),f(`flyout-style`,e[`flyout-style`].value),f(`flyout-class`,e[`flyout-class`].value),f(`chat-class`,e[`chat-class`].value),f(`inline-layout`,e[`inline-layout`].value),f(`force-chat-page`,e[`force-chat-page`].value),f(`autofire-predefined-question-id`,e[`autofire-predefined-question-id`].value),f(`question`,e.question.value),p(`additional-start-parameters`,e[`additional-start-parameters`].value)].filter(Boolean).join(` `)}>${e[`custom-loader`].value?`<div slot="loader">${e[`custom-loader`].value}</div>`:``}</liipgpt-chat>`;if(t){let t=`${h(m(e,`chat`),n)}\n${r}`;return e.CHAT_CONFIG_OVERRIDE.value&&(t=`<script>\n${e.CHAT_CONFIG_OVERRIDE.value}<\/script>\n`+t),e.onclosechat.value&&(t+=`\n<script>${e.onclosechat.value}<\/script>`),t}return r},v=`ai-overview`,y={de:`KI-Übersicht`,en:`AI overview`,fr:`Aperçu IA`,it:`Panoramica IA`},b=`<p><strong>Get an AI-generated summary above your search results.</strong></p>
47
+ <p>When enabled, an AI overview will appear at the top of every search results page, synthesising the most relevant information for your query. Classical search results remain accessible below.</p>
48
+ <p>AI-generated answers may not always be accurate. <a href="https://example.com/privacy">Privacy policy</a></p>`,x=`<button
49
+ type="button"
50
+ slot="activate-ai-button"
51
+ class="your-custom-class-btn your-custom-class-btn--primary"
52
+ >
53
+ Enable AI
54
+ </button>
55
+ <button
56
+ type="button"
57
+ slot="expand-answer-button"
58
+ class="your-custom-class-btn your-custom-class-btn--primary"
59
+ >
60
+ Full answer
61
+ </button>
62
+ <button
63
+ type="button"
64
+ slot="deactivate-ai-button"
65
+ class="your-custom-class-btn your-custom-class-btn--secondary"
66
+ >
67
+ Disable AI
68
+ </button>`,S=(e,t,n)=>{let r=typeof window<`u`&&new URLSearchParams(window.location.search).get(`q`)||`What is liip?`,i=typeof e.lang.value==`string`?e.lang.value:`en`,c=y[i]??y.en,l=e[`use-chat-config`]?.value,u=e[`host-css`]?.value,p=a((!l&&typeof u==`string`?u:``)||o),g=[f(`lang`,i),f(`api-url`,e[`api-url`].value),f(`question`,r),f(`labelled-by`,v),f(`height`,e.height?.value??`280`),f(`opt-in`,e[`opt-in`]?.value),f(`use-chat-config`,l),l?f(`force-theme`,e?.[`force-theme`]?.value):void 0,l?void 0:f(`class`,p)].filter(Boolean),_=e[`disclaimer-slot`]?.value,x=typeof _==`string`?_:b,S=!l&&e[`opt-in`]?.value?`\n <div slot="disclaimer">\n ${x.trim().replace(/\n/g,`
69
+ `)}\n </div>`:``,C=e[`buttons-slots`]?.value,w=typeof C==`string`?C.trim():``,T=!l&&w?`\n ${w.replace(/\n/g,`
70
+ `)}`:``,E=`<liipgpt-search-summary\n ${g.join(`
71
+ `)}\n>${S}${T}\n</liipgpt-search-summary>`,D=`${`<h2 id="${v}">${d(c)}</h2>`}\n${E}`;if(t){let t=m(e,`search-summary`),r=e[`host-css`]?.value,i=!l&&typeof r==`string`?r:``,a=`<style>\n${[s,...i?[i]:[]].join(`
72
+ `).split(`
73
+ `).map(e=>e.trim()?` `+e:``).join(`
74
+ `)}\n</style>\n`;return`${h(t,n)}\n${a}${D}`}return D},C=(e,t,n=!1)=>t===`link-button`?g(e,n):t===`search-summary`?S(e,n):_(e,n),w=async(e,t,n=!1)=>{if(!e[`use-sri`]?.value||!n)return C(e,t,n);let i=await r(m(e,t===`link-button`?`button`:t===`search-summary`?`search-summary`:`chat`));return t===`link-button`?g(e,n,i):t===`search-summary`?S(e,n,i):_(e,n,i)};export{m as a,u as c,w as i,e as l,b as n,o,C as r,l as s,x as t};
@@ -1 +1 @@
1
- import"./C00ruT0L.js";import{a as e,i as t,r as n}from"./DABlUYYh.js";var r={get data(){return e.data},get error(){return e.error},get form(){return e.form},get params(){return e.params},get route(){return e.route},get state(){return e.state},get status(){return e.status},get url(){return e.url}};Object.defineProperty({get from(){return t.current?t.current.from:null},get to(){return t.current?t.current.to:null},get type(){return t.current?t.current.type:null},get willUnload(){return t.current?t.current.willUnload:null},get delta(){return t.current?t.current.delta:null},get complete(){return t.current?t.current.complete:null}},`current`,{get(){throw Error(`Replace navigating.current.<prop> with navigating.<prop>`)}}),n.updated.check;var i=r;export{i as t};
1
+ import"./C00ruT0L.js";import{a as e,i as t,r as n}from"./Nw8j0Xyw.js";var r={get data(){return e.data},get error(){return e.error},get form(){return e.form},get params(){return e.params},get route(){return e.route},get state(){return e.state},get status(){return e.status},get url(){return e.url}};Object.defineProperty({get from(){return t.current?t.current.from:null},get to(){return t.current?t.current.to:null},get type(){return t.current?t.current.type:null},get willUnload(){return t.current?t.current.willUnload:null},get delta(){return t.current?t.current.delta:null},get complete(){return t.current?t.current.complete:null}},`current`,{get(){throw Error(`Replace navigating.current.<prop> with navigating.<prop>`)}}),n.updated.check;var i=r;export{i as t};
@@ -1 +1 @@
1
- import"./DV91TmsB.js";import{i as e,t}from"./DFBUyDYh.js";import"./MRyhzcyW.js";import{a as n,n as r}from"./CX0dfddQ.js";var i=async e=>{let t=await(await fetch(`${e}/chatconfig`)).json();return n.parse(t)};async function a({apiUrl:n,lang:a,forceTheme:o}){let s=e(await i(n));return{chatConfig:s,language:r(a,s.supportedLanguages),colorScheme:t(Object.keys(s.fullTheme))}}export{a as loadChatConfig};
1
+ import"./DV91TmsB.js";import{i as e,t}from"./D6Qx_EAy.js";import"./MRyhzcyW.js";import{a as n,n as r}from"./CZiOHSGl.js";var i=async e=>{let t=await(await fetch(`${e}/chatconfig`)).json();return n.parse(t)};async function a({apiUrl:n,lang:a,forceTheme:o}){let s=e(await i(n));return{chatConfig:s,language:r(a,s.supportedLanguages),colorScheme:t(Object.keys(s.fullTheme))}}export{a as loadChatConfig};
@@ -0,0 +1 @@
1
+ import{r as e,t}from"./CibALFW0.js";import{At as n,Et as r,Ft as i,I as a,It as o,J as s,Lt as c,O as l,Ot as u,Pt as d,Rt as f,St as p,Vt as m,at as h,bt as g,ct as _,dt as v,g as y,ht as b,i as x,j as ee,jt as S,m as te,mt as C,o as w,q as T,rt as E,s as ne,st as re,wt as D}from"./C00ruT0L.js";import{t as O}from"./DjVmpym-.js";import{i as ie,n as ae,r as oe,t as se}from"./D6Qx_EAy.js";import{d as ce,l as k,o as le,p as ue,u as de}from"./GwQP32Cz.js";import{i as fe,n as A,t as pe}from"./CZiOHSGl.js";var j={randomUUID:typeof crypto<`u`&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function me(e,t,n){e||={};let r=e.random??e.rng?.()??de();if(r.length<16)throw Error(`Random bytes length must be >= 16`);if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,t){if(n||=0,n<0||n+16>t.length)throw RangeError(`UUID byte range ${n}:${n+15} is out of buffer bounds`);for(let e=0;e<16;++e)t[n+e]=r[e];return t}return ce(r)}function M(e,t,n){return j.randomUUID&&!t&&!e?j.randomUUID():me(e,t,n)}var N={de:{aborted:`Verbindung zum Server wurde unerwartet unterbrochen. Bitte versuchen Sie es erneut.`,"client-error":`Ein unbekannter Fehler ist aufgetreten. Bitte versuchen Sie es erneut.`,"server-error":`Ein unbekannter Fehler ist aufgetreten. Bitte versuchen Sie es erneut.`,"sse-error":`Ein unbekannter Fehler ist aufgetreten. Bitte versuchen Sie es erneut.`,blocked:`Ihre Anfrage wurde blockiert.`,"pii-detected":`Es wurden persönliche Daten erkannt. Bitte entfernen Sie diese und versuchen Sie es erneut.`,"incomplete-error":`Ein unbekannter Fehler ist aufgetreten. Die Antwort könnte unvollständig sein.`,"unexpected-call":`Ein unbekannter Fehler ist aufgetreten. Die Antwort könnte unvollständig sein.`,"quota-reached":`Kontingent überschritten. Bitte versuchen Sie es später erneut.`,"rate-limit":`Kontingent überschritten. Bitte versuchen Sie es später erneut.`,maintenance:`Der Chat ist derzeit nicht verfügbar. Bitte versuchen Sie es später erneut.`,"too-long":`Ihre Frage war zu lang, versuchen Sie es mit einer Kürzeren.`,"too-short":`Ihre Frage war zu kurz, versuchen Sie es mit einer Längeren.`,"feedback-failed":`Feedback senden fehlgeschlagen. Bitte versuchen Sie es erneut.`,"speech-not-supported":`Spracherkennung wird nicht unterstützt.`,"speech-transcription-failed":`Sprachtranskription fehlgeschlagen.`,"speech-no-text-detected":`Kein Text in der Spracheingabe erkannt.`,"speech-microphone-access-denied":`Mikrofonzugriff verweigert.`},en:{aborted:`Connection to the server was unexpectedly interrupted. Please try again.`,"client-error":`An unknown error has occurred. Please try again.`,"server-error":`An unknown error has occurred. Please try again.`,"sse-error":`An unknown error has occurred. Please try again.`,blocked:`Your request has been blocked.`,"pii-detected":`Personal data has been detected. Please remove it and try again.`,"incomplete-error":`An unknown error has occurred. The response might be incomplete.`,"unexpected-call":`An unknown error has occurred. The response might be incomplete.`,"quota-reached":`Quota exceeded. Please try again later.`,"rate-limit":`Quota exceeded. Please try again later.`,maintenance:`The chat is currently unavailable. Please try again later.`,"too-long":`Your question was too long, try a shorter one.`,"too-short":`Your question was too short, try a longer one.`,"feedback-failed":`Failed to send feedback. Please try again.`,"speech-not-supported":`Speech recognition is not supported.`,"speech-transcription-failed":`Speech transcription failed.`,"speech-no-text-detected":`No text detected in speech input.`,"speech-microphone-access-denied":`Microphone access denied.`},it:{aborted:`La connessione al server è stata interrotta inaspettatamente. Si prega di riprovare.`,"client-error":`Si è verificato un errore sconosciuto. Si prega di riprovare.`,"server-error":`Si è verificato un errore sconosciuto. Si prega di riprovare.`,"sse-error":`Si è verificato un errore sconosciuto. Si prega di riprovare.`,blocked:`La tua richiesta è stata bloccata.`,"pii-detected":`Sono stati rilevati dati personali. Si prega di rimuoverli e riprovare.`,"incomplete-error":`Si è verificato un errore sconosciuto. La risposta potrebbe essere incompleta.`,"unexpected-call":`Si è verificato un errore sconosciuto. La risposta potrebbe essere incompleta.`,"quota-reached":`Quota superata. Si prega di riprovare più tardi.`,"rate-limit":`Quota superata. Si prega di riprovare più tardi.`,maintenance:`La chat non è attualmente disponibile. Si prega di riprovare più tardi.`,"too-long":`La tua domanda era troppo lunga, prova con una più breve.`,"too-short":`La tua domanda era troppo breve, prova con una più lunga.`,"feedback-failed":`Invio del feedback non riuscito. Si prega di riprovare.`,"speech-not-supported":`Il riconoscimento vocale non è supportato.`,"speech-transcription-failed":`Trascrizione vocale fallita.`,"speech-no-text-detected":`Nessun testo rilevato nell'input vocale.`,"speech-microphone-access-denied":`Accesso al microfono negato.`},fr:{aborted:`La connexion au serveur a été interrompue de façon inattendue. Veuillez réessayer.`,"client-error":`Une erreur inconnue s'est produite. Veuillez réessayer.`,"server-error":`Une erreur inconnue s'est produite. Veuillez réessayer.`,"sse-error":`Une erreur inconnue s'est produite. Veuillez réessayer.`,"pii-detected":`Des données personnelles ont été détectées. Veuillez les supprimer et réessayer.`,blocked:`Votre demande a été bloquée.`,"incomplete-error":`Une erreur inconnue s'est produite. La réponse pourrait être incomplète.`,"unexpected-call":`Une erreur inconnue s'est produite. La réponse pourrait être incomplète.`,"quota-reached":`Quota dépassé. Veuillez réessayer plus tard.`,"rate-limit":`Quota dépassé. Veuillez réessayer plus tard.`,maintenance:`Le chat est actuellement indisponible. Veuillez réessayer plus tard.`,"too-long":`Votre question était trop longue, essayez d'en poser une plus courte.`,"too-short":`Votre question était trop courte, essayez d'en poser une plus longue.`,"feedback-failed":`Échec de l'envoi du feedback. Veuillez réessayer.`,"speech-not-supported":`La reconnaissance vocale n'est pas prise en charge.`,"speech-transcription-failed":`Échec de la transcription vocale.`,"speech-no-text-detected":`Aucun texte détecté dans l'entrée vocale.`,"speech-microphone-access-denied":`Accès au microphone refusé.`}},P={de:{email:`Bitte keine E-Mail Adressen eingeben`,creditCard:`Bitte keine Kreditkarteninformationen eingeben`,ahv:`Bitte keine AHV-Nummern eingeben`,phoneSwiss:`Bitte keine Telefonnummern eingeben`,phoneInternational:`Bitte keine Telefonnummern eingeben`,swissPassport:`Bitte keine Passinformationen eingeben`,longNumber:`Bitte keine langen Nummern eingeben`},en:{email:`Please do not enter email addresses`,creditCard:`Please do not enter credit card information`,ahv:`Please do not enter AHV numbers`,phoneSwiss:`Please do not enter phone numbers`,phoneInternational:`Please do not enter phone numbers`,swissPassport:`Please do not enter passport information`,longNumber:`Please do not enter long numbers`},it:{email:`Si prega di non inserire indirizzi email`,creditCard:`Si prega di non inserire informazioni sulla carta di credito`,ahv:`Si prega di non inserire numeri AVS`,phoneSwiss:`Si prega di non inserire numeri di telefono`,phoneInternational:`Si prega di non inserire numeri di telefono`,swissPassport:`Si prega di non inserire informazioni sul passaporto`,longNumber:`Si prega di non inserire numeri lunghi`},fr:{email:`Veuillez ne pas saisir d'adresses e-mail`,creditCard:`Veuillez ne pas saisir d'informations de carte de crédit`,ahv:`Veuillez ne pas saisir de numéros AVS`,phoneSwiss:`Veuillez ne pas saisir de numéros de téléphone`,phoneInternational:`Veuillez ne pas saisir de numéros de téléphone`,swissPassport:`Veuillez ne pas saisir d'informations de passeport`,longNumber:`Veuillez ne pas saisir de longs numéros`}},he=t(((e,t)=>{t.exports=function e(t,n){if(t===n)return!0;if(t&&n&&typeof t==`object`&&typeof n==`object`){if(t.constructor!==n.constructor)return!1;var r,i,a;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(a=Object.keys(t),r=a.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,a[i]))return!1;for(i=r;i--!==0;){var o=a[i];if(!e(t[o],n[o]))return!1}return!0}return t!==t&&n!==n}}));function ge(...e){return e.filter(Boolean).join(` `)}var _e=typeof document<`u`,ve=typeof window<`u`?window:void 0;typeof window<`u`&&window.document,typeof window<`u`&&window.navigator,typeof window<`u`&&window.location;function ye(e){let t=e.activeElement;for(;t?.shadowRoot;){let e=t.shadowRoot.activeElement;if(e===t)break;t=e}return t}new class{#e;#t;constructor(e={}){let{window:t=ve,document:r=t?.document}=e;t!==void 0&&(this.#e=r,this.#t=n(e=>{let n=E(t,`focusin`,e),r=E(t,`focusout`,e);return()=>{n(),r()}}))}get current(){return this.#t?.(),this.#e?ye(this.#e):null}};var F=class{#e;#t;constructor(e){this.#e=e,this.#t=Symbol(e)}get key(){return this.#t}exists(){return i(this.#t)}get(){let e=d(this.#t);if(e===void 0)throw Error(`Context "${this.#e}" not found`);return e}getOr(e){let t=d(this.#t);return t===void 0?e:t}set(e){return f(this.#t,e)}};function be(e,t){switch(e){case`post`:C(t);break;case`pre`:b(t);break}}function I(e,t,n,r={}){let{lazy:i=!1}=r,a=!i,o=Array.isArray(e)?[]:void 0;be(t,()=>{let t=Array.isArray(e)?e.map(e=>e()):e();if(!a){a=!0,o=t;return}let r=_(()=>n(t,o));return o=t,r})}function L(e,t,n){let r=v(()=>{let i=!1;I(e,t,(e,t)=>{if(i){r();return}let a=n(e,t);return i=!0,a},{lazy:!0})});C(()=>r)}function R(e,t,n){I(e,`post`,t,n)}function xe(e,t,n){I(e,`pre`,t,n)}R.pre=xe;function Se(e,t){L(e,`post`,t)}function Ce(e,t){L(e,`pre`,t)}Se.pre=Ce;function we(e,t){let n,r=null;return(...i)=>new Promise(a=>{r&&r(void 0),r=a,clearTimeout(n),n=setTimeout(async()=>{let t=await e(...i);r&&=(r(t),null)},t)})}function Te(e,t){let n=0,r=null;return(...i)=>{let a=Date.now();return n&&a-n<t?r??Promise.resolve(void 0):(n=a,r=e(...i),r)}}function z(e,t,n={},i){let{lazy:a=!1,once:o=!1,initialValue:s,debounce:c,throttle:l}=n,u=r(p(s)),d=r(!1),f=r(void 0),m=r(p([])),g=()=>{h(m).forEach(e=>e()),D(m,[],!0)},_=e=>{D(m,[...h(m),e],!0)},v=async(e,n,r=!1)=>{try{D(d,!0),D(f,void 0),g();let i=new AbortController;_(()=>i.abort());let a=await t(e,n,{data:h(u),refetching:r,onCleanup:_,signal:i.signal});return D(u,a,!0),a}catch(e){e instanceof DOMException&&e.name===`AbortError`||D(f,e,!0);return}finally{D(d,!1)}},y=c?we(v,c):l?Te(v,l):v,b=Array.isArray(e)?e:[e],x;return i((t,n)=>{o&&x||(x=t,y(Array.isArray(e)?t:t[0],Array.isArray(e)?n:n?.[0]))},{lazy:a}),{get current(){return h(u)},get loading(){return h(d)},get error(){return h(f)},mutate:e=>{D(u,e,!0)},refetch:t=>{let n=b.map(e=>e());return y(Array.isArray(e)?n:n[0],Array.isArray(e)?n:n[0],t??!0)}}}function Ee(e,t,n){return z(e,t,n,(t,n)=>{let r=Array.isArray(e)?e:[e];R(()=>r.map(e=>e()),(e,n)=>{t(e,n??[])},n)})}function De(e,t,n){return z(e,t,n,(t,n)=>{let r=Array.isArray(e)?e:[e];R.pre(()=>r.map(e=>e()),(e,n)=>{t(e,n??[])},n)})}Ee.pre=De,new F(`richColorsContext`);var Oe=new F(`<Toaster/>`),B=0,ke=class{#e=r(p([]));get toasts(){return h(this.#e)}set toasts(e){D(this.#e,e,!0)}#t=r(p([]));get heights(){return h(this.#t)}set heights(e){D(this.#t,e,!0)}#n=e=>{let t=this.toasts.findIndex(t=>t.id===e);return t===-1?null:t};addToast=e=>{_e&&this.toasts.unshift(e)};updateToast=({id:e,data:t,type:n,message:r})=>{let i=this.toasts.findIndex(t=>t.id===e),a=this.toasts[i];this.toasts[i]={...a,...t,id:e,title:r,type:n,updated:!0}};create=e=>{let{message:t,...n}=e,r=typeof e?.id==`number`||e.id&&e.id?.length>0?e.id:B++,i=e.dismissible===void 0?e.dismissable===void 0?!0:e.dismissable:e.dismissible,a=e.type===void 0?`default`:e.type;return _(()=>{this.toasts.find(e=>e.id===r)?this.updateToast({id:r,data:e,type:a,message:t,dismissible:i}):this.addToast({...n,id:r,title:t,dismissible:i,type:a})}),r};dismiss=e=>(_(()=>{if(e===void 0){this.toasts=this.toasts.map(e=>({...e,dismiss:!0}));return}let t=this.toasts.findIndex(t=>t.id===e);this.toasts[t]&&(this.toasts[t]={...this.toasts[t],dismiss:!0})}),e);remove=e=>{if(e===void 0){this.toasts=[];return}let t=this.#n(e);if(t!==null)return this.toasts.splice(t,1),e};message=(e,t)=>this.create({...t,type:`default`,message:e});error=(e,t)=>this.create({...t,type:`error`,message:e});success=(e,t)=>this.create({...t,type:`success`,message:e});info=(e,t)=>this.create({...t,type:`info`,message:e});warning=(e,t)=>this.create({...t,type:`warning`,message:e});loading=(e,t)=>this.create({...t,type:`loading`,message:e});promise=(e,t)=>{if(!t)return;let n;t.loading!==void 0&&(n=this.create({...t,promise:e,type:`loading`,message:typeof t.loading==`string`?t.loading:t.loading()}));let r=e instanceof Promise?e:e(),i=n!==void 0;return r.then(e=>{if(typeof e==`object`&&e&&`ok`in e&&typeof e.ok==`boolean`&&!e.ok){i=!1;let t=Ae(e);this.create({id:n,type:`error`,message:t})}else if(t.success!==void 0){i=!1;let r=typeof t.success==`function`?t.success(e):t.success;this.create({id:n,type:`success`,message:r})}}).catch(e=>{if(t.error!==void 0){i=!1;let r=typeof t.error==`function`?t.error(e):t.error;this.create({id:n,type:`error`,message:r})}}).finally(()=>{i&&(this.dismiss(n),n=void 0),t.finally?.()}),n};custom=(e,t)=>{let n=t?.id||B++;return this.create({component:e,id:n,...t}),n};removeHeight=e=>{this.heights=this.heights.filter(t=>t.toastId!==e)};setHeight=e=>{let t=this.#n(e.toastId);if(t===null){this.heights.push(e);return}this.heights[t]=e};reset=()=>{this.toasts=[],this.heights=[]}};function Ae(e){return e&&typeof e==`object`&&`status`in e?`HTTP error! Status: ${e.status}`:`Error! ${e}`}var V=new ke;function je(e,t){return V.create({message:e,...t})}var Me=class{#e=u(()=>V.toasts.filter(e=>!e.dismiss));get toasts(){return h(this.#e)}},H=Object.assign(je,{success:V.success,info:V.info,warning:V.warning,error:V.error,custom:V.custom,message:V.message,promise:V.promise,dismiss:V.dismiss,loading:V.loading,getActiveToasts:()=>V.toasts.filter(e=>!e.dismiss)}),Ne=e=>{let t=new Set;Object.getOwnPropertyNames(e).forEach(e=>t.add(e));let n=Object.getPrototypeOf(e);for(;n&&n!==Object.prototype;)Object.getOwnPropertyNames(n).forEach(e=>t.add(e)),n=Object.getPrototypeOf(n);return Array.from(t)},Pe=(e,t)=>{let n={};return t.forEach(t=>{n[t]=e[t]}),n},Fe=console.warn,Ie=()=>{},U=(e,t)=>_(()=>{console.warn=Ie;let n=m(t?Pe(e,t):e);return console.warn=Fe,n}),Le=e=>e&&typeof e.then==`function`,Re=class{config;self;devtools;stateKeys;constructor(e,t){this.config=e,this.self=t,typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION__&&(this.stateKeys=Ne(this.config.state),this.devtools=window.__REDUX_DEVTOOLS_EXTENSION__.connect({name:this.config.name??`updatelogic`}),this.devtools.init(this.createStateSnapshot()),this.devtools.subscribe(e=>{e.type===`DISPATCH`&&e.state}))}createStateSnapshot(){return U(this.config.state,this.stateKeys)}sendStart(e,t){this.devtools.send({type:`→ ${e}`,args:t},this.createStateSnapshot())}sendError(e,t,n){this.devtools.send({type:`❌ ${e}`,args:t,error:n},this.createStateSnapshot())}sendSuccess(e,t,n){this.devtools.send({type:`✓ ${e}`,args:t,return:n},this.createStateSnapshot())}isIncluded(e){return this.config.excludeInDevTools?!this.config.excludeInDevTools.includes(e):!0}createProxyFunction(e,t){let n=this.devtools&&this.isIncluded(e);return typeof t==`function`?(...r)=>{if(!n)return _(()=>t.call(this.self,...r));let i=U(r);this.sendStart(e,i);try{let n=_(()=>t.call(this.self,...r));return Le(n)?n.then(t=>(this.sendSuccess(e,i,t),t),t=>{throw this.sendError(e,i,t),t}):(this.sendSuccess(e,i,n),n)}catch(t){throw this.sendError(e,i,t),t}}:t}},ze=(e,t)=>{let n={},r=new Re(e,n);return Object.keys(t).forEach(e=>{if(e===`state`||e===`name`)return;let i=t[e];n[e]=r.createProxyFunction(e,i)}),n};async function Be(){if(typeof navigator>`u`||!navigator.mediaDevices||!navigator.mediaDevices.enumerateDevices)return!1;try{return(await navigator.mediaDevices.enumerateDevices()).some(e=>e.kind===`audioinput`)}catch(e){return console.error(`Error checking for microphone:`,e),!1}}function W(){return typeof window>`u`||!window.MediaRecorder?null:MediaRecorder.isTypeSupported(`audio/mp4`)?`audio/mp4`:MediaRecorder.isTypeSupported(`audio/webm`)?`audio/webm`:MediaRecorder.isTypeSupported(`audio/wav`)?`audio/wav`:null}function Ve(){return typeof window>`u`?!1:!!(window.MediaRecorder&&W())}function He(){if(typeof window>`u`)return!1;if(`ontouchstart`in window||navigator.maxTouchPoints>0)return!0;let e=navigator.msMaxTouchPoints;return!!(`msMaxTouchPoints`in navigator&&e&&e>0)}function Ue(){return typeof window>`u`?!1:!!(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||He())}var G=class{mediaRecorder=null;audioChunks=[];started=!1;starting=!1;stream=null;options;audioContext=null;analyser=null;dataArray=null;volumeUpdateInterval=null;constructor(e={}){this.options=e}async start(){if(this.started||this.starting){console.warn(`AudioRecorder: Start already in progress or already started`);return}if(!Ve()||!navigator.mediaDevices){let e=Error(`MediaRecorder not supported or no microphone access`);throw this.options.onError?.(e),e}try{if(this.starting=!0,this.stream=await navigator.mediaDevices.getUserMedia({audio:{echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0},video:!1}),!this.starting){this.stopStream(this.stream);return}this.mediaRecorder&&this.mediaRecorder.state!==`inactive`&&(console.warn(`AudioRecorder: MediaRecorder already active, stopping previous recording`),this.mediaRecorder.stop(),this.cleanup()),this.started=!0,this.starting=!1;let e=W();if(!e)throw Error(`No supported media type found`);let t={mimeType:e};this.mediaRecorder=new MediaRecorder(this.stream,t),this.audioChunks=[],this.mediaRecorder.ondataavailable=e=>{e.data.size>0&&this.audioChunks.push(e.data)},this.mediaRecorder.onstop=async()=>{let t=this.audioChunks.length>0?new Blob(this.audioChunks,{type:e}):null;await this.options.onDataAvailable?.(t),this.options.onStop?.(),this.cleanup()},this.mediaRecorder.onerror=e=>{let t=Error(`MediaRecorder error: ${e}`);this.options.onError?.(t),this.cleanup()},this.mediaRecorder.start(),this.setupVolumeAnalysis(this.stream),this.options.onStart?.()}catch(e){this.started=!1,this.starting=!1;let t=e instanceof Error?e:Error(String(e));throw this.options.onError?.(t),t}}stop(){this.started=!1,this.starting=!1,this.volumeUpdateInterval&&=(clearInterval(this.volumeUpdateInterval),null),this.mediaRecorder&&this.mediaRecorder.state!==`inactive`?this.mediaRecorder.stop():(this.stream&&this.stopStream(this.stream),this.cleanup())}setupVolumeAnalysis(e){if(this.options.onVolumeChange)try{this.audioContext=new AudioContext,this.analyser=this.audioContext.createAnalyser(),this.analyser.fftSize=256,this.analyser.smoothingTimeConstant=.8;let t=this.analyser.frequencyBinCount;this.dataArray=new Uint8Array(t),this.audioContext.createMediaStreamSource(e).connect(this.analyser),this.startVolumeMonitoring()}catch(e){console.warn(`Failed to set up volume analysis:`,e)}}startVolumeMonitoring(){!this.analyser||!this.dataArray||!this.options.onVolumeChange||(this.volumeUpdateInterval=window.setInterval(()=>{if(!this.analyser||!this.dataArray||!this.started)return;this.analyser.getByteFrequencyData(this.dataArray);let e=0;for(let t=0;t<this.dataArray.length;t++)e+=this.dataArray[t]*this.dataArray[t];let t=Math.sqrt(e/this.dataArray.length)/255;t=(t*3)**.7;let n=Math.min(100,Math.max(0,Math.round(t*100)));this.options.onVolumeChange?.(n)},100))}get recording(){return this.started&&this.mediaRecorder?.state===`recording`}get isStarting(){return this.starting}stopStream(e){e.getTracks().forEach(e=>e.stop())}cleanup(){this.volumeUpdateInterval&&=(clearInterval(this.volumeUpdateInterval),null),this.audioContext&&=(this.audioContext.close().catch(console.warn),null),this.analyser=null,this.dataArray=null,this.stream&&=(this.stopStream(this.stream),null),this.mediaRecorder=null,this.audioChunks=[],this.started=!1,this.starting=!1}static isSupported(){return Ve()}static getSupportedMediaType(){return W()}},We=ue(),Ge=(e,t)=>{if(e instanceof HTMLTextAreaElement&&t instanceof HTMLTextAreaElement){t.textContent=e.value;return}if(e instanceof HTMLSelectElement&&t instanceof HTMLSelectElement){Array.from(e.options).forEach((e,n)=>{t.options[n]&&(t.options[n].selected=e.selected)});return}e instanceof HTMLInputElement&&t instanceof HTMLInputElement&&(t.setAttribute(`value`,e.value),(e.type===`checkbox`||e.type===`radio`)&&(e.checked?t.setAttribute(`checked`,`checked`):t.removeAttribute(`checked`)))},Ke=e=>{let t=e.cloneNode(!0);if(!(t instanceof Element))return``;let n=`input, textarea, select`,r=e.querySelectorAll(n),i=t.querySelectorAll(n);return r.forEach((e,t)=>{let n=i[t];n&&Ge(e,n)}),We.sanitize(t.outerHTML,{FORBID_TAGS:[`style`,`script`],FORBID_ATTR:[`style`,`class`]})},qe=e=>{if(!e?.length)return[];let t=e.join(`,`),n=document.querySelectorAll(t);return Array.from(n,Ke)},K=`liipgpt:context`,Je=class{contextVersion=0;#e=r();get currentContext(){return h(this.#e)}set currentContext(e){D(this.#e,e,!0)}getFromLocalStorage(){let e=localStorage.getItem(K);if(e){let t;try{if(t=JSON.parse(e),t.version!==this.contextVersion){localStorage.removeItem(K);return}else return t.context}catch(e){console.error(`Failed to parse liipgpt:context`,e);return}}}storeToLocalStorage(){localStorage.setItem(`liipgpt:context`,JSON.stringify({version:Z.data.chatConfig.contextVersion,context:this.currentContext}))}constructor(e){this.init=e,this.currentContext=this.getFromLocalStorage()??e.initialValue}getContext(){return m(this.currentContext)}setContextVersion(e){this.contextVersion=e}setContext(e){this.currentContext=e,this.storeToLocalStorage()}resetContext(){this.currentContext=this.init.initialValue,this.storeToLocalStorage()}updateContext(e){this.setContext(e(this.currentContext))}},Ye=()=>localStorage.getItem(K),Xe=[{type:`email`,check:e=>/\b[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}\b/.test(e)},{type:`creditCard`,check:e=>/\b(?:\d[ -]*?){13,16}\b/.test(e)},{type:`ahv`,check:e=>/\b756\.\d{4}\.\d{4}\.\d{2}\b/.test(e)},{type:`phoneSwiss`,check:e=>/\b0(?:\s*\d){2}(?:\s*\/\s*)?(?:\s*\d){7,}\b/.test(e)},{type:`phoneInternational`,check:e=>/(?:\+|00)(?:\s*\d){10,}\b/.test(e)},{type:`swissPassport`,check:e=>/\b[A-HJ-NP-Z](?=.*\d)[A-HJ-NP-Z0-9]{7}\b/.test(e)},{type:`longNumber`,check:e=>/\b\d{9,}\b/.test(e)}],Ze=e=>{for(let t of Xe)if(t.check(e))return t.type},q=`liipgpt:selectorValues`,J=`liipgpt:selectorKnownDefaults`,Qe=()=>{try{let e=k.getItem(q),t=k.getItem(J);return e?{values:JSON.parse(e),knownDefaults:t?JSON.parse(t):{}}:null}catch{return null}},$e=e=>{let t={};for(let n of e)t[n.settingName]=n.defaultValues??(n.allowEmpty?[]:[n.values[0]]).filter(Boolean);return t},et=(e,t)=>{try{let n=$e(t);k.setItem(q,JSON.stringify(e)),k.setItem(J,JSON.stringify(n))}catch(e){console.error(`Failed to save selector values:`,e)}},tt=e=>{try{let t=Qe();if(!t)return;delete t.values[e],delete t.knownDefaults[e],k.setItem(q,JSON.stringify(t.values)),k.setItem(J,JSON.stringify(t.knownDefaults))}catch(e){console.error(`Failed to clear selector saved state:`,e)}},nt=e=>{let t=Qe(),n=e.map(e=>{let n=e.defaultValues??(e.allowEmpty?[]:[e.values[0]]).filter(Boolean);if(!t?.values[e.settingName])return[e.settingName,n];let r=t.values[e.settingName],i=t.knownDefaults[e.settingName]||[],a=r.filter(t=>e.values.includes(t)),o=i.filter(e=>!n.includes(e)),s=a.filter(e=>!o.includes(e)),c=n.filter(e=>!i.includes(e)&&!s.includes(e)),l=[...s,...c];return l.length===0&&!e.allowEmpty?[e.settingName,n]:[e.settingName,l]});return Object.fromEntries(n)},rt=class extends Error{constructor(e){super(e),this.name=`UnreachableError`}},it=e(he(),1),at=(e,t)=>{if(!e)return;let n=t.find(t=>t.id===e);return n||console.warn(`autofire-predefined-question-id="${e}" did not match any loaded predefined question. Falling back to default routing.`),n},Y=(e,t,n,r,i)=>{if(e&&!t)return{name:`consent-page`};let a=new URLSearchParams(window.location.search),o=a.get(`q`),s=a.get(`id`)??void 0,c=a.get(`sid`)??void 0;return o?{name:`chat-page`,query:o,predefinedQuestionId:s,switchQuestionId:c}:i?{name:`chat-page`,query:i}:r?{name:`chat-page`,query:r.question,predefinedQuestionId:r.id}:n?{name:`chat-page`}:{name:`start-page`}},ot=e=>{if(e)try{let t=JSON.parse(e);if(t&&typeof t==`object`&&!Array.isArray(t))return t;console.warn(`additional-start-parameters must be a JSON object. Received: ${e}`);return}catch(t){console.warn(`Failed to parse additional-start-parameters as JSON: ${e}`,t);return}},X=e=>e?e.map(e=>({id:M(),...e})):[],Z=new class{#e=r(p({}));get data(){return h(this.#e)}set data(e){D(this.#e,e,!0)}#t=r(p({}));get targets(){return h(this.#t)}set targets(e){D(this.#t,e,!0)}#n=r(!1);get initialized(){return h(this.#n)}set initialized(e){D(this.#n,e,!0)}#r=r(0);get currentAudioVolume(){return h(this.#r)}set currentAudioVolume(e){D(this.#r,e,!0)}ariaLiveMessagesClearingTimeoutDuration=350;#i=r(null);get currentAudioRecorder(){return h(this.#i)}set currentAudioRecorder(e){D(this.#i,e,!0)}#a=r(!1);get isTranscribing(){return h(this.#a)}set isTranscribing(e){D(this.#a,e,!0)}#o=u(()=>{if(!this.initialized)return[];let e=this.data.chatConfig.menu;return e?e[this.data.language]??[]:[]});get menu(){return h(this.#o)}set menu(e){D(this.#o,e)}#s=u(()=>this.initialized?this.data.chatConfig.translations[this.data.language]??{}:{});get t(){return h(this.#s)}set t(e){D(this.#s,e)}#c=u(()=>this.initialized?N[this.data.language]??{}:N.en??{});get errorTranslations(){return h(this.#c)}set errorTranslations(e){D(this.#c,e)}#l=u(()=>this.initialized?P[this.data.language]??{}:P.en??{});get piiTranslations(){return h(this.#l)}set piiTranslations(e){D(this.#l,e)}#u=u(()=>this.initialized?this.data.currentColorScheme:`light`);get colorScheme(){return h(this.#u)}set colorScheme(e){D(this.#u,e)}#d=u(()=>this.initialized?this.data.chatConfig.fullTheme[this.data.currentColorScheme]:{});get themeBase(){return h(this.#d)}set themeBase(e){D(this.#d,e)}#f=u(()=>this.themeBase.tokens);get theme(){return h(this.#f)}set theme(e){D(this.#f,e)}#p=u(()=>{if(!this.initialized)return[];let e=[];for(let t of this.data.chatConfig.selectorsConfig)t.allowEmpty||(this.data.selectorValues[t.settingName]||[]).length===0&&e.push(t.settingName);return e});get selectorsWithErrors(){return h(this.#p)}set selectorsWithErrors(e){D(this.#p,e)}#m=u(()=>{if(!this.initialized)return!1;let e=this.data.chatConfig;return this.data.route.name===`chat-page`&&!e.forceChatPage||e.showContextInfo||e.showContextMenu||e.showCloseChatButton||this.data.props.flyout});get hasMainNavigationContent(){return h(this.#m)}set hasMainNavigationContent(e){D(this.#m,e)}#h=u(()=>{if(!this.initialized)return``;let e=this.t,t=this.data.chatConfig,n=this.data.route.name===`chat-page`&&!t.forceChatPage,r=[];return n&&r.push(e.newChat),t.showContextInfo&&r.push(e.ariaMainNavigationInfo),t.showContextMenu&&(this.menu.length>0&&r.push(e.ariaMainNavigationLinks),t.supportedLanguages.length>0&&r.push(e.ariaMainNavigationLanguageSwitch),this.data.has2ColorSchemes&&r.push(e.ariaMainNavigationColorMode)),(t.showCloseChatButton||this.data.props.flyout)&&r.push(e.closeChat),r.length===0?e.ariaMainNavigation:`${e.ariaMainNavigation}: ${r.join(`, `)}`});get ariaMainNavigationRegion(){return h(this.#h)}set ariaMainNavigationRegion(e){D(this.#h,e)}},Q,$,st,ct=ze({name:`chat-logic`,state:Z,excludeInDevTools:[`onInput`]},{async init(e){$=e;let t=$.speechRecognitionApiKey||void 0;Q=new le({apiUrl:$.apiUrl,apiKey:$.apiKey,speechRecognitionApiKey:t,strict:!0,startParameters:ot($.additionalStartParameters)});try{let e=await Q.getChatConfig();window.CHAT_CONFIG_OVERRIDE&&Object.assign(e,window.CHAT_CONFIG_OVERRIDE);let t=(await Q.getMetadata()).mode===`maintenance`;t&&this.showErrorToast(`maintenance`);let n=ie(e);$.inlineLayout!==void 0&&(n.inlineLayout=$.inlineLayout),$.forceChatPage!==void 0&&(n.forceChatPage=$.forceChatPage);let r;r=$.lang?A($.lang,n.supportedLanguages):pe(n.supportedLanguages),fe(r,Z.targets.mainElement);let i=await this.getPredefinedQuestions(r),a=n.translations[r]?.ariaOpensInNewTab;a&&Q.setNewTabSrText(a);let o=[];if(n.renderKatex){let e=await O(()=>import(`https://esm.sh/marked-katex-extension@5.1.5`),[],import.meta.url).catch(e=>{console.error(`Couldn't load marked-katex-extension:`,e)});e&&(Q.setMarkedExtensions(e.default({nonStandard:!0,output:`mathml`})),o.push(`https://cdn.jsdelivr.net/npm/katex@0.16.22/dist/katex.min.css`))}let s=Object.keys(n.fullTheme),c=!1;if(n.forceConsent)try{c=k.getItem(`liipgpt:termsAccepted`)===`true`}catch(e){console.warn(`Failed to load terms acceptance from storage:`,e)}let l=at($.autofirePredefinedQuestionId,i);Z.data={currentConversationState:`idle`,chatConfig:n,language:r,predefinedQuestions:i,isInMaintenance:t,history:X(n.messageAdditions.init),selectedColorScheme:ae(),has2ColorSchemes:s.length===2,currentColorScheme:se(s),conversationFeedbackId:void 0,conversationFeedbackIsOpen:!1,openedPopup:void 0,props:$,flyoutIsOpen:!1,questionHasPii:void 0,chatInputValue:``,selectorValues:nt(n.selectorsConfig),selectorsIsOpen:!1,predefinedQuestionId:void 0,switchQuestionId:void 0,currentReferencesAsideId:void 0,ariaLiveStatusMessage:void 0,ariaLiveStatusMessageClearingTimeout:void 0,wasReferencesAsideClosed:!1,isAsideMobile:!0,route:Y(n.forceConsent??!1,c,n.forceChatPage??!1,l,$.question),additionalStylesheets:o,hasOpenedOverlays:!1,isInlineLayoutContained:!1,termsAccepted:c,selectedTopic:void 0},window.LIIPGPT_LISTENERS?.route?.(Z.data.route),window.LIIPGPT_LISTENERS?.conversation?.(Z.data.currentConversationState),Z.data.selectorsIsOpen=Z.data.chatConfig.showExpandedSelectors??!1,Z.initialized=!0,this.checkForOpenedPopup(),window.addEventListener(`hashchange`,()=>{this.checkForOpenedPopup()}),this.goto(Y(n.forceConsent??!1,c,n.forceChatPage??!1,l,$.question),!0)}catch(e){throw H.error(e instanceof Error?e.message:`Failed to load the chatbot. Please reload the page.`,{duration:1e4,unstyled:!0,classes:{toast:`toast`}}),e}},setTarget(e,t){Z.targets[e]=t},goto(e,t=!1){if(!(!t&&(0,it.default)(Z.data.route,e)))switch(Z.data.route=e,window.LIIPGPT_LISTENERS?.route?.(e),e.name){case`consent-page`:break;case`start-page`:e.prefill&&(Z.data.chatInputValue=e.prefill);break;case`chat-page`:if(Z.data.chatInputValue=e.query??``,Z.data.predefinedQuestionId=e.predefinedQuestionId,Z.data.switchQuestionId=e.switchQuestionId,e.query&&(this.onSubmit(),Z.data.chatConfig.addQueryToUrlParams)){let t=new URLSearchParams(window.location.search);t.set(`q`,e.query),e.predefinedQuestionId?t.set(`id`,e.predefinedQuestionId):t.delete(`id`),e.switchQuestionId?t.set(`sid`,e.switchQuestionId):t.delete(`sid`),history.pushState(null,``,`?${t.toString()}`)}break}},getSelectorConfig(e){let t=Z.data.chatConfig.selectorsConfig.find(t=>t.settingName===e);if(!t)throw Error(`Setting ${e} not found`);return t},getPrettifiedSelectorValues(){let e=Object.entries(Z.data.selectorValues).map(([e,t])=>{let n;try{n=this.getSelectorConfig(e)}catch(t){console.error(`Error getting selector config for ${e}: ${t}`);return}return n.type===`single-select`?[e,t[0]]:[e,t]}).filter(e=>!!e);return Object.fromEntries(e)},setSelectorValue(e,t){let n=this.getSelectorConfig(e);if(!n){console.warn(`Trying to set setting ${e} but it is not defined in the chat config`);return}if(n.type===`single-select`&&t.length>1){console.warn(`Trying to set multiple values for single-select setting ${e}`);return}Z.data.selectorValues[e]=t,et(Z.data.selectorValues,Z.data.chatConfig.selectorsConfig)},resetSelectorToDefaults(e){let t=this.getSelectorConfig(e);if(!t){console.warn(`Trying to reset setting ${e} but it is not defined in the chat config`);return}let n=t.defaultValues??(t.allowEmpty?[]:[t.values[0]]).filter(Boolean);return tt(e),Z.data.selectorValues[e]=n,et(Z.data.selectorValues,Z.data.chatConfig.selectorsConfig),n},async getPredefinedQuestions(e){try{return Q.getPredefinedQuestions({url:window.location.origin+window.location.pathname,language:e})}catch(e){return console.warn(`Failed to load predefined questions:`,e),[]}},setColorScheme(e){Z.data.selectedColorScheme=e,Z.data.currentColorScheme=oe(e),this.setAriaLiveStatusMessage(e===`dark`?Z.t.ariaDarkSelected:Z.t.ariaLightSelected)},async abort(){await st?.abort()},changeConversationState(e){Z.data.currentConversationState=e,window.LIIPGPT_LISTENERS?.conversation?.(e)},onInput(e){Z.data.chatConfig.blockPII&&(Z.data.questionHasPii=Ze(e)),Z.data.chatInputValue=e,Z.data.predefinedQuestionId=void 0,Z.data.switchQuestionId=void 0},onSubmit(e=!1,t,n=!1){let r=qe(Z.data.chatConfig.parentPageContext?.extractSelectors);if(Z.data.questionHasPii){console.warn(`Question contains PII, not submitting:`,Z.data.questionHasPii);return}let i=Z.data.chatConfig.questionPrefix?`${Z.data.chatConfig.questionPrefix} ${Z.data.chatInputValue}`:Z.data.chatInputValue;n||(Z.data.history.push(...X(Z.data.chatConfig.messageAdditions.user.before)),Z.data.history.push({type:`user`,time:new Date().toISOString(),message:Z.data.chatInputValue}),Z.data.history.push(...X(Z.data.chatConfig.messageAdditions.user.after)));let a=Z.data.history.push(...X(Z.data.chatConfig.messageAdditions.bot.before));Z.data.history.push({id:`UNRESOLVED`,state:`loading`,errors:[],type:`bot`,time:new Date().toISOString(),message:{markdown:``,html:``,text:``},references:{all:[],used:[],unused:[]}});let o=!1,s=!1,c={features:$.features?$.features.trim().split(`,`):[`formatting`],onError:e=>{this.showErrorToast(e),window.LIIPGPT_LISTENERS?.error?.(e),(e===`pii-detected`||e===`blocked`)&&this.editLatestQuestion()},onMessage:e=>{e.type===`topic-selected`&&(Z.data.selectedTopic={label:e.label,placeholder:e.placeholder}),e.type===`state`&&e.state!==`history-entry-initialized`&&!s&&(s=!0,this.setAriaLiveStatusMessage(Z.t.ariaQuestionSent))},lang:Z.data.language,selectorValues:{...this.getPrettifiedSelectorValues(),context:Ye(),...t},predefinedQuestionId:Z.data.predefinedQuestionId,switchQuestionId:Z.data.switchQuestionId,onEmbed:e=>{let t=Z.data.history[a];t&&t.type===`bot`&&!t.message.markdown?(Z.data.history[a]={...e,id:t.id??M()},o=!0):Z.data.history.push({...e,id:M()})}};Z.data.predefinedQuestionId=void 0,Z.data.switchQuestionId=void 0,r.length&&(c.selectorValues.parentPageContextHtml=r);let l=(e,t)=>{try{let n=new URL(e),r=new URL(t);return n.origin===r.origin&&n.pathname===r.pathname}catch{return!1}},u=Z.data.chatConfig.sendReferrer??`all`;if([`all`,`own`,`location`].includes(u)){let e=u===`location`||Z.data.props.flyout,t;t=e?`${window.location.protocol}//${window.location.host}${window.location.pathname}`:l(document.referrer,window.location.href)?null:document.referrer;let n=u===`own`&&!Z.data.props.flyout&&t&&!t.startsWith(window.location.origin);c.referrer=t&&!n?t:void 0}Z.data.currentConversationId||(Z.data.currentConversationId=Q.createConversationId());let d=Q.chat(Z.data.currentConversationId,i,c);st=d,Z.data.lastChatResponseId=d.id,Z.data.currentConversationState!==`searching`&&this.changeConversationState(`searching`);let f=!1,p,m=!!Z.data.currentReferencesAsideId;(e&&m||!e&&Z.data.chatConfig.showReferencesByDefault)&&(Z.data.isAsideMobile||this.openReferencesAside(d.id)),d.subscribe(e=>{if(!o&&Z.data.history[a]&&(Z.data.history[a]={question:Z.data.chatInputValue,...e}),Z.data.chatConfig.addRetrievalQuestionToUrlParams&&e.retrievalQuestion){let t=new URLSearchParams(window.location.search);t.get(`search`)!==e.retrievalQuestion&&(t.set(`search`,e.retrievalQuestion),history.replaceState(null,``,`?${t.toString()}`))}Z.data.chatConfig.showReferencesByDefault&&!Z.data.wasReferencesAsideClosed&&Z.data.currentReferencesAsideId!==e.id&&!Z.data.isAsideMobile&&this.openReferencesAside(e.id),e.state===`streaming`&&Z.data.currentConversationState!==`answering`&&this.changeConversationState(`answering`),e.state===`done`&&(this.changeConversationState(`idle`),f||(f=!0,this.setAriaLiveStatusMessage(`${Z.t.ariaAnswerReady} ... ${e.message.text} ... ${Z.data.selectedTopic?Z.t.ariaAnswerFinishedWithSelectedTopic:Z.t.ariaAnswerFinished}`),Z.data.history.push(...X(Z.data.chatConfig.messageAdditions.bot.after))),Z.data.currentReferencesAsideId&&e.references.used.length>0?(clearTimeout(p),p=setTimeout(()=>{this.openReferencesAside(e.id)},100)):this.closeReferencesAside())}),Z.data.chatInputValue=``},async onStartSpeechRecognition(){try{if(!await Be()){this.showErrorToast(`speech-not-supported`);return}if(await navigator.mediaDevices.getUserMedia({audio:!0}),G.isSupported())Z.data.chatInputValue=``,Z.currentAudioRecorder=new G({onDataAvailable:async e=>{Z.isTranscribing=!0,await this.handleTranscription(e)},onError:()=>{this.showErrorToast(`speech-microphone-access-denied`),Z.currentAudioRecorder=null,Z.isTranscribing=!1},onVolumeChange:e=>{Z.currentAudioVolume=e}}),Z.currentAudioRecorder.start();else{this.showErrorToast(`speech-not-supported`);return}}catch(e){throw this.showErrorToast(`speech-microphone-access-denied`),Z.currentAudioRecorder=null,Z.isTranscribing=!1,e}},editLatestQuestion(){let e=Z.data.history.findLastIndex(e=>e?.type===`user`);if(e===-1){console.error(`No last user question, available`);return}let t=Z.data.history.splice(e)[0];Z.data.chatInputValue=t.message},onStopSpeechRecognition(){if(Z.currentAudioRecorder){let e=Z.currentAudioRecorder;Z.currentAudioRecorder=null,e.stop()}Z.currentAudioVolume=0},async handleTranscription(e){if(!e){console.warn(`No audio data received`);return}try{let t=await Q.transcribeAudio(e,{lang:Z.data.language});if(t.error){this.showErrorToast(`speech-transcription-failed`);return}if(t.transcript.trim()){if(Z.data.chatConfig.blockPII&&(Z.data.questionHasPii=Ze(t.transcript.trim()),Z.data.questionHasPii))return;Z.data.chatInputValue=t.transcript.trim()}else this.showErrorToast(`speech-no-text-detected`)}catch(e){console.error(`Speech transcription error:`,e),this.showErrorToast(`speech-transcription-failed`)}finally{Z.currentAudioRecorder=null,Z.isTranscribing=!1,Z.currentAudioVolume=0}},async onStartConversation(e,t,n){await this.abort(),Z.data.history=X(Z.data.chatConfig.messageAdditions.init),Z.data.currentConversationId=Q.createConversationId(),this.goto({name:`chat-page`,query:e,predefinedQuestionId:t,switchQuestionId:n})},async onNewConversation(){await this.abort();let e=Z.data.currentConversationId;if(Z.data.currentConversationId=void 0,Z.data.currentReferencesAsideId=void 0,Z.data.history=X(Z.data.chatConfig.messageAdditions.init),Z.data.predefinedQuestionId=void 0,Z.data.switchQuestionId=void 0,Z.data.selectedTopic=void 0,Z.data.chatConfig.addQueryToUrlParams){let e=new URLSearchParams(window.location.search);e.delete(`q`),e.delete(`id`),e.delete(`sid`),history.pushState(null,``,`?${e.toString()}`)}this.goto({name:`start-page`}),e&&Q.userAction(`newDiscussion`,{conversationId:e,lang:Z.data.language}).catch(e=>{console.error(`Failed to notify backend of new discussion:`,e)})},async onChangeTopic(){let e=Z.data.chatConfig.selectedTopicResetPredefinedQuestionId;if(!e){console.warn("No selectedTopicResetPredefinedQuestionId available to reset the selected topic. Set it in the `Config DB` in the backend, in a `generalConfig` default set.");return}await this.abort(),Z.data.selectedTopic=void 0,Z.data.predefinedQuestionId=e,Z.data.switchQuestionId=void 0,Z.data.chatInputValue=``,this.onSubmit(!0,void 0,!0)},showSuccessToast(e){H.success(Z.t[e],{unstyled:!0,duration:3e3,classes:{toast:`toast`}})},showErrorToast(e){H.error(Z.errorTranslations[e],{unstyled:!0,duration:3e3,classes:{toast:`toast`}})},async submitFeedback(e){try{let t=Z.data.conversationFeedbackId||Z.data.lastChatResponseId;if(!t)throw new rt(`Tried to give feedback with no id.`);let n=Z.data.history.find(e=>e.type===`bot`&&e.id===t);await Q.feedback(t,n?.question??``,e),setTimeout(()=>{this.showSuccessToast(`thankYouForFeedback`)},500)}catch(e){console.error(`Feedback failed:`,e),this.showErrorToast(`feedback-failed`)}},toggleReferencesAside(e){Z.data.currentReferencesAsideId===e?this.closeReferencesAside():this.openReferencesAside(e)},openReferencesAside(e){Z.data.currentReferencesAsideId=e,this.setOpenOverlay(!0)},closeReferencesAside(){Z.data.currentReferencesAsideId=void 0,Z.data.wasReferencesAsideClosed=!0,this.setOpenOverlay(!1)},setAsideMobile(e){Z.data.isAsideMobile=e},openFlyout(){Z.data.flyoutIsOpen=!0},closeFlyout(){Z.data.flyoutIsOpen=!1},openConversationFeedback(){Z.data.conversationFeedbackIsOpen=!0,this.setOpenOverlay(!0)},openMessageFeedback(e){Z.data.conversationFeedbackId=e},closeFeedback(){Z.data.conversationFeedbackIsOpen=!1,Z.data.conversationFeedbackId=void 0,this.setOpenOverlay(!1)},setOpenOverlay(e){Z.data.hasOpenedOverlays=e},setAriaLiveStatusMessage(e){Z.data.ariaLiveStatusMessage=e,clearTimeout(Z.data.ariaLiveStatusMessageClearingTimeout),Z.data.ariaLiveStatusMessageClearingTimeout=setTimeout(()=>{Z.data.ariaLiveStatusMessage=``},Z.ariaLiveMessagesClearingTimeoutDuration)},closePopup(){window.location.hash=``},checkForOpenedPopup(){let e=window.location.hash.slice(1),t=Z.t.popups?.find(t=>t.hash===e);t?Z.data.openedPopup=t:Z.data.openedPopup=void 0},async thumbs(e,t){try{let n=Z.data.history.find(t=>t.type===`bot`&&t.id===e);t===`up`?await Q.thumbsUp(e,n?.question??``):await Q.thumbsDown(e,n?.question??``),this.showSuccessToast(`thankYouForFeedback`)}catch(e){console.error(`Feedback failed:`,e),this.showErrorToast(`feedback-failed`)}},async onLanguageChange(e){if(Z.data.language=A(e,Z.data.chatConfig.supportedLanguages),fe(Z.data.language,Z.targets.mainElement),Z.data.predefinedQuestions=await this.getPredefinedQuestions(Z.data.language),this.setAriaLiveStatusMessage(Z.t.ariaLanguageChanged),Z.data.chatConfig.reflectLanguageInPath){let e=new URL(window.location.href);e.pathname=`/${Z.data.language}`,window.history.replaceState({},``,e.toString())}},async acceptTerms(){Z.data.termsAccepted=!0;try{k.setItem(`liipgpt:termsAccepted`,`true`)}catch(e){console.warn(`Failed to save terms acceptance to storage:`,e)}this.closePopup(),await re(),this.goto(Y(Z.data.chatConfig.forceConsent??!1,!0,Z.data.chatConfig.forceChatPage??!1,at(Z.data.props.autofirePredefinedQuestionId,Z.data.predefinedQuestions),Z.data.props.question))},updateChatInput(e){Z.data.chatInputValue=e}});function lt(e,t){c(t,!0);let n=w(t,`href`,7),r=w(t,`target`,7),i=w(t,`onclick`,7),d=w(t,`className`,23,()=>[]),f=w(t,`isStandalone`,7,!1),p=w(t,`children`,7),m=w(t,`type`,7,`button`),_=w(t,`use`,7),v=w(t,`class`,7),b=ne(t,[`$$slots`,`$$events`,`$$legacy`,`$$host`,`href`,`target`,`onclick`,`className`,`isStandalone`,`children`,`type`,`use`,`class`]),x=u(()=>n()?`a`:`button`),C=u(()=>[...Array.isArray(d())?d():d()?[d()]:[],...v()?[v()]:[]]),E=()=>({}),re=u(()=>_()??E);var D={get href(){return n()},set href(e){n(e),S()},get target(){return r()},set target(e){r(e),S()},get onclick(){return i()},set onclick(e){i(e),S()},get className(){return d()},set className(e=[]){d(e),S()},get isStandalone(){return f()},set isStandalone(e=!1){f(e),S()},get children(){return p()},set children(e){p(e),S()},get type(){return m()},set type(e=`button`){m(e),S()},get use(){return _()},set use(e){_(e),S()},get class(){return v()},set class(e){v(e),S()}},O=s();return ee(g(O),()=>h(x),!1,(e,t)=>{l(e,e=>h(re)?.(e)),y(e,()=>({...b,onclick:n()?void 0:i(),type:n()?void 0:m(),href:n(),role:n()?`link`:`button`,target:n()?r():void 0,class:h(C),[te]:{"open-button--standalone":f()}}));var o=s();a(g(o),p),T(t,o)}),T(e,O),o(D)}x(lt,{href:{},target:{},onclick:{},className:{},isStandalone:{},children:{},type:{},use:{},class:{}},[],[],{mode:`open`});export{G as a,H as c,ge as d,M as f,Je as i,V as l,Z as n,Ue as o,ct as r,Me as s,lt as t,Oe as u};
@@ -1 +1 @@
1
- import{A as e,B as t,Et as n,G as r,H as i,It as a,J as o,Lt as s,Ot as c,R as l,U as u,Wt as d,Y as f,at as p,bt as m,i as h,jt as g,n as ee,nt as te,o as _,pt as v,q as y,s as ne,st as re,u as b,v as ie,vt as ae,wt as x,xt as S,yt as C,z as oe}from"./C00ruT0L.js";import{i as se,t as ce}from"./DFBUyDYh.js";import{n as w,t as le}from"./BpIo1_hS.js";import{a as ue,n as de,t as fe}from"./CX0dfddQ.js";import{n as T,t as pe}from"./BgnzWwt-.js";var me=`@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}.chat-app{--spacer-1:.0625rem;--spacer-2:.125rem;--spacer-3:.1875rem;--spacer-4:.25rem;--spacer-5:.3125rem;--spacer-6:.375rem;--spacer-8:.5rem;--spacer-10:.625rem;--spacer-12:.75rem;--spacer-16:1rem;--spacer-20:1.25rem;--spacer-24:1.5rem;--spacer-28:1.75rem;--spacer-32:2rem;--spacer-40:2.5rem;--spacer-48:3rem;--spacer-56:3.5rem;--spacer-64:4rem;--spacer-72:4.5rem;--spacer-80:5rem;--spacer-120:7.5rem;--spacer-r-8:clamp(.375rem, .3182rem + .2841cqw, .5rem);--spacer-r-12:clamp(.625rem, .5682rem + .2841cqw, .75rem);--spacer-r-16:clamp(.75rem, .6364rem + .5682cqw, 1rem);--spacer-r-20:clamp(.875rem, .7045rem + .8523cqw, 1.25rem);--spacer-r-24:clamp(1rem, .7727rem + 1.1364cqw, 1.5rem);--spacer-r-28:clamp(1.125rem, .8409rem + 1.4205cqw, 1.75rem);--spacer-r-32:clamp(1.25rem, .9091rem + 1.7045cqw, 2rem);--spacer-r-40:clamp(1.5rem, 1.0455rem + 2.2727cqw, 2.5rem);--spacer-r-48:clamp(1.625rem, 1rem + 3.125cqw, 3rem);--spacer-r-56:clamp(1.75rem, .9545rem + 3.9773cqw, 3.5rem);--spacer-r-64:clamp(2rem, 1.0909rem + 4.5455cqw, 4rem);--spacer-r-80:clamp(3rem, 2.0909rem + 4.5455cqw, 5rem);--spacer-r-96:clamp(3.5rem, 2.3636rem + 5.6818cqw, 6rem);--spacer-r-120:clamp(4rem, 2.4091rem + 7.9545cqw, 7.5rem);--default-transition-duration:.2s;--default-transition-timing-function:ease-in-out;--z-index-flyout:10000;--z-index-dialog:600;--z-index-loader:500;--z-index-reference-number:400;--z-index-footer:300;--z-index-header:200;--z-index-tooltip:100;--z-index-tooltip-hover:101;--z-index-local-overlay:10;--z-index-below:-10;--ease-out-quart:cubic-bezier(.165, .84, .44, 1);--ease-in-quart:cubic-bezier(.895, .03, .685, .22);--ease-in-out-quart:cubic-bezier(.77, 0, .175, 1);--fly-in-id:0;--btn-padding-x:var(--spacer-r-20);--btn-padding-y:var(--spacer-r-8);--btn-icon-size:var(--spacer-24);--btn-submit-size:2.5em;--last-bot-message-min-height:0}.chat-app :where(h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6){font-weight:var(--base-font-weight-title);line-height:var(--base-line-height-tight)}.chat-app :where(b,strong){font-weight:var(--base-font-weight-bold)}.chat-app :where(button){cursor:pointer}.chat-app :where(input[type=text],input[type=email],input[type=search],input[type=password],textarea){width:100%;padding:var(--input-padding);border-width:var(--input-border-width);border-radius:var(--input-border-radius);border-color:var(--input-border-color);background:var(--input-background);box-shadow:var(--input-box-shadow,none);color:var(--input-color)}.chat-app :where(input[type=text],input[type=email],input[type=search],input[type=password],textarea)::placeholder{color:var(--input-placeholder-color);opacity:var(--input-placeholder-opacity)}.chat-app :where(input[type=radio],input[type=checkbox]){margin:0}.chat-app :where(:focus-visible){border-radius:var(--btn-primary-border-radius);outline-color:var(--body-focus-color);outline-style:var(--body-focus-style);outline-width:var(--body-focus-width);outline-offset:var(--body-focus-offset)}.chat-app ::selection{background:var(--body-selection-background);color:var(--body-selection-color)}.chat-app ::-webkit-scrollbar{width:8px;height:8px}.chat-app ::-webkit-scrollbar-track{background:0 0}.chat-app ::-webkit-scrollbar-thumb{background-color:#0000004d;border-radius:4px;transition:background-color .2s}.chat-app ::-webkit-scrollbar-thumb:hover{background-color:#00000080}.chat-app *{scrollbar-color:#0000004d transparent;scrollbar-width:thin}.chat-app ::-webkit-scrollbar-thumb{visibility:hidden}.chat-app :hover::-webkit-scrollbar-thumb{visibility:visible}.chat-app :active::-webkit-scrollbar-thumb{visibility:visible}.chat-app :focus::-webkit-scrollbar-thumb{visibility:visible}.svg{width:var(--spacer-r-24);height:auto}.svg svg{width:100%;height:auto;display:block;overflow:visible}}@layer utilities{.chat-app :where(.expand-interaction){position:relative}.chat-app :where(.expand-interaction):after{content:"";background-color:#0000;position:absolute;inset:0}.chat-app :where(.sr-only){clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chat-app :where(.transition-colors){transition-duration:var(--default-transition-duration);transition-property:color,background-color,border-color,box-shadow;transition-timing-function:var(--default-transition-timing-function)}.chat-app :where(.transition){transition-duration:var(--default-transition-duration);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--default-transition-timing-function)}.chat-app :where(.skip-link){width:0;height:0;color:var(--anchor-color);font-weight:700;font-size:var(--base-font-size-xs);position:absolute;overflow:hidden}.chat-app :where(.skip-link):focus-visible{width:auto;height:auto;position:static}.chat-app :where(.fly-in){--fly-in-id:0;--fly-in-duration:.4s;--fly-out-duration:.2s;--fly-in-delay:.3s;--fly-in-delay-additional:.1s;--fly-in-y:var(--spacer-r-64);transform:translateY(var(--fly-in-y));opacity:0;transition-delay:0s,1s;transition-duration:var(--fly-out-duration);transition-property:opacity,transform;transition-timing-function:ease, var(--ease-out-quart)}.chat-app :where(.mounted .fly-in){opacity:1;transition-delay:calc(var(--fly-in-delay) + var(--fly-in-id) * var(--fly-in-delay-additional));transition-duration:var(--fly-in-duration);transform:translateY(0)}.chat-app :where(.truncate){text-overflow:ellipsis;white-space:nowrap;display:inline-block;overflow:hidden}.chat-app :where(.line-clamp){-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.chat-app :where(.line-clamp--2){-webkit-line-clamp:2}.chat-app :where(.line-clamp--6){-webkit-line-clamp:6}.chat-app :where(.container){width:100%;max-width:var(--container-max-width,1024px);padding-right:var(--spacer-16);padding-left:var(--spacer-16);margin:0 auto}@container chat-container (width>=640px){.chat-app :where(.container){padding-right:var(--spacer-32);padding-left:var(--spacer-32)}}@container chat-container (width>=768px){.chat-app :where(.container){padding-right:var(--spacer-48);padding-left:var(--spacer-48)}}.chat-app :where(h1){font-size:var(--base-font-size-h1)}.chat-app :where(h2){font-size:var(--base-font-size-h2)}.chat-app :where(h3){font-size:var(--base-font-size-h3)}.chat-app :where(h4,h5,h6){font-size:var(--body-font-size)}.chat-app :where(.h1){font-size:var(--base-font-size-h1)}.chat-app :where(.h2){font-size:var(--base-font-size-h2)}.chat-app :where(.h3){font-size:var(--base-font-size-h3)}.chat-app :where(.h4,.h5,.h6){font-size:var(--body-font-size)}.chat-app :where(.text-container)>:where(p,ul,ol,img,table){margin-bottom:var(--spacer-r-24);display:block}.chat-app :where(.text-container)>:where(div){margin:var(--spacer-r-40) 0}.chat-app :where(.text-container)>:where(h1,.h1){margin-bottom:var(--spacer-r-28)}.chat-app :where(.text-container)>:where(h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6){margin-bottom:var(--spacer-r-20)}.chat-app :where(.text-container)>:where(h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6){margin-top:var(--spacer-r-40)}.chat-app :where(.text-container)>:where(ul:not(.no-list-styling),ol:not(.no-list-styling))>:where(li){margin-bottom:var(--spacer-12)}.chat-app :where(.text-container)>:where(ul:not(.no-list-styling),ol:not(.no-list-styling))>:where(li):last-child{margin-bottom:0}.chat-app :where(.text-container)>:where(ol){padding-left:1.5em;list-style-type:decimal;list-style-position:outside}.chat-app :where(.text-container)>:where(ul:not(.no-list-styling))>:where(li){padding-left:1em;position:relative}.chat-app :where(.text-container)>:where(ul:not(.no-list-styling))>:where(li):before{content:"•";font-size:.9em;position:absolute;top:0;left:0}.chat-app :where(.text-container)>:where(hr){height:1px;margin:var(--spacer-r-40) 0;background-color:var(--color-grey-700);background-color:var(--hr-color);border:none}.chat-app :where(.text-container) :where(a:not(.button,.no-link-styling,.reference)){color:var(--anchor-color);font-weight:var(--anchor-font-weight,var(--base-font-weight-normal));-webkit-text-decoration:var(--anchor-text-decoration,underline);text-decoration:var(--anchor-text-decoration,underline);text-underline-offset:var(--anchor-text-underline-offset,.15em);transition-duration:var(--default-transition-duration);transition-property:color,background-color,border-color;transition-timing-function:var(--default-transition-timing-function)}.chat-app :where(.text-container) :where(a:not(.button,.no-link-styling,.reference)):hover{color:var(--anchor-hover-color)}.chat-app :where(.text-container) :where(table){border-collapse:collapse;border-spacing:0;-webkit-overflow-scrolling:touch;width:100%;display:block;overflow-x:auto}.chat-app :where(.text-container) :where(th){width:1000px;padding:var(--spacer-12) var(--spacer-16) var(--spacer-12) 0;border-bottom:1px solid var(--color-grey-300);line-height:var(--base-line-height-tight);text-align:left;vertical-align:bottom}.chat-app :where(.text-container) :where(td){padding:var(--spacer-12) var(--spacer-16) var(--spacer-12) 0;border-bottom:1px solid var(--color-grey-300);vertical-align:top}.chat-app :where(.text-container) :where(tr:last-child td){border-bottom:none}.chat-app :where(.text-container) :where(:first-child){margin-top:0}.chat-app :where(.text-container) :where(:last-child){margin-bottom:0}.chat-app :where(.animated-height){transition:height .5s var(--ease-in-out-quart)}.chat-app :where(.display-contents){display:contents}.chat-app :where(.absolute){position:absolute!important}}@layer components{.chat-app{display:contents}.chat-app__container{height:100%;display:flex;overflow:hidden;transform:translateZ(0);container:chat-container/inline-size}.chat-app__container>:where(*){color:var(--body-color);font-style:normal;font-weight:var(--base-font-weight-normal);font-size:var(--base-font-size-body);line-height:var(--base-line-height-default);font-family:var(--font-family);font-optical-sizing:auto}.chat-app__container.chat-app__container--inline-layout-contained{height:90svh;scroll-margin-top:10svh}@media (width>=768px){.chat-app__container.chat-app__container--inline-layout-contained{height:100svh;scroll-margin-top:0}}.chat-app__main{overscroll-behavior-x:none;overscroll-behavior-y:contain;background:var(--body-background);scrollbar-gutter:stable;touch-action:pan-y;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden auto;container:chat-inner-container/inline-size}.chat-app__container--inline-layout .chat-app__main{overscroll-behavior-y:auto}.chat-app__loader-container{z-index:var(--z-index-loader);justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.chat-app__portals{display:contents}.chat-app__header{z-index:var(--z-index-header);background:var(--body-background);position:sticky;top:0}.chat-app__header--unsticked{position:relative}.chat-app__header-content{--btn-padding-x:var(--btn-padding-y);column-gap:var(--spacer-r-12);min-height:calc(var(--btn-padding-y) * 2 + var(--btn-icon-size) + var(--spacer-10) * 2);margin-right:calc(var(--btn-padding-x) * -1);margin-left:calc(var(--btn-padding-x) * -1);padding-top:var(--spacer-10);padding-bottom:var(--spacer-10);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex;position:relative}.chat-app__header-content>:where(*){z-index:0;pointer-events:auto;position:relative}.chat-app__header-content:after{right:var(--btn-padding-x);bottom:0;left:var(--btn-padding-x);content:"";border-bottom:1px solid #0000;transition:border-color .1s ease-in-out;position:absolute}.chat-app__header-content.has-border:after{border-color:var(--base-line-color)}.chat-app__header-new-conversation{margin-right:auto;position:relative}@container chat-container (width>=640px){.chat-app__header-new-conversation .tooltip{display:none}}.chat-app__header--with-logo :where(.chat-app__header-content){margin-left:0}.chat-app__header--with-logo :where(.chat-app__header-new-conversation){margin-right:unset;margin-left:auto}.chat-app__header-logo{margin-right:auto}.chat-app__header-logo :where(svg){width:auto;height:var(--spacer-28)}.chat-app__body{flex-direction:column;flex-grow:1;width:100%;display:flex;position:relative}.chat-app__page-transition{flex-direction:column;flex-grow:1;width:100%;height:100%;display:flex}.chat-app__aside{--duration-in:.65s;--duration-out:.5s;visibility:hidden;width:0;transition-delay:0s, var(--duration-out);transition-duration:var(--duration-out), 0s;transition-property:width,visibility;transition-timing-function:var(--ease-in-out-quart), linear;flex-grow:1;position:relative;top:0;bottom:0}.chat-app__aside.open{visibility:visible;width:var(--aside-width);transition-delay:0s;transition-duration:var(--duration-in), 0s;transition-timing-function:var(--ease-out-quart), linear}.chat-app__aside .tooltip{--background-color:var(--btn-secondary-hover-background)}.chat-app__aside-container{width:var(--aside-width);overscroll-behavior:contain;border-left-width:var(--aside-border-width);border-color:var(--aside-border-color);background:var(--aside-background);scrollbar-gutter:stable;height:100%;position:relative;overflow-y:auto}.chat-app__container--inline-layout .chat-app__aside-container{overscroll-behavior-y:auto}.chat-app__aside-header,.chat-app__sheet-header{z-index:var(--z-index-header);flex-wrap:no-wrap;padding:var(--spacer-12) var(--spacer-12) var(--spacer-12) var(--spacer-24);justify-content:space-between;align-items:center;gap:var(--spacer-24);border-bottom-width:var(--aside-header-border-width);border-color:var(--aside-header-border-color);background:var(--aside-background);color:var(--aside-header-color);display:flex;position:sticky;top:0}.chat-app__sheet-close{position:relative}.chat-app__sheet-overlay{z-index:var(--z-index-dialog);background:var(--aside-background-overlay);position:fixed;inset:0}.chat-app__sheet-content{z-index:var(--z-index-flyout);width:100%;max-width:var(--aside-width);overscroll-behavior:contain;border-left-width:var(--aside-border-width);border-color:var(--aside-border-color);background:var(--aside-background);scrollbar-gutter:stable;height:100%;position:fixed;top:0;right:0;overflow-y:auto}.chat-app__container--inline-layout .chat-app__sheet-content{overscroll-behavior-y:auto}:is(.chat-app__aside-close,.chat-app__sheet-close) :where(.btn){background-color:#0000}.chat-app__aside-title,.chat-app__sheet-title{font-size:var(--base-font-size-sm)}.chat-app__close-button{z-index:var(--z-index-flyout)}.open-button{--open-button-avatar-height:var(--spacer-r-80);--open-button-avatar-width:var(--spacer-r-80);--open-button-duration:.4s;--open-button-delay:.3s;--open-button-ease:ease-in-out;cursor:pointer;flex-direction:row;align-items:flex-end;transition:opacity .15s ease-out;display:flex}.open-button--expanded{opacity:0;pointer-events:none}.open-button__text{margin-right:calc(var(--open-button-avatar-width) * -.5);padding-top:var(--spacer-r-12);padding-right:0;padding-bottom:var(--spacer-r-12);border-width:var(--open-button-border-width);border-radius:var(--open-button-border-radius);border-color:var(--open-button-border-color);background:var(--open-button-background);color:var(--open-button-color);text-align:left;transition:transform var(--open-button-duration) var(--open-button-ease), padding-right var(--open-button-duration) var(--open-button-delay) var(--open-button-ease);flex-direction:column;justify-content:center;align-items:flex-start;padding-left:0;display:flex;position:absolute;bottom:50%;right:100%;overflow:hidden;transform:translateY(50%);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.open-button:is(:hover,.open-button--programmatic-expand) .open-button__text{background:var(--open-button-hover-background,var(--open-button-background));color:var(--open-button-hover-color,var(--open-button-color));opacity:1;transition:transform var(--open-button-duration) var(--open-button-delay) var(--open-button-ease);transform:translateY(0)}.open-button__title{max-width:240px;padding:0 calc(var(--open-button-avatar-width) * .5 + var(--spacer-r-12)) 0 var(--spacer-r-12);white-space:pre;font-weight:700}.open-button__mask{width:0;height:0;transition:width var(--open-button-duration) var(--open-button-delay) var(--open-button-ease), height var(--open-button-duration) var(--open-button-ease);overflow:hidden}.open-button:is(:hover,.open-button--programmatic-expand) .open-button__mask{transition:width var(--open-button-duration) var(--open-button-ease), height var(--open-button-duration) var(--open-button-delay) var(--open-button-ease)}.open-button__description{width:50cqw;max-width:260px;padding:0 calc(var(--open-button-avatar-width) * .5 + var(--spacer-r-12)) 0 var(--spacer-r-12);text-wrap:balance;position:relative}.open-button__avatar{z-index:var(--z-index-local-overlay);width:var(--open-button-avatar-width);height:var(--open-button-avatar-height);border-radius:var(--spacer-r-80);filter:drop-shadow(0 4px 6px #00000026);transition:transform .2s var(--open-button-ease);position:relative;overflow:clip}.open-button:is(:hover,.open-button--programmatic-expand) .open-button__avatar{transform:scale(1.05)}.open-button__link-icon{width:var(--spacer-r-80);height:var(--spacer-r-80);padding:var(--spacer-r-20);color:var(--open-button-color);display:none;position:absolute;right:0}:where(.open-button--standalone){right:var(--spacer-r-16);bottom:var(--spacer-r-16);position:fixed}@media (prefers-reduced-motion:reduce){.open-button__text,.open-button__mask,.open-button:hover .open-button__text,.open-button:hover .open-button__mask{transition:none!important}.open-button__avatar,.open-button:hover .open-button__avatar{filter:none!important;transition:none!important}}.open-button--hide-title-when-collapsed .open-button__text{visibility:hidden;opacity:0;transition:transform var(--open-button-duration) var(--open-button-ease), padding-right var(--open-button-duration) var(--open-button-delay) var(--open-button-ease), opacity var(--open-button-duration) var(--open-button-delay) var(--open-button-ease), visibility 0s linear calc(var(--open-button-duration) + var(--open-button-delay))}.open-button--hide-title-when-collapsed:is(:hover,.open-button--programmatic-expand) .open-button__text{visibility:visible;background:var(--open-button-hover-background,var(--open-button-background));color:var(--open-button-hover-color,var(--open-button-color));opacity:1;transition:transform var(--open-button-duration) var(--open-button-delay) var(--open-button-ease), opacity var(--open-button-duration) var(--open-button-ease), visibility 0s linear 0s;transform:translateY(0)}}@value container-xs, container-sm, container-md, container-lg, container-inner-xs, container-inner-sm, container-inner-md, container-inner-lg from "./viewports.css";`,E=typeof window<`u`?window:{screen:{},navigator:{}},D=(E.matchMedia||(function(){return{matches:!1}})).bind(E),O={get passive(){return!0}},k=function(){};E.addEventListener&&E.addEventListener(`p`,k,O),E.removeEventListener&&E.removeEventListener(`p`,k,!1),`PointerEvent`in E;var A=`ontouchstart`in E,j=`TouchEvent`in E,M=A||j&&D(`(any-pointer: coarse)`).matches,N=(E.navigator.maxTouchPoints||0)>0||M,P=E.navigator.userAgent||``,F=D(`(pointer: coarse)`).matches&&/iPad|Macintosh/.test(P)&&Math.min(E.screen.width||0,E.screen.height||0)>=768,I=(D(`(pointer: coarse)`).matches||!D(`(pointer: fine)`).matches&&A)&&!/Windows.*Firefox/.test(P),L=D(`(any-pointer: fine)`).matches||D(`(any-hover: hover)`).matches||F||!A,R=N&&(L||!I)?`hybrid`:N?`touchOnly`:`mouseOnly`,z=R===`mouseOnly`?`mouse`:R===`touchOnly`||I?`touch`:`mouse`,he=f(`<div class="open-button__title"></div>`),ge=f(`<div class="open-button__mask"><div class="open-button__description"></div></div>`),_e=f(`<div class="open-button__text"><!> <!></div>`),ve=f(`<div class="sr-only"> </div>`),ye=f(`<!> <div class="svg svg--avatar open-button__avatar" aria-hidden="true"></div>`,1),be=f(`<link rel="stylesheet"/>`),xe=f(`<!> <!>`,1),Se=f(`<!> <!> <!> <main class="chat-app"><!></main>`,1);function B(f,h){s(h,!0);let E=(e,t)=>{let n=()=>t?.().chatConfig,a=()=>t?.().language,o=()=>t?.().colorScheme,s=c(()=>{let{openButtonTitle:e,openButtonDescription:t}=n().translations[a()];return{openButtonTitle:e,openButtonDescription:t}}),u=c(()=>n().fullTheme[o()].tokens.svgs),f=c(()=>n().fullTheme[o()]?.tokens.components.openButton?.custom),g=c(()=>!!p(f)?.hideTitleWhenCollapsed);{let t=c(()=>n().buttonHref?void 0:j()?`true`:`false`),a=c(()=>n().buttonHref?void 0:`true`),o=c(()=>n().buttonHref?void 0:A()),f=c(()=>[`open-button`,h.buttonClass,T.data.flyoutIsOpen?`open-button--expanded`:void 0,p(g)?`open-button--hide-title-when-collapsed`:void 0]);pe(e,{get href(){return n().buttonHref},onclick:Me,onmouseenter:Ae,onmouseleave:je,use:De,get"aria-expanded"(){return p(t)},get"aria-haspopup"(){return p(a)},get"aria-controls"(){return p(o)},get style(){return h.buttonStyle},get className(){return p(f)},get isStandalone(){return p(I)},children:(e,t)=>{var n=ye(),a=m(n),o=e=>{var t=_e(),n=C(t),r=e=>{var t=he();l(t,()=>p(s).openButtonTitle,!0),d(t),y(e,t)};i(n,e=>{p(s).openButtonTitle&&e(r)});var a=S(n,2),o=e=>{var t=ge(),n=C(t);l(n,()=>p(s).openButtonDescription,!0),d(n),b(n,e=>x(U,e),()=>p(U)),d(t),b(t,e=>x(H,e),()=>p(H)),y(e,t)};i(a,e=>{p(s).openButtonDescription&&z===`mouse`&&e(o)}),d(t),y(e,t)},c=e=>{var t=ve(),n=C(t,!0);d(t),v(()=>r(n,T.t.ariaOpenChat)),y(e,t)};i(a,e=>{p(s).openButtonTitle||p(s).openButtonDescription?e(o):e(c,-1)});var f=S(a,2);l(f,()=>p(u).avatar,!0),d(f),y(e,n)},$$slots:{default:!0}})}},D=n(`light`),O=_(h,`host`,7),k=_(h,`onError`,7),A=_(h,`flyoutId`,7),j=_(h,`flyoutIsOpen`,7),M=ne(h,[`$$slots`,`$$events`,`$$legacy`,`$$host`,`host`,`onError`,`flyoutId`,`flyoutIsOpen`]),N=async e=>{let t=await(await fetch(`${e}/chatconfig`)).json();return ue.parse(t)},P=async({forceTheme:e,lang:t,apiUrl:n})=>{let r=se(window.CHAT_CONFIG_OVERRIDE?window.CHAT_CONFIG_OVERRIDE:await N(n)),i;i=t?de(t,r.supportedLanguages):fe(r.supportedLanguages);let a=ce(Object.keys(r.fullTheme));return{chatConfig:r,language:i,colorScheme:a}},F=(e,t)=>{if(e==null)return t;if(typeof e==`string`){let t=e.trim().toLowerCase();return!(t===``||t===`0`||t===`false`||t===`no`)}return typeof e==`number`?e!==0:typeof e==`boolean`?e:t},I=c(()=>!!O()),L=n(!1),R=n(!1),B=n(!1),V=n(void 0),H=n(void 0),U=n(void 0),Ce=c(()=>p(U)?.offsetWidth??0),we=c(()=>p(U)?.offsetHeight??0),W=n(void 0),G=n(!1),K,q=n(!0);function J(){return p(W)?(clearTimeout(p(W)),x(W,void 0),!0):!1}async function Te(e){x(D,e.colorScheme,!0),K?.(),J(),x(G,!1);let t=e.chatConfig.fullTheme[p(D)]?.tokens.components.openButton?.custom??{},n=t.autoExpandScrollThreshold,r=Number(t.autoCollapseDelay??0),i=Number.isNaN(r)?0:Math.max(0,r),a=F(t.autoExpandOnce,!1),o=(()=>{if(n==null)return 100;if(typeof n==`string`){if(n.trim().toLowerCase()===`none`)return 0;let e=Number(n);return Number.isNaN(e)?100:e}let e=Number(n);return Number.isNaN(e)?100:e})();if(Number.isNaN(o)||o<=0)return;let s=`liipgpt-auto-expand-${h.apiUrl}`,c=!1;if(typeof window<`u`)try{c=window.localStorage.getItem(s)===`true`}catch(e){console.warn(`LiipGPT: unable to read auto-expand flag`,e)}x(B,c,!0);let l=()=>{if(!(window.scrollY/window.innerHeight*100>=o)){x(q,!0);return}if(!(p(R)||j())&&!(a&&(c||p(B)))&&p(q)){if(x(q,!1),x(R,!0),x(B,!0),Oe(),a&&typeof window<`u`)try{window.localStorage.setItem(s,`true`)}catch(e){console.warn(`LiipGPT: unable to persist auto-expand flag`,e)}x(W,setTimeout(()=>{p(G)||(ke(),x(R,!1)),x(W,void 0)},i),!0)}};window.addEventListener(`scroll`,l,{passive:!0}),o===0&&(await re(),l()),K=()=>{window.removeEventListener(`scroll`,l)}}function Ee(){J(),x(R,!1),x(G,!1)}function De(e){x(V,e,!0)}function Y(){K?.(),J()}ee(Y);function X(){!p(U)||!p(H)||(p(H).style.width=`${p(Ce)}px`,p(H).style.height=`${p(we)}px`)}function Z(){p(H)&&(p(H).style.width=`0`,p(H).style.height=`0`)}function Oe(){p(V)&&(p(V).classList.add(`open-button--programmatic-expand`),X())}function ke(){p(V)&&(p(V).classList.remove(`open-button--programmatic-expand`),Z())}function Ae(){J()&&x(G,!0),X()}function je(){J(),p(G)&&(x(R,!1),x(G,!1),p(V)?.classList.remove(`open-button--programmatic-expand`)),p(L)||Z()}function Me(e){Ee(),h.onclick?.(e)}let Q=c(()=>P(M).then(async e=>(await Te(e),e)).catch(e=>k()(e)));var Ne={get host(){return O()},set host(e){O(e),g()},get onError(){return k()},set onError(e){k(e),g()},get flyoutId(){return A()},set flyoutId(e){A(e),g()},get flyoutIsOpen(){return j()},set flyoutIsOpen(e){j(e),g()}},$=o();return te(`beforeunload`,ae,Y),e(`1k415fq`,e=>{var n=o(),r=m(n),a=e=>{var n=o();u(m(n),()=>p(Q),null,(e,n)=>{let r=c(()=>p(n).chatConfig.fullTheme[p(n).colorScheme]);var i=xe(),a=m(i);oe(a,17,()=>p(r).fontURLs??[],t,(e,t)=>{var n=be();v(()=>ie(n,`href`,p(t))),y(e,n)}),w(S(a,2),{id:`font-css`,get css(){return p(r).fontCSS}}),y(e,i)}),y(e,n)};i(r,e=>{p(I)&&e(a)}),y(e,n)}),u(m($),()=>p(Q),e=>{},(e,t)=>{let n=c(()=>p(t).chatConfig.fullTheme[p(D)]);var r=o(),a=m(r),s=e=>{var r=Se(),i=m(r);{let e=c(()=>le(p(n).tokens));w(i,{id:`theme-css`,get css(){return p(e)}})}var a=S(i,2);w(a,{id:`app-css`,get css(){return me}});var o=S(a,2);w(o,{id:`custom-css`,get css(){return p(n).customCSS}});var s=S(o,2);E(C(s),()=>p(t)),d(s),y(e,r)},l=e=>{E(e,()=>p(t))};i(a,e=>{p(I)?e(s):e(l,-1)}),y(e,r)}),y(f,$),a(Ne)}h(B,{host:{},onError:{},flyoutId:{},flyoutIsOpen:{}},[],[],{mode:`open`});export{B as t};
1
+ import{A as e,B as t,Et as n,G as r,H as i,It as a,J as o,Lt as s,Ot as c,R as l,U as u,Wt as d,Y as f,at as p,bt as m,i as h,jt as g,n as ee,nt as te,o as _,pt as v,q as y,s as ne,st as re,u as b,v as ie,vt as ae,wt as x,xt as S,yt as C,z as oe}from"./C00ruT0L.js";import{i as se,t as ce}from"./D6Qx_EAy.js";import{n as w,t as le}from"./GwQP32Cz.js";import{a as ue,n as de,t as fe}from"./CZiOHSGl.js";import{n as T,t as pe}from"./C4ORIoWK.js";var me=`@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}.chat-app{--spacer-1:.0625rem;--spacer-2:.125rem;--spacer-3:.1875rem;--spacer-4:.25rem;--spacer-5:.3125rem;--spacer-6:.375rem;--spacer-8:.5rem;--spacer-10:.625rem;--spacer-12:.75rem;--spacer-16:1rem;--spacer-20:1.25rem;--spacer-24:1.5rem;--spacer-28:1.75rem;--spacer-32:2rem;--spacer-40:2.5rem;--spacer-48:3rem;--spacer-56:3.5rem;--spacer-64:4rem;--spacer-72:4.5rem;--spacer-80:5rem;--spacer-120:7.5rem;--spacer-r-8:clamp(.375rem, .3182rem + .2841cqw, .5rem);--spacer-r-12:clamp(.625rem, .5682rem + .2841cqw, .75rem);--spacer-r-16:clamp(.75rem, .6364rem + .5682cqw, 1rem);--spacer-r-20:clamp(.875rem, .7045rem + .8523cqw, 1.25rem);--spacer-r-24:clamp(1rem, .7727rem + 1.1364cqw, 1.5rem);--spacer-r-28:clamp(1.125rem, .8409rem + 1.4205cqw, 1.75rem);--spacer-r-32:clamp(1.25rem, .9091rem + 1.7045cqw, 2rem);--spacer-r-40:clamp(1.5rem, 1.0455rem + 2.2727cqw, 2.5rem);--spacer-r-48:clamp(1.625rem, 1rem + 3.125cqw, 3rem);--spacer-r-56:clamp(1.75rem, .9545rem + 3.9773cqw, 3.5rem);--spacer-r-64:clamp(2rem, 1.0909rem + 4.5455cqw, 4rem);--spacer-r-80:clamp(3rem, 2.0909rem + 4.5455cqw, 5rem);--spacer-r-96:clamp(3.5rem, 2.3636rem + 5.6818cqw, 6rem);--spacer-r-120:clamp(4rem, 2.4091rem + 7.9545cqw, 7.5rem);--default-transition-duration:.2s;--default-transition-timing-function:ease-in-out;--z-index-flyout:10000;--z-index-dialog:600;--z-index-loader:500;--z-index-reference-number:400;--z-index-footer:300;--z-index-header:200;--z-index-tooltip:100;--z-index-tooltip-hover:101;--z-index-local-overlay:10;--z-index-below:-10;--ease-out-quart:cubic-bezier(.165, .84, .44, 1);--ease-in-quart:cubic-bezier(.895, .03, .685, .22);--ease-in-out-quart:cubic-bezier(.77, 0, .175, 1);--fly-in-id:0;--btn-padding-x:var(--spacer-r-20);--btn-padding-y:var(--spacer-r-8);--btn-icon-size:var(--spacer-24);--btn-submit-size:2.5em;--last-bot-message-min-height:0}.chat-app :where(h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6){font-weight:var(--base-font-weight-title);line-height:var(--base-line-height-tight)}.chat-app :where(b,strong){font-weight:var(--base-font-weight-bold)}.chat-app :where(button){cursor:pointer}.chat-app :where(input[type=text],input[type=email],input[type=search],input[type=password],textarea){width:100%;padding:var(--input-padding);border-width:var(--input-border-width);border-radius:var(--input-border-radius);border-color:var(--input-border-color);background:var(--input-background);box-shadow:var(--input-box-shadow,none);color:var(--input-color)}.chat-app :where(input[type=text],input[type=email],input[type=search],input[type=password],textarea)::placeholder{color:var(--input-placeholder-color);opacity:var(--input-placeholder-opacity)}.chat-app :where(input[type=radio],input[type=checkbox]){margin:0}.chat-app :where(:focus-visible){border-radius:var(--btn-primary-border-radius);outline-color:var(--body-focus-color);outline-style:var(--body-focus-style);outline-width:var(--body-focus-width);outline-offset:var(--body-focus-offset)}.chat-app ::selection{background:var(--body-selection-background);color:var(--body-selection-color)}.chat-app ::-webkit-scrollbar{width:8px;height:8px}.chat-app ::-webkit-scrollbar-track{background:0 0}.chat-app ::-webkit-scrollbar-thumb{background-color:#0000004d;border-radius:4px;transition:background-color .2s}.chat-app ::-webkit-scrollbar-thumb:hover{background-color:#00000080}.chat-app *{scrollbar-color:#0000004d transparent;scrollbar-width:thin}.chat-app ::-webkit-scrollbar-thumb{visibility:hidden}.chat-app :hover::-webkit-scrollbar-thumb{visibility:visible}.chat-app :active::-webkit-scrollbar-thumb{visibility:visible}.chat-app :focus::-webkit-scrollbar-thumb{visibility:visible}.svg{width:var(--spacer-r-24);height:auto}.svg svg{width:100%;height:auto;display:block;overflow:visible}}@layer utilities{.chat-app :where(.expand-interaction){position:relative}.chat-app :where(.expand-interaction):after{content:"";background-color:#0000;position:absolute;inset:0}.chat-app :where(.sr-only){clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chat-app :where(.transition-colors){transition-duration:var(--default-transition-duration);transition-property:color,background-color,border-color,box-shadow;transition-timing-function:var(--default-transition-timing-function)}.chat-app :where(.transition){transition-duration:var(--default-transition-duration);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--default-transition-timing-function)}.chat-app :where(.skip-link){width:0;height:0;color:var(--anchor-color);font-weight:700;font-size:var(--base-font-size-xs);position:absolute;overflow:hidden}.chat-app :where(.skip-link):focus-visible{width:auto;height:auto;position:static}.chat-app :where(.fly-in){--fly-in-id:0;--fly-in-duration:.4s;--fly-out-duration:.2s;--fly-in-delay:.3s;--fly-in-delay-additional:.1s;--fly-in-y:var(--spacer-r-64);transform:translateY(var(--fly-in-y));opacity:0;transition-delay:0s,1s;transition-duration:var(--fly-out-duration);transition-property:opacity,transform;transition-timing-function:ease, var(--ease-out-quart)}.chat-app :where(.mounted .fly-in){opacity:1;transition-delay:calc(var(--fly-in-delay) + var(--fly-in-id) * var(--fly-in-delay-additional));transition-duration:var(--fly-in-duration);transform:translateY(0)}.chat-app :where(.truncate){text-overflow:ellipsis;white-space:nowrap;display:inline-block;overflow:hidden}.chat-app :where(.line-clamp){-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.chat-app :where(.line-clamp--2){-webkit-line-clamp:2}.chat-app :where(.line-clamp--6){-webkit-line-clamp:6}.chat-app :where(.container){width:100%;max-width:var(--container-max-width,1024px);padding-right:var(--spacer-16);padding-left:var(--spacer-16);margin:0 auto}@container chat-container (width>=640px){.chat-app :where(.container){padding-right:var(--spacer-32);padding-left:var(--spacer-32)}}@container chat-container (width>=768px){.chat-app :where(.container){padding-right:var(--spacer-48);padding-left:var(--spacer-48)}}.chat-app :where(h1){font-size:var(--base-font-size-h1)}.chat-app :where(h2){font-size:var(--base-font-size-h2)}.chat-app :where(h3){font-size:var(--base-font-size-h3)}.chat-app :where(h4,h5,h6){font-size:var(--body-font-size)}.chat-app :where(.h1){font-size:var(--base-font-size-h1)}.chat-app :where(.h2){font-size:var(--base-font-size-h2)}.chat-app :where(.h3){font-size:var(--base-font-size-h3)}.chat-app :where(.h4,.h5,.h6){font-size:var(--body-font-size)}.chat-app :where(.text-container)>:where(p,ul,ol,img,table){margin-bottom:var(--spacer-r-24);display:block}.chat-app :where(.text-container)>:where(div){margin:var(--spacer-r-40) 0}.chat-app :where(.text-container)>:where(h1,.h1){margin-bottom:var(--spacer-r-28)}.chat-app :where(.text-container)>:where(h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6){margin-bottom:var(--spacer-r-20)}.chat-app :where(.text-container)>:where(h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6){margin-top:var(--spacer-r-40)}.chat-app :where(.text-container)>:where(ul:not(.no-list-styling),ol:not(.no-list-styling))>:where(li){margin-bottom:var(--spacer-12)}.chat-app :where(.text-container)>:where(ul:not(.no-list-styling),ol:not(.no-list-styling))>:where(li):last-child{margin-bottom:0}.chat-app :where(.text-container)>:where(ol){padding-left:1.5em;list-style-type:decimal;list-style-position:outside}.chat-app :where(.text-container)>:where(ul:not(.no-list-styling))>:where(li){padding-left:1em;position:relative}.chat-app :where(.text-container)>:where(ul:not(.no-list-styling))>:where(li):before{content:"•";font-size:.9em;position:absolute;top:0;left:0}.chat-app :where(.text-container)>:where(hr){height:1px;margin:var(--spacer-r-40) 0;background-color:var(--color-grey-700);background-color:var(--hr-color);border:none}.chat-app :where(.text-container) :where(a:not(.button,.no-link-styling,.reference)){color:var(--anchor-color);font-weight:var(--anchor-font-weight,var(--base-font-weight-normal));-webkit-text-decoration:var(--anchor-text-decoration,underline);text-decoration:var(--anchor-text-decoration,underline);text-underline-offset:var(--anchor-text-underline-offset,.15em);transition-duration:var(--default-transition-duration);transition-property:color,background-color,border-color;transition-timing-function:var(--default-transition-timing-function)}.chat-app :where(.text-container) :where(a:not(.button,.no-link-styling,.reference)):hover{color:var(--anchor-hover-color)}.chat-app :where(.text-container) :where(table){border-collapse:collapse;border-spacing:0;-webkit-overflow-scrolling:touch;width:100%;display:block;overflow-x:auto}.chat-app :where(.text-container) :where(th){width:1000px;padding:var(--spacer-12) var(--spacer-16) var(--spacer-12) 0;border-bottom:1px solid var(--color-grey-300);line-height:var(--base-line-height-tight);text-align:left;vertical-align:bottom}.chat-app :where(.text-container) :where(td){padding:var(--spacer-12) var(--spacer-16) var(--spacer-12) 0;border-bottom:1px solid var(--color-grey-300);vertical-align:top}.chat-app :where(.text-container) :where(tr:last-child td){border-bottom:none}.chat-app :where(.text-container) :where(:first-child){margin-top:0}.chat-app :where(.text-container) :where(:last-child){margin-bottom:0}.chat-app :where(.animated-height){transition:height .5s var(--ease-in-out-quart)}.chat-app :where(.display-contents){display:contents}.chat-app :where(.absolute){position:absolute!important}}@layer components{.chat-app{display:contents}.chat-app__container{height:100%;display:flex;overflow:hidden;transform:translateZ(0);container:chat-container/inline-size}.chat-app__container>:where(*){color:var(--body-color);font-style:normal;font-weight:var(--base-font-weight-normal);font-size:var(--base-font-size-body);line-height:var(--base-line-height-default);font-family:var(--font-family);font-optical-sizing:auto}.chat-app__container.chat-app__container--inline-layout-contained{height:90svh;scroll-margin-top:10svh}@media (width>=768px){.chat-app__container.chat-app__container--inline-layout-contained{height:100svh;scroll-margin-top:0}}.chat-app__main{overscroll-behavior-x:none;overscroll-behavior-y:contain;background:var(--body-background);scrollbar-gutter:stable;touch-action:pan-y;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden auto;container:chat-inner-container/inline-size}.chat-app__container--inline-layout .chat-app__main{overscroll-behavior-y:auto}.chat-app__loader-container{z-index:var(--z-index-loader);justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.chat-app__portals{display:contents}.chat-app__header{z-index:var(--z-index-header);background:var(--body-background);position:sticky;top:0}.chat-app__header--unsticked{position:relative}.chat-app__header-content{--btn-padding-x:var(--btn-padding-y);column-gap:var(--spacer-r-12);min-height:calc(var(--btn-padding-y) * 2 + var(--btn-icon-size) + var(--spacer-10) * 2);margin-right:calc(var(--btn-padding-x) * -1);margin-left:calc(var(--btn-padding-x) * -1);padding-top:var(--spacer-10);padding-bottom:var(--spacer-10);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex;position:relative}.chat-app__header-content>:where(*){z-index:0;pointer-events:auto;position:relative}.chat-app__header-content:after{right:var(--btn-padding-x);bottom:0;left:var(--btn-padding-x);content:"";border-bottom:1px solid #0000;transition:border-color .1s ease-in-out;position:absolute}.chat-app__header-content.has-border:after{border-color:var(--base-line-color)}.chat-app__header-new-conversation{margin-right:auto;position:relative}@container chat-container (width>=640px){.chat-app__header-new-conversation .tooltip{display:none}}.chat-app__header--with-logo :where(.chat-app__header-content){margin-left:0}.chat-app__header--with-logo :where(.chat-app__header-new-conversation){margin-right:unset;margin-left:auto}.chat-app__header-logo{margin-right:auto}.chat-app__header-logo :where(svg){width:auto;height:var(--spacer-28)}.chat-app__body{flex-direction:column;flex-grow:1;width:100%;display:flex;position:relative}.chat-app__page-transition{flex-direction:column;flex-grow:1;width:100%;height:100%;display:flex}.chat-app__aside{--duration-in:.65s;--duration-out:.5s;visibility:hidden;width:0;transition-delay:0s, var(--duration-out);transition-duration:var(--duration-out), 0s;transition-property:width,visibility;transition-timing-function:var(--ease-in-out-quart), linear;flex-grow:1;position:relative;top:0;bottom:0}.chat-app__aside.open{visibility:visible;width:var(--aside-width);transition-delay:0s;transition-duration:var(--duration-in), 0s;transition-timing-function:var(--ease-out-quart), linear}.chat-app__aside .tooltip{--background-color:var(--btn-secondary-hover-background)}.chat-app__aside-container{width:var(--aside-width);overscroll-behavior:contain;border-left-width:var(--aside-border-width);border-color:var(--aside-border-color);background:var(--aside-background);scrollbar-gutter:stable;height:100%;position:relative;overflow-y:auto}.chat-app__container--inline-layout .chat-app__aside-container{overscroll-behavior-y:auto}.chat-app__aside-header,.chat-app__sheet-header{z-index:var(--z-index-header);flex-wrap:no-wrap;padding:var(--spacer-12) var(--spacer-12) var(--spacer-12) var(--spacer-24);justify-content:space-between;align-items:center;gap:var(--spacer-24);border-bottom-width:var(--aside-header-border-width);border-color:var(--aside-header-border-color);background:var(--aside-background);color:var(--aside-header-color);display:flex;position:sticky;top:0}.chat-app__sheet-close{position:relative}.chat-app__sheet-overlay{z-index:var(--z-index-dialog);background:var(--aside-background-overlay);position:fixed;inset:0}.chat-app__sheet-content{z-index:var(--z-index-flyout);width:100%;max-width:var(--aside-width);overscroll-behavior:contain;border-left-width:var(--aside-border-width);border-color:var(--aside-border-color);background:var(--aside-background);scrollbar-gutter:stable;height:100%;position:fixed;top:0;right:0;overflow-y:auto}.chat-app__container--inline-layout .chat-app__sheet-content{overscroll-behavior-y:auto}:is(.chat-app__aside-close,.chat-app__sheet-close) :where(.btn){background-color:#0000}.chat-app__aside-title,.chat-app__sheet-title{font-size:var(--base-font-size-sm)}.chat-app__close-button{z-index:var(--z-index-flyout)}.open-button{--open-button-avatar-height:var(--spacer-r-80);--open-button-avatar-width:var(--spacer-r-80);--open-button-duration:.4s;--open-button-delay:.3s;--open-button-ease:ease-in-out;cursor:pointer;flex-direction:row;align-items:flex-end;transition:opacity .15s ease-out;display:flex}.open-button--expanded{opacity:0;pointer-events:none}.open-button__text{margin-right:calc(var(--open-button-avatar-width) * -.5);padding-top:var(--spacer-r-12);padding-right:0;padding-bottom:var(--spacer-r-12);border-width:var(--open-button-border-width);border-radius:var(--open-button-border-radius);border-color:var(--open-button-border-color);background:var(--open-button-background);color:var(--open-button-color);text-align:left;transition:transform var(--open-button-duration) var(--open-button-ease), padding-right var(--open-button-duration) var(--open-button-delay) var(--open-button-ease);flex-direction:column;justify-content:center;align-items:flex-start;padding-left:0;display:flex;position:absolute;bottom:50%;right:100%;overflow:hidden;transform:translateY(50%);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.open-button:is(:hover,.open-button--programmatic-expand) .open-button__text{background:var(--open-button-hover-background,var(--open-button-background));color:var(--open-button-hover-color,var(--open-button-color));opacity:1;transition:transform var(--open-button-duration) var(--open-button-delay) var(--open-button-ease);transform:translateY(0)}.open-button__title{max-width:240px;padding:0 calc(var(--open-button-avatar-width) * .5 + var(--spacer-r-12)) 0 var(--spacer-r-12);white-space:pre;font-weight:700}.open-button__mask{width:0;height:0;transition:width var(--open-button-duration) var(--open-button-delay) var(--open-button-ease), height var(--open-button-duration) var(--open-button-ease);overflow:hidden}.open-button:is(:hover,.open-button--programmatic-expand) .open-button__mask{transition:width var(--open-button-duration) var(--open-button-ease), height var(--open-button-duration) var(--open-button-delay) var(--open-button-ease)}.open-button__description{width:50cqw;max-width:260px;padding:0 calc(var(--open-button-avatar-width) * .5 + var(--spacer-r-12)) 0 var(--spacer-r-12);text-wrap:balance;position:relative}.open-button__avatar{z-index:var(--z-index-local-overlay);width:var(--open-button-avatar-width);height:var(--open-button-avatar-height);border-radius:var(--spacer-r-80);filter:drop-shadow(0 4px 6px #00000026);transition:transform .2s var(--open-button-ease);position:relative;overflow:clip}.open-button:is(:hover,.open-button--programmatic-expand) .open-button__avatar{transform:scale(1.05)}.open-button__link-icon{width:var(--spacer-r-80);height:var(--spacer-r-80);padding:var(--spacer-r-20);color:var(--open-button-color);display:none;position:absolute;right:0}:where(.open-button--standalone){right:var(--spacer-r-16);bottom:var(--spacer-r-16);position:fixed}@media (prefers-reduced-motion:reduce){.open-button__text,.open-button__mask,.open-button:hover .open-button__text,.open-button:hover .open-button__mask{transition:none!important}.open-button__avatar,.open-button:hover .open-button__avatar{filter:none!important;transition:none!important}}.open-button--hide-title-when-collapsed .open-button__text{visibility:hidden;opacity:0;transition:transform var(--open-button-duration) var(--open-button-ease), padding-right var(--open-button-duration) var(--open-button-delay) var(--open-button-ease), opacity var(--open-button-duration) var(--open-button-delay) var(--open-button-ease), visibility 0s linear calc(var(--open-button-duration) + var(--open-button-delay))}.open-button--hide-title-when-collapsed:is(:hover,.open-button--programmatic-expand) .open-button__text{visibility:visible;background:var(--open-button-hover-background,var(--open-button-background));color:var(--open-button-hover-color,var(--open-button-color));opacity:1;transition:transform var(--open-button-duration) var(--open-button-delay) var(--open-button-ease), opacity var(--open-button-duration) var(--open-button-ease), visibility 0s linear 0s;transform:translateY(0)}}@value container-xs, container-sm, container-md, container-lg, container-inner-xs, container-inner-sm, container-inner-md, container-inner-lg from "./viewports.css";`,E=typeof window<`u`?window:{screen:{},navigator:{}},D=(E.matchMedia||(function(){return{matches:!1}})).bind(E),O={get passive(){return!0}},k=function(){};E.addEventListener&&E.addEventListener(`p`,k,O),E.removeEventListener&&E.removeEventListener(`p`,k,!1),`PointerEvent`in E;var A=`ontouchstart`in E,j=`TouchEvent`in E,M=A||j&&D(`(any-pointer: coarse)`).matches,N=(E.navigator.maxTouchPoints||0)>0||M,P=E.navigator.userAgent||``,F=D(`(pointer: coarse)`).matches&&/iPad|Macintosh/.test(P)&&Math.min(E.screen.width||0,E.screen.height||0)>=768,I=(D(`(pointer: coarse)`).matches||!D(`(pointer: fine)`).matches&&A)&&!/Windows.*Firefox/.test(P),L=D(`(any-pointer: fine)`).matches||D(`(any-hover: hover)`).matches||F||!A,R=N&&(L||!I)?`hybrid`:N?`touchOnly`:`mouseOnly`,z=R===`mouseOnly`?`mouse`:R===`touchOnly`||I?`touch`:`mouse`,he=f(`<div class="open-button__title"></div>`),ge=f(`<div class="open-button__mask"><div class="open-button__description"></div></div>`),_e=f(`<div class="open-button__text"><!> <!></div>`),ve=f(`<div class="sr-only"> </div>`),ye=f(`<!> <div class="svg svg--avatar open-button__avatar" aria-hidden="true"></div>`,1),be=f(`<link rel="stylesheet"/>`),xe=f(`<!> <!>`,1),Se=f(`<!> <!> <!> <main class="chat-app"><!></main>`,1);function B(f,h){s(h,!0);let E=(e,t)=>{let n=()=>t?.().chatConfig,a=()=>t?.().language,o=()=>t?.().colorScheme,s=c(()=>{let{openButtonTitle:e,openButtonDescription:t}=n().translations[a()];return{openButtonTitle:e,openButtonDescription:t}}),u=c(()=>n().fullTheme[o()].tokens.svgs),f=c(()=>n().fullTheme[o()]?.tokens.components.openButton?.custom),g=c(()=>!!p(f)?.hideTitleWhenCollapsed);{let t=c(()=>n().buttonHref?void 0:j()?`true`:`false`),a=c(()=>n().buttonHref?void 0:`true`),o=c(()=>n().buttonHref?void 0:A()),f=c(()=>[`open-button`,h.buttonClass,T.data.flyoutIsOpen?`open-button--expanded`:void 0,p(g)?`open-button--hide-title-when-collapsed`:void 0]);pe(e,{get href(){return n().buttonHref},onclick:Me,onmouseenter:Ae,onmouseleave:je,use:De,get"aria-expanded"(){return p(t)},get"aria-haspopup"(){return p(a)},get"aria-controls"(){return p(o)},get style(){return h.buttonStyle},get className(){return p(f)},get isStandalone(){return p(I)},children:(e,t)=>{var n=ye(),a=m(n),o=e=>{var t=_e(),n=C(t),r=e=>{var t=he();l(t,()=>p(s).openButtonTitle,!0),d(t),y(e,t)};i(n,e=>{p(s).openButtonTitle&&e(r)});var a=S(n,2),o=e=>{var t=ge(),n=C(t);l(n,()=>p(s).openButtonDescription,!0),d(n),b(n,e=>x(U,e),()=>p(U)),d(t),b(t,e=>x(H,e),()=>p(H)),y(e,t)};i(a,e=>{p(s).openButtonDescription&&z===`mouse`&&e(o)}),d(t),y(e,t)},c=e=>{var t=ve(),n=C(t,!0);d(t),v(()=>r(n,T.t.ariaOpenChat)),y(e,t)};i(a,e=>{p(s).openButtonTitle||p(s).openButtonDescription?e(o):e(c,-1)});var f=S(a,2);l(f,()=>p(u).avatar,!0),d(f),y(e,n)},$$slots:{default:!0}})}},D=n(`light`),O=_(h,`host`,7),k=_(h,`onError`,7),A=_(h,`flyoutId`,7),j=_(h,`flyoutIsOpen`,7),M=ne(h,[`$$slots`,`$$events`,`$$legacy`,`$$host`,`host`,`onError`,`flyoutId`,`flyoutIsOpen`]),N=async e=>{let t=await(await fetch(`${e}/chatconfig`)).json();return ue.parse(t)},P=async({forceTheme:e,lang:t,apiUrl:n})=>{let r=se(window.CHAT_CONFIG_OVERRIDE?window.CHAT_CONFIG_OVERRIDE:await N(n)),i;i=t?de(t,r.supportedLanguages):fe(r.supportedLanguages);let a=ce(Object.keys(r.fullTheme));return{chatConfig:r,language:i,colorScheme:a}},F=(e,t)=>{if(e==null)return t;if(typeof e==`string`){let t=e.trim().toLowerCase();return!(t===``||t===`0`||t===`false`||t===`no`)}return typeof e==`number`?e!==0:typeof e==`boolean`?e:t},I=c(()=>!!O()),L=n(!1),R=n(!1),B=n(!1),V=n(void 0),H=n(void 0),U=n(void 0),Ce=c(()=>p(U)?.offsetWidth??0),we=c(()=>p(U)?.offsetHeight??0),W=n(void 0),G=n(!1),K,q=n(!0);function J(){return p(W)?(clearTimeout(p(W)),x(W,void 0),!0):!1}async function Te(e){x(D,e.colorScheme,!0),K?.(),J(),x(G,!1);let t=e.chatConfig.fullTheme[p(D)]?.tokens.components.openButton?.custom??{},n=t.autoExpandScrollThreshold,r=Number(t.autoCollapseDelay??0),i=Number.isNaN(r)?0:Math.max(0,r),a=F(t.autoExpandOnce,!1),o=(()=>{if(n==null)return 100;if(typeof n==`string`){if(n.trim().toLowerCase()===`none`)return 0;let e=Number(n);return Number.isNaN(e)?100:e}let e=Number(n);return Number.isNaN(e)?100:e})();if(Number.isNaN(o)||o<=0)return;let s=`liipgpt-auto-expand-${h.apiUrl}`,c=!1;if(typeof window<`u`)try{c=window.localStorage.getItem(s)===`true`}catch(e){console.warn(`LiipGPT: unable to read auto-expand flag`,e)}x(B,c,!0);let l=()=>{if(!(window.scrollY/window.innerHeight*100>=o)){x(q,!0);return}if(!(p(R)||j())&&!(a&&(c||p(B)))&&p(q)){if(x(q,!1),x(R,!0),x(B,!0),Oe(),a&&typeof window<`u`)try{window.localStorage.setItem(s,`true`)}catch(e){console.warn(`LiipGPT: unable to persist auto-expand flag`,e)}x(W,setTimeout(()=>{p(G)||(ke(),x(R,!1)),x(W,void 0)},i),!0)}};window.addEventListener(`scroll`,l,{passive:!0}),o===0&&(await re(),l()),K=()=>{window.removeEventListener(`scroll`,l)}}function Ee(){J(),x(R,!1),x(G,!1)}function De(e){x(V,e,!0)}function Y(){K?.(),J()}ee(Y);function X(){!p(U)||!p(H)||(p(H).style.width=`${p(Ce)}px`,p(H).style.height=`${p(we)}px`)}function Z(){p(H)&&(p(H).style.width=`0`,p(H).style.height=`0`)}function Oe(){p(V)&&(p(V).classList.add(`open-button--programmatic-expand`),X())}function ke(){p(V)&&(p(V).classList.remove(`open-button--programmatic-expand`),Z())}function Ae(){J()&&x(G,!0),X()}function je(){J(),p(G)&&(x(R,!1),x(G,!1),p(V)?.classList.remove(`open-button--programmatic-expand`)),p(L)||Z()}function Me(e){Ee(),h.onclick?.(e)}let Q=c(()=>P(M).then(async e=>(await Te(e),e)).catch(e=>k()(e)));var Ne={get host(){return O()},set host(e){O(e),g()},get onError(){return k()},set onError(e){k(e),g()},get flyoutId(){return A()},set flyoutId(e){A(e),g()},get flyoutIsOpen(){return j()},set flyoutIsOpen(e){j(e),g()}},$=o();return te(`beforeunload`,ae,Y),e(`1k415fq`,e=>{var n=o(),r=m(n),a=e=>{var n=o();u(m(n),()=>p(Q),null,(e,n)=>{let r=c(()=>p(n).chatConfig.fullTheme[p(n).colorScheme]);var i=xe(),a=m(i);oe(a,17,()=>p(r).fontURLs??[],t,(e,t)=>{var n=be();v(()=>ie(n,`href`,p(t))),y(e,n)}),w(S(a,2),{id:`font-css`,get css(){return p(r).fontCSS}}),y(e,i)}),y(e,n)};i(r,e=>{p(I)&&e(a)}),y(e,n)}),u(m($),()=>p(Q),e=>{},(e,t)=>{let n=c(()=>p(t).chatConfig.fullTheme[p(D)]);var r=o(),a=m(r),s=e=>{var r=Se(),i=m(r);{let e=c(()=>le(p(n).tokens));w(i,{id:`theme-css`,get css(){return p(e)}})}var a=S(i,2);w(a,{id:`app-css`,get css(){return me}});var o=S(a,2);w(o,{id:`custom-css`,get css(){return p(n).customCSS}});var s=S(o,2);E(C(s),()=>p(t)),d(s),y(e,r)},l=e=>{E(e,()=>p(t))};i(a,e=>{p(I)?e(s):e(l,-1)}),y(e,r)}),y(f,$),a(Ne)}h(B,{host:{},onError:{},flyoutId:{},flyoutIsOpen:{}},[],[],{mode:`open`});export{B as t};
@@ -1,4 +1,4 @@
1
- import{H as e,It as t,J as n,Lt as r,Y as i,bt as a,et as o,i as s,jt as c,k as l,o as u,q as d,tt as f}from"./C00ruT0L.js";import{t as p}from"./DABlUYYh.js";import{t as m}from"./DzLbPreo.js";var h=(e,t)=>{let n=new URLSearchParams(m.url.searchParams);t===void 0?n.delete(e):n.set(e,String(t));let r=`?${n.toString()}`;window.top&&window.top.postMessage(`liipgpt-url:`+r,`*`),p(r,{replaceState:!0})},g=e=>{let t=new URLSearchParams(m.url.searchParams);for(let[n,r]of Object.entries(e))r===void 0?t.delete(n):t.set(n,String(r));let n=`?${t.toString()}`;window.top&&window.top.postMessage(`liipgpt-url:`+n,`*`),p(n,{replaceState:!0})},_=i(`<button type="button" class="sidebar-hide svelte-q6hwt7" aria-label="Hide sidebar">Hide sidebar</button>`),v=i(`<button type="button" class="sidebar-reopen svelte-q6hwt7" aria-label="Show sidebar"><span class="sidebar-reopen__label svelte-q6hwt7" aria-hidden="true">Show sidebar</span></button>`),y={hash:`svelte-q6hwt7`,code:`.sidebar-hide.svelte-q6hwt7 {display:block;padding:0.375rem 0.75rem;border:1px solid #e5e7eb;border-radius:0.375rem;background:#fff;color:#4b5563;font-weight:500;font-size:0.75rem;line-height:1.25;font-family:system-ui, sans-serif;cursor:pointer;}.sidebar-hide.svelte-q6hwt7:hover {background:#f3f4f6;color:#111827;}.sidebar-reopen.svelte-q6hwt7 {display:flex;z-index:50;position:fixed;bottom:5rem;left:0;align-items:center;justify-content:center;padding:0.5rem 0.25rem;border:1px solid #e5e7eb;border-left:none;border-radius:0 0.375rem 0.375rem 0;background:#fff;box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1),
1
+ import{H as e,It as t,J as n,Lt as r,Y as i,bt as a,et as o,i as s,jt as c,k as l,o as u,q as d,tt as f}from"./C00ruT0L.js";import{t as p}from"./Nw8j0Xyw.js";import{t as m}from"./6JdeEzKi.js";var h=(e,t)=>{let n=new URLSearchParams(m.url.searchParams);t===void 0?n.delete(e):n.set(e,String(t));let r=`?${n.toString()}`;window.top&&window.top.postMessage(`liipgpt-url:`+r,`*`),p(r,{replaceState:!0})},g=e=>{let t=new URLSearchParams(m.url.searchParams);for(let[n,r]of Object.entries(e))r===void 0?t.delete(n):t.set(n,String(r));let n=`?${t.toString()}`;window.top&&window.top.postMessage(`liipgpt-url:`+n,`*`),p(n,{replaceState:!0})},_=i(`<button type="button" class="sidebar-hide svelte-q6hwt7" aria-label="Hide sidebar">Hide sidebar</button>`),v=i(`<button type="button" class="sidebar-reopen svelte-q6hwt7" aria-label="Show sidebar"><span class="sidebar-reopen__label svelte-q6hwt7" aria-hidden="true">Show sidebar</span></button>`),y={hash:`svelte-q6hwt7`,code:`.sidebar-hide.svelte-q6hwt7 {display:block;padding:0.375rem 0.75rem;border:1px solid #e5e7eb;border-radius:0.375rem;background:#fff;color:#4b5563;font-weight:500;font-size:0.75rem;line-height:1.25;font-family:system-ui, sans-serif;cursor:pointer;}.sidebar-hide.svelte-q6hwt7:hover {background:#f3f4f6;color:#111827;}.sidebar-reopen.svelte-q6hwt7 {display:flex;z-index:50;position:fixed;bottom:5rem;left:0;align-items:center;justify-content:center;padding:0.5rem 0.25rem;border:1px solid #e5e7eb;border-left:none;border-radius:0 0.375rem 0.375rem 0;background:#fff;box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1),
2
2
  0 1px 2px -1px rgb(0 0 0 / 0.1);color:#4b5563;font-weight:500;font-size:0.6rem;font-family:system-ui, sans-serif;cursor:pointer;}.sidebar-reopen.svelte-q6hwt7:hover {background:#f3f4f6;color:#111827;}.sidebar-reopen__label.svelte-q6hwt7 {letter-spacing:0.04em;text-orientation:mixed;writing-mode:vertical-rl;}
3
3
 
4
4
  @media (prefers-color-scheme: dark) {.sidebar-hide.svelte-q6hwt7 {border-color:#4b5563;background:#1f2937;color:#d1d5db;}.sidebar-hide.svelte-q6hwt7:hover {background:#374151;color:#f3f4f6;}.sidebar-reopen.svelte-q6hwt7 {border-color:#4b5563;background:#1f2937;color:#d1d5db;}.sidebar-reopen.svelte-q6hwt7:hover {background:#374151;color:#f3f4f6;}
@@ -0,0 +1 @@
1
+ import{a as e,c as t,d as n,f as r,i,l as a,m as o,n as s,o as c,p as l,r as u,s as d,t as f,u as p}from"./MRyhzcyW.js";var m=l([r(),t(),i(),u(r()),u(t()),u(i())]),h=a({title:r(),description:r().optional(),badge:r().optional(),breadcrumbs:u(r()).optional(),previewImage:r().optional(),date:r().datetime().optional()}),g=a({url:r().url(),score:t(),metadata:n(r(),m),language:r().optional()}).extend(h.shape),_=a({blocked:r(),maintenance:r(),"rate-limit":r(),"server-error":r(),"too-short":r(),"too-long":r(),"quota-reached":r(),aborted:r(),"sse-error":r(),"client-error":r(),"unexpected-call":r(),"incomplete-error":r(),"feedback-failed":r(),"speech-not-supported":r(),"speech-transcription-failed":r(),"speech-no-text-detected":r(),"speech-microphone-access-denied":r(),"pii-detected":r()}),v=a({email:r(),creditCard:r(),ahv:r(),phoneSwiss:r(),phoneInternational:r(),swissPassport:r(),longNumber:r()}),y=a({name:r(),namePlural:r().optional(),intro:r().optional(),placeholder:r(),values:n(r(),r())}),b=a({action:r(),label:r(),type:s([`primary`,`secondary`]).optional()}),x=a({hash:r(),title:r(),content:r(),actions:u(b).optional()}),S=a({introductionTitle:r(),introductionDisclaimer:r().optional(),termsInvitationToConsent:r().optional(),chatInputPlaceholder:r(),chatInputPlaceholderListening:r().optional(),chatInputSubmit:r(),chatInputAbort:r(),chatInputStartListening:r(),chatInputStopListening:r(),referenceLink:r(),referencesDisplay:r(),referencesHide:r(),referencesTitle:r(),referencesFurtherTitle:r(),newChat:r(),maintenanceModeError:r(),messageBotLoading:r(),messageBotError:r(),messageBotDefaultError:r(),noResultsFound:r(),chatFooterText:r().optional(),scrollToBottom:r(),openButtonTitle:r().optional(),openButtonDescription:r().optional(),openMenu:r(),openInfo:r(),aboutThisChat:r().optional(),closeMenu:r(),closeChat:r(),close:r(),send:r(),thankYouForFeedback:r(),giveFeedback:r(),sendFeedback:r(),feedbackFormTitle:r(),feedbackFormMessage:r(),feedbackFormMessagePlaceholder:r(),feedbackFormEmail:r(),feedbackFormEmailPlaceholder:r(),askQuestionAgain:r(),answerGood:r(),answerBad:r(),classificationSubmit:r(),classificationThankYou:r(),classificationTitle:r(),selectLanguage:r(),languageChanged:r(),selectColorTheme:r(),lightMode:r(),darkMode:r(),ariaMainNavigation:r(),ariaMainNavigationInfo:r(),ariaMainNavigationLinks:r(),ariaMainNavigationLanguageSwitch:r(),ariaMainNavigationColorMode:r(),ariaGotoMainNavigation:r(),ariaAskQuestion:r(),ariaAskQuestionRegion:r(),ariaNotifications:r(),ariaPredefinedQuestions:r(),ariaPredefinedQuestionsRegion:r(),ariaChatHistory:r(),ariaOpenChat:r(),ariaQuestionFromYou:r(),ariaAnswerFromBot:r(),ariaLastAnswerNavigation:r(),ariaQuestionSent:r(),ariaAnswerReady:r(),ariaAnswerFinished:r(),ariaAnswerFinishedWithSelectedTopic:r(),ariaAskQuestionAgain:r(),ariaAnswerGood:r(),ariaAnswerBad:r(),ariaReferenceSource:r(),ariaGiveFeedback:r(),ariaLanguageChanged:r(),ariaLightSelected:r(),ariaDarkSelected:r(),ariaSettings:r(),ariaSettingsRegion:r(),ariaReferencesRegion:r(),ariaOpensInNewTab:r(),ariaPageTitle:r(),ariaCloseWithEsc:r(),ariaInfoTitle:r(),ariaFlyoutRegion:r(),ariaSelected:r(),ariaUnselected:r(),ariaAllSelected:r(),ariaAllUnselected:r(),ariaAllReseted:r(),ariaChangeTopic:r(),popups:u(x).optional(),termsAcceptButton:r().optional(),termsReadButton:r().optional(),selectors:n(r(),y).optional(),hideSettings:r(),showSettings:r(),chooseAtLeastOneOption:r(),selectAll:r(),selectNone:r(),resetToDefaults:r(),messageTooLong:r(),selectedTopic:r(),changeTopic:r(),searchSummaryExpand:r(),searchSummaryCollapse:r(),searchSummaryOptInDefault:r(),searchSummaryOptOut:r(),searchSummaryError:r(),searchSummaryDisclaimer:r().optional(),ariaSearchSummaryExpand:r(),ariaSearchSummaryCollapse:r(),ariaSearchSummaryOptOut:r()}),C=s([`en`,`de`,`fr`,`it`]),w=p(C,S.partial().extend({selectors:n(r(),y).optional()})),T=w;n(C,_),n(C,v);var E=p(C,r()),D=a({componentName:d(`buttons`),data:a({caption:r().optional(),buttons:u(a({label:r(),href:r().url().optional(),value:r(),variant:s([`primary`,`secondary`,`tertiary`]).optional(),icon:r().optional(),target:r().optional()}))})}),O=a({componentName:d(`combobox`),data:a({caption:E.optional(),placeholder:E,values:u(a({label:E,value:r(),metadata:n(r(),o()).optional()})),removeComponentAfterValueSelection:i().optional(),selectorKey:r().optional()})}),k=a({componentName:d(`alva-init`),data:a({})}),A=a({componentName:d(`alva-score-survey`),data:a({})}),j=a({type:d(`component`),id:r().optional(),time:r().optional(),hideAvatar:i().optional(),noSectionPadding:i().optional(),hideChatInput:i().optional()}),M=c(e(`componentName`,[D,O,k,A]),j);s([`start`,`chat`]),e(`name`,[a({name:d(`start-page`),prefill:r().optional()}),a({name:d(`consent-page`)}),a({name:d(`chat-page`),query:r().optional(),predefinedQuestionId:r().optional(),switchQuestionId:r().optional()})]);var N=a({type:d(`user`),time:r(),message:r(),id:r().optional()});s([`idle`,`searching`,`answering`]);var P=l([r(),t(),i(),u(r()),u(t()),u(i())]),F=a({url:r(),score:t(),metadata:n(r(),P),considered:i(),display:a({card:h,listItem:h})}).extend({referenceIndex:a({all:t(),used:t().optional()})}),I=a({all:u(F),used:u(F),unused:u(F)}),L=l([s([`pii-detected`,`blocked`,`maintenance`,`rate-limit`,`server-error`,`too-short`,`too-long`,`quota-reached`,`aborted`]),d(`sse-error`),d(`client-error`),d(`unexpected-call`)]),R=a({type:d(`bot`),time:r(),id:r(),message:a({markdown:r(),html:r(),text:r()}),references:I,errors:u(L),retrievalQuestion:r().optional(),noFeedback:i().optional()}),z=R.extend({state:s([`streaming`,`done`])}),B=l([l([R.extend({state:d(`loading`)}),z]),N,M]),V=a({label:r(),options:u(a({label:r(),value:t()}))}),H=a({label:r(),icon:r(),url:r(),target:s([`_blank`,`_self`]).optional()}),U=a({id:r().optional(),label:r().nullable(),question:r(),switchQuestionId:r().optional()}),W=a({impact:V.optional(),quality:V.optional()});a({classification:W.optional()});var G=a({predefinedQuestions:u(U)}),K=l([a({maintenance:d(!0)}),a({id:r(),cID:r()})]);p(C,S),a({label:r(),placeholder:r()});var q=a({settingName:r(),iconName:r(),settingIntro:r().optional(),type:s([`single-select`,`multi-select`]),allowEmpty:i(),values:u(r()),defaultValues:u(r()).optional()}),J=a({before:u(B).optional(),after:u(B).optional()}),Y=a({init:u(B).optional(),bot:J.optional(),user:J.optional()}),X=c(a({forcePredefinedQuestions:i().optional(),forceChatPage:i().optional(),showOverallFeedbackButton:i(),showOverallFeedbackEmail:i(),showCloseChatButton:i(),showContextMenu:i(),showContextInfo:i(),showReferencesByDefault:i(),showExpandedSelectors:i(),showTextFeedback:i(),inlineLayout:i(),allowAudioInput:i(),blockPII:i(),questionPrefix:r(),menu:p(C,u(H)).optional(),supportedLanguages:u(C),classification:W.optional(),theme:f,translations:w,buttonHref:r().optional(),addQueryToUrlParams:i().optional(),addRetrievalQuestionToUrlParams:i().optional(),renderKatex:i().optional(),reflectLanguageInPath:i().optional(),sendReferrer:s([`all`,`own`,`none`,`location`]).optional(),selectorsConfig:u(q).default([]),questionLengthLimit:t().optional(),forceConsent:i().optional(),askQuestionAgain:i(),enableBackdrop:i().optional(),parentPageContext:a({extractSelectors:r().array().optional()}),messageAdditions:Y.optional(),contextVersion:t().optional(),selectedTopicResetPredefinedQuestionId:r().optional()}).partial(),a({theme:a({name:r().optional()}).optional()})),Z=(e,t)=>t.includes(e),Q=(e,t)=>{if(Z(e,t))return e;let n=$();return Z(n,t)?n:`en`},$=()=>navigator.language.split(`-`)[0],ee=(e,t)=>{localStorage.setItem(`liipgpt:selectedLanguage`,e),t&&(t.lang=e)},te=e=>Q(localStorage.getItem(`liipgpt:selectedLanguage`),e),ne=(e,t,n)=>{if(!e)return``;if(e[t])return e[t];for(let t of n)if(e[t])return e[t];return e.en?e.en:Object.values(e).find(e=>typeof e==`string`&&e.length>0)??``};export{X as a,T as c,ee as i,g as l,Q as n,G as o,ne as r,K as s,te as t};
@@ -1 +1 @@
1
- import{Gt as e,It as t,Lt as n,Ot as r,at as i,c as a,i as o,jt as s,o as c}from"./C00ruT0L.js";import"./Bo0U8J3e.js";import"./CFKVnMbq.js";import"./DV91TmsB.js";import"./DFBUyDYh.js";import"./MRyhzcyW.js";import"./BpIo1_hS.js";import"./CX0dfddQ.js";import"./BgnzWwt-.js";import{t as l}from"./BdBqI4to.js";import{t as u}from"./BmUm-Ak4.js";function d(o,d){n(d,!0);let f=c(d,`onclick`,7),p=c(d,`buttonClass`,7),m=c(d,`buttonStyle`,7),h=c(d,`apiUrl`,7),g=c(d,`forceTheme`,7),_=c(d,`lang`,7),v=r(()=>({onclick:f(),buttonClass:p(),buttonStyle:m(),apiUrl:h(),forceTheme:g(),lang:_()}));return u(o,{silent:!0,body:(t,n=e)=>{l(t,a({host:d.$$host,get onError(){return n()}},()=>i(v)))},$$slots:{body:!0}}),t({get onclick(){return f()},set onclick(e){f(e),s()},get buttonClass(){return p()},set buttonClass(e){p(e),s()},get buttonStyle(){return m()},set buttonStyle(e){m(e),s()},get apiUrl(){return h()},set apiUrl(e){h(e),s()},get forceTheme(){return g()},set forceTheme(e){g(e),s()},get lang(){return _()},set lang(e){_(e),s()}})}customElements.define(`liipgpt-button`,o(d,{forceTheme:{attribute:`force-theme`,type:`String`},buttonClass:{attribute:`button-class`,type:`String`},buttonStyle:{attribute:`button-style`,type:`String`},apiUrl:{attribute:`api-url`,type:`String`},lang:{attribute:`lang`,type:`String`},onclick:{}},[],[],{mode:`open`}));export{d as LiipGPTButton};
1
+ import{Gt as e,It as t,Lt as n,Ot as r,at as i,c as a,i as o,jt as s,o as c}from"./C00ruT0L.js";import"./Bo0U8J3e.js";import"./CFKVnMbq.js";import"./DV91TmsB.js";import"./D6Qx_EAy.js";import"./MRyhzcyW.js";import"./GwQP32Cz.js";import"./CZiOHSGl.js";import"./C4ORIoWK.js";import{t as l}from"./C59SVKNf.js";import{t as u}from"./BmUm-Ak4.js";function d(o,d){n(d,!0);let f=c(d,`onclick`,7),p=c(d,`buttonClass`,7),m=c(d,`buttonStyle`,7),h=c(d,`apiUrl`,7),g=c(d,`forceTheme`,7),_=c(d,`lang`,7),v=r(()=>({onclick:f(),buttonClass:p(),buttonStyle:m(),apiUrl:h(),forceTheme:g(),lang:_()}));return u(o,{silent:!0,body:(t,n=e)=>{l(t,a({host:d.$$host,get onError(){return n()}},()=>i(v)))},$$slots:{body:!0}}),t({get onclick(){return f()},set onclick(e){f(e),s()},get buttonClass(){return p()},set buttonClass(e){p(e),s()},get buttonStyle(){return m()},set buttonStyle(e){m(e),s()},get apiUrl(){return h()},set apiUrl(e){h(e),s()},get forceTheme(){return g()},set forceTheme(e){g(e),s()},get lang(){return _()},set lang(e){_(e),s()}})}customElements.define(`liipgpt-button`,o(d,{forceTheme:{attribute:`force-theme`,type:`String`},buttonClass:{attribute:`button-class`,type:`String`},buttonStyle:{attribute:`button-style`,type:`String`},apiUrl:{attribute:`api-url`,type:`String`},lang:{attribute:`lang`,type:`String`},onclick:{}},[],[],{mode:`open`}));export{d as LiipGPTButton};