@opencx/widget 2.0.0

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 (125) hide show
  1. package/README.md +105 -0
  2. package/dist/basic.cjs +259 -0
  3. package/dist/basic.cjs.map +1 -0
  4. package/dist/basic.d.ts +2 -0
  5. package/dist/basic.js +40507 -0
  6. package/dist/basic.js.map +1 -0
  7. package/dist/core/client/api.d.ts +15 -0
  8. package/dist/core/client/client.d.ts +39 -0
  9. package/dist/core/client/index.d.ts +1 -0
  10. package/dist/core/errors/index.d.ts +21 -0
  11. package/dist/core/index.d.ts +3 -0
  12. package/dist/core/managers/chathistory-manager.d.ts +61 -0
  13. package/dist/core/managers/session-manager.d.ts +35 -0
  14. package/dist/core/platform/index.d.ts +20 -0
  15. package/dist/core/transport/http.transport.d.ts +17 -0
  16. package/dist/core/transport/transport.d.ts +25 -0
  17. package/dist/core/types/helpers.d.ts +5 -0
  18. package/dist/core/types/index.d.ts +32 -0
  19. package/dist/core/types/messages.d.ts +43 -0
  20. package/dist/core/types/prelude.d.ts +14 -0
  21. package/dist/core/types/pub-sub.d.ts +94 -0
  22. package/dist/core/types/schemas.d.ts +489 -0
  23. package/dist/core/types/transport.d.ts +31 -0
  24. package/dist/core/utils/genId.d.ts +2 -0
  25. package/dist/core/utils/genId.test.d.ts +1 -0
  26. package/dist/core/utils/history-to-widget-messages.d.ts +4 -0
  27. package/dist/history-to-widget-messages-CP0hKjhv.js +195 -0
  28. package/dist/history-to-widget-messages-CP0hKjhv.js.map +1 -0
  29. package/dist/history-to-widget-messages-CdbZolRN.cjs +2 -0
  30. package/dist/history-to-widget-messages-CdbZolRN.cjs.map +1 -0
  31. package/dist/index-C11ivBh5.js +2604 -0
  32. package/dist/index-C11ivBh5.js.map +1 -0
  33. package/dist/index-DQmRZV3b.cjs +18 -0
  34. package/dist/index-DQmRZV3b.cjs.map +1 -0
  35. package/dist/index.cjs +2 -0
  36. package/dist/index.cjs.map +1 -0
  37. package/dist/index.d.ts +2 -0
  38. package/dist/index.js +445 -0
  39. package/dist/index.js.map +1 -0
  40. package/dist/react-lib/Root.d.ts +6 -0
  41. package/dist/react-lib/hooks/handle-socket-messages.d.ts +27 -0
  42. package/dist/react-lib/hooks/index.d.ts +6 -0
  43. package/dist/react-lib/hooks/socket.d.ts +11 -0
  44. package/dist/react-lib/hooks/socketState.d.ts +2 -0
  45. package/dist/react-lib/hooks/use-sound.d.ts +13 -0
  46. package/dist/react-lib/hooks/use-sound.test.d.ts +1 -0
  47. package/dist/react-lib/hooks/use-sync-state.test.d.ts +1 -0
  48. package/dist/react-lib/hooks/useAbstractChat.d.ts +159 -0
  49. package/dist/react-lib/hooks/useAxiosInstance.d.ts +121 -0
  50. package/dist/react-lib/hooks/useBaseClient.d.ts +2 -0
  51. package/dist/react-lib/hooks/useScrollTo.d.ts +2 -0
  52. package/dist/react-lib/hooks/useSyncState.d.ts +4 -0
  53. package/dist/react-lib/hooks/useTimeoutState.d.ts +3 -0
  54. package/dist/react-lib/hooks/useUploadFiles.d.ts +21 -0
  55. package/dist/react-lib/hooks/useVote.d.ts +2 -0
  56. package/dist/react-lib/hooks/useWidgetContentHeight.d.ts +9 -0
  57. package/dist/react-lib/index.d.ts +10 -0
  58. package/dist/react-lib/locales/ar.locale.d.ts +2 -0
  59. package/dist/react-lib/locales/de.locale.d.ts +2 -0
  60. package/dist/react-lib/locales/en.locale.d.ts +55 -0
  61. package/dist/react-lib/locales/fr.locale.d.ts +2 -0
  62. package/dist/react-lib/locales/helper.d.ts +65 -0
  63. package/dist/react-lib/locales/index.d.ts +3 -0
  64. package/dist/react-lib/locales/nl.locale.d.ts +2 -0
  65. package/dist/react-lib/locales/pt.locale.d.ts +2 -0
  66. package/dist/react-lib/providers/ChatProvider.d.ts +135 -0
  67. package/dist/react-lib/providers/ClientProvider.d.ts +7 -0
  68. package/dist/react-lib/providers/ConfigDataProvider.d.ts +62 -0
  69. package/dist/react-lib/providers/ContactProvider.d.ts +58 -0
  70. package/dist/react-lib/providers/LocalesProvider.d.ts +11 -0
  71. package/dist/react-lib/providers/componentRegistry.d.ts +13 -0
  72. package/dist/react-lib/providers/use-widget-sfx.d.ts +7 -0
  73. package/dist/react-lib/providers/usePreludeData.d.ts +2 -0
  74. package/dist/react-lib/types/components.d.ts +10 -0
  75. package/dist/react-lib/types/index.d.ts +6 -0
  76. package/dist/react-lib/types/options.d.ts +43 -0
  77. package/dist/react-lib/utils/create-safe-context.d.ts +1 -0
  78. package/dist/react-lib/utils/debug.d.ts +2 -0
  79. package/dist/react-lib/utils/getters.d.ts +24 -0
  80. package/dist/react-lib/utils/index.d.ts +1 -0
  81. package/dist/react.cjs +2 -0
  82. package/dist/react.cjs.map +1 -0
  83. package/dist/react.d.ts +2 -0
  84. package/dist/react.js +41 -0
  85. package/dist/react.js.map +1 -0
  86. package/dist/src/@components/BotMessage.d.ts +9 -0
  87. package/dist/src/@components/BotMessageWrapper.d.ts +7 -0
  88. package/dist/src/@components/ChatEvent.component.d.ts +9 -0
  89. package/dist/src/@components/Fallback.component.d.ts +8 -0
  90. package/dist/src/@components/Loading.component.d.ts +2 -0
  91. package/dist/src/@components/OpenLogoSvg.d.ts +4 -0
  92. package/dist/src/@components/Text.component.d.ts +3 -0
  93. package/dist/src/@components/index.d.ts +6 -0
  94. package/dist/src/@components/markdown.d.ts +3 -0
  95. package/dist/src/components/MotionDiv.d.ts +18 -0
  96. package/dist/src/components/RenderFile.d.ts +7 -0
  97. package/dist/src/components/avatar.d.ts +6 -0
  98. package/dist/src/components/button.d.ts +11 -0
  99. package/dist/src/components/dialog.d.ts +276 -0
  100. package/dist/src/components/dropdown-menu.d.ts +27 -0
  101. package/dist/src/components/input.d.ts +5 -0
  102. package/dist/src/components/keyboard.d.ts +7 -0
  103. package/dist/src/components/popover.d.ts +8 -0
  104. package/dist/src/components/skeleton.d.ts +3 -0
  105. package/dist/src/components/switch.d.ts +4 -0
  106. package/dist/src/components/tooltip.d.ts +10 -0
  107. package/dist/src/components/userMessage.d.ts +8 -0
  108. package/dist/src/components/wobble.d.ts +15 -0
  109. package/dist/src/designs/basic/WidgetPopoverTrigger.d.ts +5 -0
  110. package/dist/src/designs/basic/index.d.ts +5 -0
  111. package/dist/src/designs/basic/screens/chat-screen/ChatFooter.d.ts +2 -0
  112. package/dist/src/designs/basic/screens/chat-screen/ChatHeader.d.ts +2 -0
  113. package/dist/src/designs/basic/screens/chat-screen/ChatScreen.d.ts +2 -0
  114. package/dist/src/designs/basic/screens/chat-screen/SessionClosedDialog.d.ts +2 -0
  115. package/dist/src/designs/basic/screens/root-screen.d.ts +2 -0
  116. package/dist/src/designs/basic/screens/welcome-screen/WelcomeScreen.d.ts +2 -0
  117. package/dist/src/designs/constants.d.ts +15 -0
  118. package/dist/src/hooks/useShouldCollectData.d.ts +3 -0
  119. package/dist/src/index.d.ts +9 -0
  120. package/dist/src/render.d.ts +2 -0
  121. package/dist/src/utils.d.ts +2 -0
  122. package/dist/style.css +1 -0
  123. package/dist-embed/script.js +476 -0
  124. package/dist-embed/script.js.map +1 -0
  125. package/package.json +153 -0
@@ -0,0 +1,2604 @@
1
+ var on = Object.defineProperty;
2
+ var sn = (e, t, n) => t in e ? on(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3
+ var st = (e, t, n) => sn(e, typeof t != "symbol" ? t + "" : t, n);
4
+ import { g as he, m as it, S as mt, A as an } from "./history-to-widget-messages-CP0hKjhv.js";
5
+ import ue, { useMemo as ee, useState as fe, useCallback as F, useEffect as H, createContext as yt, useContext as St, useRef as oe, useReducer as cn, useLayoutEffect as un, useDebugValue as ln } from "react";
6
+ import { jsx as $ } from "react/jsx-runtime";
7
+ import { create as dn } from "mutative";
8
+ import { io as fn } from "socket.io-client";
9
+ import pn from "lodash.set";
10
+ import gn from "axios";
11
+ const hn = typeof window > "u", at = {
12
+ getItem: () => null,
13
+ setItem: () => {
14
+ },
15
+ removeItem: () => {
16
+ }
17
+ };
18
+ function mn(e) {
19
+ return hn ? at : e === "local" ? localStorage : e === "session" ? sessionStorage : at;
20
+ }
21
+ function Ze(e, t, n = "session") {
22
+ const r = ee(() => mn(n), [n]), [o, s] = fe(() => {
23
+ const g = r.getItem(e);
24
+ if (g !== null)
25
+ try {
26
+ return JSON.parse(g);
27
+ } catch (d) {
28
+ console.error(`Error parsing stored value for key '${e}':`, d);
29
+ }
30
+ return typeof t == "function" ? t() : t ?? null;
31
+ }), i = F(
32
+ (g) => {
33
+ if (s(g), g === null)
34
+ r.removeItem(e);
35
+ else
36
+ try {
37
+ r.setItem(e, JSON.stringify(g));
38
+ } catch (d) {
39
+ console.error(
40
+ `Error saving state to storage for key '${e}':`,
41
+ d
42
+ );
43
+ }
44
+ },
45
+ [e, r]
46
+ ), l = F(() => {
47
+ s(null), r.removeItem(e);
48
+ }, [e, r]);
49
+ return H(() => {
50
+ const g = (d) => {
51
+ d.key === e && d.newValue !== JSON.stringify(o) && s(d.newValue ? JSON.parse(d.newValue) : null);
52
+ };
53
+ return window.addEventListener("storage", g), () => {
54
+ window.removeEventListener("storage", g);
55
+ };
56
+ }, [e, o]), [o, i, l];
57
+ }
58
+ const yn = "@opencx/widget", vt = "2.0.0", Sn = "module", vn = {
59
+ access: "public"
60
+ }, En = {
61
+ clean: "rm -rf ./dist ./dist-embed",
62
+ "clean:dist": "rm -rf ./dist ./dist-embed",
63
+ prepublishOnly: "pnpm clean && pnpm test && pnpm batman",
64
+ "build:lib": "vite build",
65
+ dev: "vite -c vite.config.ts",
66
+ "build:embed": "vite build -c vite.embed.config.ts",
67
+ test: "vitest run",
68
+ batman: "pnpm build:lib && pnpm build:embed",
69
+ "test:watch": "vitest --watch",
70
+ cs: "changeset",
71
+ csv: "changeset version",
72
+ csp: "changeset publish",
73
+ "type-check": "tsc --noEmit",
74
+ lint: "biome lint --fix",
75
+ format: "biome format --fix"
76
+ }, bn = {
77
+ "lucide-react": "^0.412.0",
78
+ react: "^18.3.1",
79
+ "rehype-raw": "^7.0.0"
80
+ }, wn = {
81
+ react: {
82
+ optional: !0
83
+ }
84
+ }, On = {
85
+ axios: "^1.7.5",
86
+ "socket.io-client": "^4.7.5",
87
+ zod: "^3.23.8"
88
+ }, An = {
89
+ "@radix-ui/react-avatar": "^1.1.0",
90
+ "@radix-ui/react-dropdown-menu": "^2.1.4",
91
+ "@radix-ui/react-slot": "^1.1.0",
92
+ "@radix-ui/react-switch": "^1.1.0",
93
+ "@radix-ui/react-tooltip": "^1.1.2",
94
+ clsx: "^2.1.1",
95
+ "date-fns": "^4.1.0",
96
+ "framer-motion": "^11.3.30",
97
+ "lodash.set": "^4.3.2",
98
+ "lucide-react": "^0.436.0",
99
+ mutative: "^1.0.11",
100
+ "react-dropzone": "^14.3.5",
101
+ "react-hot-toast": "^2.4.1",
102
+ tinycolor2: "^1.6.0",
103
+ zod: "^3.23.8"
104
+ }, Rn = {
105
+ "@opencx/widget": {
106
+ react: {
107
+ optional: !0,
108
+ dependencies: {
109
+ "react-hot-toast": "^2.4.1",
110
+ "react-markdown": "^9.0.1",
111
+ "framer-motion": "^11.3.30",
112
+ "date-fns": "^4.1.0"
113
+ }
114
+ }
115
+ }
116
+ }, Tn = {
117
+ react: {
118
+ "react-hot-toast": "^2.4.1",
119
+ "react-markdown": "^9.0.1",
120
+ "framer-motion": "^11.3.30",
121
+ "date-fns": "^4.1.0"
122
+ }
123
+ }, Cn = [
124
+ "dist",
125
+ "dist-embed"
126
+ ], Dn = {
127
+ url: "https://github.com/openchatai/OpenCopilot/issues"
128
+ }, Nn = {
129
+ name: "openchatai",
130
+ url: "https://github.com/openchatai"
131
+ }, Pn = "./dist/index.js", kn = "./dist/index.js", In = "./dist/index.d.ts", jn = !1, _n = {
132
+ ".": {
133
+ types: "./dist/index.d.ts",
134
+ import: "./dist/index.js",
135
+ require: "./dist/index.cjs"
136
+ },
137
+ "./basic": {
138
+ types: "./dist/basic.d.ts",
139
+ import: "./dist/basic.js",
140
+ require: "./dist/basic.cjs"
141
+ },
142
+ "./react": {
143
+ types: "./dist/react.d.ts",
144
+ import: "./dist/react.js",
145
+ require: "./dist/react.cjs"
146
+ },
147
+ "./package.json": "./package.json",
148
+ "./dist/*.css": "./dist/*.css"
149
+ }, Mn = {
150
+ "@biomejs/biome": "1.9.4",
151
+ "@changesets/cli": "^2.27.9",
152
+ "@radix-ui/react-popover": "^1.1.2",
153
+ "@tailwindcss/typography": "^0.5.15",
154
+ "@testing-library/dom": "^10.4.0",
155
+ "@testing-library/jest-dom": "^6.5.0",
156
+ "@testing-library/react": "^16.0.1",
157
+ "@types/lodash.debounce": "^4.0.9",
158
+ "@types/lodash.set": "^4.3.9",
159
+ "@types/node": "^20.14.8",
160
+ "@types/react": "^18.3.4",
161
+ "@types/react-dom": "^18.3.0",
162
+ "@types/tinycolor2": "^1.4.6",
163
+ "@uiw/react-iframe": "^1.0.3",
164
+ "@vitejs/plugin-react": "^4.3.4",
165
+ autoprefixer: "^10.4.20",
166
+ axios: "^1.7.5",
167
+ "class-variance-authority": "^0.7.0",
168
+ jsdom: "^25.0.1",
169
+ mutative: "^1.0.11",
170
+ postcss: "^8.4.41",
171
+ "postcss-prefix-selector": "^1.16.1",
172
+ react: "^18.3.1",
173
+ "react-dom": "^18.3.1",
174
+ "react-markdown": "^9.0.1",
175
+ "react-use": "^17.5.1",
176
+ "rehype-raw": "^7.0.0",
177
+ "remark-gfm": "^4.0.0",
178
+ "socket.io-client": "^4.7.5",
179
+ swr: "^2.2.5",
180
+ "tailwind-merge": "^2.4.0",
181
+ tailwindcss: "^3.4.6",
182
+ "tailwindcss-animate": "^1.0.7",
183
+ typescript: "^5.5.4",
184
+ vite: "^5.4.2",
185
+ "vite-plugin-dts": "4.0.3",
186
+ "vite-plugin-externalize-deps": "^0.8.0",
187
+ "vite-tsconfig-paths": "^5.0.1",
188
+ vitest: "^2.0.5"
189
+ }, ct = {
190
+ name: yn,
191
+ private: !1,
192
+ version: vt,
193
+ type: Sn,
194
+ publishConfig: vn,
195
+ scripts: En,
196
+ peerDependencies: bn,
197
+ peerDependenciesMeta: wn,
198
+ optionalDependencies: On,
199
+ dependencies: An,
200
+ overrides: Rn,
201
+ conditionalDependencies: Tn,
202
+ files: Cn,
203
+ bugs: Dn,
204
+ author: Nn,
205
+ main: Pn,
206
+ module: kn,
207
+ types: In,
208
+ sideEffects: jn,
209
+ exports: _n,
210
+ devDependencies: Mn
211
+ }, Fn = "X-Bot-Token", Ln = "X-Widget-Version";
212
+ function Et(e) {
213
+ const t = ee(() => gn.create({
214
+ baseURL: e.apiUrl,
215
+ headers: {
216
+ [Fn]: e.botToken,
217
+ [Ln]: vt,
218
+ "X-Use-Guard": !0
219
+ }
220
+ }), [e]);
221
+ return { apis: ee(
222
+ () => ({
223
+ createSession: (r) => {
224
+ if (!r)
225
+ throw new Error("Bot token is required");
226
+ return t.post("/chat-session/" + r);
227
+ },
228
+ /**
229
+ * get session data by id
230
+ * @param sessionId
231
+ */
232
+ fetchSession: (r) => {
233
+ if (!r)
234
+ throw new Error("Session id is required");
235
+ return t.get(`widget/session/${r}`);
236
+ },
237
+ fetchPreludeData: async () => (await t.get("/widget/prelude")).data,
238
+ /**
239
+ * get the organization office working hours.
240
+ */
241
+ getOfficeHours: () => t.get("/copilot/office-hours/public"),
242
+ fetchHistory: (r) => {
243
+ if (!r)
244
+ throw new Error("Session id is required");
245
+ return t.get(
246
+ `widget/session/history/${r}`
247
+ );
248
+ },
249
+ downvote: (r) => t.delete(`/chat/vote/${r}`),
250
+ upvote: (r) => t.post(`/chat/vote/${r}`),
251
+ /**
252
+ * given the userData object we will create or update the contact + get the related conversations/tickets/sessions
253
+ */
254
+ dumpContact: (r) => t.post("/widget/contact/upsert", r),
255
+ /**
256
+ * get the completions for the given input
257
+ */
258
+ getCompletions: (r) => t.post("/widget/chat/completions", { input: r }),
259
+ /**
260
+ * @param file
261
+ * @param options
262
+ */
263
+ uploadFile: async (r, o) => {
264
+ const s = new FormData();
265
+ return s.append("file", r.file), t.post(`/widget/upload?fileId=${r.id}`, s, {
266
+ headers: {
267
+ "Content-Type": "multipart/form-data"
268
+ },
269
+ ...o
270
+ });
271
+ },
272
+ getHistoryPooling: async ({
273
+ lastMessageTimestamp: r,
274
+ sessionId: o
275
+ }) => {
276
+ const s = new URLSearchParams();
277
+ return s.append(
278
+ "lastMessageTimestamp",
279
+ r.toString()
280
+ ), t.get(
281
+ `/widget/session/history/${o}/?${s.toString()}`
282
+ );
283
+ }
284
+ }),
285
+ [t]
286
+ ), options: e };
287
+ }
288
+ function Pe(e) {
289
+ const t = yt({});
290
+ return [() => {
291
+ const r = St(t);
292
+ if (r === void 0)
293
+ throw new Error("useSafeContext must be used within a Provider");
294
+ return r;
295
+ }, t.Provider];
296
+ }
297
+ const xn = {
298
+ ok: "حسنا",
299
+ yes: "نعم",
300
+ no: "لا",
301
+ agree: "موافق",
302
+ cancel: "إلغاء",
303
+ "yes-exit": "نعم، اخرج",
304
+ "yes-reset": "نعم، إعادة تعيين",
305
+ "no-cancel": "لا، إلغاء",
306
+ "are-you-sure": "هل أنت متأكد؟",
307
+ recording: "تسجيل",
308
+ "thank-you": "شكرا",
309
+ "sorry-try-again": "عذرا، حاول مرة أخرى",
310
+ "error-occurred": "حدث خطأ",
311
+ "please-try-again": "يرجى المحاولة مرة أخرى",
312
+ "write-a-message": "اكتب رسالة...",
313
+ "send-message": "إرسال رسالة",
314
+ connected: "متصل",
315
+ connecting: "جاري الاتصال",
316
+ reconnecting: "جاري إعادة الاتصال",
317
+ reconnected: "تم إعادة الاتصال",
318
+ disconnecting: "جاري قطع الاتصال",
319
+ disconnected: "قطع الاتصال",
320
+ error: "خطأ",
321
+ "persist-session": "حفظ الجلسة",
322
+ settings: "إعدادات",
323
+ close: "إغلاق",
324
+ help: "مساعدة",
325
+ chat: "محادثة",
326
+ send: "إرسال",
327
+ copy: "نسخ",
328
+ copied: "تم النسخ",
329
+ "sound-effects": "التاثيرات الصوتية",
330
+ language: "اللغة",
331
+ select: "اختر",
332
+ agent: "الوكيل",
333
+ user: "المستخدم",
334
+ bot: "البوت",
335
+ "reset-conversation-confirm": "هل أنت متأكد من أنك تريد إعادة تعيين المحادثة؟",
336
+ "close-widget": "إغلاق الودجة",
337
+ "got-any-questions": "هل لديك أي أسئلة؟ تحدث معنا!",
338
+ "typical-response-time": "عادة ما نرد في أقل من دقيقة واحدة",
339
+ "session-closed-lead": "تم حل مشكلتك!",
340
+ exit: "خروج",
341
+ "create-new-ticket": "إنشاء تذكرة جديدة",
342
+ "reset-conversation": "إعادة تعيين المحادثة",
343
+ "welcome-title": "مرحبًا بك في دردشة الدعم الخاصة بنا",
344
+ "welcome-description": "نحن هنا للمساعدة! ابدأ محادثة وسنرد عليك في أقرب وقت ممكن.",
345
+ "your-name": "اسمك",
346
+ "your-email": "عنوان بريدك الإلكتروني",
347
+ "start-chat": "تحدث إلى الدعم",
348
+ "starting-chat": "جاري الاتصال...",
349
+ "hello-greeting": "مرحبًا! كيف يمكننا مساعدتك اليوم؟"
350
+ }, Vn = {
351
+ ok: "OK",
352
+ yes: "Ja",
353
+ no: "Nein",
354
+ agree: "Zustimmen",
355
+ cancel: "Stornieren",
356
+ "yes-exit": "Ja, beenden",
357
+ "yes-reset": "Ja, zurücksetzen",
358
+ "no-cancel": "Nein, abbrechen",
359
+ "are-you-sure": "Sind Sie sicher?",
360
+ recording: "Aufnahme läuft",
361
+ "thank-you": "Vielen Dank",
362
+ "sorry-try-again": "Entschuldigung, bitte versuchen Sie es erneut",
363
+ "error-occurred": "Ein Fehler ist aufgetreten",
364
+ "please-try-again": "Bitte versuchen Sie es erneut",
365
+ "write-a-message": "Nachricht schreiben...",
366
+ "send-message": "Nachricht senden",
367
+ connected: "Verbunden",
368
+ connecting: "Verbindung wird hergestellt",
369
+ reconnecting: "Verbindung wird wiederhergestellt",
370
+ reconnected: "Wieder verbunden",
371
+ disconnecting: "Verbindung wird getrennt",
372
+ disconnected: "Verbindung getrennt",
373
+ error: "Fehler",
374
+ "persist-session": "Sitzung beibehalten",
375
+ settings: "Einstellungen",
376
+ close: "Schließen",
377
+ help: "Hilfe",
378
+ chat: "Chat",
379
+ send: "Senden",
380
+ copy: "Kopieren",
381
+ copied: "Kopiert",
382
+ "sound-effects": "Soundeffekte",
383
+ language: "Sprache",
384
+ select: "Auswählen",
385
+ agent: "Agent",
386
+ user: "Benutzer",
387
+ bot: "Bot",
388
+ "got-any-questions": "Haben Sie Fragen? Chatten Sie mit uns!",
389
+ "typical-response-time": "Üblicherweise antworten wir in weniger als 1 Minute",
390
+ "reset-conversation-confirm": "Möchten Sie die Konversation wirklich zurücksetzen?",
391
+ "close-widget": "Widget schließen",
392
+ "session-closed-lead": "Ihr Problem wurde gelöst!",
393
+ "create-new-ticket": "Neues Ticket erstellen",
394
+ exit: "Beenden",
395
+ "reset-conversation": "Konversation zurücksetzen",
396
+ "welcome-title": "Willkommen in unserem Support-Chat",
397
+ "welcome-description": "Wir sind hier, um zu helfen! Beginnen Sie ein Gespräch und wir werden so schnell wie möglich antworten.",
398
+ "your-name": "Ihr Name",
399
+ "your-email": "Ihre E-Mail-Adresse",
400
+ "start-chat": "Mit dem Support sprechen",
401
+ "starting-chat": "Verbindung wird hergestellt...",
402
+ "hello-greeting": "Hallo! Wie können wir Ihnen heute helfen?"
403
+ }, Un = {
404
+ ok: "OK",
405
+ yes: "Yes",
406
+ no: "No",
407
+ agree: "Agree",
408
+ cancel: "Cancel",
409
+ "yes-exit": "Yes, exit",
410
+ "yes-reset": "Yes, reset",
411
+ "no-cancel": "No, cancel",
412
+ "are-you-sure": "Are you sure?",
413
+ recording: "Recording...",
414
+ "thank-you": "Thank you",
415
+ "sorry-try-again": "Sorry, please try again",
416
+ "error-occurred": "An error occurred",
417
+ "please-try-again": "Please try again",
418
+ "write-a-message": "Write a message...",
419
+ "send-message": "Send message",
420
+ connected: "Connected",
421
+ connecting: "Connecting",
422
+ reconnecting: "Reconnecting",
423
+ reconnected: "Reconnected",
424
+ disconnecting: "Disconnecting",
425
+ disconnected: "Disconnected",
426
+ error: "Error",
427
+ "persist-session": "Persist session",
428
+ settings: "Settings",
429
+ close: "Close",
430
+ help: "Help",
431
+ chat: "Chat",
432
+ send: "Send",
433
+ copy: "Copy",
434
+ copied: "Copied",
435
+ "sound-effects": "Sound effects",
436
+ language: "Language",
437
+ select: "Select",
438
+ agent: "Agent",
439
+ user: "User",
440
+ bot: "Bot",
441
+ "reset-conversation-confirm": "Are you sure you want to reset the conversation?",
442
+ "close-widget": "Close widget",
443
+ "got-any-questions": "Got any questions? Chat with us!",
444
+ "typical-response-time": "Typically respond in less than 1 minute",
445
+ "session-closed-lead": "Your issue has been resolved!",
446
+ "create-new-ticket": "Create new ticket",
447
+ exit: "Exit",
448
+ "reset-conversation": "Reset conversation",
449
+ "welcome-title": "Welcome to our support chat",
450
+ "welcome-description": "We're here to help! Start a conversation and we'll get back to you as soon as possible.",
451
+ "your-name": "Your name",
452
+ "your-email": "Your email address",
453
+ "start-chat": "Talk to support",
454
+ "starting-chat": "Connecting...",
455
+ "hello-greeting": "Hi there!"
456
+ }, Hn = {
457
+ ok: "D'accord",
458
+ yes: "Oui",
459
+ no: "Non",
460
+ agree: "Accepter",
461
+ cancel: "Annuler",
462
+ "yes-exit": "Oui, quitter",
463
+ "yes-reset": "Oui, réinitialiser",
464
+ "no-cancel": "Non, annuler",
465
+ "are-you-sure": "Êtes-vous sûr ?",
466
+ recording: "Enregistrement...",
467
+ "thank-you": "Merci",
468
+ "sorry-try-again": "Désolé, veuillez réessayer",
469
+ "error-occurred": "Une erreur s'est produite",
470
+ "please-try-again": "Veuillez réessayer",
471
+ "write-a-message": "Écrivez un message...",
472
+ "send-message": "Envoyer le message",
473
+ connected: "Connecté",
474
+ connecting: "Connexion en cours",
475
+ reconnecting: "Reconnexion en cours",
476
+ reconnected: "Reconnecté",
477
+ disconnecting: "Déconnexion en cours",
478
+ disconnected: "Déconnecté",
479
+ error: "Erreur",
480
+ "persist-session": "Conserver la session",
481
+ settings: "Paramètres",
482
+ close: "Fermer",
483
+ help: "Aide",
484
+ chat: "Chat",
485
+ send: "Envoyer",
486
+ copy: "Copier",
487
+ copied: "Copié",
488
+ "sound-effects": "Effets sonores",
489
+ language: "Langue",
490
+ select: "Sélectionner",
491
+ agent: "Agent",
492
+ user: "Utilisateur",
493
+ bot: "Bot",
494
+ "reset-conversation-confirm": "Êtes-vous sûr de vouloir réinitialiser la conversation ?",
495
+ "close-widget": "Fermer le widget",
496
+ "got-any-questions": "Vous avez des questions ? Chattez avec nous !",
497
+ "typical-response-time": "Nous répondons généralement en moins d'une minute",
498
+ "session-closed-lead": "Votre problème a été résolu !",
499
+ "create-new-ticket": "Créer un nouveau ticket",
500
+ exit: "Sortie",
501
+ "reset-conversation": "Réinitialiser la conversation",
502
+ "welcome-title": "Bienvenue dans notre chat de support",
503
+ "welcome-description": "Nous sommes là pour vous aider ! Commencez une conversation et nous vous répondrons dès que possible.",
504
+ "your-name": "Votre nom",
505
+ "your-email": "Votre adresse e-mail",
506
+ "start-chat": "Parler au support",
507
+ "starting-chat": "Connexion...",
508
+ "hello-greeting": "Bonjour ! Comment pouvons-nous vous aider aujourd'hui ?"
509
+ }, Gn = {
510
+ ok: "OK",
511
+ yes: "Ja",
512
+ no: "Nee",
513
+ agree: "Akkoord",
514
+ cancel: "Annuleren",
515
+ "yes-exit": "Ja, afsluiten",
516
+ "yes-reset": "Ja, resetten",
517
+ "no-cancel": "Nee, annuleren",
518
+ "are-you-sure": "Weet u het zeker?",
519
+ recording: "Opname...",
520
+ "thank-you": "Dank u",
521
+ "sorry-try-again": "Sorry, probeer het opnieuw",
522
+ "error-occurred": "Er is een fout opgetreden",
523
+ "please-try-again": "Probeer het opnieuw",
524
+ "write-a-message": "Schrijf een bericht...",
525
+ "send-message": "Bericht verzenden",
526
+ connected: "Verbonden",
527
+ connecting: "Verbinding maken",
528
+ reconnecting: "Opnieuw verbinding maken",
529
+ reconnected: "Opnieuw verbonden",
530
+ disconnecting: "Verbinding verbreken",
531
+ disconnected: "Verbinding verbroken",
532
+ error: "Fout",
533
+ "persist-session": "Sessie behouden",
534
+ settings: "Instellingen",
535
+ close: "Sluiten",
536
+ help: "Help",
537
+ chat: "Chat",
538
+ send: "Verzenden",
539
+ copy: "Kopiëren",
540
+ copied: "Gekopieerd",
541
+ "sound-effects": "Geluidseffecten",
542
+ language: "Taal",
543
+ select: "Selecteren",
544
+ agent: "Agent",
545
+ user: "Gebruiker",
546
+ bot: "Bot",
547
+ "reset-conversation-confirm": "Weet u zeker dat u het gesprek wilt resetten?",
548
+ "close-widget": "Widget sluiten",
549
+ "got-any-questions": "Heeft u vragen? Chat met ons!",
550
+ "typical-response-time": "We reageren doorgaans binnen 1 minuut",
551
+ "session-closed-lead": "Uw probleem is opgelost!",
552
+ "create-new-ticket": "Nieuw ticket aanmaken",
553
+ exit: "Afsluiten",
554
+ "reset-conversation": "Gesprek resetten",
555
+ "welcome-title": "Welkom bij onze supportchat",
556
+ "welcome-description": "We zijn hier om te helpen! Begin een gesprek en we nemen zo snel mogelijk contact met u op.",
557
+ "your-name": "Uw naam",
558
+ "your-email": "Uw e-mailadres",
559
+ "start-chat": "Praat met ondersteuning",
560
+ "starting-chat": "Verbinding maken...",
561
+ "hello-greeting": "Hallo! Hoe kunnen we u vandaag helpen?"
562
+ }, zn = {
563
+ ok: "OK",
564
+ yes: "Sim",
565
+ no: "Não",
566
+ agree: "Concordo",
567
+ cancel: "Cancelar",
568
+ "yes-exit": "Sim, sair",
569
+ "yes-reset": "Sim, redefinir",
570
+ "no-cancel": "Não, cancelar",
571
+ "are-you-sure": "Você tem certeza?",
572
+ recording: "Gravando...",
573
+ "thank-you": "Obrigado",
574
+ "sorry-try-again": "Desculpe, tente novamente",
575
+ "error-occurred": "Ocorreu um erro",
576
+ "please-try-again": "Por favor, tente novamente",
577
+ "write-a-message": "Escreva uma mensagem...",
578
+ "send-message": "Enviar mensagem",
579
+ connected: "Conectado",
580
+ connecting: "Conectando",
581
+ reconnecting: "Reconectando",
582
+ reconnected: "Reconectado",
583
+ disconnecting: "Desconectando",
584
+ disconnected: "Desconectado",
585
+ error: "Erro",
586
+ "persist-session": "Persistir sessão",
587
+ settings: "Configurações",
588
+ close: "Fechar",
589
+ help: "Ajuda",
590
+ chat: "Bate-papo",
591
+ send: "Enviar",
592
+ copy: "Copiar",
593
+ copied: "Copiado",
594
+ "sound-effects": "Efeitos sonoros",
595
+ language: "Idioma",
596
+ select: "Selecionar",
597
+ agent: "Agente",
598
+ user: "Usuário",
599
+ bot: "Bot",
600
+ "reset-conversation-confirm": "Você tem certeza de que deseja redefinir a conversa?",
601
+ "close-widget": "Fechar widget",
602
+ "got-any-questions": "Tem alguma dúvida? Converse conosco!",
603
+ "typical-response-time": "Geralmente respondemos em menos de 1 minuto",
604
+ "session-closed-lead": "Seu problema foi resolvido!",
605
+ "create-new-ticket": "Criar novo ticket",
606
+ exit: "Sair",
607
+ "reset-conversation": "Redefinir conversa",
608
+ "welcome-title": "Bem-vindo ao nosso chat de suporte",
609
+ "welcome-description": "Estamos aqui para ajudar! Inicie uma conversa e responderemos o mais rápido possível.",
610
+ "your-name": "Seu nome",
611
+ "your-email": "Seu endereço de email",
612
+ "start-chat": "Falar com o suporte",
613
+ "starting-chat": "Conectando...",
614
+ "hello-greeting": "Olá! Como podemos ajudar você hoje?"
615
+ }, Yn = {
616
+ en: Un,
617
+ ar: xn,
618
+ nl: Gn,
619
+ fr: Hn,
620
+ de: Vn,
621
+ pt: zn
622
+ };
623
+ function Bn(e, t) {
624
+ const n = Yn[t];
625
+ return n && n[e] || "";
626
+ }
627
+ const [qn, Xn] = Pe();
628
+ function bt({ children: e }) {
629
+ const t = ae();
630
+ return /* @__PURE__ */ $(
631
+ Xn,
632
+ {
633
+ value: {
634
+ get: (n, r) => Bn(n, t.language ?? "en") + (r ?? ""),
635
+ lang: t.language
636
+ },
637
+ children: e
638
+ }
639
+ );
640
+ }
641
+ class Qn {
642
+ constructor(t) {
643
+ st(this, "components", [
644
+ {
645
+ key: "FALLBACK",
646
+ component: (t) => "fallback"
647
+ },
648
+ {
649
+ key: "LOADING",
650
+ component: (t) => "loading"
651
+ }
652
+ ]);
653
+ const { components: n } = t;
654
+ if (n && n.forEach((r) => this.register(r)), this.components.length === 0)
655
+ throw new Error("No components registered");
656
+ if (!this.get("FALLBACK"))
657
+ throw new Error("No fallback component registered");
658
+ }
659
+ register(t) {
660
+ const n = this.components.findIndex((r) => r.key === t.key);
661
+ return n !== -1 ? this.components[n] = t : this.components.push(t), this;
662
+ }
663
+ get(t) {
664
+ const n = this.components.find(
665
+ (r) => r.key.toUpperCase() === t.toUpperCase()
666
+ );
667
+ return n || null;
668
+ }
669
+ getOrFallback(t) {
670
+ return t ? this.get(t) || this.get("FALLBACK") : this.get("FALLBACK");
671
+ }
672
+ getComponent(t, n) {
673
+ var r;
674
+ return n ? this.getOrFallback(t).component : (r = this.get(t)) == null ? void 0 : r.component;
675
+ }
676
+ }
677
+ const Wn = "data:image/png;base64,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", Kn = {
678
+ primaryColor: "hsl(0,0%,0%)",
679
+ triggerOffset: "20px"
680
+ };
681
+ function Jn(e) {
682
+ return ee(() => {
683
+ var o, s, i, l;
684
+ const t = {
685
+ messageArrived: "https://cloud.opencopilot.so/sfx/notification3.mp3",
686
+ ...e.soundEffectFiles
687
+ }, n = Object.assign({}, Kn, e.theme ?? {}), r = {
688
+ id: "555",
689
+ is_ai: !0,
690
+ profile_picture: ((o = e.bot) == null ? void 0 : o.avatarUrl) || Wn,
691
+ name: ((s = e.bot) == null ? void 0 : s.name) || "Bot"
692
+ };
693
+ return {
694
+ ...e,
695
+ bot: r,
696
+ apiUrl: e.apiUrl ?? "https://api-v2.opencopilot.so/backend",
697
+ socketUrl: e.socketUrl ?? "https://api-v2.opencopilot.so",
698
+ language: e.language ?? $n,
699
+ botToken: e.token,
700
+ headers: e.headers ?? {},
701
+ pathParams: e.pathParams ?? {},
702
+ queryParams: e.queryParams ?? {},
703
+ user: e.user ?? {},
704
+ theme: n,
705
+ soundEffectFiles: t,
706
+ collectUserData: e.collectUserData ?? !1,
707
+ defaultSettings: {
708
+ persistSession: ((i = e.settings) == null ? void 0 : i.persistSession) ?? !1,
709
+ useSoundEffects: ((l = e.settings) == null ? void 0 : l.useSoundEffects) ?? !1
710
+ }
711
+ };
712
+ }, [e]);
713
+ }
714
+ const [ae, Zn] = Pe(), $n = "en";
715
+ function er({
716
+ children: e,
717
+ data: t
718
+ }) {
719
+ const n = ee(
720
+ () => new Qn({
721
+ components: t.components
722
+ }),
723
+ [t]
724
+ ), r = Jn(t), o = Et({
725
+ apiUrl: r.apiUrl,
726
+ botToken: r.token
727
+ }), [s, i] = Ze(
728
+ "open_settings",
729
+ r.defaultSettings,
730
+ "local"
731
+ );
732
+ return /* @__PURE__ */ $(
733
+ Zn,
734
+ {
735
+ value: { ...r, http: o, componentStore: n, widgetSettings: s, setSettings: (g) => {
736
+ const d = Object.assign(
737
+ {},
738
+ r.defaultSettings,
739
+ s,
740
+ g
741
+ );
742
+ i(d);
743
+ } },
744
+ children: /* @__PURE__ */ $(bt, { children: e })
745
+ }
746
+ );
747
+ }
748
+ var po = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
749
+ function go(e) {
750
+ return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
751
+ }
752
+ function tr(e) {
753
+ if (e.__esModule) return e;
754
+ var t = e.default;
755
+ if (typeof t == "function") {
756
+ var n = function r() {
757
+ return this instanceof r ? Reflect.construct(t, arguments, this.constructor) : t.apply(this, arguments);
758
+ };
759
+ n.prototype = t.prototype;
760
+ } else n = {};
761
+ return Object.defineProperty(n, "__esModule", { value: !0 }), Object.keys(e).forEach(function(r) {
762
+ var o = Object.getOwnPropertyDescriptor(e, r);
763
+ Object.defineProperty(n, r, o.get ? o : {
764
+ enumerable: !0,
765
+ get: function() {
766
+ return e[r];
767
+ }
768
+ });
769
+ }), n;
770
+ }
771
+ var wt = {}, Ye = function(e, t) {
772
+ return Ye = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(n, r) {
773
+ n.__proto__ = r;
774
+ } || function(n, r) {
775
+ for (var o in r) Object.prototype.hasOwnProperty.call(r, o) && (n[o] = r[o]);
776
+ }, Ye(e, t);
777
+ };
778
+ function Ot(e, t) {
779
+ if (typeof t != "function" && t !== null)
780
+ throw new TypeError("Class extends value " + String(t) + " is not a constructor or null");
781
+ Ye(e, t);
782
+ function n() {
783
+ this.constructor = e;
784
+ }
785
+ e.prototype = t === null ? Object.create(t) : (n.prototype = t.prototype, new n());
786
+ }
787
+ var Ce = function() {
788
+ return Ce = Object.assign || function(t) {
789
+ for (var n, r = 1, o = arguments.length; r < o; r++) {
790
+ n = arguments[r];
791
+ for (var s in n) Object.prototype.hasOwnProperty.call(n, s) && (t[s] = n[s]);
792
+ }
793
+ return t;
794
+ }, Ce.apply(this, arguments);
795
+ };
796
+ function At(e, t) {
797
+ var n = {};
798
+ for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && t.indexOf(r) < 0 && (n[r] = e[r]);
799
+ if (e != null && typeof Object.getOwnPropertySymbols == "function")
800
+ for (var o = 0, r = Object.getOwnPropertySymbols(e); o < r.length; o++)
801
+ t.indexOf(r[o]) < 0 && Object.prototype.propertyIsEnumerable.call(e, r[o]) && (n[r[o]] = e[r[o]]);
802
+ return n;
803
+ }
804
+ function Rt(e, t, n, r) {
805
+ var o = arguments.length, s = o < 3 ? t : r === null ? r = Object.getOwnPropertyDescriptor(t, n) : r, i;
806
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function") s = Reflect.decorate(e, t, n, r);
807
+ else for (var l = e.length - 1; l >= 0; l--) (i = e[l]) && (s = (o < 3 ? i(s) : o > 3 ? i(t, n, s) : i(t, n)) || s);
808
+ return o > 3 && s && Object.defineProperty(t, n, s), s;
809
+ }
810
+ function Tt(e, t) {
811
+ return function(n, r) {
812
+ t(n, r, e);
813
+ };
814
+ }
815
+ function Ct(e, t, n, r, o, s) {
816
+ function i(a) {
817
+ if (a !== void 0 && typeof a != "function") throw new TypeError("Function expected");
818
+ return a;
819
+ }
820
+ for (var l = r.kind, g = l === "getter" ? "get" : l === "setter" ? "set" : "value", d = !t && e ? r.static ? e : e.prototype : null, c = t || (d ? Object.getOwnPropertyDescriptor(d, r.name) : {}), u, p = !1, f = n.length - 1; f >= 0; f--) {
821
+ var m = {};
822
+ for (var h in r) m[h] = h === "access" ? {} : r[h];
823
+ for (var h in r.access) m.access[h] = r.access[h];
824
+ m.addInitializer = function(a) {
825
+ if (p) throw new TypeError("Cannot add initializers after decoration has completed");
826
+ s.push(i(a || null));
827
+ };
828
+ var D = (0, n[f])(l === "accessor" ? { get: c.get, set: c.set } : c[g], m);
829
+ if (l === "accessor") {
830
+ if (D === void 0) continue;
831
+ if (D === null || typeof D != "object") throw new TypeError("Object expected");
832
+ (u = i(D.get)) && (c.get = u), (u = i(D.set)) && (c.set = u), (u = i(D.init)) && o.unshift(u);
833
+ } else (u = i(D)) && (l === "field" ? o.unshift(u) : c[g] = u);
834
+ }
835
+ d && Object.defineProperty(d, r.name, c), p = !0;
836
+ }
837
+ function Dt(e, t, n) {
838
+ for (var r = arguments.length > 2, o = 0; o < t.length; o++)
839
+ n = r ? t[o].call(e, n) : t[o].call(e);
840
+ return r ? n : void 0;
841
+ }
842
+ function Nt(e) {
843
+ return typeof e == "symbol" ? e : "".concat(e);
844
+ }
845
+ function Pt(e, t, n) {
846
+ return typeof t == "symbol" && (t = t.description ? "[".concat(t.description, "]") : ""), Object.defineProperty(e, "name", { configurable: !0, value: n ? "".concat(n, " ", t) : t });
847
+ }
848
+ function kt(e, t) {
849
+ if (typeof Reflect == "object" && typeof Reflect.metadata == "function") return Reflect.metadata(e, t);
850
+ }
851
+ function It(e, t, n, r) {
852
+ function o(s) {
853
+ return s instanceof n ? s : new n(function(i) {
854
+ i(s);
855
+ });
856
+ }
857
+ return new (n || (n = Promise))(function(s, i) {
858
+ function l(c) {
859
+ try {
860
+ d(r.next(c));
861
+ } catch (u) {
862
+ i(u);
863
+ }
864
+ }
865
+ function g(c) {
866
+ try {
867
+ d(r.throw(c));
868
+ } catch (u) {
869
+ i(u);
870
+ }
871
+ }
872
+ function d(c) {
873
+ c.done ? s(c.value) : o(c.value).then(l, g);
874
+ }
875
+ d((r = r.apply(e, t || [])).next());
876
+ });
877
+ }
878
+ function jt(e, t) {
879
+ var n = { label: 0, sent: function() {
880
+ if (s[0] & 1) throw s[1];
881
+ return s[1];
882
+ }, trys: [], ops: [] }, r, o, s, i = Object.create((typeof Iterator == "function" ? Iterator : Object).prototype);
883
+ return i.next = l(0), i.throw = l(1), i.return = l(2), typeof Symbol == "function" && (i[Symbol.iterator] = function() {
884
+ return this;
885
+ }), i;
886
+ function l(d) {
887
+ return function(c) {
888
+ return g([d, c]);
889
+ };
890
+ }
891
+ function g(d) {
892
+ if (r) throw new TypeError("Generator is already executing.");
893
+ for (; i && (i = 0, d[0] && (n = 0)), n; ) try {
894
+ if (r = 1, o && (s = d[0] & 2 ? o.return : d[0] ? o.throw || ((s = o.return) && s.call(o), 0) : o.next) && !(s = s.call(o, d[1])).done) return s;
895
+ switch (o = 0, s && (d = [d[0] & 2, s.value]), d[0]) {
896
+ case 0:
897
+ case 1:
898
+ s = d;
899
+ break;
900
+ case 4:
901
+ return n.label++, { value: d[1], done: !1 };
902
+ case 5:
903
+ n.label++, o = d[1], d = [0];
904
+ continue;
905
+ case 7:
906
+ d = n.ops.pop(), n.trys.pop();
907
+ continue;
908
+ default:
909
+ if (s = n.trys, !(s = s.length > 0 && s[s.length - 1]) && (d[0] === 6 || d[0] === 2)) {
910
+ n = 0;
911
+ continue;
912
+ }
913
+ if (d[0] === 3 && (!s || d[1] > s[0] && d[1] < s[3])) {
914
+ n.label = d[1];
915
+ break;
916
+ }
917
+ if (d[0] === 6 && n.label < s[1]) {
918
+ n.label = s[1], s = d;
919
+ break;
920
+ }
921
+ if (s && n.label < s[2]) {
922
+ n.label = s[2], n.ops.push(d);
923
+ break;
924
+ }
925
+ s[2] && n.ops.pop(), n.trys.pop();
926
+ continue;
927
+ }
928
+ d = t.call(e, n);
929
+ } catch (c) {
930
+ d = [6, c], o = 0;
931
+ } finally {
932
+ r = s = 0;
933
+ }
934
+ if (d[0] & 5) throw d[1];
935
+ return { value: d[0] ? d[1] : void 0, done: !0 };
936
+ }
937
+ }
938
+ var ke = Object.create ? function(e, t, n, r) {
939
+ r === void 0 && (r = n);
940
+ var o = Object.getOwnPropertyDescriptor(t, n);
941
+ (!o || ("get" in o ? !t.__esModule : o.writable || o.configurable)) && (o = { enumerable: !0, get: function() {
942
+ return t[n];
943
+ } }), Object.defineProperty(e, r, o);
944
+ } : function(e, t, n, r) {
945
+ r === void 0 && (r = n), e[r] = t[n];
946
+ };
947
+ function _t(e, t) {
948
+ for (var n in e) n !== "default" && !Object.prototype.hasOwnProperty.call(t, n) && ke(t, e, n);
949
+ }
950
+ function De(e) {
951
+ var t = typeof Symbol == "function" && Symbol.iterator, n = t && e[t], r = 0;
952
+ if (n) return n.call(e);
953
+ if (e && typeof e.length == "number") return {
954
+ next: function() {
955
+ return e && r >= e.length && (e = void 0), { value: e && e[r++], done: !e };
956
+ }
957
+ };
958
+ throw new TypeError(t ? "Object is not iterable." : "Symbol.iterator is not defined.");
959
+ }
960
+ function $e(e, t) {
961
+ var n = typeof Symbol == "function" && e[Symbol.iterator];
962
+ if (!n) return e;
963
+ var r = n.call(e), o, s = [], i;
964
+ try {
965
+ for (; (t === void 0 || t-- > 0) && !(o = r.next()).done; ) s.push(o.value);
966
+ } catch (l) {
967
+ i = { error: l };
968
+ } finally {
969
+ try {
970
+ o && !o.done && (n = r.return) && n.call(r);
971
+ } finally {
972
+ if (i) throw i.error;
973
+ }
974
+ }
975
+ return s;
976
+ }
977
+ function Mt() {
978
+ for (var e = [], t = 0; t < arguments.length; t++)
979
+ e = e.concat($e(arguments[t]));
980
+ return e;
981
+ }
982
+ function Ft() {
983
+ for (var e = 0, t = 0, n = arguments.length; t < n; t++) e += arguments[t].length;
984
+ for (var r = Array(e), o = 0, t = 0; t < n; t++)
985
+ for (var s = arguments[t], i = 0, l = s.length; i < l; i++, o++)
986
+ r[o] = s[i];
987
+ return r;
988
+ }
989
+ function Lt(e, t, n) {
990
+ if (n || arguments.length === 2) for (var r = 0, o = t.length, s; r < o; r++)
991
+ (s || !(r in t)) && (s || (s = Array.prototype.slice.call(t, 0, r)), s[r] = t[r]);
992
+ return e.concat(s || Array.prototype.slice.call(t));
993
+ }
994
+ function pe(e) {
995
+ return this instanceof pe ? (this.v = e, this) : new pe(e);
996
+ }
997
+ function xt(e, t, n) {
998
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
999
+ var r = n.apply(e, t || []), o, s = [];
1000
+ return o = Object.create((typeof AsyncIterator == "function" ? AsyncIterator : Object).prototype), l("next"), l("throw"), l("return", i), o[Symbol.asyncIterator] = function() {
1001
+ return this;
1002
+ }, o;
1003
+ function i(f) {
1004
+ return function(m) {
1005
+ return Promise.resolve(m).then(f, u);
1006
+ };
1007
+ }
1008
+ function l(f, m) {
1009
+ r[f] && (o[f] = function(h) {
1010
+ return new Promise(function(D, a) {
1011
+ s.push([f, h, D, a]) > 1 || g(f, h);
1012
+ });
1013
+ }, m && (o[f] = m(o[f])));
1014
+ }
1015
+ function g(f, m) {
1016
+ try {
1017
+ d(r[f](m));
1018
+ } catch (h) {
1019
+ p(s[0][3], h);
1020
+ }
1021
+ }
1022
+ function d(f) {
1023
+ f.value instanceof pe ? Promise.resolve(f.value.v).then(c, u) : p(s[0][2], f);
1024
+ }
1025
+ function c(f) {
1026
+ g("next", f);
1027
+ }
1028
+ function u(f) {
1029
+ g("throw", f);
1030
+ }
1031
+ function p(f, m) {
1032
+ f(m), s.shift(), s.length && g(s[0][0], s[0][1]);
1033
+ }
1034
+ }
1035
+ function Vt(e) {
1036
+ var t, n;
1037
+ return t = {}, r("next"), r("throw", function(o) {
1038
+ throw o;
1039
+ }), r("return"), t[Symbol.iterator] = function() {
1040
+ return this;
1041
+ }, t;
1042
+ function r(o, s) {
1043
+ t[o] = e[o] ? function(i) {
1044
+ return (n = !n) ? { value: pe(e[o](i)), done: !1 } : s ? s(i) : i;
1045
+ } : s;
1046
+ }
1047
+ }
1048
+ function Ut(e) {
1049
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
1050
+ var t = e[Symbol.asyncIterator], n;
1051
+ return t ? t.call(e) : (e = typeof De == "function" ? De(e) : e[Symbol.iterator](), n = {}, r("next"), r("throw"), r("return"), n[Symbol.asyncIterator] = function() {
1052
+ return this;
1053
+ }, n);
1054
+ function r(s) {
1055
+ n[s] = e[s] && function(i) {
1056
+ return new Promise(function(l, g) {
1057
+ i = e[s](i), o(l, g, i.done, i.value);
1058
+ });
1059
+ };
1060
+ }
1061
+ function o(s, i, l, g) {
1062
+ Promise.resolve(g).then(function(d) {
1063
+ s({ value: d, done: l });
1064
+ }, i);
1065
+ }
1066
+ }
1067
+ function Ht(e, t) {
1068
+ return Object.defineProperty ? Object.defineProperty(e, "raw", { value: t }) : e.raw = t, e;
1069
+ }
1070
+ var nr = Object.create ? function(e, t) {
1071
+ Object.defineProperty(e, "default", { enumerable: !0, value: t });
1072
+ } : function(e, t) {
1073
+ e.default = t;
1074
+ };
1075
+ function Gt(e) {
1076
+ if (e && e.__esModule) return e;
1077
+ var t = {};
1078
+ if (e != null) for (var n in e) n !== "default" && Object.prototype.hasOwnProperty.call(e, n) && ke(t, e, n);
1079
+ return nr(t, e), t;
1080
+ }
1081
+ function zt(e) {
1082
+ return e && e.__esModule ? e : { default: e };
1083
+ }
1084
+ function Yt(e, t, n, r) {
1085
+ if (n === "a" && !r) throw new TypeError("Private accessor was defined without a getter");
1086
+ if (typeof t == "function" ? e !== t || !r : !t.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
1087
+ return n === "m" ? r : n === "a" ? r.call(e) : r ? r.value : t.get(e);
1088
+ }
1089
+ function Bt(e, t, n, r, o) {
1090
+ if (r === "m") throw new TypeError("Private method is not writable");
1091
+ if (r === "a" && !o) throw new TypeError("Private accessor was defined without a setter");
1092
+ if (typeof t == "function" ? e !== t || !o : !t.has(e)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
1093
+ return r === "a" ? o.call(e, n) : o ? o.value = n : t.set(e, n), n;
1094
+ }
1095
+ function qt(e, t) {
1096
+ if (t === null || typeof t != "object" && typeof t != "function") throw new TypeError("Cannot use 'in' operator on non-object");
1097
+ return typeof e == "function" ? t === e : e.has(t);
1098
+ }
1099
+ function Xt(e, t, n) {
1100
+ if (t != null) {
1101
+ if (typeof t != "object" && typeof t != "function") throw new TypeError("Object expected.");
1102
+ var r, o;
1103
+ if (n) {
1104
+ if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
1105
+ r = t[Symbol.asyncDispose];
1106
+ }
1107
+ if (r === void 0) {
1108
+ if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
1109
+ r = t[Symbol.dispose], n && (o = r);
1110
+ }
1111
+ if (typeof r != "function") throw new TypeError("Object not disposable.");
1112
+ o && (r = function() {
1113
+ try {
1114
+ o.call(this);
1115
+ } catch (s) {
1116
+ return Promise.reject(s);
1117
+ }
1118
+ }), e.stack.push({ value: t, dispose: r, async: n });
1119
+ } else n && e.stack.push({ async: !0 });
1120
+ return t;
1121
+ }
1122
+ var rr = typeof SuppressedError == "function" ? SuppressedError : function(e, t, n) {
1123
+ var r = new Error(n);
1124
+ return r.name = "SuppressedError", r.error = e, r.suppressed = t, r;
1125
+ };
1126
+ function Qt(e) {
1127
+ function t(s) {
1128
+ e.error = e.hasError ? new rr(s, e.error, "An error was suppressed during disposal.") : s, e.hasError = !0;
1129
+ }
1130
+ var n, r = 0;
1131
+ function o() {
1132
+ for (; n = e.stack.pop(); )
1133
+ try {
1134
+ if (!n.async && r === 1) return r = 0, e.stack.push(n), Promise.resolve().then(o);
1135
+ if (n.dispose) {
1136
+ var s = n.dispose.call(n.value);
1137
+ if (n.async) return r |= 2, Promise.resolve(s).then(o, function(i) {
1138
+ return t(i), o();
1139
+ });
1140
+ } else r |= 1;
1141
+ } catch (i) {
1142
+ t(i);
1143
+ }
1144
+ if (r === 1) return e.hasError ? Promise.reject(e.error) : Promise.resolve();
1145
+ if (e.hasError) throw e.error;
1146
+ }
1147
+ return o();
1148
+ }
1149
+ function Wt(e, t) {
1150
+ return typeof e == "string" && /^\.\.?\//.test(e) ? e.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(n, r, o, s, i) {
1151
+ return r ? t ? ".jsx" : ".js" : o && (!s || !i) ? n : o + s + "." + i.toLowerCase() + "js";
1152
+ }) : e;
1153
+ }
1154
+ const or = {
1155
+ __extends: Ot,
1156
+ __assign: Ce,
1157
+ __rest: At,
1158
+ __decorate: Rt,
1159
+ __param: Tt,
1160
+ __esDecorate: Ct,
1161
+ __runInitializers: Dt,
1162
+ __propKey: Nt,
1163
+ __setFunctionName: Pt,
1164
+ __metadata: kt,
1165
+ __awaiter: It,
1166
+ __generator: jt,
1167
+ __createBinding: ke,
1168
+ __exportStar: _t,
1169
+ __values: De,
1170
+ __read: $e,
1171
+ __spread: Mt,
1172
+ __spreadArrays: Ft,
1173
+ __spreadArray: Lt,
1174
+ __await: pe,
1175
+ __asyncGenerator: xt,
1176
+ __asyncDelegator: Vt,
1177
+ __asyncValues: Ut,
1178
+ __makeTemplateObject: Ht,
1179
+ __importStar: Gt,
1180
+ __importDefault: zt,
1181
+ __classPrivateFieldGet: Yt,
1182
+ __classPrivateFieldSet: Bt,
1183
+ __classPrivateFieldIn: qt,
1184
+ __addDisposableResource: Xt,
1185
+ __disposeResources: Qt,
1186
+ __rewriteRelativeImportExtension: Wt
1187
+ }, sr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1188
+ __proto__: null,
1189
+ __addDisposableResource: Xt,
1190
+ get __assign() {
1191
+ return Ce;
1192
+ },
1193
+ __asyncDelegator: Vt,
1194
+ __asyncGenerator: xt,
1195
+ __asyncValues: Ut,
1196
+ __await: pe,
1197
+ __awaiter: It,
1198
+ __classPrivateFieldGet: Yt,
1199
+ __classPrivateFieldIn: qt,
1200
+ __classPrivateFieldSet: Bt,
1201
+ __createBinding: ke,
1202
+ __decorate: Rt,
1203
+ __disposeResources: Qt,
1204
+ __esDecorate: Ct,
1205
+ __exportStar: _t,
1206
+ __extends: Ot,
1207
+ __generator: jt,
1208
+ __importDefault: zt,
1209
+ __importStar: Gt,
1210
+ __makeTemplateObject: Ht,
1211
+ __metadata: kt,
1212
+ __param: Tt,
1213
+ __propKey: Nt,
1214
+ __read: $e,
1215
+ __rest: At,
1216
+ __rewriteRelativeImportExtension: Wt,
1217
+ __runInitializers: Dt,
1218
+ __setFunctionName: Pt,
1219
+ __spread: Mt,
1220
+ __spreadArray: Lt,
1221
+ __spreadArrays: Ft,
1222
+ __values: De,
1223
+ default: or
1224
+ }, Symbol.toStringTag, { value: "Module" })), ir = /* @__PURE__ */ tr(sr);
1225
+ var Ae = {}, ut;
1226
+ function ar() {
1227
+ if (ut) return Ae;
1228
+ ut = 1, Object.defineProperty(Ae, "__esModule", { value: !0 });
1229
+ var e = ue;
1230
+ function t() {
1231
+ var n = e.useRef(!1), r = e.useCallback(function() {
1232
+ return n.current;
1233
+ }, []);
1234
+ return e.useEffect(function() {
1235
+ return n.current = !0, function() {
1236
+ n.current = !1;
1237
+ };
1238
+ }, []), r;
1239
+ }
1240
+ return Ae.default = t, Ae;
1241
+ }
1242
+ Object.defineProperty(wt, "__esModule", { value: !0 });
1243
+ var Be = ir, Fe = ue, cr = Be.__importDefault(ar());
1244
+ function ur(e, t, n) {
1245
+ t === void 0 && (t = []), n === void 0 && (n = { loading: !1 });
1246
+ var r = Fe.useRef(0), o = cr.default(), s = Fe.useState(n), i = s[0], l = s[1], g = Fe.useCallback(function() {
1247
+ for (var d = [], c = 0; c < arguments.length; c++)
1248
+ d[c] = arguments[c];
1249
+ var u = ++r.current;
1250
+ return i.loading || l(function(p) {
1251
+ return Be.__assign(Be.__assign({}, p), { loading: !0 });
1252
+ }), e.apply(void 0, d).then(function(p) {
1253
+ return o() && u === r.current && l({ value: p, loading: !1 }), p;
1254
+ }, function(p) {
1255
+ return o() && u === r.current && l({ error: p, loading: !1 }), p;
1256
+ });
1257
+ }, t);
1258
+ return [i, g];
1259
+ }
1260
+ var Ne = wt.default = ur;
1261
+ const re = /* @__PURE__ */ new Map();
1262
+ function ho() {
1263
+ const [e, t] = fe([]), { http: n } = ae();
1264
+ function r(c) {
1265
+ const u = c.map((p) => ({
1266
+ file: p,
1267
+ id: he(10),
1268
+ status: "pending",
1269
+ progress: 0
1270
+ }));
1271
+ t((p) => [...p, ...u]), u.forEach(i);
1272
+ }
1273
+ function o(c, u) {
1274
+ t(
1275
+ (p) => p.map((f) => f.id === c ? { ...f, ...u } : f)
1276
+ );
1277
+ }
1278
+ function s(c) {
1279
+ t((u) => u.filter((p) => p.id !== c));
1280
+ }
1281
+ const i = async (c) => {
1282
+ const u = new AbortController();
1283
+ re.set(c.id, u);
1284
+ try {
1285
+ t(
1286
+ (f) => f.map(
1287
+ (m) => m.id === c.id ? { ...m, status: "uploading", progress: 0 } : m
1288
+ )
1289
+ );
1290
+ const p = await n.apis.uploadFile(c, {
1291
+ signal: u.signal,
1292
+ onUploadProgress: (f) => {
1293
+ if (!f.total) return;
1294
+ const m = Math.round(
1295
+ f.loaded * 100 / f.total
1296
+ );
1297
+ o(c.id, { progress: m });
1298
+ }
1299
+ });
1300
+ o(c.id, {
1301
+ status: "success",
1302
+ fileUrl: p.data.fileUrl,
1303
+ progress: 100
1304
+ });
1305
+ } catch (p) {
1306
+ u.signal.aborted || o(c.id, {
1307
+ status: "error",
1308
+ error: p instanceof Error ? p.message : "Upload failed",
1309
+ progress: 0
1310
+ });
1311
+ } finally {
1312
+ re.delete(c.id);
1313
+ }
1314
+ }, l = (c) => {
1315
+ const u = re.get(c);
1316
+ u && (u.abort(), re.delete(c)), s(c);
1317
+ }, g = ee(() => e.filter((c) => c.status === "success" && c.fileUrl), [e]);
1318
+ function d() {
1319
+ re.forEach((c) => c.abort()), re.clear(), t([]);
1320
+ }
1321
+ return H(() => () => {
1322
+ re.forEach((c) => c.abort()), re.clear();
1323
+ }, []), {
1324
+ allFiles: e,
1325
+ appendFiles: r,
1326
+ handleCancelUpload: l,
1327
+ successFiles: g,
1328
+ emptyTheFiles: d,
1329
+ getFileById: (c) => e.find((u) => u.id === c),
1330
+ getUploadProgress: (c) => {
1331
+ var u;
1332
+ return ((u = e.find((p) => p.id === c)) == null ? void 0 : u.progress) ?? 0;
1333
+ },
1334
+ getUploadStatus: (c) => {
1335
+ var u;
1336
+ return (u = e.find((p) => p.id === c)) == null ? void 0 : u.status;
1337
+ },
1338
+ hasErrors: e.some((c) => c.status === "error"),
1339
+ isUploading: e.some((c) => c.status === "uploading")
1340
+ };
1341
+ }
1342
+ function lr(e, t) {
1343
+ const [n, r] = fe(e);
1344
+ return H(() => {
1345
+ const o = setTimeout(() => r(e), t);
1346
+ return () => clearTimeout(o);
1347
+ }, [e, t, n]), [n, r];
1348
+ }
1349
+ function dr(e) {
1350
+ var n, r, o, s, i, l, g;
1351
+ const t = e._message;
1352
+ switch (t && ((n = e.onAny) == null || n.call(e, t, e)), t.type) {
1353
+ case "message": {
1354
+ (r = e.onBotMessage) == null || r.call(
1355
+ e,
1356
+ {
1357
+ type: "FROM_BOT",
1358
+ component: "TEXT",
1359
+ id: t.server_message_id,
1360
+ timestamp: t.timestamp,
1361
+ attachments: t.attachments,
1362
+ data: {
1363
+ message: t.value
1364
+ },
1365
+ agent: t.agent.is_ai ? e._config.bot : t.agent
1366
+ },
1367
+ e
1368
+ );
1369
+ break;
1370
+ }
1371
+ case "info":
1372
+ (o = e.onInfo) == null || o.call(e, t, e);
1373
+ break;
1374
+ case "chat_event": {
1375
+ (s = e.onChatEvent) == null || s.call(
1376
+ e,
1377
+ {
1378
+ component: "CHAT_EVENT",
1379
+ type: "FROM_BOT",
1380
+ id: he(),
1381
+ data: {
1382
+ event: t.value.event,
1383
+ message: t.value.message
1384
+ },
1385
+ timestamp: t.timestamp
1386
+ },
1387
+ e
1388
+ );
1389
+ break;
1390
+ }
1391
+ case "session_update":
1392
+ (i = e.onSessionUpdate) == null || i.call(e, t, e);
1393
+ break;
1394
+ case "options":
1395
+ (l = e.onOptions) == null || l.call(e, t, e);
1396
+ break;
1397
+ case "ui": {
1398
+ const d = t.value;
1399
+ (g = e.onUi) == null || g.call(
1400
+ e,
1401
+ {
1402
+ type: "FROM_BOT",
1403
+ component: d.name,
1404
+ data: d.request_response,
1405
+ id: he(),
1406
+ timestamp: t.timestamp
1407
+ },
1408
+ e
1409
+ );
1410
+ break;
1411
+ }
1412
+ }
1413
+ }
1414
+ function fr(e, t, n = []) {
1415
+ const [r, o] = fe(null), [s, i] = fe("disconnected"), l = (a) => {
1416
+ i(a);
1417
+ }, g = () => {
1418
+ r && (r.disconnect(), o(null), l("disconnected"));
1419
+ }, d = F(() => l("connected"), [l]), c = F(
1420
+ () => l("disconnected"),
1421
+ [l]
1422
+ ), u = F(() => l("error"), [l]), p = F(
1423
+ () => l("reconnected"),
1424
+ [l]
1425
+ ), f = F(
1426
+ () => l("reconnecting"),
1427
+ [l]
1428
+ ), m = F(
1429
+ () => l("error"),
1430
+ [l]
1431
+ ), h = F(
1432
+ () => l("error"),
1433
+ [l]
1434
+ );
1435
+ H(() => {
1436
+ if (!e) return;
1437
+ const a = fn(e, t);
1438
+ return o(a), () => {
1439
+ a.disconnect(), o(null);
1440
+ };
1441
+ }, [e]);
1442
+ const D = (a, G, O = []) => {
1443
+ H(() => {
1444
+ if (r)
1445
+ return r.on(a, G), () => {
1446
+ r.off(a, G);
1447
+ };
1448
+ }, [r, a, G, ...O]);
1449
+ };
1450
+ return H(() => {
1451
+ if (r)
1452
+ return r.on("connect", d), r.on("disconnect", c), r.on("connect_error", u), r.on("reconnect", p), r.on("reconnecting", f), r.on("reconnect_error", m), r.on("reconnect_failed", h), () => {
1453
+ r.off("connect", d), r.off("disconnect", c), r.off("connect_error", u), r.off("reconnect", p), r.off("reconnecting", f), r.off("reconnect_error", m), r.off("reconnect_failed", h);
1454
+ };
1455
+ }, [
1456
+ d,
1457
+ u,
1458
+ c,
1459
+ p,
1460
+ m,
1461
+ h,
1462
+ f,
1463
+ r
1464
+ ]), {
1465
+ socket: r,
1466
+ socketState: s,
1467
+ disconnect: g,
1468
+ useListen: D
1469
+ };
1470
+ }
1471
+ function pr(e, t) {
1472
+ switch (e) {
1473
+ case "connected":
1474
+ return t("connected", "🟢");
1475
+ case "connecting":
1476
+ return t("connecting", "🟡");
1477
+ case "reconnecting":
1478
+ return t("reconnecting", "🟡");
1479
+ case "reconnected":
1480
+ return t("reconnected", "🟢");
1481
+ case "disconnecting":
1482
+ return t("disconnecting", "🔴");
1483
+ case "disconnected":
1484
+ return t("disconnected", "🔴");
1485
+ case "error":
1486
+ return t("error", "❌");
1487
+ }
1488
+ }
1489
+ function gr(e) {
1490
+ const t = oe(null);
1491
+ return H(() => {
1492
+ if (!t.current) {
1493
+ const n = new Audio(e.src);
1494
+ n.volume = e.volume, n.loop = !1, n.preload = "auto", t.current = n;
1495
+ }
1496
+ return () => {
1497
+ var n, r;
1498
+ (n = t.current) == null || n.pause(), (r = t.current) == null || r.remove();
1499
+ };
1500
+ }, [e]), {
1501
+ play: () => {
1502
+ var n;
1503
+ e.soundEnabled && ((n = t.current) == null || n.play());
1504
+ },
1505
+ stop: () => {
1506
+ var n;
1507
+ (n = t.current) == null || n.pause();
1508
+ }
1509
+ };
1510
+ }
1511
+ function hr() {
1512
+ const { soundEffectFiles: e, widgetSettings: t, defaultSettings: n } = ae(), r = (t == null ? void 0 : t.useSoundEffects) ?? n.useSoundEffects;
1513
+ return {
1514
+ messageArrivedSound: gr({
1515
+ src: e.messageArrived,
1516
+ soundEnabled: r,
1517
+ volume: 0.5
1518
+ })
1519
+ };
1520
+ }
1521
+ function mr(e, t) {
1522
+ return dn(e, (n) => {
1523
+ const r = () => {
1524
+ n.lastUpdated = Date.now();
1525
+ };
1526
+ switch (t.type) {
1527
+ case "ADD_RESPONSE_MESSAGE": {
1528
+ n.messages.push(t.payload), r();
1529
+ break;
1530
+ }
1531
+ case "APPEND_USER_MESSAGE": {
1532
+ n.messages.push(t.payload), r();
1533
+ break;
1534
+ }
1535
+ case "RESET": {
1536
+ n.messages = [], n.lastUpdated = null, n.keyboard = null;
1537
+ break;
1538
+ }
1539
+ case "PREPEND_HISTORY": {
1540
+ const o = t.payload.map((s) => s.id);
1541
+ n.messages = n.messages.filter(
1542
+ (s) => !o.includes(s.id)
1543
+ ), n.messages = [...t.payload, ...n.messages], r();
1544
+ break;
1545
+ }
1546
+ case "SET_KEYBOARD": {
1547
+ n.keyboard = t.payload;
1548
+ break;
1549
+ }
1550
+ case "SET_DELIVERED_AT": {
1551
+ const o = n.messages.find((s) => {
1552
+ var i;
1553
+ if (s.type === "FROM_USER" && s.id === ((i = t.payload) == null ? void 0 : i.clientMessageId))
1554
+ return !0;
1555
+ });
1556
+ (o == null ? void 0 : o.type) === "FROM_USER" && pn(o, "deliveredAt", t.payload.deliveredAt);
1557
+ break;
1558
+ }
1559
+ case "SET_MESSAGES": {
1560
+ n.messages = t.payload;
1561
+ break;
1562
+ }
1563
+ case "APPEND_MESSAGES": {
1564
+ const o = t.payload.filter((s) => !n.messages.some((i) => i.id === s.id));
1565
+ n.messages.push(...o);
1566
+ break;
1567
+ }
1568
+ }
1569
+ });
1570
+ }
1571
+ function yr({
1572
+ persist: e,
1573
+ sessionKey: t = (n, { external_id: r }) => `[OPEN_SESSION_${n}]_${r || "session"}`
1574
+ }) {
1575
+ const { botToken: n, http: r, user: o } = ae(), [s, i, l] = Ze(
1576
+ t(n, o),
1577
+ void 0,
1578
+ e ? "local" : "memory"
1579
+ ), g = s ? {
1580
+ ...s,
1581
+ isSessionClosed: s.status !== mt.OPEN,
1582
+ isAssignedToAi: s.assignee_id === 555,
1583
+ isAssignedToHuman: s.assignee_id !== 555,
1584
+ isPendingHuman: s.assignee_id === 555 && s.ai_closure_type === an.handed_off
1585
+ } : null, [d, c] = Ne(
1586
+ async (p) => {
1587
+ let f = await r.apis.fetchSession(p);
1588
+ return f.data && i(f.data), f.data;
1589
+ },
1590
+ [r, i]
1591
+ );
1592
+ function u() {
1593
+ i(null), l();
1594
+ }
1595
+ return {
1596
+ session: g,
1597
+ refreshSession: c,
1598
+ refreshSessionState: d,
1599
+ deleteSession: u,
1600
+ setSession: i
1601
+ };
1602
+ }
1603
+ function Sr() {
1604
+ const [e, t] = fe({ state: "idle" });
1605
+ return [e, t];
1606
+ }
1607
+ function vr({ onSessionDestroy: e }) {
1608
+ const [t, n] = cn(mr, {
1609
+ lastUpdated: null,
1610
+ messages: [],
1611
+ keyboard: null
1612
+ }), r = qn(), {
1613
+ botToken: o,
1614
+ http: s,
1615
+ socketUrl: i,
1616
+ widgetSettings: l,
1617
+ defaultSettings: g,
1618
+ language: d,
1619
+ ...c
1620
+ } = ae(), { messageArrivedSound: u } = hr(), [p, f] = Ne(
1621
+ async (v) => {
1622
+ if (a)
1623
+ try {
1624
+ const { data: A } = await s.apis.fetchHistory(v);
1625
+ if (!A) return [];
1626
+ if (Array.isArray(A))
1627
+ return it(A ?? []);
1628
+ } catch (A) {
1629
+ return console.error(A), [];
1630
+ }
1631
+ return [];
1632
+ },
1633
+ [c.bot]
1634
+ ), m = (l == null ? void 0 : l.persistSession) || g.persistSession, {
1635
+ refreshSession: h,
1636
+ refreshSessionState: D,
1637
+ session: a,
1638
+ deleteSession: G,
1639
+ setSession: O
1640
+ } = yr({
1641
+ persist: m
1642
+ }), [E, w] = Sr();
1643
+ function S(v) {
1644
+ const A = (a == null ? void 0 : a.isAssignedToHuman) || (a == null ? void 0 : a.isPendingHuman) || (a == null ? void 0 : a.isSessionClosed) || !(a != null && a.isAssignedToAi);
1645
+ w(A ? {
1646
+ state: "idle"
1647
+ } : v);
1648
+ }
1649
+ const { socket: y, socketState: R, useListen: N } = fr(i, {
1650
+ transports: ["websocket"],
1651
+ closeOnBeforeunload: !0,
1652
+ autoConnect: !0,
1653
+ query: {
1654
+ botToken: o,
1655
+ sessionId: a == null ? void 0 : a.id,
1656
+ client: "widget",
1657
+ clientVersion: ct.version,
1658
+ language: d
1659
+ }
1660
+ });
1661
+ H(() => {
1662
+ async function v() {
1663
+ if (!a) return;
1664
+ const A = await h(a == null ? void 0 : a.id);
1665
+ if (A) {
1666
+ const I = await f(A.id);
1667
+ I && n({ type: "PREPEND_HISTORY", payload: I });
1668
+ }
1669
+ }
1670
+ v();
1671
+ }, []), H(() => {
1672
+ let v;
1673
+ if (a && y) {
1674
+ const I = {
1675
+ sessionId: a.id,
1676
+ client: "widget",
1677
+ botToken: o,
1678
+ user: c.user,
1679
+ timestamp: Date.now()
1680
+ };
1681
+ async function U() {
1682
+ y == null || y.emit("heartbeat", I);
1683
+ }
1684
+ U(), v = setInterval(() => {
1685
+ U();
1686
+ }, 50 * 1e3);
1687
+ }
1688
+ return () => {
1689
+ clearInterval(v);
1690
+ };
1691
+ }, [y, a, o, c.user]), N(
1692
+ "heartbeat:ack",
1693
+ (v) => {
1694
+ },
1695
+ [a]
1696
+ );
1697
+ const [M, Y] = lr(
1698
+ () => pr(R, r.get),
1699
+ 1e3
1700
+ ), B = () => {
1701
+ a && y && y.emit("join_session", { session_id: a.id });
1702
+ }, L = () => {
1703
+ a && y && y.emit("join_session", { session_id: a.id });
1704
+ };
1705
+ H(() => {
1706
+ if (y)
1707
+ return y.on("connect", B), y.on("reconnect", L), () => {
1708
+ y.off("connect", B), y.off("reconnect", L);
1709
+ };
1710
+ }, [B, y, L]);
1711
+ function Q(v) {
1712
+ y == null || y.emit("join_session", {
1713
+ session_id: v
1714
+ });
1715
+ }
1716
+ function Se() {
1717
+ y == null || y.emit("leave_session", { session_id: a == null ? void 0 : a.id }), G(), n({ type: "RESET" }), e == null || e(), S({ state: "idle" });
1718
+ }
1719
+ function ve() {
1720
+ Se(), s.apis.createSession(o).then(({ data: v }) => {
1721
+ O(v), Q(v.id);
1722
+ });
1723
+ }
1724
+ const Ee = (v) => {
1725
+ dr({
1726
+ _message: v,
1727
+ _socket: y,
1728
+ _config: { bot: c.bot },
1729
+ onSessionUpdate(A, I) {
1730
+ O(A.value.session);
1731
+ },
1732
+ onBotMessage(A, I) {
1733
+ S({
1734
+ state: "idle"
1735
+ }), n({ type: "ADD_RESPONSE_MESSAGE", payload: A });
1736
+ try {
1737
+ u.play();
1738
+ } catch (U) {
1739
+ console.error(U);
1740
+ }
1741
+ },
1742
+ onChatEvent() {
1743
+ a && h(a.id);
1744
+ },
1745
+ onUi(A, I) {
1746
+ A.type === "FROM_BOT" && a && h(a.id), S({
1747
+ state: "idle"
1748
+ }), n({ type: "ADD_RESPONSE_MESSAGE", payload: A });
1749
+ },
1750
+ onForm(A, I) {
1751
+ S({
1752
+ state: "idle"
1753
+ }), n({ type: "ADD_RESPONSE_MESSAGE", payload: A });
1754
+ },
1755
+ onOptions(A, I) {
1756
+ n({
1757
+ type: "SET_KEYBOARD",
1758
+ payload: {
1759
+ options: A.value.options
1760
+ }
1761
+ }), S({
1762
+ state: "idle"
1763
+ });
1764
+ }
1765
+ });
1766
+ }, te = F(
1767
+ (v) => {
1768
+ Y(v);
1769
+ },
1770
+ [Y]
1771
+ );
1772
+ H(() => {
1773
+ var I;
1774
+ if (!a) return;
1775
+ const v = (I = t.messages.at(-1)) == null ? void 0 : I.timestamp;
1776
+ if (!v) return;
1777
+ const A = setInterval(() => {
1778
+ s.apis.getHistoryPooling({
1779
+ sessionId: a.id,
1780
+ lastMessageTimestamp: v
1781
+ }).then((U) => {
1782
+ U.data && n({
1783
+ type: "APPEND_MESSAGES",
1784
+ payload: it(U.data)
1785
+ });
1786
+ });
1787
+ }, 20 * 1e3);
1788
+ return () => {
1789
+ clearInterval(A);
1790
+ };
1791
+ }, [a, t.messages]);
1792
+ const be = F((v) => {
1793
+ n({
1794
+ type: "APPEND_USER_MESSAGE",
1795
+ payload: {
1796
+ user: v == null ? void 0 : v.user,
1797
+ type: "FROM_USER",
1798
+ deliveredAt: null,
1799
+ content: v.content,
1800
+ id: v.id ?? he(10),
1801
+ attachments: []
1802
+ }
1803
+ });
1804
+ }, []), je = F((v) => {
1805
+ n({
1806
+ type: "SET_DELIVERED_AT",
1807
+ payload: {
1808
+ clientMessageId: v.id,
1809
+ deliveredAt: (/* @__PURE__ */ new Date()).toISOString()
1810
+ }
1811
+ });
1812
+ }, []);
1813
+ N("structured_message", Ee), N("ack:chat_message:delivered", je), N("info", te), N("user_message_broadcast", be);
1814
+ const W = t.messages.length === 0, [ce, ne] = Ne(
1815
+ async ({ content: v, user: A, ...I }) => {
1816
+ let U = a;
1817
+ if (S({
1818
+ state: "loading"
1819
+ }), !a && W)
1820
+ try {
1821
+ const { data: j } = await s.apis.createSession(o);
1822
+ if (j)
1823
+ O(j), Q(j.id), U = {
1824
+ ...j,
1825
+ // will be updated anyway when the component rerenders
1826
+ isSessionClosed: j.status !== mt.OPEN,
1827
+ isAssignedToAi: j.assignee_id === 555,
1828
+ isAssignedToHuman: !1,
1829
+ isPendingHuman: !1
1830
+ };
1831
+ else
1832
+ throw new Error("Failed to create session");
1833
+ } catch (j) {
1834
+ return console.error("Error creating session:", j), null;
1835
+ }
1836
+ if (U && y) {
1837
+ const j = he(), { headers: Oe, pathParams: C, queryParams: T } = c, k = {
1838
+ id: j,
1839
+ bot_token: o,
1840
+ content: v.text,
1841
+ attachments: I.attachments,
1842
+ session_id: U.id,
1843
+ headers: Oe,
1844
+ pathParams: C,
1845
+ query_params: T,
1846
+ queryParams: T,
1847
+ user: {
1848
+ ...c.user,
1849
+ ...A
1850
+ },
1851
+ language: d,
1852
+ ...I
1853
+ };
1854
+ try {
1855
+ return n({
1856
+ type: "APPEND_USER_MESSAGE",
1857
+ payload: {
1858
+ type: "FROM_USER",
1859
+ id: j,
1860
+ content: v.text,
1861
+ user: k.user,
1862
+ deliveredAt: null,
1863
+ attachments: I.attachments
1864
+ }
1865
+ }), t.keyboard && n({
1866
+ type: "SET_KEYBOARD",
1867
+ payload: null
1868
+ }), y.emit("send_chat", k), k;
1869
+ } catch (P) {
1870
+ return console.error("Error sending message:", P), null;
1871
+ }
1872
+ }
1873
+ return null;
1874
+ },
1875
+ [S, a, y, c.user, c, o, d]
1876
+ ), we = F(
1877
+ (v) => {
1878
+ ne({
1879
+ content: {
1880
+ text: v
1881
+ }
1882
+ }), n({
1883
+ type: "SET_KEYBOARD",
1884
+ payload: null
1885
+ });
1886
+ },
1887
+ [n, ne, y]
1888
+ ), le = ee(() => a != null && a.isSessionClosed ? {
1889
+ canSend: !1,
1890
+ reason: "closedSession"
1891
+ } : {
1892
+ canSend: !0
1893
+ }, [a]);
1894
+ return {
1895
+ version: ct.version,
1896
+ state: t,
1897
+ session: a,
1898
+ unstable__canSend: le,
1899
+ noMessages: W,
1900
+ fetchHistoryState: p,
1901
+ refreshSessionState: D,
1902
+ recreateSession: ve,
1903
+ clearSession: Se,
1904
+ sendMessage: ne,
1905
+ info: M,
1906
+ handleKeyboard: we,
1907
+ hookState: E
1908
+ };
1909
+ }
1910
+ const [mo, Er] = Pe();
1911
+ function br({
1912
+ children: e
1913
+ }) {
1914
+ const { settings: t } = ae(), n = vr({
1915
+ defaultHookSettings: {
1916
+ persistSession: (t == null ? void 0 : t.persistSession) ?? !0,
1917
+ useSoundEffects: (t == null ? void 0 : t.useSoundEffects) ?? !1
1918
+ }
1919
+ });
1920
+ return /* @__PURE__ */ $(Er, { value: n, children: e });
1921
+ }
1922
+ function wr() {
1923
+ const { http: e, botToken: t, user: n, collectUserData: r } = ae(), [o, s] = Ze(
1924
+ `${t}:contact:${n.external_id}`,
1925
+ null,
1926
+ "local"
1927
+ ), [i, l] = Ne(
1928
+ async (d) => {
1929
+ var c;
1930
+ try {
1931
+ if (!d || !d.email) return null;
1932
+ const u = await e.apis.dumpContact(d);
1933
+ return (c = u == null ? void 0 : u.data) != null && c.id && s(u.data), u == null ? void 0 : u.data;
1934
+ } catch (u) {
1935
+ console.error(u);
1936
+ }
1937
+ return null;
1938
+ },
1939
+ [e.apis]
1940
+ );
1941
+ H(() => {
1942
+ n && t && l(n);
1943
+ }, [n, t]);
1944
+ const g = ee(() => !(o != null && o.id) && r ? {
1945
+ should: !0,
1946
+ reason: "No contact id and collectUserData is true"
1947
+ } : {
1948
+ should: !1
1949
+ }, [o]);
1950
+ return {
1951
+ creatingContactState: i,
1952
+ createContactAsync: l,
1953
+ contact: o,
1954
+ shouldCollectData: g
1955
+ };
1956
+ }
1957
+ const [yo, Or] = Pe();
1958
+ function Ar({ children: e }) {
1959
+ const t = wr();
1960
+ return /* @__PURE__ */ $(Or, { value: t, children: e });
1961
+ }
1962
+ function So({
1963
+ children: e,
1964
+ options: t
1965
+ }) {
1966
+ return /* @__PURE__ */ $(er, { data: t, children: /* @__PURE__ */ $(Ar, { children: /* @__PURE__ */ $(bt, { children: /* @__PURE__ */ $(br, { children: e }) }) }) });
1967
+ }
1968
+ var qe = { exports: {} }, Le = {};
1969
+ /**
1970
+ * @license React
1971
+ * use-sync-external-store-shim.production.min.js
1972
+ *
1973
+ * Copyright (c) Facebook, Inc. and its affiliates.
1974
+ *
1975
+ * This source code is licensed under the MIT license found in the
1976
+ * LICENSE file in the root directory of this source tree.
1977
+ */
1978
+ var lt;
1979
+ function Rr() {
1980
+ if (lt) return Le;
1981
+ lt = 1;
1982
+ var e = ue;
1983
+ function t(u, p) {
1984
+ return u === p && (u !== 0 || 1 / u === 1 / p) || u !== u && p !== p;
1985
+ }
1986
+ var n = typeof Object.is == "function" ? Object.is : t, r = e.useState, o = e.useEffect, s = e.useLayoutEffect, i = e.useDebugValue;
1987
+ function l(u, p) {
1988
+ var f = p(), m = r({ inst: { value: f, getSnapshot: p } }), h = m[0].inst, D = m[1];
1989
+ return s(function() {
1990
+ h.value = f, h.getSnapshot = p, g(h) && D({ inst: h });
1991
+ }, [u, f, p]), o(function() {
1992
+ return g(h) && D({ inst: h }), u(function() {
1993
+ g(h) && D({ inst: h });
1994
+ });
1995
+ }, [u]), i(f), f;
1996
+ }
1997
+ function g(u) {
1998
+ var p = u.getSnapshot;
1999
+ u = u.value;
2000
+ try {
2001
+ var f = p();
2002
+ return !n(u, f);
2003
+ } catch {
2004
+ return !0;
2005
+ }
2006
+ }
2007
+ function d(u, p) {
2008
+ return p();
2009
+ }
2010
+ var c = typeof window > "u" || typeof window.document > "u" || typeof window.document.createElement > "u" ? d : l;
2011
+ return Le.useSyncExternalStore = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : c, Le;
2012
+ }
2013
+ var xe = {};
2014
+ /**
2015
+ * @license React
2016
+ * use-sync-external-store-shim.development.js
2017
+ *
2018
+ * Copyright (c) Facebook, Inc. and its affiliates.
2019
+ *
2020
+ * This source code is licensed under the MIT license found in the
2021
+ * LICENSE file in the root directory of this source tree.
2022
+ */
2023
+ var dt;
2024
+ function Tr() {
2025
+ return dt || (dt = 1, process.env.NODE_ENV !== "production" && function() {
2026
+ typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());
2027
+ var e = ue, t = e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
2028
+ function n(O) {
2029
+ {
2030
+ for (var E = arguments.length, w = new Array(E > 1 ? E - 1 : 0), S = 1; S < E; S++)
2031
+ w[S - 1] = arguments[S];
2032
+ r("error", O, w);
2033
+ }
2034
+ }
2035
+ function r(O, E, w) {
2036
+ {
2037
+ var S = t.ReactDebugCurrentFrame, y = S.getStackAddendum();
2038
+ y !== "" && (E += "%s", w = w.concat([y]));
2039
+ var R = w.map(function(N) {
2040
+ return String(N);
2041
+ });
2042
+ R.unshift("Warning: " + E), Function.prototype.apply.call(console[O], console, R);
2043
+ }
2044
+ }
2045
+ function o(O, E) {
2046
+ return O === E && (O !== 0 || 1 / O === 1 / E) || O !== O && E !== E;
2047
+ }
2048
+ var s = typeof Object.is == "function" ? Object.is : o, i = e.useState, l = e.useEffect, g = e.useLayoutEffect, d = e.useDebugValue, c = !1, u = !1;
2049
+ function p(O, E, w) {
2050
+ c || e.startTransition !== void 0 && (c = !0, n("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));
2051
+ var S = E();
2052
+ if (!u) {
2053
+ var y = E();
2054
+ s(S, y) || (n("The result of getSnapshot should be cached to avoid an infinite loop"), u = !0);
2055
+ }
2056
+ var R = i({
2057
+ inst: {
2058
+ value: S,
2059
+ getSnapshot: E
2060
+ }
2061
+ }), N = R[0].inst, M = R[1];
2062
+ return g(function() {
2063
+ N.value = S, N.getSnapshot = E, f(N) && M({
2064
+ inst: N
2065
+ });
2066
+ }, [O, S, E]), l(function() {
2067
+ f(N) && M({
2068
+ inst: N
2069
+ });
2070
+ var Y = function() {
2071
+ f(N) && M({
2072
+ inst: N
2073
+ });
2074
+ };
2075
+ return O(Y);
2076
+ }, [O]), d(S), S;
2077
+ }
2078
+ function f(O) {
2079
+ var E = O.getSnapshot, w = O.value;
2080
+ try {
2081
+ var S = E();
2082
+ return !s(w, S);
2083
+ } catch {
2084
+ return !0;
2085
+ }
2086
+ }
2087
+ function m(O, E, w) {
2088
+ return E();
2089
+ }
2090
+ var h = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u", D = !h, a = D ? m : p, G = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : a;
2091
+ xe.useSyncExternalStore = G, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());
2092
+ }()), xe;
2093
+ }
2094
+ process.env.NODE_ENV === "production" ? qe.exports = Rr() : qe.exports = Tr();
2095
+ var Cr = qe.exports;
2096
+ const se = () => {
2097
+ }, V = (
2098
+ /*#__NOINLINE__*/
2099
+ se()
2100
+ ), Ve = Object, b = (e) => e === V, X = (e) => typeof e == "function", ie = (e, t) => ({
2101
+ ...e,
2102
+ ...t
2103
+ }), Dr = (e) => X(e.then), Re = /* @__PURE__ */ new WeakMap();
2104
+ let Nr = 0;
2105
+ const me = (e) => {
2106
+ const t = typeof e, n = e && e.constructor, r = n == Date;
2107
+ let o, s;
2108
+ if (Ve(e) === e && !r && n != RegExp) {
2109
+ if (o = Re.get(e), o) return o;
2110
+ if (o = ++Nr + "~", Re.set(e, o), n == Array) {
2111
+ for (o = "@", s = 0; s < e.length; s++)
2112
+ o += me(e[s]) + ",";
2113
+ Re.set(e, o);
2114
+ }
2115
+ if (n == Ve) {
2116
+ o = "#";
2117
+ const i = Ve.keys(e).sort();
2118
+ for (; !b(s = i.pop()); )
2119
+ b(e[s]) || (o += s + ":" + me(e[s]) + ",");
2120
+ Re.set(e, o);
2121
+ }
2122
+ } else
2123
+ o = r ? e.toJSON() : t == "symbol" ? e.toString() : t == "string" ? JSON.stringify(e) : "" + e;
2124
+ return o;
2125
+ }, Z = /* @__PURE__ */ new WeakMap(), Ue = {}, Te = {}, et = "undefined", Ie = typeof window != et, Xe = typeof document != et, Pr = () => Ie && typeof window.requestAnimationFrame != et, Kt = (e, t) => {
2126
+ const n = Z.get(e);
2127
+ return [
2128
+ // Getter
2129
+ () => !b(t) && e.get(t) || Ue,
2130
+ // Setter
2131
+ (r) => {
2132
+ if (!b(t)) {
2133
+ const o = e.get(t);
2134
+ t in Te || (Te[t] = o), n[5](t, ie(o, r), o || Ue);
2135
+ }
2136
+ },
2137
+ // Subscriber
2138
+ n[6],
2139
+ // Get server cache snapshot
2140
+ () => !b(t) && t in Te ? Te[t] : !b(t) && e.get(t) || Ue
2141
+ ];
2142
+ };
2143
+ let Qe = !0;
2144
+ const kr = () => Qe, [We, Ke] = Ie && window.addEventListener ? [
2145
+ window.addEventListener.bind(window),
2146
+ window.removeEventListener.bind(window)
2147
+ ] : [
2148
+ se,
2149
+ se
2150
+ ], Ir = () => {
2151
+ const e = Xe && document.visibilityState;
2152
+ return b(e) || e !== "hidden";
2153
+ }, jr = (e) => (Xe && document.addEventListener("visibilitychange", e), We("focus", e), () => {
2154
+ Xe && document.removeEventListener("visibilitychange", e), Ke("focus", e);
2155
+ }), _r = (e) => {
2156
+ const t = () => {
2157
+ Qe = !0, e();
2158
+ }, n = () => {
2159
+ Qe = !1;
2160
+ };
2161
+ return We("online", t), We("offline", n), () => {
2162
+ Ke("online", t), Ke("offline", n);
2163
+ };
2164
+ }, Mr = {
2165
+ isOnline: kr,
2166
+ isVisible: Ir
2167
+ }, Fr = {
2168
+ initFocus: jr,
2169
+ initReconnect: _r
2170
+ }, ft = !ue.useId, ye = !Ie || "Deno" in window, Lr = (e) => Pr() ? window.requestAnimationFrame(e) : setTimeout(e, 1), He = ye ? H : un, Ge = typeof navigator < "u" && navigator.connection, pt = !ye && Ge && ([
2171
+ "slow-2g",
2172
+ "2g"
2173
+ ].includes(Ge.effectiveType) || Ge.saveData), tt = (e) => {
2174
+ if (X(e))
2175
+ try {
2176
+ e = e();
2177
+ } catch {
2178
+ e = "";
2179
+ }
2180
+ const t = e;
2181
+ return e = typeof e == "string" ? e : (Array.isArray(e) ? e.length : e) ? me(e) : "", [
2182
+ e,
2183
+ t
2184
+ ];
2185
+ };
2186
+ let xr = 0;
2187
+ const Je = () => ++xr, Jt = 0, Zt = 1, $t = 2, Vr = 3;
2188
+ var ge = {
2189
+ __proto__: null,
2190
+ ERROR_REVALIDATE_EVENT: Vr,
2191
+ FOCUS_EVENT: Jt,
2192
+ MUTATE_EVENT: $t,
2193
+ RECONNECT_EVENT: Zt
2194
+ };
2195
+ async function en(...e) {
2196
+ const [t, n, r, o] = e, s = ie({
2197
+ populateCache: !0,
2198
+ throwOnError: !0
2199
+ }, typeof o == "boolean" ? {
2200
+ revalidate: o
2201
+ } : o || {});
2202
+ let i = s.populateCache;
2203
+ const l = s.rollbackOnError;
2204
+ let g = s.optimisticData;
2205
+ const d = (p) => typeof l == "function" ? l(p) : l !== !1, c = s.throwOnError;
2206
+ if (X(n)) {
2207
+ const p = n, f = [], m = t.keys();
2208
+ for (const h of m)
2209
+ // Skip the special useSWRInfinite and useSWRSubscription keys.
2210
+ !/^\$(inf|sub)\$/.test(h) && p(t.get(h)._k) && f.push(h);
2211
+ return Promise.all(f.map(u));
2212
+ }
2213
+ return u(n);
2214
+ async function u(p) {
2215
+ const [f] = tt(p);
2216
+ if (!f) return;
2217
+ const [m, h] = Kt(t, f), [D, a, G, O] = Z.get(t), E = () => {
2218
+ const L = D[f];
2219
+ return (X(s.revalidate) ? s.revalidate(m().data, p) : s.revalidate !== !1) && (delete G[f], delete O[f], L && L[0]) ? L[0]($t).then(() => m().data) : m().data;
2220
+ };
2221
+ if (e.length < 3)
2222
+ return E();
2223
+ let w = r, S;
2224
+ const y = Je();
2225
+ a[f] = [
2226
+ y,
2227
+ 0
2228
+ ];
2229
+ const R = !b(g), N = m(), M = N.data, Y = N._c, B = b(Y) ? M : Y;
2230
+ if (R && (g = X(g) ? g(B, M) : g, h({
2231
+ data: g,
2232
+ _c: B
2233
+ })), X(w))
2234
+ try {
2235
+ w = w(B);
2236
+ } catch (L) {
2237
+ S = L;
2238
+ }
2239
+ if (w && Dr(w))
2240
+ if (w = await w.catch((L) => {
2241
+ S = L;
2242
+ }), y !== a[f][0]) {
2243
+ if (S) throw S;
2244
+ return w;
2245
+ } else S && R && d(S) && (i = !0, h({
2246
+ data: B,
2247
+ _c: V
2248
+ }));
2249
+ if (i && !S)
2250
+ if (X(i)) {
2251
+ const L = i(w, B);
2252
+ h({
2253
+ data: L,
2254
+ error: V,
2255
+ _c: V
2256
+ });
2257
+ } else
2258
+ h({
2259
+ data: w,
2260
+ error: V,
2261
+ _c: V
2262
+ });
2263
+ if (a[f][1] = Je(), Promise.resolve(E()).then(() => {
2264
+ h({
2265
+ _c: V
2266
+ });
2267
+ }), S) {
2268
+ if (c) throw S;
2269
+ return;
2270
+ }
2271
+ return w;
2272
+ }
2273
+ }
2274
+ const gt = (e, t) => {
2275
+ for (const n in e)
2276
+ e[n][0] && e[n][0](t);
2277
+ }, Ur = (e, t) => {
2278
+ if (!Z.has(e)) {
2279
+ const n = ie(Fr, t), r = {}, o = en.bind(V, e);
2280
+ let s = se;
2281
+ const i = {}, l = (c, u) => {
2282
+ const p = i[c] || [];
2283
+ return i[c] = p, p.push(u), () => p.splice(p.indexOf(u), 1);
2284
+ }, g = (c, u, p) => {
2285
+ e.set(c, u);
2286
+ const f = i[c];
2287
+ if (f)
2288
+ for (const m of f)
2289
+ m(u, p);
2290
+ }, d = () => {
2291
+ if (!Z.has(e) && (Z.set(e, [
2292
+ r,
2293
+ {},
2294
+ {},
2295
+ {},
2296
+ o,
2297
+ g,
2298
+ l
2299
+ ]), !ye)) {
2300
+ const c = n.initFocus(setTimeout.bind(V, gt.bind(V, r, Jt))), u = n.initReconnect(setTimeout.bind(V, gt.bind(V, r, Zt)));
2301
+ s = () => {
2302
+ c && c(), u && u(), Z.delete(e);
2303
+ };
2304
+ }
2305
+ };
2306
+ return d(), [
2307
+ e,
2308
+ o,
2309
+ d,
2310
+ s
2311
+ ];
2312
+ }
2313
+ return [
2314
+ e,
2315
+ Z.get(e)[4]
2316
+ ];
2317
+ }, Hr = (e, t, n, r, o) => {
2318
+ const s = n.errorRetryCount, i = o.retryCount, l = ~~((Math.random() + 0.5) * (1 << (i < 8 ? i : 8))) * n.errorRetryInterval;
2319
+ !b(s) && i > s || setTimeout(r, l, o);
2320
+ }, Gr = (e, t) => me(e) == me(t), [tn, zr] = Ur(/* @__PURE__ */ new Map()), Yr = ie(
2321
+ {
2322
+ // events
2323
+ onLoadingSlow: se,
2324
+ onSuccess: se,
2325
+ onError: se,
2326
+ onErrorRetry: Hr,
2327
+ onDiscarded: se,
2328
+ // switches
2329
+ revalidateOnFocus: !0,
2330
+ revalidateOnReconnect: !0,
2331
+ revalidateIfStale: !0,
2332
+ shouldRetryOnError: !0,
2333
+ // timeouts
2334
+ errorRetryInterval: pt ? 1e4 : 5e3,
2335
+ focusThrottleInterval: 5 * 1e3,
2336
+ dedupingInterval: 2 * 1e3,
2337
+ loadingTimeout: pt ? 5e3 : 3e3,
2338
+ // providers
2339
+ compare: Gr,
2340
+ isPaused: () => !1,
2341
+ cache: tn,
2342
+ mutate: zr,
2343
+ fallback: {}
2344
+ },
2345
+ // use web preset by default
2346
+ Mr
2347
+ ), Br = (e, t) => {
2348
+ const n = ie(e, t);
2349
+ if (t) {
2350
+ const { use: r, fallback: o } = e, { use: s, fallback: i } = t;
2351
+ r && s && (n.use = r.concat(s)), o && i && (n.fallback = ie(o, i));
2352
+ }
2353
+ return n;
2354
+ }, qr = yt({}), Xr = "$inf$", nn = Ie && window.__SWR_DEVTOOLS_USE__, Qr = nn ? window.__SWR_DEVTOOLS_USE__ : [], Wr = () => {
2355
+ nn && (window.__SWR_DEVTOOLS_REACT__ = ue);
2356
+ }, Kr = (e) => X(e[1]) ? [
2357
+ e[0],
2358
+ e[1],
2359
+ e[2] || {}
2360
+ ] : [
2361
+ e[0],
2362
+ null,
2363
+ (e[1] === null ? e[2] : e[1]) || {}
2364
+ ], Jr = () => ie(Yr, St(qr)), Zr = (e) => (t, n, r) => e(t, n && ((...s) => {
2365
+ const [i] = tt(t), [, , , l] = Z.get(tn);
2366
+ if (i.startsWith(Xr))
2367
+ return n(...s);
2368
+ const g = l[i];
2369
+ return b(g) ? n(...s) : (delete l[i], g);
2370
+ }), r), $r = Qr.concat(Zr), eo = (e) => function(...n) {
2371
+ const r = Jr(), [o, s, i] = Kr(n), l = Br(r, i);
2372
+ let g = e;
2373
+ const { use: d } = l, c = (d || []).concat($r);
2374
+ for (let u = c.length; u--; )
2375
+ g = c[u](g);
2376
+ return g(o, s || l.fetcher || null, l);
2377
+ }, to = (e, t, n) => {
2378
+ const r = t[e] || (t[e] = []);
2379
+ return r.push(n), () => {
2380
+ const o = r.indexOf(n);
2381
+ o >= 0 && (r[o] = r[r.length - 1], r.pop());
2382
+ };
2383
+ };
2384
+ Wr();
2385
+ const ht = ue.use || ((e) => {
2386
+ if (e.status === "pending")
2387
+ throw e;
2388
+ if (e.status === "fulfilled")
2389
+ return e.value;
2390
+ throw e.status === "rejected" ? e.reason : (e.status = "pending", e.then((t) => {
2391
+ e.status = "fulfilled", e.value = t;
2392
+ }, (t) => {
2393
+ e.status = "rejected", e.reason = t;
2394
+ }), e);
2395
+ }), ze = {
2396
+ dedupe: !0
2397
+ }, no = (e, t, n) => {
2398
+ const { cache: r, compare: o, suspense: s, fallbackData: i, revalidateOnMount: l, revalidateIfStale: g, refreshInterval: d, refreshWhenHidden: c, refreshWhenOffline: u, keepPreviousData: p } = n, [f, m, h, D] = Z.get(r), [a, G] = tt(e), O = oe(!1), E = oe(!1), w = oe(a), S = oe(t), y = oe(n), R = () => y.current, N = () => R().isVisible() && R().isOnline(), [M, Y, B, L] = Kt(r, a), Q = oe({}).current, Se = b(i) ? n.fallback[a] : i, ve = (C, T) => {
2399
+ for (const k in Q) {
2400
+ const P = k;
2401
+ if (P === "data") {
2402
+ if (!o(C[P], T[P]) && (!b(C[P]) || !o(le, T[P])))
2403
+ return !1;
2404
+ } else if (T[P] !== C[P])
2405
+ return !1;
2406
+ }
2407
+ return !0;
2408
+ }, Ee = ee(() => {
2409
+ const C = !a || !t ? !1 : b(l) ? R().isPaused() || s ? !1 : b(g) ? !0 : g : l, T = (x) => {
2410
+ const K = ie(x);
2411
+ return delete K._k, C ? {
2412
+ isValidating: !0,
2413
+ isLoading: !0,
2414
+ ...K
2415
+ } : K;
2416
+ }, k = M(), P = L(), q = T(k), de = k === P ? q : T(P);
2417
+ let _ = q;
2418
+ return [
2419
+ () => {
2420
+ const x = T(M());
2421
+ return ve(x, _) ? (_.data = x.data, _.isLoading = x.isLoading, _.isValidating = x.isValidating, _.error = x.error, _) : (_ = x, x);
2422
+ },
2423
+ () => de
2424
+ ];
2425
+ }, [
2426
+ r,
2427
+ a
2428
+ ]), te = Cr.useSyncExternalStore(F(
2429
+ (C) => B(a, (T, k) => {
2430
+ ve(k, T) || C();
2431
+ }),
2432
+ // eslint-disable-next-line react-hooks/exhaustive-deps
2433
+ [
2434
+ r,
2435
+ a
2436
+ ]
2437
+ ), Ee[0], Ee[1]), be = !O.current, je = f[a] && f[a].length > 0, W = te.data, ce = b(W) ? Se : W, ne = te.error, we = oe(ce), le = p ? b(W) ? we.current : W : ce, v = je && !b(ne) ? !1 : be && !b(l) ? l : R().isPaused() ? !1 : s ? b(ce) ? !1 : g : b(ce) || g, A = !!(a && t && be && v), I = b(te.isValidating) ? A : te.isValidating, U = b(te.isLoading) ? A : te.isLoading, j = F(
2438
+ async (C) => {
2439
+ const T = S.current;
2440
+ if (!a || !T || E.current || R().isPaused())
2441
+ return !1;
2442
+ let k, P, q = !0;
2443
+ const de = C || {}, _ = !h[a] || !de.dedupe, x = () => ft ? !E.current && a === w.current && O.current : a === w.current, K = {
2444
+ isValidating: !1,
2445
+ isLoading: !1
2446
+ }, nt = () => {
2447
+ Y(K);
2448
+ }, rt = () => {
2449
+ const z = h[a];
2450
+ z && z[1] === P && delete h[a];
2451
+ }, ot = {
2452
+ isValidating: !0
2453
+ };
2454
+ b(M().data) && (ot.isLoading = !0);
2455
+ try {
2456
+ if (_ && (Y(ot), n.loadingTimeout && b(M().data) && setTimeout(() => {
2457
+ q && x() && R().onLoadingSlow(a, n);
2458
+ }, n.loadingTimeout), h[a] = [
2459
+ T(G),
2460
+ Je()
2461
+ ]), [k, P] = h[a], k = await k, _ && setTimeout(rt, n.dedupingInterval), !h[a] || h[a][1] !== P)
2462
+ return _ && x() && R().onDiscarded(a), !1;
2463
+ K.error = V;
2464
+ const z = m[a];
2465
+ if (!b(z) && // case 1
2466
+ (P <= z[0] || // case 2
2467
+ P <= z[1] || // case 3
2468
+ z[1] === 0))
2469
+ return nt(), _ && x() && R().onDiscarded(a), !1;
2470
+ const J = M().data;
2471
+ K.data = o(J, k) ? J : k, _ && x() && R().onSuccess(k, a, n);
2472
+ } catch (z) {
2473
+ rt();
2474
+ const J = R(), { shouldRetryOnError: _e } = J;
2475
+ J.isPaused() || (K.error = z, _ && x() && (J.onError(z, a, J), (_e === !0 || X(_e) && _e(z)) && (!R().revalidateOnFocus || !R().revalidateOnReconnect || N()) && J.onErrorRetry(z, a, J, (rn) => {
2476
+ const Me = f[a];
2477
+ Me && Me[0] && Me[0](ge.ERROR_REVALIDATE_EVENT, rn);
2478
+ }, {
2479
+ retryCount: (de.retryCount || 0) + 1,
2480
+ dedupe: !0
2481
+ })));
2482
+ }
2483
+ return q = !1, nt(), !0;
2484
+ },
2485
+ // `setState` is immutable, and `eventsCallback`, `fnArg`, and
2486
+ // `keyValidating` are depending on `key`, so we can exclude them from
2487
+ // the deps array.
2488
+ //
2489
+ // FIXME:
2490
+ // `fn` and `config` might be changed during the lifecycle,
2491
+ // but they might be changed every render like this.
2492
+ // `useSWR('key', () => fetch('/api/'), { suspense: true })`
2493
+ // So we omit the values from the deps array
2494
+ // even though it might cause unexpected behaviors.
2495
+ // eslint-disable-next-line react-hooks/exhaustive-deps
2496
+ [
2497
+ a,
2498
+ r
2499
+ ]
2500
+ ), Oe = F(
2501
+ // Use callback to make sure `keyRef.current` returns latest result every time
2502
+ (...C) => en(r, w.current, ...C),
2503
+ // eslint-disable-next-line react-hooks/exhaustive-deps
2504
+ []
2505
+ );
2506
+ if (He(() => {
2507
+ S.current = t, y.current = n, b(W) || (we.current = W);
2508
+ }), He(() => {
2509
+ if (!a) return;
2510
+ const C = j.bind(V, ze);
2511
+ let T = 0;
2512
+ const P = to(a, f, (q, de = {}) => {
2513
+ if (q == ge.FOCUS_EVENT) {
2514
+ const _ = Date.now();
2515
+ R().revalidateOnFocus && _ > T && N() && (T = _ + R().focusThrottleInterval, C());
2516
+ } else if (q == ge.RECONNECT_EVENT)
2517
+ R().revalidateOnReconnect && N() && C();
2518
+ else {
2519
+ if (q == ge.MUTATE_EVENT)
2520
+ return j();
2521
+ if (q == ge.ERROR_REVALIDATE_EVENT)
2522
+ return j(de);
2523
+ }
2524
+ });
2525
+ return E.current = !1, w.current = a, O.current = !0, Y({
2526
+ _k: G
2527
+ }), v && (b(ce) || ye ? C() : Lr(C)), () => {
2528
+ E.current = !0, P();
2529
+ };
2530
+ }, [
2531
+ a
2532
+ ]), He(() => {
2533
+ let C;
2534
+ function T() {
2535
+ const P = X(d) ? d(M().data) : d;
2536
+ P && C !== -1 && (C = setTimeout(k, P));
2537
+ }
2538
+ function k() {
2539
+ !M().error && (c || R().isVisible()) && (u || R().isOnline()) ? j(ze).then(T) : T();
2540
+ }
2541
+ return T(), () => {
2542
+ C && (clearTimeout(C), C = -1);
2543
+ };
2544
+ }, [
2545
+ d,
2546
+ c,
2547
+ u,
2548
+ a
2549
+ ]), ln(le), s && b(ce) && a) {
2550
+ if (!ft && ye)
2551
+ throw new Error("Fallback data is required when using suspense in SSR.");
2552
+ S.current = t, y.current = n, E.current = !1;
2553
+ const C = D[a];
2554
+ if (!b(C)) {
2555
+ const T = Oe(C);
2556
+ ht(T);
2557
+ }
2558
+ if (b(ne)) {
2559
+ const T = j(ze);
2560
+ b(le) || (T.status = "fulfilled", T.value = !0), ht(T);
2561
+ } else
2562
+ throw ne;
2563
+ }
2564
+ return {
2565
+ mutate: Oe,
2566
+ get data() {
2567
+ return Q.data = !0, le;
2568
+ },
2569
+ get error() {
2570
+ return Q.error = !0, ne;
2571
+ },
2572
+ get isValidating() {
2573
+ return Q.isValidating = !0, I;
2574
+ },
2575
+ get isLoading() {
2576
+ return Q.isLoading = !0, U;
2577
+ }
2578
+ };
2579
+ }, ro = eo(no);
2580
+ function vo() {
2581
+ const { apiUrl: e, botToken: t } = ae(), n = Et({
2582
+ apiUrl: e,
2583
+ botToken: t
2584
+ });
2585
+ return ro(n.options, n.apis.fetchPreludeData);
2586
+ }
2587
+ export {
2588
+ So as W,
2589
+ Ne as _,
2590
+ yo as a,
2591
+ vo as b,
2592
+ po as c,
2593
+ qn as d,
2594
+ mo as e,
2595
+ Pe as f,
2596
+ go as g,
2597
+ ho as h,
2598
+ Ce as i,
2599
+ At as j,
2600
+ Lt as k,
2601
+ hr as l,
2602
+ ae as u
2603
+ };
2604
+ //# sourceMappingURL=index-C11ivBh5.js.map