@opencxh/domain 1.132.0 → 1.134.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.
- package/dist/entities/activity/blocks.d.ts +109 -0
- package/dist/entities/activity/blocks.test.d.ts +1 -0
- package/dist/entities/activity/descriptor.d.ts +10 -1
- package/dist/entities/activity/index.d.ts +1 -0
- package/dist/entities/activity/resolve.d.ts +5 -0
- package/dist/index.cjs +7 -7
- package/dist/index.js +364 -279
- package/dist/platform/ui.d.ts +10 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,31 +1,102 @@
|
|
|
1
|
-
|
|
1
|
+
const _e = 10, Te = 10, Me = 10, Se = 5, x = /* @__PURE__ */ new Set([
|
|
2
|
+
"header",
|
|
3
|
+
"section",
|
|
4
|
+
"context",
|
|
5
|
+
"divider",
|
|
6
|
+
"image",
|
|
7
|
+
"list",
|
|
8
|
+
"actions",
|
|
9
|
+
"attachments"
|
|
10
|
+
]);
|
|
11
|
+
function m(e) {
|
|
12
|
+
if (typeof e == "string") return e.length > 0;
|
|
13
|
+
if (!e || typeof e != "object") return !1;
|
|
14
|
+
const n = e;
|
|
15
|
+
return typeof n.key == "string" || typeof n.value == "string";
|
|
16
|
+
}
|
|
17
|
+
function Ce(e, n = () => {
|
|
18
|
+
}) {
|
|
19
|
+
if (!Array.isArray(e)) return [];
|
|
20
|
+
const t = [];
|
|
21
|
+
for (const i of e) {
|
|
22
|
+
if (t.length >= 10) {
|
|
23
|
+
n("more than 10 blocks; the rest was dropped");
|
|
24
|
+
break;
|
|
25
|
+
}
|
|
26
|
+
if (!i || typeof i != "object") continue;
|
|
27
|
+
const a = i;
|
|
28
|
+
if (!x.has(a.type)) {
|
|
29
|
+
n("unknown block type " + String(a.type));
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
switch (a.type) {
|
|
33
|
+
case "header":
|
|
34
|
+
if (!m(a.text)) {
|
|
35
|
+
n("a header without text");
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
break;
|
|
39
|
+
case "context":
|
|
40
|
+
if (!m(a.text)) {
|
|
41
|
+
n("a context block without text");
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
break;
|
|
45
|
+
case "image":
|
|
46
|
+
if (!a.url || !a.alt) {
|
|
47
|
+
n("an image without url or alt");
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
break;
|
|
51
|
+
case "section":
|
|
52
|
+
Array.isArray(a.fields) && a.fields.length > 10 && (n("more than 10 fields in a section"), a.fields = a.fields.slice(0, 10));
|
|
53
|
+
break;
|
|
54
|
+
case "list":
|
|
55
|
+
if (!Array.isArray(a.items) || a.items.length === 0) {
|
|
56
|
+
n("a list without items");
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
a.items.length > 10 && (n("more than 10 list items"), a.items = a.items.slice(0, 10));
|
|
60
|
+
break;
|
|
61
|
+
case "actions": {
|
|
62
|
+
const r = Array.isArray(a.elements) ? a.elements : [], o = r.filter((s) => s && s.action_id && s.invoke && m(s.text));
|
|
63
|
+
if (o.length !== r.length && n("an action without action_id, invoke or text"), o.length === 0) continue;
|
|
64
|
+
o.length > 5 && n("more than 5 actions"), a.elements = o.slice(0, 5);
|
|
65
|
+
break;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
t.push(a);
|
|
69
|
+
}
|
|
70
|
+
return t;
|
|
71
|
+
}
|
|
72
|
+
function U(e) {
|
|
2
73
|
return e.replace(/<style[\s\S]*?<\/style>/gi, " ").replace(/<script[\s\S]*?<\/script>/gi, " ").replace(/<[^>]+>/g, " ").replace(/ /g, " ").replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, '"').replace(/'/g, "'").replace(/\s+/g, " ").trim();
|
|
3
74
|
}
|
|
4
|
-
function
|
|
75
|
+
function u(e) {
|
|
5
76
|
if (!e || e < 0) return "";
|
|
6
77
|
const n = Math.floor(e / 60), t = Math.floor(e % 60);
|
|
7
78
|
return `${n}:${t.toString().padStart(2, "0")}`;
|
|
8
79
|
}
|
|
9
|
-
function
|
|
80
|
+
function A(e) {
|
|
10
81
|
return e ? ` — ${Math.floor(e / 60)}m ${e % 60}s` : "";
|
|
11
82
|
}
|
|
12
|
-
function
|
|
83
|
+
function f(e) {
|
|
13
84
|
return e?.split("@")?.[0] || e || "";
|
|
14
85
|
}
|
|
15
|
-
function
|
|
86
|
+
function p(e) {
|
|
16
87
|
return e.map((n) => n.name).join(", ");
|
|
17
88
|
}
|
|
18
|
-
function
|
|
89
|
+
function I(e) {
|
|
19
90
|
return e === "meeting" ? "Meeting" : e === "video" ? "Video call" : "Audio call";
|
|
20
91
|
}
|
|
21
|
-
const
|
|
92
|
+
const c = {
|
|
22
93
|
/* ---- voice ---- */
|
|
23
94
|
VOICE_CALL_STARTED: {
|
|
24
95
|
shape: "event",
|
|
25
96
|
channelKind: "voice",
|
|
26
97
|
icon: "phone",
|
|
27
98
|
snippet: () => "Gesprek gestart",
|
|
28
|
-
timeline: (e) => e.direction === "inbound" ? `Inbound call started — ${
|
|
99
|
+
timeline: (e) => e.direction === "inbound" ? `Inbound call started — ${f(e.payload.from)}` : `Outbound call started — ${f(e.payload.to)}`
|
|
29
100
|
},
|
|
30
101
|
VOICE_CALL_ANSWERED: {
|
|
31
102
|
shape: "event",
|
|
@@ -51,15 +122,15 @@ const s = {
|
|
|
51
122
|
shape: "event",
|
|
52
123
|
channelKind: "voice",
|
|
53
124
|
icon: "phone",
|
|
54
|
-
snippet: (e) => `Gesprek beëindigd${e.payload.duration ? ` (${
|
|
55
|
-
timeline: (e) => `Call ended${
|
|
125
|
+
snippet: (e) => `Gesprek beëindigd${e.payload.duration ? ` (${u(e.payload.duration)})` : ""}`,
|
|
126
|
+
timeline: (e) => `Call ended${A(e.payload.duration)}`
|
|
56
127
|
},
|
|
57
128
|
VOICE_CALL_MISSED: {
|
|
58
129
|
shape: "event",
|
|
59
130
|
channelKind: "voice",
|
|
60
131
|
icon: "phone",
|
|
61
132
|
snippet: () => "Gemiste oproep",
|
|
62
|
-
timeline: (e) => `Missed call — ${
|
|
133
|
+
timeline: (e) => `Missed call — ${f(e.payload.from)}`
|
|
63
134
|
},
|
|
64
135
|
VOICE_CALL_FAILED: {
|
|
65
136
|
shape: "event",
|
|
@@ -105,7 +176,7 @@ const s = {
|
|
|
105
176
|
shape: "event",
|
|
106
177
|
channelKind: "video",
|
|
107
178
|
icon: "video",
|
|
108
|
-
snippet: (e) => `Gesprek beëindigd${e.payload.duration ? ` (${
|
|
179
|
+
snippet: (e) => `Gesprek beëindigd${e.payload.duration ? ` (${u(e.payload.duration)})` : ""}`,
|
|
109
180
|
timeline: () => "Video call ended"
|
|
110
181
|
},
|
|
111
182
|
VIDEO_CALL_MISSED: {
|
|
@@ -133,7 +204,7 @@ const s = {
|
|
|
133
204
|
replyable: !0,
|
|
134
205
|
carriesText: !0,
|
|
135
206
|
countsAs: "inbound_message",
|
|
136
|
-
snippet:
|
|
207
|
+
snippet: _
|
|
137
208
|
},
|
|
138
209
|
EMAIL_SENT: {
|
|
139
210
|
shape: "message",
|
|
@@ -143,7 +214,7 @@ const s = {
|
|
|
143
214
|
replyable: !0,
|
|
144
215
|
carriesText: !0,
|
|
145
216
|
countsAs: "outbound_message",
|
|
146
|
-
snippet:
|
|
217
|
+
snippet: _
|
|
147
218
|
},
|
|
148
219
|
/* ---- chat ---- */
|
|
149
220
|
CHAT_MESSAGE_SENT: {
|
|
@@ -172,9 +243,9 @@ const s = {
|
|
|
172
243
|
shape: "event",
|
|
173
244
|
channelKind: "chat",
|
|
174
245
|
icon: "message-circle",
|
|
175
|
-
snippet: (e) => `${
|
|
246
|
+
snippet: (e) => `${p(e.payload.members)} toegevoegd`,
|
|
176
247
|
timeline: (e) => {
|
|
177
|
-
const n =
|
|
248
|
+
const n = p(e.payload.members) || "Someone", t = e.payload.initiator?.name ? ` · added by ${e.payload.initiator.name}` : "";
|
|
178
249
|
return `${n} joined the chat${t}`;
|
|
179
250
|
}
|
|
180
251
|
},
|
|
@@ -182,9 +253,9 @@ const s = {
|
|
|
182
253
|
shape: "event",
|
|
183
254
|
channelKind: "chat",
|
|
184
255
|
icon: "message-circle",
|
|
185
|
-
snippet: (e) => `${
|
|
256
|
+
snippet: (e) => `${p(e.payload.members)} verlaten`,
|
|
186
257
|
timeline: (e) => {
|
|
187
|
-
const n =
|
|
258
|
+
const n = p(e.payload.members) || "Someone", t = e.payload.initiator?.name ? ` · removed by ${e.payload.initiator.name}` : "";
|
|
188
259
|
return `${n} left the chat${t}`;
|
|
189
260
|
}
|
|
190
261
|
},
|
|
@@ -200,15 +271,15 @@ const s = {
|
|
|
200
271
|
channelKind: "chat",
|
|
201
272
|
icon: "message-circle",
|
|
202
273
|
snippet: () => "Gesprek gestart",
|
|
203
|
-
timeline: (e) => `${
|
|
274
|
+
timeline: (e) => `${I(e.payload.callType)} started${e.payload.initiator ? ` by ${e.payload.initiator.name}` : ""}`,
|
|
204
275
|
joinUrl: (e) => e.payload.joinUrl
|
|
205
276
|
},
|
|
206
277
|
CHAT_CALL_ENDED: {
|
|
207
278
|
shape: "event",
|
|
208
279
|
channelKind: "chat",
|
|
209
280
|
icon: "message-circle",
|
|
210
|
-
snippet: (e) => `Gesprek beëindigd${e.payload.duration ? ` (${
|
|
211
|
-
timeline: (e) => `${
|
|
281
|
+
snippet: (e) => `Gesprek beëindigd${e.payload.duration ? ` (${u(e.payload.duration)})` : ""}`,
|
|
282
|
+
timeline: (e) => `${I(e.payload.callType)} ended${A(e.payload.duration)}`,
|
|
212
283
|
joinUrl: (e) => e.payload.joinUrl
|
|
213
284
|
},
|
|
214
285
|
CHAT_EVENT: {
|
|
@@ -296,7 +367,7 @@ const s = {
|
|
|
296
367
|
MEETING_ENDED: {
|
|
297
368
|
shape: "event",
|
|
298
369
|
icon: "calendar",
|
|
299
|
-
snippet: (e) => `Vergadering beëindigd${e.payload.duration ? ` (${
|
|
370
|
+
snippet: (e) => `Vergadering beëindigd${e.payload.duration ? ` (${u(e.payload.duration)})` : ""}`,
|
|
300
371
|
timeline: () => "Meeting ended"
|
|
301
372
|
},
|
|
302
373
|
MEETING_PARTICIPANT_JOINED: {
|
|
@@ -333,48 +404,48 @@ const s = {
|
|
|
333
404
|
timeline: (e, n) => `Assigned by ${n}`
|
|
334
405
|
}
|
|
335
406
|
};
|
|
336
|
-
function
|
|
337
|
-
const n = e.payload, t = n.bodySnippet?.trim() ||
|
|
407
|
+
function _(e) {
|
|
408
|
+
const n = e.payload, t = n.bodySnippet?.trim() || U(n.body ?? "");
|
|
338
409
|
return n.subject ? `${n.subject} — ${t}` : t;
|
|
339
410
|
}
|
|
340
411
|
function l(e) {
|
|
341
|
-
return
|
|
412
|
+
return c[e];
|
|
342
413
|
}
|
|
343
|
-
function
|
|
414
|
+
function ve(e) {
|
|
344
415
|
return l(e)?.icon ?? "circle";
|
|
345
416
|
}
|
|
346
|
-
function
|
|
417
|
+
function Ne(e) {
|
|
347
418
|
return l(e)?.channelKind;
|
|
348
419
|
}
|
|
349
|
-
function
|
|
420
|
+
function Oe(e) {
|
|
350
421
|
const n = l(e)?.shape;
|
|
351
422
|
return n === "message" || n === "note";
|
|
352
423
|
}
|
|
353
|
-
function
|
|
424
|
+
function ke(e) {
|
|
354
425
|
return l(e)?.replyable === !0;
|
|
355
426
|
}
|
|
356
|
-
function
|
|
427
|
+
function De(e) {
|
|
357
428
|
return l(e)?.carriesText === !0;
|
|
358
429
|
}
|
|
359
|
-
function
|
|
430
|
+
function Le(e) {
|
|
360
431
|
return l(e)?.countsAs;
|
|
361
432
|
}
|
|
362
|
-
function
|
|
433
|
+
function Re(e) {
|
|
363
434
|
return l(e)?.playbookAuthored === !0;
|
|
364
435
|
}
|
|
365
|
-
function
|
|
436
|
+
function P(e) {
|
|
366
437
|
const n = l(e.type)?.snippet;
|
|
367
438
|
return n ? n(e) : "";
|
|
368
439
|
}
|
|
369
|
-
function
|
|
440
|
+
function $e(e, n) {
|
|
370
441
|
const t = l(e.type)?.timeline;
|
|
371
442
|
return t ? t(e, n) : e.type.replace(/_/g, " ").toLowerCase();
|
|
372
443
|
}
|
|
373
|
-
function
|
|
444
|
+
function xe(e) {
|
|
374
445
|
const n = l(e.type)?.joinUrl;
|
|
375
446
|
return n ? n(e) : void 0;
|
|
376
447
|
}
|
|
377
|
-
function
|
|
448
|
+
function h(e, n) {
|
|
378
449
|
let t = e;
|
|
379
450
|
for (const i of n.split(".")) {
|
|
380
451
|
if (t == null || typeof t != "object") return "";
|
|
@@ -382,27 +453,27 @@ function g(e, n) {
|
|
|
382
453
|
}
|
|
383
454
|
return t == null ? "" : typeof t == "string" ? t : typeof t == "number" || typeof t == "boolean" ? String(t) : "";
|
|
384
455
|
}
|
|
385
|
-
function
|
|
456
|
+
function y(e, n, t) {
|
|
386
457
|
if (e === void 0) return null;
|
|
387
458
|
if (typeof e == "string") return e || null;
|
|
388
459
|
if ("value" in e)
|
|
389
|
-
return
|
|
460
|
+
return h(n, e.value) || null;
|
|
390
461
|
const i = {};
|
|
391
462
|
for (const [r, o] of Object.entries(e.params ?? {}))
|
|
392
|
-
i[r] =
|
|
463
|
+
i[r] = h(n, o);
|
|
393
464
|
const a = t(e.key, i);
|
|
394
465
|
return a === e.key ? null : a;
|
|
395
466
|
}
|
|
396
|
-
function
|
|
467
|
+
function w(e, n) {
|
|
397
468
|
if (!e || typeof e == "string" || "value" in e) return null;
|
|
398
469
|
const t = {};
|
|
399
470
|
for (const [i, a] of Object.entries(e.params ?? {}))
|
|
400
|
-
t[i] =
|
|
471
|
+
t[i] = h(n, a);
|
|
401
472
|
return { key: e.key, params: t };
|
|
402
473
|
}
|
|
403
|
-
const
|
|
404
|
-
function
|
|
405
|
-
const n =
|
|
474
|
+
const K = (e) => e;
|
|
475
|
+
function T(e) {
|
|
476
|
+
const n = c[e];
|
|
406
477
|
return {
|
|
407
478
|
type: e,
|
|
408
479
|
shape: n.shape,
|
|
@@ -417,7 +488,7 @@ function _(e) {
|
|
|
417
488
|
displayNameKey: n.displayNameKey
|
|
418
489
|
};
|
|
419
490
|
}
|
|
420
|
-
function
|
|
491
|
+
function M(e) {
|
|
421
492
|
return {
|
|
422
493
|
type: e.type,
|
|
423
494
|
shape: e.shape,
|
|
@@ -432,21 +503,21 @@ function T(e) {
|
|
|
432
503
|
displayNameKey: e.displayNameKey
|
|
433
504
|
};
|
|
434
505
|
}
|
|
435
|
-
class
|
|
436
|
-
constructor(n = [], t =
|
|
506
|
+
class G {
|
|
507
|
+
constructor(n = [], t = K) {
|
|
437
508
|
this.translate = t;
|
|
438
509
|
for (const i of n)
|
|
439
|
-
i?.type && (i.type in
|
|
510
|
+
i?.type && (i.type in c || this.declared.has(i.type) || this.declared.set(i.type, i));
|
|
440
511
|
}
|
|
441
512
|
declared = /* @__PURE__ */ new Map();
|
|
442
513
|
get(n) {
|
|
443
|
-
if (n in
|
|
514
|
+
if (n in c) return T(n);
|
|
444
515
|
const t = this.declared.get(n);
|
|
445
|
-
return t ?
|
|
516
|
+
return t ? M(t) : void 0;
|
|
446
517
|
}
|
|
447
518
|
/** Alles wat als trigger aangeboden mag worden, ingebouwd en gedeclareerd. */
|
|
448
519
|
triggerable() {
|
|
449
|
-
const n = Object.keys(
|
|
520
|
+
const n = Object.keys(c).filter((i) => c[i].triggerable).map(T), t = [...this.declared.values()].map(M).filter((i) => i.triggerable);
|
|
450
521
|
return [...n, ...t];
|
|
451
522
|
}
|
|
452
523
|
/**
|
|
@@ -455,50 +526,59 @@ class K {
|
|
|
455
526
|
* typenaam — dezelfde regel die de feed altijd al toonde voor onbekende types.
|
|
456
527
|
*/
|
|
457
528
|
timelineText(n, t) {
|
|
458
|
-
const i =
|
|
529
|
+
const i = c[n.type];
|
|
459
530
|
if (i?.timeline) return i.timeline(n, t);
|
|
460
531
|
const a = this.declared.get(n.type);
|
|
461
|
-
return
|
|
532
|
+
return y(a?.text, n, this.translate) ?? n.type.replace(/_/g, " ").toLowerCase();
|
|
462
533
|
}
|
|
463
534
|
/** De regel voor de inboxlijst. Leeg wanneer het type niets te tonen heeft. */
|
|
464
535
|
snippet(n) {
|
|
465
|
-
const t =
|
|
536
|
+
const t = c[n.type];
|
|
466
537
|
if (t?.snippet) return t.snippet(n);
|
|
467
538
|
const i = this.declared.get(n.type);
|
|
468
|
-
return
|
|
539
|
+
return y(i?.text, n, this.translate) ?? "";
|
|
469
540
|
}
|
|
470
541
|
/** De descriptor zoals hij binnenkwam; nodig om `text` als sleutel op te slaan. */
|
|
471
542
|
descriptor(n) {
|
|
472
543
|
return this.declared.get(n);
|
|
473
544
|
}
|
|
545
|
+
/** De declaratieve blokken van een type, als het er heeft. */
|
|
546
|
+
blocks(n) {
|
|
547
|
+
const t = this.declared.get(n)?.render;
|
|
548
|
+
return t?.length ? t : void 0;
|
|
549
|
+
}
|
|
550
|
+
/** De vertaler die bij deze registry hoort, voor het oplossen van blokteksten. */
|
|
551
|
+
get translator() {
|
|
552
|
+
return this.translate;
|
|
553
|
+
}
|
|
474
554
|
}
|
|
475
|
-
const
|
|
476
|
-
function
|
|
555
|
+
const Ue = new G(), S = 140;
|
|
556
|
+
function V(e) {
|
|
477
557
|
const n = e.trim();
|
|
478
|
-
return n.length <=
|
|
558
|
+
return n.length <= S ? n : n.slice(0, S - 1).trimEnd() + "…";
|
|
479
559
|
}
|
|
480
|
-
function
|
|
481
|
-
const t =
|
|
560
|
+
function Pe(e, n) {
|
|
561
|
+
const t = w(n?.text, e), i = n ? y(n.text, e, (a) => a) : null;
|
|
482
562
|
return {
|
|
483
563
|
activityId: e.id,
|
|
484
564
|
type: e.type,
|
|
485
|
-
snippet:
|
|
565
|
+
snippet: V(i ?? P(e)),
|
|
486
566
|
authorName: e.author?.name ?? "",
|
|
487
567
|
direction: e.direction,
|
|
488
568
|
createdAt: e.createdAt ?? Date.now(),
|
|
489
569
|
...t ? { snippetKey: t.key, snippetParams: t.params } : {}
|
|
490
570
|
};
|
|
491
571
|
}
|
|
492
|
-
function
|
|
572
|
+
function we(e, n, t = []) {
|
|
493
573
|
const i = e.createdAt;
|
|
494
574
|
if (!i) return [];
|
|
495
575
|
const a = new Set(t);
|
|
496
576
|
return e.author.type === "user" && e.author.id && a.add(e.author.id), Object.entries(n).filter(([r, o]) => o >= i && !a.has(r)).map(([r]) => r);
|
|
497
577
|
}
|
|
498
|
-
function
|
|
578
|
+
function Ke(e) {
|
|
499
579
|
return e.createdAt ?? 0;
|
|
500
580
|
}
|
|
501
|
-
const
|
|
581
|
+
const Ge = [
|
|
502
582
|
{ id: "agent", label: "Agent", labelSource: "user" },
|
|
503
583
|
{ id: "team", label: "Team", labelSource: "team" },
|
|
504
584
|
{ id: "inbox", label: "Inbox", labelSource: "inbox" },
|
|
@@ -508,57 +588,57 @@ const Re = [
|
|
|
508
588
|
{ id: "handledBy", label: "Afhandelaar", labelSource: "raw" },
|
|
509
589
|
{ id: "time", label: "Tijd", labelSource: "raw" }
|
|
510
590
|
];
|
|
511
|
-
function
|
|
591
|
+
function Ve(e) {
|
|
512
592
|
const n = [];
|
|
513
593
|
for (const t of Object.keys(e))
|
|
514
594
|
for (const i of Object.keys(e[t]))
|
|
515
595
|
n.push({ lang: t, key: i, value: e[t][i] });
|
|
516
596
|
return n;
|
|
517
597
|
}
|
|
518
|
-
function
|
|
598
|
+
function g(e) {
|
|
519
599
|
return e < 10 ? `0${e}` : `${e}`;
|
|
520
600
|
}
|
|
521
|
-
function
|
|
522
|
-
const t = new Date(e), i = `${t.getUTCFullYear()}-${
|
|
523
|
-
return n === "day" ? i : `${i}T${
|
|
601
|
+
function H(e, n) {
|
|
602
|
+
const t = new Date(e), i = `${t.getUTCFullYear()}-${g(t.getUTCMonth() + 1)}-${g(t.getUTCDate())}`;
|
|
603
|
+
return n === "day" ? i : `${i}T${g(t.getUTCHours())}`;
|
|
524
604
|
}
|
|
525
|
-
function
|
|
605
|
+
function B(e, n) {
|
|
526
606
|
const t = new Date(e);
|
|
527
607
|
return t.setUTCMinutes(0, 0, 0), n === "day" && t.setUTCHours(0), t.getTime();
|
|
528
608
|
}
|
|
529
|
-
const
|
|
530
|
-
function
|
|
531
|
-
const i = t === "hour" ?
|
|
532
|
-
for (let r =
|
|
533
|
-
a.push(
|
|
609
|
+
const j = 36e5, F = 864e5;
|
|
610
|
+
function He(e, n, t) {
|
|
611
|
+
const i = t === "hour" ? j : F, a = [];
|
|
612
|
+
for (let r = B(e, t); r <= n; r += i)
|
|
613
|
+
a.push(H(r, t));
|
|
534
614
|
return a;
|
|
535
615
|
}
|
|
536
|
-
const
|
|
616
|
+
const X = [
|
|
537
617
|
{ id: "resource", label: "Resource", labelSource: "raw" },
|
|
538
618
|
{ id: "origin", label: "Herkomst", labelSource: "raw" }
|
|
539
|
-
],
|
|
540
|
-
function
|
|
619
|
+
], W = X.map((e) => e.id);
|
|
620
|
+
function Y(e, n) {
|
|
541
621
|
return `${e}.usage.${n}`;
|
|
542
622
|
}
|
|
543
|
-
function
|
|
623
|
+
function Be(e, n) {
|
|
544
624
|
return n.map((t) => ({
|
|
545
|
-
id:
|
|
625
|
+
id: Y(e, t.unit),
|
|
546
626
|
label: t.label,
|
|
547
627
|
category: "Verbruik",
|
|
548
628
|
valueType: t.valueType ?? "count",
|
|
549
629
|
aggregation: "sum",
|
|
550
630
|
supportedDimensions: [
|
|
551
631
|
"provider",
|
|
552
|
-
...
|
|
632
|
+
...W,
|
|
553
633
|
...t.extraDimensions ?? [],
|
|
554
634
|
"time"
|
|
555
635
|
]
|
|
556
636
|
}));
|
|
557
637
|
}
|
|
558
|
-
function
|
|
638
|
+
function je(e) {
|
|
559
639
|
return (e.startsWith("tool:") ? e.slice(5) : e).replace(/__/g, " · ").replace(/\./g, " · ").replace(/_/g, " ");
|
|
560
640
|
}
|
|
561
|
-
const
|
|
641
|
+
const Fe = [
|
|
562
642
|
{ name: "text", type: "string" },
|
|
563
643
|
{ name: "subject", type: "string" },
|
|
564
644
|
{ name: "from", type: "string" },
|
|
@@ -581,7 +661,7 @@ const Ke = [
|
|
|
581
661
|
// een nieuw adres) — een stap die hierop leunt hoort dus een `condition` te hebben.
|
|
582
662
|
{ name: "contactId", type: "string" },
|
|
583
663
|
{ name: "companyId", type: "string" }
|
|
584
|
-
],
|
|
664
|
+
], Xe = {
|
|
585
665
|
topics: [
|
|
586
666
|
{ name: "topic", type: "string" },
|
|
587
667
|
{ name: "confidence", type: "number" }
|
|
@@ -592,7 +672,7 @@ const Ke = [
|
|
|
592
672
|
],
|
|
593
673
|
extract: []
|
|
594
674
|
};
|
|
595
|
-
function
|
|
675
|
+
function z(e) {
|
|
596
676
|
switch (e.kind) {
|
|
597
677
|
case "user":
|
|
598
678
|
return `user:${e.userId}`;
|
|
@@ -602,7 +682,7 @@ function Y(e) {
|
|
|
602
682
|
return "org";
|
|
603
683
|
}
|
|
604
684
|
}
|
|
605
|
-
function
|
|
685
|
+
function We(e) {
|
|
606
686
|
if (typeof e != "string") return;
|
|
607
687
|
const n = e.trim();
|
|
608
688
|
if (n === "org") return { kind: "org" };
|
|
@@ -614,10 +694,10 @@ function we(e) {
|
|
|
614
694
|
if (i === "team") return { kind: "team", teamId: a };
|
|
615
695
|
}
|
|
616
696
|
}
|
|
617
|
-
function
|
|
618
|
-
return
|
|
697
|
+
function q(e) {
|
|
698
|
+
return z(e);
|
|
619
699
|
}
|
|
620
|
-
function
|
|
700
|
+
function Ye(e) {
|
|
621
701
|
switch (e.kind) {
|
|
622
702
|
case "personal":
|
|
623
703
|
return { kind: "user", userId: e.userId };
|
|
@@ -627,20 +707,20 @@ function Ve(e) {
|
|
|
627
707
|
return { kind: "org" };
|
|
628
708
|
}
|
|
629
709
|
}
|
|
630
|
-
function
|
|
631
|
-
return
|
|
710
|
+
function ze(e) {
|
|
711
|
+
return q(e);
|
|
632
712
|
}
|
|
633
|
-
const
|
|
634
|
-
function
|
|
635
|
-
return
|
|
713
|
+
const J = ["done", "escalated", "failed", "timed_out", "stopped"], Q = ["awaiting_approval", "awaiting_reply"];
|
|
714
|
+
function Z(e) {
|
|
715
|
+
return J.includes(e);
|
|
636
716
|
}
|
|
637
|
-
function
|
|
638
|
-
return
|
|
717
|
+
function qe(e) {
|
|
718
|
+
return Z(e);
|
|
639
719
|
}
|
|
640
|
-
function
|
|
641
|
-
return
|
|
720
|
+
function Je(e) {
|
|
721
|
+
return Q.includes(e);
|
|
642
722
|
}
|
|
643
|
-
const
|
|
723
|
+
const R = [
|
|
644
724
|
{
|
|
645
725
|
id: "openai",
|
|
646
726
|
label: "OpenAI",
|
|
@@ -729,52 +809,52 @@ const k = [
|
|
|
729
809
|
}
|
|
730
810
|
];
|
|
731
811
|
function E(e) {
|
|
732
|
-
return
|
|
812
|
+
return R.find((n) => n.id === e);
|
|
733
813
|
}
|
|
734
|
-
function
|
|
814
|
+
function Qe(e) {
|
|
735
815
|
return E(e)?.label ?? e;
|
|
736
816
|
}
|
|
737
|
-
function
|
|
817
|
+
function Ze(e, n = "gpt-5-mini") {
|
|
738
818
|
return E(e)?.defaultModel ?? n;
|
|
739
819
|
}
|
|
740
|
-
function
|
|
741
|
-
return
|
|
820
|
+
function en(e) {
|
|
821
|
+
return R.filter((n) => n.capabilities.includes(e));
|
|
742
822
|
}
|
|
743
|
-
function
|
|
823
|
+
function nn(e) {
|
|
744
824
|
const n = E(e);
|
|
745
825
|
return !!n && !n.baseUrl;
|
|
746
826
|
}
|
|
747
|
-
const
|
|
748
|
-
function
|
|
827
|
+
const tn = /* @__PURE__ */ new Set(["mail", "message"]);
|
|
828
|
+
function ee(e, n) {
|
|
749
829
|
const t = e.settings?.signatures?.[n];
|
|
750
830
|
return !t || !t.enabled || !t.body || t.body.trim() === "" ? null : t;
|
|
751
831
|
}
|
|
752
|
-
function
|
|
832
|
+
function an(e, n, t, i = "html") {
|
|
753
833
|
if (!e) return t;
|
|
754
|
-
const a =
|
|
834
|
+
const a = ee(e, n);
|
|
755
835
|
return a ? `${t}${i === "text" ? `
|
|
756
836
|
|
|
757
837
|
` : n === "mail" ? "<br><br>-- <br>" : "<br><br>"}${a.body}` : t;
|
|
758
838
|
}
|
|
759
|
-
function
|
|
839
|
+
function rn(e) {
|
|
760
840
|
return e.endpoints ?? [];
|
|
761
841
|
}
|
|
762
|
-
const
|
|
842
|
+
const on = (e) => !!e.assignedUserId || !!e.assignedInboxId, sn = (e) => e.status === "closed", ln = (e) => ({
|
|
763
843
|
urgent: 10,
|
|
764
844
|
high: 5,
|
|
765
845
|
normal: 2,
|
|
766
846
|
low: 1
|
|
767
|
-
})[e.priority] || 0,
|
|
768
|
-
function
|
|
847
|
+
})[e.priority] || 0, cn = (e, n = 30) => e.title?.length <= n ? e.title : `${e.title.substring(0, n)}...`;
|
|
848
|
+
function un(e, n) {
|
|
769
849
|
return e.lastActivityAt ? !(e.seenBy ?? []).includes(n) : !1;
|
|
770
850
|
}
|
|
771
|
-
const
|
|
772
|
-
function
|
|
851
|
+
const pn = 2e3, dn = 500, mn = 12e3, fn = 4e3, ne = ["contact", "company"];
|
|
852
|
+
function gn(e) {
|
|
773
853
|
if (!e) return !1;
|
|
774
854
|
const n = e.slice(0, e.indexOf(":"));
|
|
775
|
-
return
|
|
855
|
+
return ne.includes(n);
|
|
776
856
|
}
|
|
777
|
-
const
|
|
857
|
+
const b = {
|
|
778
858
|
// The lower bounds are deliberately generous: service ranges (0800/0900) are
|
|
779
859
|
// shorter than geographic numbers, and a too-strict minimum silently drops them.
|
|
780
860
|
// An over-permissive key is harmless — it simply matches nothing.
|
|
@@ -797,81 +877,81 @@ const y = {
|
|
|
797
877
|
PL: { callingCode: "48", nsnMin: 9, nsnMax: 9 },
|
|
798
878
|
US: { callingCode: "1", nsnMin: 10, nsnMax: 10 },
|
|
799
879
|
CA: { callingCode: "1", nsnMin: 10, nsnMax: 10 }
|
|
800
|
-
},
|
|
801
|
-
new Set(Object.values(
|
|
880
|
+
}, te = "NL", ie = 15, ae = 8, re = Array.from(
|
|
881
|
+
new Set(Object.values(b).map((e) => e.callingCode))
|
|
802
882
|
).sort((e, n) => n.length - e.length);
|
|
803
|
-
function
|
|
883
|
+
function C(e) {
|
|
804
884
|
if (e)
|
|
805
|
-
return
|
|
885
|
+
return b[e.trim().toUpperCase()];
|
|
806
886
|
}
|
|
807
887
|
function d(e, n) {
|
|
808
888
|
return e.length >= n.nsnMin && e.length <= n.nsnMax;
|
|
809
889
|
}
|
|
810
890
|
function v(e) {
|
|
811
|
-
if (e.length >
|
|
812
|
-
for (const n of
|
|
891
|
+
if (e.length > ie) return null;
|
|
892
|
+
for (const n of re) {
|
|
813
893
|
if (!e.startsWith(n)) continue;
|
|
814
894
|
const t = e.slice(n.length);
|
|
815
|
-
for (const i of Object.values(
|
|
895
|
+
for (const i of Object.values(b)) {
|
|
816
896
|
if (i.callingCode !== n) continue;
|
|
817
897
|
const a = i.trunkPrefix, r = a && t.startsWith(a) ? t.slice(a.length) : t;
|
|
818
898
|
if (d(r, i)) return `+${n}${r}`;
|
|
819
899
|
}
|
|
820
900
|
return null;
|
|
821
901
|
}
|
|
822
|
-
return e.length <
|
|
902
|
+
return e.length < ae ? null : `+${e}`;
|
|
823
903
|
}
|
|
824
|
-
function
|
|
904
|
+
function oe(e) {
|
|
825
905
|
let n = e.trim();
|
|
826
906
|
const t = n.match(/^(sips?|tel|whatsapp):/i);
|
|
827
907
|
t && (n = n.slice(t[0].length));
|
|
828
908
|
const i = n.indexOf("@");
|
|
829
909
|
return i >= 0 && (n = n.slice(0, i)), n.trim();
|
|
830
910
|
}
|
|
831
|
-
function
|
|
911
|
+
function hn(e) {
|
|
832
912
|
if (!e) return !1;
|
|
833
913
|
const n = e.indexOf("@");
|
|
834
914
|
if (n <= 0) return !1;
|
|
835
915
|
const t = e.slice(0, n).trim();
|
|
836
916
|
return !/^[+\d\s().-]+$/.test(t);
|
|
837
917
|
}
|
|
838
|
-
function
|
|
918
|
+
function N(e, n) {
|
|
839
919
|
if (!e) return null;
|
|
840
|
-
const t =
|
|
920
|
+
const t = oe(e);
|
|
841
921
|
if (!t) return null;
|
|
842
922
|
const i = t.startsWith("+"), a = t.replace(/\D/g, "");
|
|
843
923
|
if (!a) return null;
|
|
844
924
|
if (i) return v(a);
|
|
845
925
|
if (a.startsWith("00")) return v(a.slice(2));
|
|
846
|
-
const r =
|
|
926
|
+
const r = C(n) ?? C(te);
|
|
847
927
|
if (!r) return null;
|
|
848
928
|
const o = r.trunkPrefix;
|
|
849
929
|
if (o && a.startsWith(o)) {
|
|
850
|
-
const
|
|
851
|
-
return d(
|
|
930
|
+
const s = a.slice(o.length);
|
|
931
|
+
return d(s, r) ? `+${r.callingCode}${s}` : null;
|
|
852
932
|
}
|
|
853
933
|
if (a.startsWith(r.callingCode)) {
|
|
854
|
-
const
|
|
855
|
-
if (d(
|
|
934
|
+
const s = a.slice(r.callingCode.length);
|
|
935
|
+
if (d(s, r)) return `+${r.callingCode}${s}`;
|
|
856
936
|
}
|
|
857
937
|
return !o && d(a, r) ? `+${r.callingCode}${a}` : null;
|
|
858
938
|
}
|
|
859
|
-
function
|
|
939
|
+
function yn(e, n = 9) {
|
|
860
940
|
const t = (e ?? "").replace(/\D/g, "");
|
|
861
941
|
return t.length < n ? null : t.slice(-n);
|
|
862
942
|
}
|
|
863
|
-
function
|
|
943
|
+
function $(e) {
|
|
864
944
|
if (!e) return null;
|
|
865
945
|
const n = e.trim().toLowerCase(), t = n.lastIndexOf("@");
|
|
866
946
|
if (t <= 0 || t === n.length - 1) return null;
|
|
867
947
|
const i = n.slice(0, t).split("+")[0], a = n.slice(t + 1);
|
|
868
948
|
return !i || !a.includes(".") ? null : `${i}@${a}`;
|
|
869
949
|
}
|
|
870
|
-
function
|
|
871
|
-
const n =
|
|
950
|
+
function En(e) {
|
|
951
|
+
const n = $(e);
|
|
872
952
|
return n ? n.slice(n.lastIndexOf("@") + 1) : null;
|
|
873
953
|
}
|
|
874
|
-
const
|
|
954
|
+
const se = /* @__PURE__ */ new Set([
|
|
875
955
|
"co.uk",
|
|
876
956
|
"org.uk",
|
|
877
957
|
"gov.uk",
|
|
@@ -881,14 +961,14 @@ const re = /* @__PURE__ */ new Set([
|
|
|
881
961
|
"com.br",
|
|
882
962
|
"co.za"
|
|
883
963
|
]);
|
|
884
|
-
function
|
|
964
|
+
function le(e) {
|
|
885
965
|
if (!e) return null;
|
|
886
966
|
const n = e.trim().toLowerCase().replace(/\.$/, "").split(".").filter(Boolean);
|
|
887
967
|
if (n.length < 2) return null;
|
|
888
968
|
const t = n.slice(-2).join(".");
|
|
889
|
-
return
|
|
969
|
+
return se.has(t) && n.length >= 3 ? n.slice(-3).join(".") : t;
|
|
890
970
|
}
|
|
891
|
-
const
|
|
971
|
+
const ce = /* @__PURE__ */ new Set([
|
|
892
972
|
"gmail.com",
|
|
893
973
|
"googlemail.com",
|
|
894
974
|
"outlook.com",
|
|
@@ -933,34 +1013,34 @@ const le = /* @__PURE__ */ new Set([
|
|
|
933
1013
|
"proximus.be",
|
|
934
1014
|
"scarlet.be"
|
|
935
1015
|
]);
|
|
936
|
-
function
|
|
937
|
-
const n =
|
|
938
|
-
return n ?
|
|
1016
|
+
function bn(e) {
|
|
1017
|
+
const n = le(e);
|
|
1018
|
+
return n ? ce.has(n) : !1;
|
|
939
1019
|
}
|
|
940
|
-
function
|
|
1020
|
+
function An(e) {
|
|
941
1021
|
if (!e) return !1;
|
|
942
1022
|
const n = e.trim().toLowerCase();
|
|
943
1023
|
return n === "tel" || n === "sms" || n === "whatsapp" || n === "fax";
|
|
944
1024
|
}
|
|
945
|
-
function
|
|
1025
|
+
function In(e, n, t) {
|
|
946
1026
|
if (!e || !n) return null;
|
|
947
1027
|
const i = e.trim().toLowerCase();
|
|
948
1028
|
if (i === "tel" || i === "sms" || i === "whatsapp") {
|
|
949
|
-
const r =
|
|
1029
|
+
const r = N(n, t);
|
|
950
1030
|
return r ? `tel:${r}` : null;
|
|
951
1031
|
}
|
|
952
1032
|
if (i === "fax") {
|
|
953
|
-
const r =
|
|
1033
|
+
const r = N(n, t);
|
|
954
1034
|
return r ? `fax:${r}` : null;
|
|
955
1035
|
}
|
|
956
1036
|
if (i === "mailto" || i === "email") {
|
|
957
|
-
const r =
|
|
1037
|
+
const r = $(n);
|
|
958
1038
|
return r ? `mailto:${r}` : null;
|
|
959
1039
|
}
|
|
960
1040
|
const a = n.trim().toLowerCase();
|
|
961
1041
|
return a ? `${i}:${a}` : null;
|
|
962
1042
|
}
|
|
963
|
-
const
|
|
1043
|
+
const ue = [
|
|
964
1044
|
/<blockquote/i,
|
|
965
1045
|
/class="?gmail_quote/i,
|
|
966
1046
|
// Gmail quote container
|
|
@@ -973,23 +1053,23 @@ const se = [
|
|
|
973
1053
|
// Outlook underscore separator before "From:"
|
|
974
1054
|
/\bOn\b[\s\S]{0,200}?\bwrote:/i
|
|
975
1055
|
// Gmail "On <date> <name> wrote:"
|
|
976
|
-
],
|
|
977
|
-
function
|
|
1056
|
+
], O = /^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i, pe = /^\s*(?:on|op)\b.{0,200}?\b(?:wrote|schreef|geschreven)\s*:?\s*$/i;
|
|
1057
|
+
function de(e) {
|
|
978
1058
|
const n = e.split(`
|
|
979
1059
|
`);
|
|
980
1060
|
for (let t = 0; t < n.length; t++)
|
|
981
|
-
if (
|
|
1061
|
+
if (pe.test(n[t]) || O.test(n[t]) && n.slice(t + 1, t + 4).some((i) => O.test(i)))
|
|
982
1062
|
return n.slice(0, t).join(`
|
|
983
1063
|
`).trim();
|
|
984
1064
|
return e;
|
|
985
1065
|
}
|
|
986
|
-
function
|
|
1066
|
+
function k(e) {
|
|
987
1067
|
let n = e;
|
|
988
1068
|
return n = n.replace(/<(script|style)[\s\S]*?<\/\1>/gi, ""), n = n.replace(/<br\s*\/?>/gi, `
|
|
989
1069
|
`), n = n.replace(/<\/(p|div|li|tr|h[1-6]|ul|ol|table)>/gi, `
|
|
990
1070
|
`), n = n.replace(/<[^>]+>/g, ""), n = n.replace(/<[^>]*$/, ""), n;
|
|
991
1071
|
}
|
|
992
|
-
function
|
|
1072
|
+
function D(e) {
|
|
993
1073
|
return e.replace(/ /gi, " ").replace(/</gi, "<").replace(/>/gi, ">").replace(/"/gi, '"').replace(/'/gi, "'").replace(/&#(\d+);/g, (n, t) => String.fromCharCode(Number(t))).replace(/&/gi, "&");
|
|
994
1074
|
}
|
|
995
1075
|
function L(e) {
|
|
@@ -998,34 +1078,34 @@ function L(e) {
|
|
|
998
1078
|
|
|
999
1079
|
`).trim();
|
|
1000
1080
|
}
|
|
1001
|
-
function
|
|
1081
|
+
function _n(e) {
|
|
1002
1082
|
if (typeof e != "string" || !e) return "";
|
|
1003
1083
|
let n = e.length;
|
|
1004
|
-
for (const r of
|
|
1084
|
+
for (const r of ue) {
|
|
1005
1085
|
const o = e.search(r);
|
|
1006
1086
|
o >= 0 && o < n && (n = o);
|
|
1007
1087
|
}
|
|
1008
1088
|
const t = e.slice(0, n);
|
|
1009
|
-
let i = L(
|
|
1010
|
-
return i || (i = L(
|
|
1089
|
+
let i = L(D(k(t)));
|
|
1090
|
+
return i || (i = L(D(k(e)))), de(i) || i;
|
|
1011
1091
|
}
|
|
1012
|
-
const
|
|
1013
|
-
function
|
|
1014
|
-
return !!(e &&
|
|
1092
|
+
const me = /(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|newsletter|nieuwsbrief|mailer|mailing|notifications?|bounce|postmaster|marketing)@/i, fe = /\b(unsubscribe|afmelden|uitschrijven|opt[\s-]?out|manage (your )?preferences|geen (e-?mails?|nieuwsbrief|berichten) meer)\b/i;
|
|
1093
|
+
function Tn(e, n) {
|
|
1094
|
+
return !!(e && me.test(e) || n && fe.test(n));
|
|
1015
1095
|
}
|
|
1016
|
-
const
|
|
1017
|
-
function
|
|
1018
|
-
return e >=
|
|
1096
|
+
const ge = 3, he = 600;
|
|
1097
|
+
function Mn(e, n) {
|
|
1098
|
+
return e >= ge || n >= he;
|
|
1019
1099
|
}
|
|
1020
|
-
function
|
|
1021
|
-
const t = new Set(e.disabledIntents ?? []), i = e.intentOverrides ?? {}, a = n.intents.filter((o) => !t.has(o.intent)).map((o) =>
|
|
1100
|
+
function ye(e, n) {
|
|
1101
|
+
const t = new Set(e.disabledIntents ?? []), i = e.intentOverrides ?? {}, a = n.intents.filter((o) => !t.has(o.intent)).map((o) => be(o, i[o.intent]));
|
|
1022
1102
|
if (!e.extraIntents || e.extraIntents.length === 0) return a;
|
|
1023
1103
|
const r = new Set(a.map((o) => o.intent));
|
|
1024
1104
|
for (const o of e.extraIntents)
|
|
1025
1105
|
r.has(o.intent) || (a.push(o), r.add(o.intent));
|
|
1026
1106
|
return a;
|
|
1027
1107
|
}
|
|
1028
|
-
function
|
|
1108
|
+
function Ee(e, n) {
|
|
1029
1109
|
const t = {};
|
|
1030
1110
|
for (const i of e.intents) {
|
|
1031
1111
|
if (!i.togglable) continue;
|
|
@@ -1034,46 +1114,46 @@ function he(e, n) {
|
|
|
1034
1114
|
}
|
|
1035
1115
|
return t;
|
|
1036
1116
|
}
|
|
1037
|
-
function
|
|
1038
|
-
const t =
|
|
1117
|
+
function Sn(e, n) {
|
|
1118
|
+
const t = Ee(e, n);
|
|
1039
1119
|
return Object.entries(t).filter(([, i]) => !i).map(([i]) => i);
|
|
1040
1120
|
}
|
|
1041
|
-
function
|
|
1121
|
+
function be(e, n) {
|
|
1042
1122
|
return n ? {
|
|
1043
1123
|
intent: n.intent ?? e.intent,
|
|
1044
1124
|
targetSchemes: n.targetSchemes ?? e.targetSchemes,
|
|
1045
1125
|
transport: n.transport ?? e.transport
|
|
1046
1126
|
} : e;
|
|
1047
1127
|
}
|
|
1048
|
-
function
|
|
1128
|
+
function Cn(e, n) {
|
|
1049
1129
|
const t = [];
|
|
1050
1130
|
for (const i of e) {
|
|
1051
1131
|
if (!i.enabled) continue;
|
|
1052
1132
|
const a = n[i.providerId];
|
|
1053
1133
|
if (a)
|
|
1054
|
-
for (const r of
|
|
1134
|
+
for (const r of ye(i, a))
|
|
1055
1135
|
t.push({ channel: i, description: a, capability: r });
|
|
1056
1136
|
}
|
|
1057
1137
|
return t;
|
|
1058
1138
|
}
|
|
1059
|
-
function
|
|
1139
|
+
function vn(e, n) {
|
|
1060
1140
|
return n.filter((t) => t.capability.intent === e);
|
|
1061
1141
|
}
|
|
1062
|
-
function
|
|
1142
|
+
function Ae(e, n) {
|
|
1063
1143
|
return n.filter((t) => t.capability.targetSchemes.includes(e));
|
|
1064
1144
|
}
|
|
1065
|
-
function
|
|
1066
|
-
return
|
|
1145
|
+
function Nn(e, n) {
|
|
1146
|
+
return Ae(e.scheme, n);
|
|
1067
1147
|
}
|
|
1068
|
-
function
|
|
1148
|
+
function On(e, n, t) {
|
|
1069
1149
|
const i = [];
|
|
1070
1150
|
for (const a of e)
|
|
1071
1151
|
for (const r of t)
|
|
1072
1152
|
r.capability.intent === n && r.capability.targetSchemes.includes(a.scheme) && i.push({ channelIntent: r, endpoint: a });
|
|
1073
1153
|
return i;
|
|
1074
1154
|
}
|
|
1075
|
-
var
|
|
1076
|
-
const
|
|
1155
|
+
var Ie = /* @__PURE__ */ ((e) => (e.MAILTO = "mailto", e.SIP = "sip", e.TEL = "tel", e.WEBHOOK = "webhook", e.USERNAME = "username", e.ID = "id", e.CUSTOM = "custom", e.URL = "url", e.TELEGRAM = "telegram", e.WHATSAPP = "whatsapp", e.MESSENGER = "messenger", e.INSTAGRAM = "instagram", e.VIBER = "viber", e.SMS = "sms", e.FAX = "fax", e.TEAMS = "teams", e.CALENDAR = "calendar", e))(Ie || {});
|
|
1156
|
+
const kn = "message_window", Dn = "message_templates", Ln = {
|
|
1077
1157
|
// E-mail
|
|
1078
1158
|
FROM: "from",
|
|
1079
1159
|
TO: "to",
|
|
@@ -1090,105 +1170,110 @@ const Tn = "message_window", Mn = "message_templates", Sn = {
|
|
|
1090
1170
|
// Voice/conference
|
|
1091
1171
|
HOST: "host",
|
|
1092
1172
|
PARTICIPANT: "participant"
|
|
1093
|
-
},
|
|
1173
|
+
}, Rn = (e, n) => ({ intent: e, ...n }), $n = "folder_management", xn = "remote_search", Un = { ok: !1, code: "UNSUPPORTED", message: "Provider does not support this op" }, Pn = 9e4, wn = "installation-id";
|
|
1094
1174
|
export {
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1175
|
+
c as ACTIVITY_CATALOG,
|
|
1176
|
+
R as AI_VENDORS,
|
|
1177
|
+
G as ActivityTypeRegistry,
|
|
1178
|
+
Ue as BUILT_IN_ONLY,
|
|
1179
|
+
Xe as CLASSIFY_VARS,
|
|
1180
|
+
Ge as CORE_DIMENSIONS,
|
|
1181
|
+
Ie as CommunicationScheme,
|
|
1182
|
+
fn as DEFAULT_MEMORY_BUDGET,
|
|
1183
|
+
te as DEFAULT_PHONE_REGION,
|
|
1184
|
+
$n as FEATURE_FOLDER_MANAGEMENT,
|
|
1185
|
+
xn as FEATURE_REMOTE_SEARCH,
|
|
1186
|
+
wn as INSTALLATION_HEADER,
|
|
1187
|
+
Ln as InteractionParticipantRole,
|
|
1188
|
+
Se as MAX_ACTIONS,
|
|
1189
|
+
_e as MAX_BLOCKS,
|
|
1190
|
+
Te as MAX_FIELDS,
|
|
1191
|
+
Me as MAX_LIST_ITEMS,
|
|
1192
|
+
mn as MAX_MEMORY_BUDGET,
|
|
1193
|
+
pn as MAX_MEMORY_CHARS,
|
|
1194
|
+
dn as MIN_MEMORY_BUDGET,
|
|
1195
|
+
Q as PAUSED_RUN_STATUSES,
|
|
1196
|
+
b as PHONE_REGIONS,
|
|
1197
|
+
Pn as PRESENCE_ONLINE_WINDOW_MS,
|
|
1198
|
+
Dn as PROVIDER_FEATURE_MESSAGE_TEMPLATES,
|
|
1199
|
+
kn as PROVIDER_FEATURE_MESSAGE_WINDOW,
|
|
1200
|
+
ce as PUBLIC_EMAIL_DOMAINS,
|
|
1201
|
+
ne as RELATED_SUBJECT_KINDS,
|
|
1202
|
+
tn as SIGNATURE_INTENTS,
|
|
1203
|
+
he as SUMMARY_MIN_LAST_CHARS,
|
|
1204
|
+
ge as SUMMARY_MIN_MESSAGES,
|
|
1205
|
+
J as TERMINAL_RUN_STATUSES,
|
|
1206
|
+
Fe as TRIGGER_VARS,
|
|
1207
|
+
Un as UNSUPPORTED,
|
|
1208
|
+
X as USAGE_DIMENSIONS,
|
|
1209
|
+
W as USAGE_DIMENSION_IDS,
|
|
1210
|
+
q as actingIdentityKey,
|
|
1211
|
+
ve as activityIconOf,
|
|
1212
|
+
xe as activityJoinUrl,
|
|
1213
|
+
P as activitySnippet,
|
|
1214
|
+
w as activityTextParams,
|
|
1215
|
+
$e as activityTimelineText,
|
|
1216
|
+
Ke as activityTimestamp,
|
|
1133
1217
|
l as activityTypeInfo,
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1218
|
+
ze as actorKey,
|
|
1219
|
+
Ze as aiVendorDefaultModel,
|
|
1220
|
+
Qe as aiVendorLabel,
|
|
1221
|
+
nn as aiVendorNeedsBaseUrl,
|
|
1222
|
+
en as aiVendorsWith,
|
|
1223
|
+
an as applySignature,
|
|
1224
|
+
Pe as buildActivityPreview,
|
|
1225
|
+
Cn as buildChannelIntents,
|
|
1226
|
+
De as carriesText,
|
|
1227
|
+
Ne as channelKindOf,
|
|
1228
|
+
_n as cleanMessageText,
|
|
1229
|
+
Rn as defineIntent,
|
|
1230
|
+
Sn as disabledIntentsFromCapabilities,
|
|
1231
|
+
En as emailDomain,
|
|
1232
|
+
In as endpointKey,
|
|
1233
|
+
Nn as filterByEndpoint,
|
|
1234
|
+
vn as filterByIntent,
|
|
1235
|
+
Ae as filterByTargetScheme,
|
|
1152
1236
|
E as findAiVendor,
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1237
|
+
Ve as flattenLocales,
|
|
1238
|
+
B as floorToPeriod,
|
|
1239
|
+
z as formatActingIdentity,
|
|
1240
|
+
H as formatPeriod,
|
|
1241
|
+
we as getActivitySeenUserIds,
|
|
1242
|
+
rn as getContactEndpoints,
|
|
1243
|
+
cn as getShortTitle,
|
|
1244
|
+
ln as getUrgencyScore,
|
|
1245
|
+
je as humanizeAction,
|
|
1246
|
+
on as isAssigned,
|
|
1247
|
+
sn as isClosed,
|
|
1248
|
+
un as isInteractionUnseen,
|
|
1249
|
+
Tn as isLikelyBulk,
|
|
1250
|
+
Oe as isMessageType,
|
|
1251
|
+
Je as isPaused,
|
|
1252
|
+
Re as isPlaybookAuthoredType,
|
|
1253
|
+
bn as isPublicEmailDomain,
|
|
1254
|
+
ke as isReplyableType,
|
|
1255
|
+
qe as isRetryable,
|
|
1256
|
+
Z as isTerminal,
|
|
1257
|
+
Mn as isThreadLongEnough,
|
|
1258
|
+
hn as looksLikeEmail,
|
|
1259
|
+
On as matchContactToIntents,
|
|
1260
|
+
Le as messageCountsAs,
|
|
1261
|
+
An as needsPhoneRegion,
|
|
1262
|
+
Ce as normalizeBlocks,
|
|
1263
|
+
$ as normalizeEmail,
|
|
1264
|
+
We as parseActingIdentity,
|
|
1265
|
+
He as periodsInRange,
|
|
1266
|
+
yn as phoneSuffix,
|
|
1267
|
+
Ye as playbookActor,
|
|
1268
|
+
h as readPath,
|
|
1269
|
+
le as registrableDomain,
|
|
1270
|
+
gn as relatedByDefault,
|
|
1271
|
+
Ee as resolveAccountCapabilities,
|
|
1272
|
+
y as resolveActivityText,
|
|
1273
|
+
ye as resolveChannelIntents,
|
|
1274
|
+
ee as resolveSignature,
|
|
1275
|
+
U as stripHtml,
|
|
1276
|
+
N as toE164,
|
|
1277
|
+
Y as usageMetricId,
|
|
1278
|
+
Be as usageMetrics
|
|
1194
1279
|
};
|