@opencx/widget 3.0.75 → 3.0.77
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/designs.cjs +3 -3
- package/dist/designs.cjs.map +1 -1
- package/dist/designs.js +10 -9
- package/dist/designs.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/react.cjs +1 -1
- package/dist/react.js +2 -2
- package/dist/src/headless/core/__tests__/test-utils.d.ts +41 -2
- package/dist/src/headless/core/api/api-caller.d.ts +42 -3
- package/dist/src/headless/core/api/schema.d.ts +61 -3
- package/dist/src/headless/core/context/active-session-polling.ctx.d.ts +1 -1
- package/dist/src/headless/core/context/message.ctx.d.ts +1 -1
- package/dist/src/headless/core/context/session.ctx.d.ts +2 -1
- package/dist/src/headless/core/index.d.ts +1 -1
- package/dist/src/headless/core/types/{schemas.d.ts → dtos.d.ts} +1 -0
- package/dist/src/headless/core/types/json-value.d.ts +7 -0
- package/dist/src/headless/core/types/messages.d.ts +1 -1
- package/dist/src/headless/core/types/widget-config.d.ts +8 -6
- package/dist/{useWidgetTrigger-CiYy4rS2.cjs → useWidgetTrigger-Bj4tpdxy.cjs} +2 -2
- package/dist/{useWidgetTrigger-CiYy4rS2.cjs.map → useWidgetTrigger-Bj4tpdxy.cjs.map} +1 -1
- package/dist/{useWidgetTrigger-CwB0x_Pe.js → useWidgetTrigger-TmZa8JFh.js} +3 -3
- package/dist/{useWidgetTrigger-CwB0x_Pe.js.map → useWidgetTrigger-TmZa8JFh.js.map} +1 -1
- package/dist/{widget.ctx-COUAUyWX.js → widget.ctx-DRC-z8Ql.js} +113 -102
- package/dist/widget.ctx-DRC-z8Ql.js.map +1 -0
- package/dist/widget.ctx-sL-dW2kY.cjs +5 -0
- package/dist/widget.ctx-sL-dW2kY.cjs.map +1 -0
- package/dist-embed/script.js +5 -5
- package/dist-embed/script.js.map +1 -1
- package/package.json +1 -1
- package/dist/widget.ctx-COUAUyWX.js.map +0 -1
- package/dist/widget.ctx-DUaeXkNb.cjs +0 -5
- package/dist/widget.ctx-DUaeXkNb.cjs.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./widget.ctx-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./widget.ctx-sL-dW2kY.cjs");exports.PrimitiveState=t.PrimitiveState;exports.WidgetCtx=t.WidgetCtx;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.js
CHANGED
package/dist/react.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./useWidgetTrigger-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./useWidgetTrigger-Bj4tpdxy.cjs");function g(t,i,s){const{widgetCtx:{api:u}}=e.useWidget();return e._default(async r=>u.vote({action:r==="up"?"upvote":"downvote",messagePublicId:t,sessionId:i}).then(s),[u,t,i,s])}exports.WidgetProvider=e.WidgetProvider;exports.WidgetTriggerProvider=e.WidgetTriggerProvider;exports.useConfig=e.useConfig;exports.useContact=e.useContact;exports.useIsAwaitingBotReply=e.useIsAwaitingBotReply;exports.useMessages=e.useMessages;exports.usePreludeData=e.usePreludeData;exports.usePrimitiveState=e.usePrimitiveState;exports.useSessions=e.useSessions;exports.useUploadFiles=e.useUploadFiles;exports.useWidget=e.useWidget;exports.useWidgetRouter=e.useWidgetRouter;exports.useWidgetTrigger=e.useWidgetTrigger;exports.useVote=g;
|
|
2
2
|
//# sourceMappingURL=react.cjs.map
|
package/dist/react.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { u, _ as r } from "./useWidgetTrigger-
|
|
2
|
-
import { W as p, k as f, a as l, b as v, c as W, d as c, e as m, f as P, g as w, i as x, h as C, j as b } from "./useWidgetTrigger-
|
|
1
|
+
import { u, _ as r } from "./useWidgetTrigger-TmZa8JFh.js";
|
|
2
|
+
import { W as p, k as f, a as l, b as v, c as W, d as c, e as m, f as P, g as w, i as x, h as C, j as b } from "./useWidgetTrigger-TmZa8JFh.js";
|
|
3
3
|
function g(e, s, t) {
|
|
4
4
|
const {
|
|
5
5
|
widgetCtx: { api: a }
|
|
@@ -82,7 +82,7 @@ export declare const TestUtils: {
|
|
|
82
82
|
email?: string;
|
|
83
83
|
non_verified_name?: string;
|
|
84
84
|
non_verified_custom_data?: {
|
|
85
|
-
[key: string]: string;
|
|
85
|
+
[key: string]: string | number | boolean;
|
|
86
86
|
};
|
|
87
87
|
};
|
|
88
88
|
}, `${string}/${string}`>> | undefined): void;
|
|
@@ -159,13 +159,16 @@ export declare const TestUtils: {
|
|
|
159
159
|
uuid: string;
|
|
160
160
|
content: string;
|
|
161
161
|
session_id: string;
|
|
162
|
+
bot_token: string;
|
|
162
163
|
headers?: {
|
|
163
164
|
[key: string]: string;
|
|
164
165
|
} | null;
|
|
165
|
-
bot_token: string;
|
|
166
166
|
query_params?: {
|
|
167
167
|
[key: string]: string;
|
|
168
168
|
} | null;
|
|
169
|
+
body_properties?: {
|
|
170
|
+
[key: string]: unknown;
|
|
171
|
+
} | null;
|
|
169
172
|
language?: string | null;
|
|
170
173
|
attachments?: {
|
|
171
174
|
id: string;
|
|
@@ -333,6 +336,42 @@ export declare const TestUtils: {
|
|
|
333
336
|
};
|
|
334
337
|
signal: AbortSignal;
|
|
335
338
|
}, `${string}/${string}`>> | undefined): void;
|
|
339
|
+
resolveSession(target: typeof ApiCaller, returnValue: Partial<import('openapi-fetch').FetchResponse<{
|
|
340
|
+
parameters: {
|
|
341
|
+
query?: never;
|
|
342
|
+
header?: never;
|
|
343
|
+
path?: never;
|
|
344
|
+
cookie?: never;
|
|
345
|
+
};
|
|
346
|
+
requestBody: {
|
|
347
|
+
content: {
|
|
348
|
+
"application/json": import('../api/schema').components["schemas"]["WidgetResolveSessionInputDto"];
|
|
349
|
+
};
|
|
350
|
+
};
|
|
351
|
+
responses: {
|
|
352
|
+
200: {
|
|
353
|
+
headers: {
|
|
354
|
+
[name: string]: unknown;
|
|
355
|
+
};
|
|
356
|
+
content: {
|
|
357
|
+
"application/json": import('../api/schema').components["schemas"]["WidgetSessionDto"];
|
|
358
|
+
};
|
|
359
|
+
};
|
|
360
|
+
500: {
|
|
361
|
+
headers: {
|
|
362
|
+
[name: string]: unknown;
|
|
363
|
+
};
|
|
364
|
+
content: {
|
|
365
|
+
"application/json": import('../api/schema').components["schemas"]["ErrorDto"];
|
|
366
|
+
};
|
|
367
|
+
};
|
|
368
|
+
};
|
|
369
|
+
}, {
|
|
370
|
+
body: {
|
|
371
|
+
session_id: string;
|
|
372
|
+
};
|
|
373
|
+
signal: AbortSignal | undefined;
|
|
374
|
+
}, `${string}/${string}`>> | undefined): void;
|
|
336
375
|
};
|
|
337
376
|
};
|
|
338
377
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Dto } from './client';
|
|
2
2
|
import { WidgetConfig } from '../types/widget-config';
|
|
3
|
-
import { SendMessageDto, VoteInputDto } from '../types/
|
|
3
|
+
import { ResolveSessionDto, SendMessageDto, VoteInputDto } from '../types/dtos';
|
|
4
4
|
export declare class ApiCaller {
|
|
5
5
|
private client;
|
|
6
6
|
private config;
|
|
@@ -116,13 +116,16 @@ export declare class ApiCaller {
|
|
|
116
116
|
uuid: string;
|
|
117
117
|
content: string;
|
|
118
118
|
session_id: string;
|
|
119
|
+
bot_token: string;
|
|
119
120
|
headers?: {
|
|
120
121
|
[key: string]: string;
|
|
121
122
|
} | null;
|
|
122
|
-
bot_token: string;
|
|
123
123
|
query_params?: {
|
|
124
124
|
[key: string]: string;
|
|
125
125
|
} | null;
|
|
126
|
+
body_properties?: {
|
|
127
|
+
[key: string]: unknown;
|
|
128
|
+
} | null;
|
|
126
129
|
language?: string | null;
|
|
127
130
|
attachments?: {
|
|
128
131
|
id: string;
|
|
@@ -179,7 +182,7 @@ export declare class ApiCaller {
|
|
|
179
182
|
email?: string;
|
|
180
183
|
non_verified_name?: string;
|
|
181
184
|
non_verified_custom_data?: {
|
|
182
|
-
[key: string]: string;
|
|
185
|
+
[key: string]: string | number | boolean;
|
|
183
186
|
};
|
|
184
187
|
};
|
|
185
188
|
}, `${string}/${string}`>>;
|
|
@@ -353,4 +356,40 @@ export declare class ApiCaller {
|
|
|
353
356
|
messagePublicId: string;
|
|
354
357
|
};
|
|
355
358
|
}, `${string}/${string}`>>;
|
|
359
|
+
resolveSession: (body: ResolveSessionDto, abortSignal?: AbortSignal) => Promise<import('openapi-fetch').FetchResponse<{
|
|
360
|
+
parameters: {
|
|
361
|
+
query?: never;
|
|
362
|
+
header?: never;
|
|
363
|
+
path?: never;
|
|
364
|
+
cookie?: never;
|
|
365
|
+
};
|
|
366
|
+
requestBody: {
|
|
367
|
+
content: {
|
|
368
|
+
"application/json": import('./schema').components["schemas"]["WidgetResolveSessionInputDto"];
|
|
369
|
+
};
|
|
370
|
+
};
|
|
371
|
+
responses: {
|
|
372
|
+
200: {
|
|
373
|
+
headers: {
|
|
374
|
+
[name: string]: unknown;
|
|
375
|
+
};
|
|
376
|
+
content: {
|
|
377
|
+
"application/json": import('./schema').components["schemas"]["WidgetSessionDto"];
|
|
378
|
+
};
|
|
379
|
+
};
|
|
380
|
+
500: {
|
|
381
|
+
headers: {
|
|
382
|
+
[name: string]: unknown;
|
|
383
|
+
};
|
|
384
|
+
content: {
|
|
385
|
+
"application/json": import('./schema').components["schemas"]["ErrorDto"];
|
|
386
|
+
};
|
|
387
|
+
};
|
|
388
|
+
};
|
|
389
|
+
}, {
|
|
390
|
+
body: {
|
|
391
|
+
session_id: string;
|
|
392
|
+
};
|
|
393
|
+
signal: AbortSignal | undefined;
|
|
394
|
+
}, `${string}/${string}`>>;
|
|
356
395
|
}
|
|
@@ -147,6 +147,22 @@ export interface paths {
|
|
|
147
147
|
patch?: never;
|
|
148
148
|
trace?: never;
|
|
149
149
|
};
|
|
150
|
+
'/backend/widget/v2/session/resolve': {
|
|
151
|
+
parameters: {
|
|
152
|
+
query?: never;
|
|
153
|
+
header?: never;
|
|
154
|
+
path?: never;
|
|
155
|
+
cookie?: never;
|
|
156
|
+
};
|
|
157
|
+
get?: never;
|
|
158
|
+
put?: never;
|
|
159
|
+
post: operations['resolveSession'];
|
|
160
|
+
delete?: never;
|
|
161
|
+
options?: never;
|
|
162
|
+
head?: never;
|
|
163
|
+
patch?: never;
|
|
164
|
+
trace?: never;
|
|
165
|
+
};
|
|
150
166
|
'/backend/widget/v2/contact/create-unverified': {
|
|
151
167
|
parameters: {
|
|
152
168
|
query?: never;
|
|
@@ -171,7 +187,7 @@ export interface components {
|
|
|
171
187
|
email?: string;
|
|
172
188
|
non_verified_name?: string;
|
|
173
189
|
non_verified_custom_data?: {
|
|
174
|
-
[key: string]: string;
|
|
190
|
+
[key: string]: string | number | boolean;
|
|
175
191
|
};
|
|
176
192
|
};
|
|
177
193
|
CreateWidgetSessionDto: {
|
|
@@ -186,7 +202,7 @@ export interface components {
|
|
|
186
202
|
HandleContactMessageOutputDto: {
|
|
187
203
|
/** @enum {boolean} */
|
|
188
204
|
success: true;
|
|
189
|
-
code?: string | 'session_assigned_to_human_agent';
|
|
205
|
+
code?: string | 'session_assigned_to_human_agent' | 'response_cancelled';
|
|
190
206
|
autopilotResponse?: {
|
|
191
207
|
/** @enum {string} */
|
|
192
208
|
type: 'text';
|
|
@@ -196,6 +212,7 @@ export interface components {
|
|
|
196
212
|
};
|
|
197
213
|
id?: string;
|
|
198
214
|
mightSolveUserIssue: boolean;
|
|
215
|
+
completelyAndFullyCoveredUserIssue: boolean;
|
|
199
216
|
};
|
|
200
217
|
uiResponse?: {
|
|
201
218
|
/** @enum {string} */
|
|
@@ -245,13 +262,19 @@ export interface components {
|
|
|
245
262
|
uuid: string;
|
|
246
263
|
content: string;
|
|
247
264
|
session_id: string;
|
|
265
|
+
bot_token: string;
|
|
266
|
+
/** @description Additional headers to be included in the request of action calls */
|
|
248
267
|
headers?: {
|
|
249
268
|
[key: string]: string;
|
|
250
269
|
} | null;
|
|
251
|
-
|
|
270
|
+
/** @description Additional query parameters to be included in the query of action calls */
|
|
252
271
|
query_params?: {
|
|
253
272
|
[key: string]: string;
|
|
254
273
|
} | null;
|
|
274
|
+
/** @description Additional body properties to be included in the body of action calls */
|
|
275
|
+
body_properties?: {
|
|
276
|
+
[key: string]: unknown;
|
|
277
|
+
} | null;
|
|
255
278
|
language?: string | null;
|
|
256
279
|
attachments?: {
|
|
257
280
|
id: string;
|
|
@@ -347,6 +370,9 @@ export interface components {
|
|
|
347
370
|
officeHoursTimezone: string | null;
|
|
348
371
|
organizationName: string;
|
|
349
372
|
};
|
|
373
|
+
WidgetResolveSessionInputDto: {
|
|
374
|
+
session_id: string;
|
|
375
|
+
};
|
|
350
376
|
WidgetSessionAndHistoryDto: {
|
|
351
377
|
/** @description WidgetSession */
|
|
352
378
|
session: {
|
|
@@ -724,6 +750,38 @@ export interface operations {
|
|
|
724
750
|
};
|
|
725
751
|
};
|
|
726
752
|
};
|
|
753
|
+
resolveSession: {
|
|
754
|
+
parameters: {
|
|
755
|
+
query?: never;
|
|
756
|
+
header?: never;
|
|
757
|
+
path?: never;
|
|
758
|
+
cookie?: never;
|
|
759
|
+
};
|
|
760
|
+
requestBody: {
|
|
761
|
+
content: {
|
|
762
|
+
'application/json': components['schemas']['WidgetResolveSessionInputDto'];
|
|
763
|
+
};
|
|
764
|
+
};
|
|
765
|
+
responses: {
|
|
766
|
+
200: {
|
|
767
|
+
headers: {
|
|
768
|
+
[name: string]: unknown;
|
|
769
|
+
};
|
|
770
|
+
content: {
|
|
771
|
+
'application/json': components['schemas']['WidgetSessionDto'];
|
|
772
|
+
};
|
|
773
|
+
};
|
|
774
|
+
/** @description Internal Server Error */
|
|
775
|
+
500: {
|
|
776
|
+
headers: {
|
|
777
|
+
[name: string]: unknown;
|
|
778
|
+
};
|
|
779
|
+
content: {
|
|
780
|
+
'application/json': components['schemas']['ErrorDto'];
|
|
781
|
+
};
|
|
782
|
+
};
|
|
783
|
+
};
|
|
784
|
+
};
|
|
727
785
|
createUnverifiedContact: {
|
|
728
786
|
parameters: {
|
|
729
787
|
query?: never;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ApiCaller } from '../api/api-caller';
|
|
2
2
|
import { MessageType } from '../types/messages';
|
|
3
|
-
import { ActionCallDto, MessageDto } from '../types/
|
|
3
|
+
import { ActionCallDto, MessageDto } from '../types/dtos';
|
|
4
4
|
import { WidgetConfig } from '../types/widget-config';
|
|
5
5
|
import { MessageCtx } from './message.ctx';
|
|
6
6
|
import { SessionCtx } from './session.ctx';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ApiCaller } from '../api/api-caller';
|
|
2
2
|
import { WidgetConfig } from '../types/widget-config';
|
|
3
3
|
import { MessageType } from '../types/messages';
|
|
4
|
-
import { SendMessageDto } from '../types/
|
|
4
|
+
import { SendMessageDto } from '../types/dtos';
|
|
5
5
|
import { PrimitiveState } from '../utils/PrimitiveState';
|
|
6
6
|
import { SessionCtx } from './session.ctx';
|
|
7
7
|
import { ContactCtx } from './contact.ctx';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ApiCaller } from '../api/api-caller';
|
|
2
|
-
import { SessionDto } from '../types/
|
|
2
|
+
import { SessionDto } from '../types/dtos';
|
|
3
3
|
import { PrimitiveState } from '../utils/PrimitiveState';
|
|
4
4
|
import { ContactCtx } from './contact.ctx';
|
|
5
5
|
type SessionState = {
|
|
@@ -56,5 +56,6 @@ export declare class SessionCtx {
|
|
|
56
56
|
private getSessions;
|
|
57
57
|
setSessions: (data: SessionDto[]) => void;
|
|
58
58
|
refreshSessions: () => Promise<void>;
|
|
59
|
+
resolveSession: () => Promise<void>;
|
|
59
60
|
}
|
|
60
61
|
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export type { AgentOrBotType } from './types/agent-or-bot';
|
|
2
2
|
export type { SafeExtract, StringOrLiteral } from './types/helpers';
|
|
3
3
|
export type { LiteralWidgetComponentKey, WidgetComponentKey, UserMessageType, AgentMessageType, BotMessageType, MessageType, } from './types/messages';
|
|
4
|
-
export type { MessageAttachmentType, MessageDto, PreludeDto, SendMessageDto, SendMessageOutputDto, SessionDto, VoteInputDto, VoteOutputDto, ActionCallDto, } from './types/
|
|
4
|
+
export type { MessageAttachmentType, MessageDto, PreludeDto, SendMessageDto, SendMessageOutputDto, ResolveSessionDto, SessionDto, VoteInputDto, VoteOutputDto, ActionCallDto, } from './types/dtos';
|
|
5
5
|
export type { WidgetConfig } from './types/widget-config';
|
|
6
6
|
export type { ExternalStorage } from './types/external-storage';
|
|
7
7
|
export type { OpenCxComponentNameU } from './types/component-name';
|
|
@@ -3,6 +3,7 @@ export type VoteInputDto = Dto['WidgetVoteDto'];
|
|
|
3
3
|
export type VoteOutputDto = Dto['WidgetVoteResponseDto'];
|
|
4
4
|
export type SendMessageDto = Dto['SendWidgetMessageDto'];
|
|
5
5
|
export type SendMessageOutputDto = Dto['HandleContactMessageOutputDto'];
|
|
6
|
+
export type ResolveSessionDto = Dto['WidgetResolveSessionInputDto'];
|
|
6
7
|
export type SessionDto = Dto['WidgetSessionDto'];
|
|
7
8
|
export type MessageDto = Dto['WidgetHistoryDto'];
|
|
8
9
|
export type PreludeDto = Dto['WidgetPreludeDto'];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MessageAttachmentType, MessageDto } from './
|
|
1
|
+
import { MessageAttachmentType, MessageDto } from './dtos';
|
|
2
2
|
import { SafeExtract, StringOrLiteral } from './helpers';
|
|
3
3
|
import { AgentOrBotType } from './agent-or-bot';
|
|
4
4
|
export type LiteralWidgetComponentKey = 'bot_message' | 'agent_message' | 'loading' | 'fallback';
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AgentOrBotType } from './agent-or-bot';
|
|
2
|
+
import { JsonValue } from './json-value';
|
|
2
3
|
type UserBaseConfig = {
|
|
3
4
|
token: string;
|
|
4
5
|
data?: never;
|
|
@@ -220,19 +221,20 @@ export interface WidgetConfig {
|
|
|
220
221
|
*/
|
|
221
222
|
anchorTarget?: '_blank' | '_top';
|
|
222
223
|
/**
|
|
223
|
-
* Headers to be
|
|
224
|
-
* These headers will be sent with each AI action (AI tools) that the LLM can call.
|
|
225
|
-
* This is useful if your AI actions require authentication specific to each contact.
|
|
224
|
+
* Headers to be added to every Http AI action taken.
|
|
226
225
|
* @default undefined
|
|
227
226
|
*/
|
|
228
227
|
headers?: Record<string, string>;
|
|
229
228
|
/**
|
|
230
|
-
* Query params to be
|
|
231
|
-
* These query params will be sent with each AI action (AI tools) that the LLM can call.
|
|
232
|
-
* This is useful if you want to send extra information with each AI action.
|
|
229
|
+
* Query params to be added to every Http AI action taken.
|
|
233
230
|
* @default undefined
|
|
234
231
|
*/
|
|
235
232
|
queryParams?: Record<string, string>;
|
|
233
|
+
/**
|
|
234
|
+
* Properties to be added to the `body` of every Http AI action taken.
|
|
235
|
+
* @default undefined
|
|
236
|
+
*/
|
|
237
|
+
bodyProperties?: Record<string, JsonValue>;
|
|
236
238
|
/**
|
|
237
239
|
* Dynamic context to be sent with each send-message request from the widget.
|
|
238
240
|
* Useful if you want to send data regarding the current page the user is viewing.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const y=require("react"),Ht=require("uuid"),Ze=require("react/jsx-runtime"),Kt=require("./widget.ctx-
|
|
1
|
+
"use strict";const y=require("react"),Ht=require("uuid"),Ze=require("react/jsx-runtime"),Kt=require("./widget.ctx-sL-dW2kY.cjs"),zt="3.0.77";class kt{constructor(t){this.components=[];const{components:n}=t;if(n&&n.forEach(r=>this.register(r)),this.components.length===0)throw new Error("No components registered");if(!this.get("fallback"))throw new Error("No fallback component registered")}register(t){const n=this.components.findIndex(r=>r.key===t.key);return n!==-1?this.components[n]=t:this.components.push(t),this}get(t){const n=this.components.find(r=>r.key.toUpperCase()===t.toUpperCase());return n||null}getComponent(t){var n;return(n=this.get(t))==null?void 0:n.component}}const et=y.createContext(null);function Yt({options:e,children:t,components:n,storage:r}){const o=y.useRef(null),s=y.useRef(!1),[i,d]=y.useState(null),h=y.useMemo(()=>new kt({components:n}),[n]);return y.useEffect(()=>{s.current||(s.current=!0,Kt.WidgetCtx.initialize({config:e,storage:r}).then(d))},[]),i?Ze.jsx(et.Provider,{value:{widgetCtx:i,config:e,components:n,componentStore:h,version:zt,contentIframeRef:o},children:t}):null}function K(){const e=y.useContext(et);if(!e)throw new Error("useWidget must be used within a WidgetProvider");return e}function tt(){const{config:e}=K();return e}function ee(e){return y.useSyncExternalStore(e.subscribe,e.get,e.get)}function Jt(){const{widgetCtx:e}=K();return{contactState:ee(e.contactCtx.state),createUnverifiedContact:e.contactCtx.createUnverifiedContact}}function nt(){const{widgetCtx:e}=K();return{messagesState:ee(e.messageCtx.state),sendMessage:e.messageCtx.sendMessage}}function rt(){const{widgetCtx:e}=K(),t=ee(e.sessionCtx.sessionState),n=ee(e.sessionCtx.sessionsState);return{sessionState:t,sessionsState:n,loadMoreSessions:e.sessionCtx.loadMoreSessions}}function Xt(){var i;const{sessionState:e}=rt(),{messagesState:t}=nt(),n=((i=e.session)==null?void 0:i.assignee.kind)==="ai",r=t.messages.length>0?t.messages[t.messages.length-1]:null,o=(r==null?void 0:r.type)==="FROM_USER";return{isAwaitingBotReply:(n||e.isCreatingSession)&&(t.isSendingMessage||o)}}var Qt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Zt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function en(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var n=function r(){return this instanceof r?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,o.get?o:{enumerable:!0,get:function(){return e[r]}})}),n}var Re={exports:{}},_e={};/**
|
|
2
2
|
* @license React
|
|
3
3
|
* use-sync-external-store-shim.production.min.js
|
|
4
4
|
*
|
|
@@ -15,4 +15,4 @@
|
|
|
15
15
|
* This source code is licensed under the MIT license found in the
|
|
16
16
|
* LICENSE file in the root directory of this source tree.
|
|
17
17
|
*/var ze;function nn(){return ze||(ze=1,process.env.NODE_ENV!=="production"&&function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var e=y,t=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function n(R){{for(var v=arguments.length,w=new Array(v>1?v-1:0),S=1;S<v;S++)w[S-1]=arguments[S];r("error",R,w)}}function r(R,v,w){{var S=t.ReactDebugCurrentFrame,I=S.getStackAddendum();I!==""&&(v+="%s",w=w.concat([I]));var m=w.map(function(D){return String(D)});m.unshift("Warning: "+v),Function.prototype.apply.call(console[R],console,m)}}function o(R,v){return R===v&&(R!==0||1/R===1/v)||R!==R&&v!==v}var s=typeof Object.is=="function"?Object.is:o,i=e.useState,d=e.useEffect,h=e.useLayoutEffect,f=e.useDebugValue,a=!1,u=!1;function l(R,v,w){a||e.startTransition!==void 0&&(a=!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."));var S=v();if(!u){var I=v();s(S,I)||(n("The result of getSnapshot should be cached to avoid an infinite loop"),u=!0)}var m=i({inst:{value:S,getSnapshot:v}}),D=m[0].inst,j=m[1];return h(function(){D.value=S,D.getSnapshot=v,c(D)&&j({inst:D})},[R,S,v]),d(function(){c(D)&&j({inst:D});var B=function(){c(D)&&j({inst:D})};return R(B)},[R]),f(S),S}function c(R){var v=R.getSnapshot,w=R.value;try{var S=v();return!s(w,S)}catch{return!0}}function _(R,v,w){return v()}var g=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",C=!g,p=C?_:l,k=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:p;Ee.useSyncExternalStore=k,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()),Ee}process.env.NODE_ENV==="production"?Re.exports=tn():Re.exports=nn();var rn=Re.exports;const G=()=>{},L=G(),ve=Object,E=e=>e===L,N=e=>typeof e=="function",H=(e,t)=>({...e,...t}),on=e=>N(e.then),ue=new WeakMap;let sn=0;const oe=e=>{const t=typeof e,n=e&&e.constructor,r=n==Date;let o,s;if(ve(e)===e&&!r&&n!=RegExp){if(o=ue.get(e),o)return o;if(o=++sn+"~",ue.set(e,o),n==Array){for(o="@",s=0;s<e.length;s++)o+=oe(e[s])+",";ue.set(e,o)}if(n==ve){o="#";const i=ve.keys(e).sort();for(;!E(s=i.pop());)E(e[s])||(o+=s+":"+oe(e[s])+",");ue.set(e,o)}}else o=r?e.toJSON():t=="symbol"?e.toString():t=="string"?JSON.stringify(e):""+e;return o},q=new WeakMap,Se={},ce={},Le="undefined",pe=typeof window!=Le,Te=typeof document!=Le,an=()=>pe&&typeof window.requestAnimationFrame!=Le,ot=(e,t)=>{const n=q.get(e);return[()=>!E(t)&&e.get(t)||Se,r=>{if(!E(t)){const o=e.get(t);t in ce||(ce[t]=o),n[5](t,H(o,r),o||Se)}},n[6],()=>!E(t)&&t in ce?ce[t]:!E(t)&&e.get(t)||Se]};let Ce=!0;const un=()=>Ce,[De,Ae]=pe&&window.addEventListener?[window.addEventListener.bind(window),window.removeEventListener.bind(window)]:[G,G],cn=()=>{const e=Te&&document.visibilityState;return E(e)||e!=="hidden"},fn=e=>(Te&&document.addEventListener("visibilitychange",e),De("focus",e),()=>{Te&&document.removeEventListener("visibilitychange",e),Ae("focus",e)}),ln=e=>{const t=()=>{Ce=!0,e()},n=()=>{Ce=!1};return De("online",t),De("offline",n),()=>{Ae("online",t),Ae("offline",n)}},dn={isOnline:un,isVisible:cn},pn={initFocus:fn,initReconnect:ln},ke=!y.useId,se=!pe||"Deno"in window,hn=e=>an()?window.requestAnimationFrame(e):setTimeout(e,1),we=se?y.useEffect:y.useLayoutEffect,me=typeof navigator<"u"&&navigator.connection,Ye=!se&&me&&(["slow-2g","2g"].includes(me.effectiveType)||me.saveData),Ie=e=>{if(N(e))try{e=e()}catch{e=""}const t=e;return e=typeof e=="string"?e:(Array.isArray(e)?e.length:e)?oe(e):"",[e,t]};let gn=0;const xe=()=>++gn,st=0,it=1,at=2,yn=3;var re={__proto__:null,ERROR_REVALIDATE_EVENT:yn,FOCUS_EVENT:st,MUTATE_EVENT:at,RECONNECT_EVENT:it};async function ut(...e){const[t,n,r,o]=e,s=H({populateCache:!0,throwOnError:!0},typeof o=="boolean"?{revalidate:o}:o||{});let i=s.populateCache;const d=s.rollbackOnError;let h=s.optimisticData;const f=l=>typeof d=="function"?d(l):d!==!1,a=s.throwOnError;if(N(n)){const l=n,c=[],_=t.keys();for(const g of _)!/^\$(inf|sub)\$/.test(g)&&l(t.get(g)._k)&&c.push(g);return Promise.all(c.map(u))}return u(n);async function u(l){const[c]=Ie(l);if(!c)return;const[_,g]=ot(t,c),[C,p,k,R]=q.get(t),v=()=>{const M=C[c];return(N(s.revalidate)?s.revalidate(_().data,l):s.revalidate!==!1)&&(delete k[c],delete R[c],M&&M[0])?M[0](at).then(()=>_().data):_().data};if(e.length<3)return v();let w=r,S;const I=xe();p[c]=[I,0];const m=!E(h),D=_(),j=D.data,B=D._c,z=E(B)?j:B;if(m&&(h=N(h)?h(z,j):h,g({data:h,_c:z})),N(w))try{w=w(z)}catch(M){S=M}if(w&&on(w))if(w=await w.catch(M=>{S=M}),I!==p[c][0]){if(S)throw S;return w}else S&&m&&f(S)&&(i=!0,g({data:z,_c:L}));if(i&&!S)if(N(i)){const M=i(w,z);g({data:M,error:L,_c:L})}else g({data:w,error:L,_c:L});if(p[c][1]=xe(),Promise.resolve(v()).then(()=>{g({_c:L})}),S){if(a)throw S;return}return w}}const Je=(e,t)=>{for(const n in e)e[n][0]&&e[n][0](t)},_n=(e,t)=>{if(!q.has(e)){const n=H(pn,t),r={},o=ut.bind(L,e);let s=G;const i={},d=(a,u)=>{const l=i[a]||[];return i[a]=l,l.push(u),()=>l.splice(l.indexOf(u),1)},h=(a,u,l)=>{e.set(a,u);const c=i[a];if(c)for(const _ of c)_(u,l)},f=()=>{if(!q.has(e)&&(q.set(e,[r,{},{},{},o,h,d]),!se)){const a=n.initFocus(setTimeout.bind(L,Je.bind(L,r,st))),u=n.initReconnect(setTimeout.bind(L,Je.bind(L,r,it)));s=()=>{a&&a(),u&&u(),q.delete(e)}}};return f(),[e,o,f,s]}return[e,q.get(e)[4]]},En=(e,t,n,r,o)=>{const s=n.errorRetryCount,i=o.retryCount,d=~~((Math.random()+.5)*(1<<(i<8?i:8)))*n.errorRetryInterval;!E(s)&&i>s||setTimeout(r,d,o)},vn=(e,t)=>oe(e)==oe(t),[ct,Sn]=_n(new Map),wn=H({onLoadingSlow:G,onSuccess:G,onError:G,onErrorRetry:En,onDiscarded:G,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:Ye?1e4:5e3,focusThrottleInterval:5*1e3,dedupingInterval:2*1e3,loadingTimeout:Ye?5e3:3e3,compare:vn,isPaused:()=>!1,cache:ct,mutate:Sn,fallback:{}},dn),mn=(e,t)=>{const n=H(e,t);if(t){const{use:r,fallback:o}=e,{use:s,fallback:i}=t;r&&s&&(n.use=r.concat(s)),o&&i&&(n.fallback=H(o,i))}return n},bn=y.createContext({}),On="$inf$",ft=pe&&window.__SWR_DEVTOOLS_USE__,Rn=ft?window.__SWR_DEVTOOLS_USE__:[],Tn=()=>{ft&&(window.__SWR_DEVTOOLS_REACT__=y)},Cn=e=>N(e[1])?[e[0],e[1],e[2]||{}]:[e[0],null,(e[1]===null?e[2]:e[1])||{}],Dn=()=>H(wn,y.useContext(bn)),An=e=>(t,n,r)=>e(t,n&&((...s)=>{const[i]=Ie(t),[,,,d]=q.get(ct);if(i.startsWith(On))return n(...s);const h=d[i];return E(h)?n(...s):(delete d[i],h)}),r),xn=Rn.concat(An),Pn=e=>function(...n){const r=Dn(),[o,s,i]=Cn(n),d=mn(r,i);let h=e;const{use:f}=d,a=(f||[]).concat(xn);for(let u=a.length;u--;)h=a[u](h);return h(o,s||d.fetcher||null,d)},jn=(e,t,n)=>{const r=t[e]||(t[e]=[]);return r.push(n),()=>{const o=r.indexOf(n);o>=0&&(r[o]=r[r.length-1],r.pop())}};Tn();const Xe=y.use||(e=>{if(e.status==="pending")throw e;if(e.status==="fulfilled")return e.value;throw e.status==="rejected"?e.reason:(e.status="pending",e.then(t=>{e.status="fulfilled",e.value=t},t=>{e.status="rejected",e.reason=t}),e)}),be={dedupe:!0},Ln=(e,t,n)=>{const{cache:r,compare:o,suspense:s,fallbackData:i,revalidateOnMount:d,revalidateIfStale:h,refreshInterval:f,refreshWhenHidden:a,refreshWhenOffline:u,keepPreviousData:l}=n,[c,_,g,C]=q.get(r),[p,k]=Ie(e),R=y.useRef(!1),v=y.useRef(!1),w=y.useRef(p),S=y.useRef(t),I=y.useRef(n),m=()=>I.current,D=()=>m().isVisible()&&m().isOnline(),[j,B,z,M]=ot(r,p),Y=y.useRef({}).current,Wt=E(i)?n.fallback[p]:i,Me=(b,O)=>{for(const x in Y){const T=x;if(T==="data"){if(!o(b[T],O[T])&&(!E(b[T])||!o(ae,O[T])))return!1}else if(O[T]!==b[T])return!1}return!0},Fe=y.useMemo(()=>{const b=!p||!t?!1:E(d)?m().isPaused()||s?!1:E(h)?!0:h:d,O=P=>{const U=H(P);return delete U._k,b?{isValidating:!0,isLoading:!0,...U}:U},x=j(),T=M(),F=O(x),Z=x===T?F:O(T);let A=F;return[()=>{const P=O(j());return Me(P,A)?(A.data=P.data,A.isLoading=P.isLoading,A.isValidating=P.isValidating,A.error=P.error,A):(A=P,P)},()=>Z]},[r,p]),J=rn.useSyncExternalStore(y.useCallback(b=>z(p,(O,x)=>{Me(x,O)||b()}),[r,p]),Fe[0],Fe[1]),Ne=!R.current,qt=c[p]&&c[p].length>0,X=J.data,Q=E(X)?Wt:X,ie=J.error,Ue=y.useRef(Q),ae=l?E(X)?Ue.current:X:Q,We=qt&&!E(ie)?!1:Ne&&!E(d)?d:m().isPaused()?!1:s?E(Q)?!1:h:E(Q)||h,qe=!!(p&&t&&Ne&&We),Bt=E(J.isValidating)?qe:J.isValidating,$t=E(J.isLoading)?qe:J.isLoading,ne=y.useCallback(async b=>{const O=S.current;if(!p||!O||v.current||m().isPaused())return!1;let x,T,F=!0;const Z=b||{},A=!g[p]||!Z.dedupe,P=()=>ke?!v.current&&p===w.current&&R.current:p===w.current,U={isValidating:!1,isLoading:!1},$e=()=>{B(U)},Ge=()=>{const V=g[p];V&&V[1]===T&&delete g[p]},He={isValidating:!0};E(j().data)&&(He.isLoading=!0);try{if(A&&(B(He),n.loadingTimeout&&E(j().data)&&setTimeout(()=>{F&&P()&&m().onLoadingSlow(p,n)},n.loadingTimeout),g[p]=[O(k),xe()]),[x,T]=g[p],x=await x,A&&setTimeout(Ge,n.dedupingInterval),!g[p]||g[p][1]!==T)return A&&P()&&m().onDiscarded(p),!1;U.error=L;const V=_[p];if(!E(V)&&(T<=V[0]||T<=V[1]||V[1]===0))return $e(),A&&P()&&m().onDiscarded(p),!1;const W=j().data;U.data=o(W,x)?W:x,A&&P()&&m().onSuccess(x,p,n)}catch(V){Ge();const W=m(),{shouldRetryOnError:ge}=W;W.isPaused()||(U.error=V,A&&P()&&(W.onError(V,p,W),(ge===!0||N(ge)&&ge(V))&&(!m().revalidateOnFocus||!m().revalidateOnReconnect||D())&&W.onErrorRetry(V,p,W,Gt=>{const ye=c[p];ye&&ye[0]&&ye[0](re.ERROR_REVALIDATE_EVENT,Gt)},{retryCount:(Z.retryCount||0)+1,dedupe:!0})))}return F=!1,$e(),!0},[p,r]),Be=y.useCallback((...b)=>ut(r,w.current,...b),[]);if(we(()=>{S.current=t,I.current=n,E(X)||(Ue.current=X)}),we(()=>{if(!p)return;const b=ne.bind(L,be);let O=0;const T=jn(p,c,(F,Z={})=>{if(F==re.FOCUS_EVENT){const A=Date.now();m().revalidateOnFocus&&A>O&&D()&&(O=A+m().focusThrottleInterval,b())}else if(F==re.RECONNECT_EVENT)m().revalidateOnReconnect&&D()&&b();else{if(F==re.MUTATE_EVENT)return ne();if(F==re.ERROR_REVALIDATE_EVENT)return ne(Z)}});return v.current=!1,w.current=p,R.current=!0,B({_k:k}),We&&(E(Q)||se?b():hn(b)),()=>{v.current=!0,T()}},[p]),we(()=>{let b;function O(){const T=N(f)?f(j().data):f;T&&b!==-1&&(b=setTimeout(x,T))}function x(){!j().error&&(a||m().isVisible())&&(u||m().isOnline())?ne(be).then(O):O()}return O(),()=>{b&&(clearTimeout(b),b=-1)}},[f,a,u,p]),y.useDebugValue(ae),s&&E(Q)&&p){if(!ke&&se)throw new Error("Fallback data is required when using suspense in SSR.");S.current=t,I.current=n,v.current=!1;const b=C[p];if(!E(b)){const O=Be(b);Xe(O)}if(E(ie)){const O=ne(be);E(ae)||(O.status="fulfilled",O.value=!0),Xe(O)}else throw ie}return{mutate:Be,get data(){return Y.data=!0,ae},get error(){return Y.error=!0,ie},get isValidating(){return Y.isValidating=!0,Bt},get isLoading(){return Y.isLoading=!0,$t}}},In=Pn(Ln);function Vn(){const{widgetCtx:e}=K();return In([e.config.token],e.api.widgetPrelude,{revalidateOnFocus:!1})}function Mn(){const{widgetCtx:e}=K();return{routerState:ee(e.routerCtx.state),toSessionsScreen:e.routerCtx.toSessionsScreen,toChatScreen:e.routerCtx.toChatScreen}}var lt={},Pe=function(e,t){return Pe=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(n[o]=r[o])},Pe(e,t)};function dt(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Pe(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var le=function(){return le=Object.assign||function(t){for(var n,r=1,o=arguments.length;r<o;r++){n=arguments[r];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(t[s]=n[s])}return t},le.apply(this,arguments)};function pt(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]]);return n}function ht(e,t,n,r){var o=arguments.length,s=o<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,i;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(e,t,n,r);else for(var d=e.length-1;d>=0;d--)(i=e[d])&&(s=(o<3?i(s):o>3?i(t,n,s):i(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}function gt(e,t){return function(n,r){t(n,r,e)}}function yt(e,t,n,r,o,s){function i(p){if(p!==void 0&&typeof p!="function")throw new TypeError("Function expected");return p}for(var d=r.kind,h=d==="getter"?"get":d==="setter"?"set":"value",f=!t&&e?r.static?e:e.prototype:null,a=t||(f?Object.getOwnPropertyDescriptor(f,r.name):{}),u,l=!1,c=n.length-1;c>=0;c--){var _={};for(var g in r)_[g]=g==="access"?{}:r[g];for(var g in r.access)_.access[g]=r.access[g];_.addInitializer=function(p){if(l)throw new TypeError("Cannot add initializers after decoration has completed");s.push(i(p||null))};var C=(0,n[c])(d==="accessor"?{get:a.get,set:a.set}:a[h],_);if(d==="accessor"){if(C===void 0)continue;if(C===null||typeof C!="object")throw new TypeError("Object expected");(u=i(C.get))&&(a.get=u),(u=i(C.set))&&(a.set=u),(u=i(C.init))&&o.unshift(u)}else(u=i(C))&&(d==="field"?o.unshift(u):a[h]=u)}f&&Object.defineProperty(f,r.name,a),l=!0}function _t(e,t,n){for(var r=arguments.length>2,o=0;o<t.length;o++)n=r?t[o].call(e,n):t[o].call(e);return r?n:void 0}function Et(e){return typeof e=="symbol"?e:"".concat(e)}function vt(e,t,n){return typeof t=="symbol"&&(t=t.description?"[".concat(t.description,"]"):""),Object.defineProperty(e,"name",{configurable:!0,value:n?"".concat(n," ",t):t})}function St(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}function wt(e,t,n,r){function o(s){return s instanceof n?s:new n(function(i){i(s)})}return new(n||(n=Promise))(function(s,i){function d(a){try{f(r.next(a))}catch(u){i(u)}}function h(a){try{f(r.throw(a))}catch(u){i(u)}}function f(a){a.done?s(a.value):o(a.value).then(d,h)}f((r=r.apply(e,t||[])).next())})}function mt(e,t){var n={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},r,o,s,i=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return i.next=d(0),i.throw=d(1),i.return=d(2),typeof Symbol=="function"&&(i[Symbol.iterator]=function(){return this}),i;function d(f){return function(a){return h([f,a])}}function h(f){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,f[0]&&(n=0)),n;)try{if(r=1,o&&(s=f[0]&2?o.return:f[0]?o.throw||((s=o.return)&&s.call(o),0):o.next)&&!(s=s.call(o,f[1])).done)return s;switch(o=0,s&&(f=[f[0]&2,s.value]),f[0]){case 0:case 1:s=f;break;case 4:return n.label++,{value:f[1],done:!1};case 5:n.label++,o=f[1],f=[0];continue;case 7:f=n.ops.pop(),n.trys.pop();continue;default:if(s=n.trys,!(s=s.length>0&&s[s.length-1])&&(f[0]===6||f[0]===2)){n=0;continue}if(f[0]===3&&(!s||f[1]>s[0]&&f[1]<s[3])){n.label=f[1];break}if(f[0]===6&&n.label<s[1]){n.label=s[1],s=f;break}if(s&&n.label<s[2]){n.label=s[2],n.ops.push(f);break}s[2]&&n.ops.pop(),n.trys.pop();continue}f=t.call(e,n)}catch(a){f=[6,a],o=0}finally{r=s=0}if(f[0]&5)throw f[1];return{value:f[0]?f[1]:void 0,done:!0}}}var he=Object.create?function(e,t,n,r){r===void 0&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);(!o||("get"in o?!t.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]};function bt(e,t){for(var n in e)n!=="default"&&!Object.prototype.hasOwnProperty.call(t,n)&&he(t,e,n)}function de(e){var t=typeof Symbol=="function"&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Ve(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),o,s=[],i;try{for(;(t===void 0||t-- >0)&&!(o=r.next()).done;)s.push(o.value)}catch(d){i={error:d}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(i)throw i.error}}return s}function Ot(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(Ve(arguments[t]));return e}function Rt(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var r=Array(e),o=0,t=0;t<n;t++)for(var s=arguments[t],i=0,d=s.length;i<d;i++,o++)r[o]=s[i];return r}function Tt(e,t,n){if(n||arguments.length===2)for(var r=0,o=t.length,s;r<o;r++)(s||!(r in t))&&(s||(s=Array.prototype.slice.call(t,0,r)),s[r]=t[r]);return e.concat(s||Array.prototype.slice.call(t))}function te(e){return this instanceof te?(this.v=e,this):new te(e)}function Ct(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),o,s=[];return o=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),d("next"),d("throw"),d("return",i),o[Symbol.asyncIterator]=function(){return this},o;function i(c){return function(_){return Promise.resolve(_).then(c,u)}}function d(c,_){r[c]&&(o[c]=function(g){return new Promise(function(C,p){s.push([c,g,C,p])>1||h(c,g)})},_&&(o[c]=_(o[c])))}function h(c,_){try{f(r[c](_))}catch(g){l(s[0][3],g)}}function f(c){c.value instanceof te?Promise.resolve(c.value.v).then(a,u):l(s[0][2],c)}function a(c){h("next",c)}function u(c){h("throw",c)}function l(c,_){c(_),s.shift(),s.length&&h(s[0][0],s[0][1])}}function Dt(e){var t,n;return t={},r("next"),r("throw",function(o){throw o}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(o,s){t[o]=e[o]?function(i){return(n=!n)?{value:te(e[o](i)),done:!1}:s?s(i):i}:s}}function At(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;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(){return this},n);function r(s){n[s]=e[s]&&function(i){return new Promise(function(d,h){i=e[s](i),o(d,h,i.done,i.value)})}}function o(s,i,d,h){Promise.resolve(h).then(function(f){s({value:f,done:d})},i)}}function xt(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var Fn=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t};function Pt(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)n!=="default"&&Object.prototype.hasOwnProperty.call(e,n)&&he(t,e,n);return Fn(t,e),t}function jt(e){return e&&e.__esModule?e:{default:e}}function Lt(e,t,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");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");return n==="m"?r:n==="a"?r.call(e):r?r.value:t.get(e)}function It(e,t,n,r,o){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!o)throw new TypeError("Private accessor was defined without a setter");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");return r==="a"?o.call(e,n):o?o.value=n:t.set(e,n),n}function Vt(e,t){if(t===null||typeof t!="object"&&typeof t!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof e=="function"?t===e:e.has(t)}function Mt(e,t,n){if(t!=null){if(typeof t!="object"&&typeof t!="function")throw new TypeError("Object expected.");var r,o;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=t[Symbol.dispose],n&&(o=r)}if(typeof r!="function")throw new TypeError("Object not disposable.");o&&(r=function(){try{o.call(this)}catch(s){return Promise.reject(s)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t}var Nn=typeof SuppressedError=="function"?SuppressedError:function(e,t,n){var r=new Error(n);return r.name="SuppressedError",r.error=e,r.suppressed=t,r};function Ft(e){function t(s){e.error=e.hasError?new Nn(s,e.error,"An error was suppressed during disposal."):s,e.hasError=!0}var n,r=0;function o(){for(;n=e.stack.pop();)try{if(!n.async&&r===1)return r=0,e.stack.push(n),Promise.resolve().then(o);if(n.dispose){var s=n.dispose.call(n.value);if(n.async)return r|=2,Promise.resolve(s).then(o,function(i){return t(i),o()})}else r|=1}catch(i){t(i)}if(r===1)return e.hasError?Promise.reject(e.error):Promise.resolve();if(e.hasError)throw e.error}return o()}function Nt(e,t){return typeof e=="string"&&/^\.\.?\//.test(e)?e.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(n,r,o,s,i){return r?t?".jsx":".js":o&&(!s||!i)?n:o+s+"."+i.toLowerCase()+"js"}):e}const Un={__extends:dt,__assign:le,__rest:pt,__decorate:ht,__param:gt,__esDecorate:yt,__runInitializers:_t,__propKey:Et,__setFunctionName:vt,__metadata:St,__awaiter:wt,__generator:mt,__createBinding:he,__exportStar:bt,__values:de,__read:Ve,__spread:Ot,__spreadArrays:Rt,__spreadArray:Tt,__await:te,__asyncGenerator:Ct,__asyncDelegator:Dt,__asyncValues:At,__makeTemplateObject:xt,__importStar:Pt,__importDefault:jt,__classPrivateFieldGet:Lt,__classPrivateFieldSet:It,__classPrivateFieldIn:Vt,__addDisposableResource:Mt,__disposeResources:Ft,__rewriteRelativeImportExtension:Nt},Wn=Object.freeze(Object.defineProperty({__proto__:null,__addDisposableResource:Mt,get __assign(){return le},__asyncDelegator:Dt,__asyncGenerator:Ct,__asyncValues:At,__await:te,__awaiter:wt,__classPrivateFieldGet:Lt,__classPrivateFieldIn:Vt,__classPrivateFieldSet:It,__createBinding:he,__decorate:ht,__disposeResources:Ft,__esDecorate:yt,__exportStar:bt,__extends:dt,__generator:mt,__importDefault:jt,__importStar:Pt,__makeTemplateObject:xt,__metadata:St,__param:gt,__propKey:Et,__read:Ve,__rest:pt,__rewriteRelativeImportExtension:Nt,__runInitializers:_t,__setFunctionName:vt,__spread:Ot,__spreadArray:Tt,__spreadArrays:Rt,__values:de,default:Un},Symbol.toStringTag,{value:"Module"})),qn=en(Wn);var fe={},Qe;function Bn(){if(Qe)return fe;Qe=1,Object.defineProperty(fe,"__esModule",{value:!0});var e=y;function t(){var n=e.useRef(!1),r=e.useCallback(function(){return n.current},[]);return e.useEffect(function(){return n.current=!0,function(){n.current=!1}},[]),r}return fe.default=t,fe}Object.defineProperty(lt,"__esModule",{value:!0});var je=qn,Oe=y,$n=je.__importDefault(Bn());function Gn(e,t,n){t===void 0&&(t=[]),n===void 0&&(n={loading:!1});var r=Oe.useRef(0),o=$n.default(),s=Oe.useState(n),i=s[0],d=s[1],h=Oe.useCallback(function(){for(var f=[],a=0;a<arguments.length;a++)f[a]=arguments[a];var u=++r.current;return i.loading||d(function(l){return je.__assign(je.__assign({},l),{loading:!0})}),e.apply(void 0,f).then(function(l){return o()&&u===r.current&&d({value:l,loading:!1}),l},function(l){return o()&&u===r.current&&d({error:l,loading:!1}),l})},t);return[i,h]}var Hn=lt.default=Gn;const $=new Map;function Kn(){const[e,t]=y.useState([]),{widgetCtx:{api:n}}=K();function r(a){const u=a.map(l=>({file:l,id:Ht.v4(),status:"pending",progress:0}));t(l=>[...l,...u]),u.forEach(i)}function o(a,u){t(l=>l.map(c=>c.id===a?{...c,...u}:c))}function s(a){t(u=>u.filter(l=>l.id!==a))}const i=async a=>{const u=new AbortController;$.set(a.id,u);try{t(c=>c.map(_=>_.id===a.id?{..._,status:"uploading",progress:0}:_));const l=await n.uploadFile({file:a.file,abortSignal:u.signal,onProgress:c=>{o(a.id,{progress:c})}});o(a.id,{status:"success",fileUrl:l.fileUrl,progress:100})}catch(l){u.signal.aborted||o(a.id,{status:"error",error:l instanceof Error?l.message:"Upload failed",progress:0})}finally{$.delete(a.id)}},d=a=>{const u=$.get(a);u&&(u.abort(),$.delete(a)),s(a)},h=y.useMemo(()=>e.filter(a=>a.status==="success"&&a.fileUrl),[e]);function f(){$.forEach(a=>a.abort()),$.clear(),t([])}return y.useEffect(()=>()=>{$.forEach(a=>a.abort()),$.clear()},[]),{allFiles:e,appendFiles:r,handleCancelUpload:d,successFiles:h,emptyTheFiles:f,getFileById:a=>e.find(u=>u.id===a),getUploadProgress:a=>{var u;return((u=e.find(l=>l.id===a))==null?void 0:u.progress)??0},getUploadStatus:a=>{var u;return(u=e.find(l=>l.id===a))==null?void 0:u.status},hasErrors:e.some(a=>a.status==="error"),isUploading:e.some(a=>a.status==="uploading")}}const Ut=y.createContext(null);function zn({children:e}){const t=tt(),[n,r]=y.useState(t.isOpen??!1);return y.useEffect(()=>{r(o=>t.isOpen??o)},[t.isOpen]),Ze.jsx(Ut.Provider,{value:{isOpen:n,setIsOpen:r},children:e})}function kn(){const e=y.useContext(Ut);if(!e)throw new Error("useWidgetTrigger must be used within a WidgetTriggerProvider");return e}exports.WidgetProvider=Yt;exports.WidgetTriggerProvider=zn;exports._default=Hn;exports.commonjsGlobal=Qt;exports.getDefaultExportFromCjs=Zt;exports.useConfig=tt;exports.useContact=Jt;exports.useIsAwaitingBotReply=Xt;exports.useMessages=nt;exports.usePreludeData=Vn;exports.usePrimitiveState=ee;exports.useSessions=rt;exports.useUploadFiles=Kn;exports.useWidget=K;exports.useWidgetRouter=Mn;exports.useWidgetTrigger=kn;
|
|
18
|
-
//# sourceMappingURL=useWidgetTrigger-
|
|
18
|
+
//# sourceMappingURL=useWidgetTrigger-Bj4tpdxy.cjs.map
|