@opencxh/domain 1.142.0 → 1.145.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/index.js CHANGED
@@ -1,4 +1,4 @@
1
- const bt = 10, At = 10, Et = 10, _t = 5, re = /* @__PURE__ */ new Set([
1
+ const Tt = 10, It = 10, St = 10, Mt = 5, se = /* @__PURE__ */ new Set([
2
2
  "header",
3
3
  "section",
4
4
  "context",
@@ -14,7 +14,7 @@ function T(e) {
14
14
  const t = e;
15
15
  return typeof t.key == "string" || typeof t.value == "string";
16
16
  }
17
- function Tt(e, t = () => {
17
+ function Ct(e, t = () => {
18
18
  }) {
19
19
  if (!Array.isArray(e)) return [];
20
20
  const n = [];
@@ -25,7 +25,7 @@ function Tt(e, t = () => {
25
25
  }
26
26
  if (!a || typeof a != "object") continue;
27
27
  const i = a;
28
- if (!re.has(i.type)) {
28
+ if (!se.has(i.type)) {
29
29
  t("unknown block type " + String(i.type));
30
30
  continue;
31
31
  }
@@ -69,7 +69,7 @@ function Tt(e, t = () => {
69
69
  }
70
70
  return n;
71
71
  }
72
- function oe(e) {
72
+ function le(e) {
73
73
  return e.replace(/<style[\s\S]*?<\/style>/gi, " ").replace(/<script[\s\S]*?<\/script>/gi, " ").replace(/<[^>]+>/g, " ").replace(/&nbsp;/g, " ").replace(/&amp;/g, "&").replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&quot;/g, '"').replace(/&#39;/g, "'").replace(/\s+/g, " ").trim();
74
74
  }
75
75
  function y(e) {
@@ -405,43 +405,43 @@ const m = {
405
405
  }
406
406
  };
407
407
  function L(e) {
408
- const t = e.payload, n = t.bodySnippet?.trim() || oe(t.body ?? "");
408
+ const t = e.payload, n = t.bodySnippet?.trim() || le(t.body ?? "");
409
409
  return t.subject ? `${t.subject} — ${n}` : n;
410
410
  }
411
411
  function f(e) {
412
412
  return m[e];
413
413
  }
414
- function It(e) {
414
+ function Nt(e) {
415
415
  return f(e)?.icon ?? "circle";
416
416
  }
417
- function St(e) {
417
+ function vt(e) {
418
418
  return f(e)?.channelKind;
419
419
  }
420
- function Mt(e) {
420
+ function xt(e) {
421
421
  const t = f(e)?.shape;
422
422
  return t === "message" || t === "note";
423
423
  }
424
- function Ct(e) {
424
+ function kt(e) {
425
425
  return f(e)?.replyable === !0;
426
426
  }
427
- function Nt(e) {
427
+ function Lt(e) {
428
428
  return f(e)?.carriesText === !0;
429
429
  }
430
- function vt(e) {
430
+ function Ot(e) {
431
431
  return f(e)?.countsAs;
432
432
  }
433
- function xt(e) {
433
+ function $t(e) {
434
434
  return f(e)?.playbookAuthored === !0;
435
435
  }
436
- function se(e) {
436
+ function ce(e) {
437
437
  const t = f(e.type)?.snippet;
438
438
  return t ? t(e) : "";
439
439
  }
440
- function kt(e, t) {
440
+ function Rt(e, t) {
441
441
  const n = f(e.type)?.timeline;
442
442
  return n ? n(e, t) : e.type.replace(/_/g, " ").toLowerCase();
443
443
  }
444
- function Lt(e) {
444
+ function wt(e) {
445
445
  const t = f(e.type)?.joinUrl;
446
446
  return t ? t(e) : void 0;
447
447
  }
@@ -464,15 +464,15 @@ function N(e, t, n) {
464
464
  const i = n(e.key, a);
465
465
  return i === e.key ? null : i;
466
466
  }
467
- function le(e, t) {
467
+ function ue(e, t) {
468
468
  if (!e || typeof e == "string" || "value" in e) return null;
469
469
  const n = {};
470
470
  for (const [a, i] of Object.entries(e.params ?? {}))
471
471
  n[a] = C(t, i);
472
472
  return { key: e.key, params: n };
473
473
  }
474
- const ce = (e) => e;
475
- function $(e) {
474
+ const pe = (e) => e;
475
+ function O(e) {
476
476
  const t = m[e];
477
477
  return {
478
478
  type: e,
@@ -488,7 +488,7 @@ function $(e) {
488
488
  displayNameKey: t.displayNameKey
489
489
  };
490
490
  }
491
- function O(e) {
491
+ function $(e) {
492
492
  return {
493
493
  type: e.type,
494
494
  shape: e.shape,
@@ -503,21 +503,21 @@ function O(e) {
503
503
  displayNameKey: e.displayNameKey
504
504
  };
505
505
  }
506
- class ue {
507
- constructor(t = [], n = ce) {
506
+ class de {
507
+ constructor(t = [], n = pe) {
508
508
  this.translate = n;
509
509
  for (const a of t)
510
510
  a?.type && (a.type in m || this.declared.has(a.type) || this.declared.set(a.type, a));
511
511
  }
512
512
  declared = /* @__PURE__ */ new Map();
513
513
  get(t) {
514
- if (t in m) return $(t);
514
+ if (t in m) return O(t);
515
515
  const n = this.declared.get(t);
516
- return n ? O(n) : void 0;
516
+ return n ? $(n) : void 0;
517
517
  }
518
518
  /** Alles wat als trigger aangeboden mag worden, ingebouwd en gedeclareerd. */
519
519
  triggerable() {
520
- const t = Object.keys(m).filter((a) => m[a].triggerable).map($), n = [...this.declared.values()].map(O).filter((a) => a.triggerable);
520
+ const t = Object.keys(m).filter((a) => m[a].triggerable).map(O), n = [...this.declared.values()].map($).filter((a) => a.triggerable);
521
521
  return [...t, ...n];
522
522
  }
523
523
  /**
@@ -552,33 +552,33 @@ class ue {
552
552
  return this.translate;
553
553
  }
554
554
  }
555
- const $t = new ue(), R = 140;
556
- function pe(e) {
555
+ const Dt = new de(), R = 140;
556
+ function fe(e) {
557
557
  const t = e.trim();
558
558
  return t.length <= R ? t : t.slice(0, R - 1).trimEnd() + "…";
559
559
  }
560
- function Ot(e, t) {
561
- const n = le(t?.text, e), a = t ? N(t.text, e, (i) => i) : null;
560
+ function Pt(e, t) {
561
+ const n = ue(t?.text, e), a = t ? N(t.text, e, (i) => i) : null;
562
562
  return {
563
563
  activityId: e.id,
564
564
  type: e.type,
565
- snippet: pe(a ?? se(e)),
565
+ snippet: fe(a ?? ce(e)),
566
566
  authorName: e.author?.name ?? "",
567
567
  direction: e.direction,
568
568
  createdAt: e.createdAt ?? Date.now(),
569
569
  ...n ? { snippetKey: n.key, snippetParams: n.params } : {}
570
570
  };
571
571
  }
572
- function Rt(e, t, n = []) {
572
+ function Ut(e, t, n = []) {
573
573
  const a = e.createdAt;
574
574
  if (!a) return [];
575
575
  const i = new Set(n);
576
576
  return e.author.type === "user" && e.author.id && i.add(e.author.id), Object.entries(t).filter(([r, o]) => o >= a && !i.has(r)).map(([r]) => r);
577
577
  }
578
- function wt(e) {
578
+ function Kt(e) {
579
579
  return e.createdAt ?? 0;
580
580
  }
581
- const Dt = [
581
+ const Gt = [
582
582
  { id: "agent", label: "Agent", labelSource: "user" },
583
583
  { id: "team", label: "Team", labelSource: "team" },
584
584
  { id: "inbox", label: "Inbox", labelSource: "inbox" },
@@ -588,7 +588,7 @@ const Dt = [
588
588
  { id: "handledBy", label: "Afhandelaar", labelSource: "raw" },
589
589
  { id: "time", label: "Tijd", labelSource: "raw" }
590
590
  ];
591
- function Ut(e) {
591
+ function Bt(e) {
592
592
  const t = [];
593
593
  for (const n of Object.keys(e))
594
594
  for (const a of Object.keys(e[n]))
@@ -598,44 +598,44 @@ function Ut(e) {
598
598
  function S(e) {
599
599
  return e < 10 ? `0${e}` : `${e}`;
600
600
  }
601
- function de(e, t) {
601
+ function me(e, t) {
602
602
  const n = new Date(e), a = `${n.getUTCFullYear()}-${S(n.getUTCMonth() + 1)}-${S(n.getUTCDate())}`;
603
603
  return t === "day" ? a : `${a}T${S(n.getUTCHours())}`;
604
604
  }
605
- function fe(e, t) {
605
+ function ge(e, t) {
606
606
  const n = new Date(e);
607
607
  return n.setUTCMinutes(0, 0, 0), t === "day" && n.setUTCHours(0), n.getTime();
608
608
  }
609
- const me = 36e5, ge = 864e5;
610
- function Pt(e, t, n) {
611
- const a = n === "hour" ? me : ge, i = [];
612
- for (let r = fe(e, n); r <= t; r += a)
613
- i.push(de(r, n));
609
+ const he = 36e5, ye = 864e5;
610
+ function Ht(e, t, n) {
611
+ const a = n === "hour" ? he : ye, i = [];
612
+ for (let r = ge(e, n); r <= t; r += a)
613
+ i.push(me(r, n));
614
614
  return i;
615
615
  }
616
- const he = [
616
+ const be = [
617
617
  { id: "resource", label: "Resource", labelSource: "raw" },
618
618
  { id: "origin", label: "Herkomst", labelSource: "raw" }
619
- ], ye = he.map((e) => e.id);
620
- function be(e, t) {
619
+ ], Ae = be.map((e) => e.id);
620
+ function Ee(e, t) {
621
621
  return `${e}.usage.${t}`;
622
622
  }
623
- function Kt(e, t) {
623
+ function jt(e, t) {
624
624
  return t.map((n) => ({
625
- id: be(e, n.unit),
625
+ id: Ee(e, n.unit),
626
626
  label: n.label,
627
627
  category: "Verbruik",
628
628
  valueType: n.valueType ?? "count",
629
629
  aggregation: "sum",
630
630
  supportedDimensions: [
631
631
  "provider",
632
- ...ye,
632
+ ...Ae,
633
633
  ...n.extraDimensions ?? [],
634
634
  "time"
635
635
  ]
636
636
  }));
637
637
  }
638
- const J = /* @__PURE__ */ new Set(["info", "success", "warning", "destructive"]), w = 200, D = 100, U = 200, P = 12, K = 4, Q = 4e3, M = 500, Gt = 256 * 1024, Ae = /* @__PURE__ */ new Set([
638
+ const J = /* @__PURE__ */ new Set(["info", "success", "warning", "destructive"]), w = 200, D = 100, P = 200, U = 12, K = 4, Q = 4e3, M = 500, Vt = 256 * 1024, _e = /* @__PURE__ */ new Set([
639
639
  "heading",
640
640
  "paragraph",
641
641
  "list",
@@ -645,15 +645,15 @@ const J = /* @__PURE__ */ new Set(["info", "success", "warning", "destructive"])
645
645
  "table",
646
646
  "kpi",
647
647
  "callout"
648
- ]), Ee = ["http:", "https:", "mailto:", "tel:"], _e = /^[a-z][a-z0-9+.-]*:/i;
648
+ ]), Te = ["http:", "https:", "mailto:", "tel:"], Ie = /^[a-z][a-z0-9+.-]*:/i;
649
649
  function Z(e) {
650
650
  const t = e.trim().replace(/^<|>$/g, "");
651
651
  if (!t) return !1;
652
- const n = _e.exec(t)?.[0];
653
- return n ? Ee.includes(n.toLowerCase()) : !t.startsWith("//");
652
+ const n = Ie.exec(t)?.[0];
653
+ return n ? Te.includes(n.toLowerCase()) : !t.startsWith("//");
654
654
  }
655
- const Te = /^[ \t]{0,3}\[([^\]]+)\]:[ \t]*(\S+).*$/gm;
656
- function Ie(e) {
655
+ const Se = /^[ \t]{0,3}\[([^\]]+)\]:[ \t]*(\S+).*$/gm;
656
+ function Me(e) {
657
657
  let t = "", n = 0;
658
658
  for (; n < e.length; ) {
659
659
  const a = e[n] === "!" && e[n + 1] === "[";
@@ -689,22 +689,22 @@ function G(e, t, n, a) {
689
689
  }
690
690
  return -1;
691
691
  }
692
- function Se(e) {
693
- return Ie(e).replace(
694
- Te,
692
+ function Ce(e) {
693
+ return Me(e).replace(
694
+ Se,
695
695
  (t, n, a) => Z(a) ? t : ""
696
696
  );
697
697
  }
698
698
  function u(e, t = Q) {
699
- return typeof e == "string" ? Se(e).slice(0, t) : "";
699
+ return typeof e == "string" ? Ce(e).slice(0, t) : "";
700
700
  }
701
- function Me(e, t = Q) {
701
+ function Ne(e, t = Q) {
702
702
  return typeof e == "string" ? e.slice(0, t) : "";
703
703
  }
704
- function Ce(e, t = "info") {
704
+ function ve(e, t = "info") {
705
705
  return typeof e == "string" && J.has(e) ? e : t;
706
706
  }
707
- function Bt(e, t = () => {
707
+ function Ft(e, t = () => {
708
708
  }) {
709
709
  if (!Array.isArray(e)) return [];
710
710
  const n = [];
@@ -715,7 +715,7 @@ function Bt(e, t = () => {
715
715
  }
716
716
  if (!a || typeof a != "object") continue;
717
717
  const i = a;
718
- if (!Ae.has(i.type)) {
718
+ if (!_e.has(i.type)) {
719
719
  t("unknown block type " + String(i.type));
720
720
  continue;
721
721
  }
@@ -750,7 +750,7 @@ function Bt(e, t = () => {
750
750
  break;
751
751
  }
752
752
  case "code": {
753
- const o = Me(i.text);
753
+ const o = Ne(i.text);
754
754
  if (!o) {
755
755
  t("a code block without text");
756
756
  continue;
@@ -785,8 +785,8 @@ function Bt(e, t = () => {
785
785
  case "table": {
786
786
  const o = Array.isArray(i.columns) ? i.columns : [], s = [];
787
787
  for (const c of o) {
788
- if (s.length >= P) {
789
- t("more than " + P + " table columns");
788
+ if (s.length >= U) {
789
+ t("more than " + U + " table columns");
790
790
  break;
791
791
  }
792
792
  const h = u(c?.label, M), _ = c?.align === "right" ? "right" : void 0;
@@ -798,13 +798,13 @@ function Bt(e, t = () => {
798
798
  }
799
799
  const l = Array.isArray(i.rows) ? i.rows : [], p = [];
800
800
  for (const c of l) {
801
- if (p.length >= U) {
802
- t("more than " + U + " table rows");
801
+ if (p.length >= P) {
802
+ t("more than " + P + " table rows");
803
803
  break;
804
804
  }
805
805
  const h = Array.isArray(c) ? c : [];
806
806
  p.push(
807
- s.map((_, ae) => u(h[ae], M))
807
+ s.map((_, oe) => u(h[oe], M))
808
808
  );
809
809
  }
810
810
  const d = u(i.caption, M);
@@ -848,7 +848,7 @@ function Bt(e, t = () => {
848
848
  n.push({
849
849
  ...r,
850
850
  type: "callout",
851
- tone: Ce(i.tone),
851
+ tone: ve(i.tone),
852
852
  ...s ? { title: s } : {},
853
853
  text: o
854
854
  });
@@ -858,10 +858,10 @@ function Bt(e, t = () => {
858
858
  }
859
859
  return n;
860
860
  }
861
- function jt(e) {
861
+ function Xt(e) {
862
862
  return JSON.stringify(e).length;
863
863
  }
864
- function Vt(e) {
864
+ function Wt(e) {
865
865
  return {
866
866
  blocks: e.length,
867
867
  types: e.map((t) => t.type),
@@ -871,7 +871,7 @@ function Vt(e) {
871
871
  function B(e) {
872
872
  return e.replace(/\|/g, "\\|").replace(/\r?\n/g, " ").trim();
873
873
  }
874
- function j(e, t, n) {
874
+ function H(e, t, n) {
875
875
  const a = e.map((i, r) => n?.[r] === "right" ? "---:" : "---");
876
876
  return [
877
877
  `| ${e.map(B).join(" | ")} |`,
@@ -879,7 +879,7 @@ function j(e, t, n) {
879
879
  ...t.map((i) => `| ${i.map(B).join(" | ")} |`)
880
880
  ];
881
881
  }
882
- function Ne(e) {
882
+ function xe(e) {
883
883
  switch (e.type) {
884
884
  case "heading":
885
885
  return [`${"#".repeat(e.level)} ${e.text}`];
@@ -897,7 +897,7 @@ function Ne(e) {
897
897
  return t.lead ? `${a} **${t.lead}** ${t.text}` : `${a} ${t.text}`;
898
898
  });
899
899
  case "table": {
900
- const t = j(
900
+ const t = H(
901
901
  e.columns.map((n) => n.label),
902
902
  e.rows,
903
903
  e.columns.map((n) => n.align ?? "left")
@@ -905,7 +905,7 @@ function Ne(e) {
905
905
  return e.caption ? [...t, "", `*${e.caption}*`] : t;
906
906
  }
907
907
  case "kpi":
908
- return j(
908
+ return H(
909
909
  e.items.map((t) => t.value),
910
910
  [e.items.map((t) => t.label)]
911
911
  );
@@ -913,11 +913,11 @@ function Ne(e) {
913
913
  return (e.title ? `**${e.title}** ${e.text}` : e.text).split(/\r?\n/).map((n) => `> ${n}`);
914
914
  }
915
915
  }
916
- function Ht(e, t) {
916
+ function zt(e, t) {
917
917
  const n = [], a = e.some((i) => i.type === "heading" && i.level === 1);
918
918
  t && !a && n.push(`# ${t}`);
919
919
  for (const i of e) {
920
- const r = Ne(i);
920
+ const r = xe(i);
921
921
  r.length > 0 && n.push(r.join(`
922
922
  `));
923
923
  }
@@ -927,25 +927,25 @@ function Ht(e, t) {
927
927
  `;
928
928
  }
929
929
  const ee = (e) => `user:${e}`, te = (e) => `team:${e}`;
930
- function Ft(e) {
930
+ function Yt(e) {
931
931
  const t = /* @__PURE__ */ new Set();
932
932
  for (const n of e ?? [])
933
933
  n?.id && (n.kind === "user" && t.add(ee(n.id)), n.kind === "team" && t.add(te(n.id)));
934
934
  return [...t].sort();
935
935
  }
936
- function Wt(e, t) {
936
+ function qt(e, t) {
937
937
  return [ee(e), ...t.map(te)];
938
938
  }
939
- function Xt(e) {
939
+ function Jt(e) {
940
940
  const t = /* @__PURE__ */ new Set();
941
941
  for (const n of e ?? [])
942
942
  n?.kind && t.add(n.kind);
943
943
  return [...t];
944
944
  }
945
- function zt(e) {
945
+ function Qt(e) {
946
946
  return (e.startsWith("tool:") ? e.slice(5) : e).replace(/__/g, " · ").replace(/\./g, " · ").replace(/_/g, " ");
947
947
  }
948
- const Yt = [
948
+ const Zt = [
949
949
  { name: "text", type: "string" },
950
950
  { name: "subject", type: "string" },
951
951
  { name: "from", type: "string" },
@@ -968,7 +968,7 @@ const Yt = [
968
968
  // een nieuw adres) — een stap die hierop leunt hoort dus een `condition` te hebben.
969
969
  { name: "contactId", type: "string" },
970
970
  { name: "companyId", type: "string" }
971
- ], qt = {
971
+ ], en = {
972
972
  topics: [
973
973
  { name: "topic", type: "string" },
974
974
  { name: "confidence", type: "number" }
@@ -979,7 +979,7 @@ const Yt = [
979
979
  ],
980
980
  extract: []
981
981
  };
982
- function ve(e) {
982
+ function ke(e) {
983
983
  switch (e.kind) {
984
984
  case "user":
985
985
  return `user:${e.userId}`;
@@ -989,7 +989,7 @@ function ve(e) {
989
989
  return "org";
990
990
  }
991
991
  }
992
- function Jt(e) {
992
+ function tn(e) {
993
993
  if (typeof e != "string") return;
994
994
  const t = e.trim();
995
995
  if (t === "org") return { kind: "org" };
@@ -1001,10 +1001,10 @@ function Jt(e) {
1001
1001
  if (a === "team") return { kind: "team", teamId: i };
1002
1002
  }
1003
1003
  }
1004
- function xe(e) {
1005
- return ve(e);
1004
+ function Le(e) {
1005
+ return ke(e);
1006
1006
  }
1007
- function Qt(e) {
1007
+ function nn(e) {
1008
1008
  switch (e.kind) {
1009
1009
  case "personal":
1010
1010
  return { kind: "user", userId: e.userId };
@@ -1014,42 +1014,76 @@ function Qt(e) {
1014
1014
  return { kind: "org" };
1015
1015
  }
1016
1016
  }
1017
- function Zt(e) {
1018
- return xe(e);
1017
+ function an(e) {
1018
+ return Le(e);
1019
1019
  }
1020
- const ke = ["done", "escalated", "failed", "timed_out", "stopped"], Le = ["awaiting_approval", "awaiting_reply"];
1021
- function $e(e) {
1022
- return ke.includes(e);
1020
+ const Oe = ["done", "escalated", "failed", "timed_out", "stopped"], $e = ["awaiting_approval", "awaiting_reply"];
1021
+ function Re(e) {
1022
+ return Oe.includes(e);
1023
1023
  }
1024
- function en(e) {
1025
- return $e(e);
1024
+ function rn(e) {
1025
+ return Re(e);
1026
1026
  }
1027
- function tn(e) {
1028
- return Le.includes(e);
1027
+ function on(e) {
1028
+ return $e.includes(e);
1029
1029
  }
1030
- function nn(e, t) {
1030
+ function sn(e, t) {
1031
1031
  const n = e.labels ?? [];
1032
1032
  return n.find((a) => a.locale === t)?.label ?? n[0]?.label ?? e.url;
1033
1033
  }
1034
- function an(e, t, n) {
1034
+ function ln(e, t, n) {
1035
1035
  const a = e.translations ?? [];
1036
1036
  return a.find((i) => i.locale === t) ?? (n ? a.find((i) => i.locale === n) : void 0) ?? { locale: t };
1037
1037
  }
1038
- const Oe = "en";
1039
- function Re(e) {
1040
- return e.defaultLocale || e.locale || Oe;
1038
+ const ne = 3;
1039
+ function we(e, t) {
1040
+ const n = /* @__PURE__ */ new Set();
1041
+ let a = 1, i = t.get(e)?.parentId;
1042
+ for (; i; ) {
1043
+ if (n.has(i) || (n.add(i), a++, a > ne + 1)) return 1 / 0;
1044
+ i = t.get(i)?.parentId;
1045
+ }
1046
+ return a;
1041
1047
  }
1042
- function rn(e) {
1048
+ function cn(e, t, n) {
1049
+ if (!e) return !0;
1050
+ if (e === t) return !1;
1051
+ const a = new Map(n.map((o) => [o.id, o]));
1052
+ if (!a.has(e) || t && De(e, t, a)) return !1;
1053
+ const i = we(e, a), r = t ? ie(t, n) : 1;
1054
+ return i + r <= ne;
1055
+ }
1056
+ function De(e, t, n) {
1057
+ const a = /* @__PURE__ */ new Set();
1058
+ let i = n.get(e)?.parentId;
1059
+ for (; i; ) {
1060
+ if (i === t) return !0;
1061
+ if (a.has(i)) return !1;
1062
+ a.add(i), i = n.get(i)?.parentId;
1063
+ }
1064
+ return !1;
1065
+ }
1066
+ function ie(e, t, n = /* @__PURE__ */ new Set()) {
1067
+ if (n.has(e)) return 1;
1068
+ n.add(e);
1069
+ const a = t.filter((i) => i.parentId === e);
1070
+ return a.length ? 1 + Math.max(...a.map((i) => ie(i.id, t, n))) : 1;
1071
+ }
1072
+ const Pe = "en";
1073
+ function Ue(e) {
1074
+ return e.defaultLocale || e.locale || Pe;
1075
+ }
1076
+ function un(e) {
1043
1077
  const t = /* @__PURE__ */ new Set(), n = [];
1044
- for (const a of [Re(e), ...e.locales ?? []])
1078
+ for (const a of [Ue(e), ...e.locales ?? []])
1045
1079
  !a || t.has(a) || (t.add(a), n.push(a));
1046
1080
  return n;
1047
1081
  }
1048
- function on(e, t, n) {
1082
+ function pn(e, t, n) {
1049
1083
  const a = e.translations ?? [];
1050
1084
  return a.find((i) => i.locale === t)?.name ?? (n ? a.find((i) => i.locale === n)?.name : void 0) ?? e.name;
1051
1085
  }
1052
- const ne = [
1086
+ const ae = [
1053
1087
  {
1054
1088
  id: "openai",
1055
1089
  attachmentKinds: ["image", "pdf"],
@@ -1141,53 +1175,53 @@ const ne = [
1141
1175
  }
1142
1176
  ];
1143
1177
  function E(e) {
1144
- return ne.find((t) => t.id === e);
1178
+ return ae.find((t) => t.id === e);
1145
1179
  }
1146
- function sn(e) {
1180
+ function dn(e) {
1147
1181
  return E(e)?.label ?? e;
1148
1182
  }
1149
- function ln(e, t = "gpt-5-mini") {
1183
+ function fn(e, t = "gpt-5-mini") {
1150
1184
  return E(e)?.defaultModel ?? t;
1151
1185
  }
1152
- function cn(e) {
1153
- return ne.filter((t) => t.capabilities.includes(e));
1186
+ function mn(e) {
1187
+ return ae.filter((t) => t.capabilities.includes(e));
1154
1188
  }
1155
- function un(e) {
1189
+ function gn(e) {
1156
1190
  const t = E(e);
1157
1191
  return !!t && !t.baseUrl;
1158
1192
  }
1159
- function pn(e, t) {
1193
+ function hn(e, t) {
1160
1194
  return t === "text" ? !0 : E(e)?.attachmentKinds?.includes(t) === !0;
1161
1195
  }
1162
- const dn = /* @__PURE__ */ new Set(["mail", "message"]);
1163
- function we(e, t) {
1196
+ const yn = /* @__PURE__ */ new Set(["mail", "message"]);
1197
+ function Ke(e, t) {
1164
1198
  const n = e.settings?.signatures?.[t];
1165
1199
  return !n || !n.enabled || !n.body || n.body.trim() === "" ? null : n;
1166
1200
  }
1167
- function fn(e, t, n, a = "html") {
1201
+ function bn(e, t, n, a = "html") {
1168
1202
  if (!e) return n;
1169
- const i = we(e, t);
1203
+ const i = Ke(e, t);
1170
1204
  return i ? `${n}${a === "text" ? `
1171
1205
 
1172
1206
  ` : t === "mail" ? "<br><br>-- <br>" : "<br><br>"}${i.body}` : n;
1173
1207
  }
1174
- function mn(e) {
1208
+ function An(e) {
1175
1209
  return e.endpoints ?? [];
1176
1210
  }
1177
- const gn = (e) => !!e.assignedUserId || !!e.assignedInboxId, hn = (e) => e.status === "closed", yn = (e) => ({
1211
+ const En = (e) => !!e.assignedUserId || !!e.assignedInboxId, _n = (e) => e.status === "closed", Tn = (e) => ({
1178
1212
  urgent: 10,
1179
1213
  high: 5,
1180
1214
  normal: 2,
1181
1215
  low: 1
1182
- })[e.priority] || 0, bn = (e, t = 30) => e.title?.length <= t ? e.title : `${e.title.substring(0, t)}...`;
1183
- function An(e, t) {
1216
+ })[e.priority] || 0, In = (e, t = 30) => e.title?.length <= t ? e.title : `${e.title.substring(0, t)}...`;
1217
+ function Sn(e, t) {
1184
1218
  return e.lastActivityAt ? !(e.seenBy ?? []).includes(t) : !1;
1185
1219
  }
1186
- const En = 2e3, _n = 500, Tn = 12e3, In = 4e3, De = ["contact", "company"];
1187
- function Sn(e) {
1220
+ const Mn = 2e3, Cn = 500, Nn = 12e3, vn = 4e3, Ge = ["contact", "company"];
1221
+ function xn(e) {
1188
1222
  if (!e) return !1;
1189
1223
  const t = e.slice(0, e.indexOf(":"));
1190
- return De.includes(t);
1224
+ return Ge.includes(t);
1191
1225
  }
1192
1226
  const v = {
1193
1227
  // The lower bounds are deliberately generous: service ranges (0800/0900) are
@@ -1212,19 +1246,19 @@ const v = {
1212
1246
  PL: { callingCode: "48", nsnMin: 9, nsnMax: 9 },
1213
1247
  US: { callingCode: "1", nsnMin: 10, nsnMax: 10 },
1214
1248
  CA: { callingCode: "1", nsnMin: 10, nsnMax: 10 }
1215
- }, Ue = "NL", Pe = 15, Ke = 8, Ge = Array.from(
1249
+ }, Be = "NL", He = 15, je = 8, Ve = Array.from(
1216
1250
  new Set(Object.values(v).map((e) => e.callingCode))
1217
1251
  ).sort((e, t) => t.length - e.length);
1218
- function V(e) {
1252
+ function j(e) {
1219
1253
  if (e)
1220
1254
  return v[e.trim().toUpperCase()];
1221
1255
  }
1222
1256
  function A(e, t) {
1223
1257
  return e.length >= t.nsnMin && e.length <= t.nsnMax;
1224
1258
  }
1225
- function H(e) {
1226
- if (e.length > Pe) return null;
1227
- for (const t of Ge) {
1259
+ function V(e) {
1260
+ if (e.length > He) return null;
1261
+ for (const t of Ve) {
1228
1262
  if (!e.startsWith(t)) continue;
1229
1263
  const n = e.slice(t.length);
1230
1264
  for (const a of Object.values(v)) {
@@ -1234,16 +1268,16 @@ function H(e) {
1234
1268
  }
1235
1269
  return null;
1236
1270
  }
1237
- return e.length < Ke ? null : `+${e}`;
1271
+ return e.length < je ? null : `+${e}`;
1238
1272
  }
1239
- function Be(e) {
1273
+ function Fe(e) {
1240
1274
  let t = e.trim();
1241
1275
  const n = t.match(/^(sips?|tel|whatsapp):/i);
1242
1276
  n && (t = t.slice(n[0].length));
1243
1277
  const a = t.indexOf("@");
1244
1278
  return a >= 0 && (t = t.slice(0, a)), t.trim();
1245
1279
  }
1246
- function Mn(e) {
1280
+ function kn(e) {
1247
1281
  if (!e) return !1;
1248
1282
  const t = e.indexOf("@");
1249
1283
  if (t <= 0) return !1;
@@ -1252,13 +1286,13 @@ function Mn(e) {
1252
1286
  }
1253
1287
  function F(e, t) {
1254
1288
  if (!e) return null;
1255
- const n = Be(e);
1289
+ const n = Fe(e);
1256
1290
  if (!n) return null;
1257
1291
  const a = n.startsWith("+"), i = n.replace(/\D/g, "");
1258
1292
  if (!i) return null;
1259
- if (a) return H(i);
1260
- if (i.startsWith("00")) return H(i.slice(2));
1261
- const r = V(t) ?? V(Ue);
1293
+ if (a) return V(i);
1294
+ if (i.startsWith("00")) return V(i.slice(2));
1295
+ const r = j(t) ?? j(Be);
1262
1296
  if (!r) return null;
1263
1297
  const o = r.trunkPrefix;
1264
1298
  if (o && i.startsWith(o)) {
@@ -1271,22 +1305,22 @@ function F(e, t) {
1271
1305
  }
1272
1306
  return !o && A(i, r) ? `+${r.callingCode}${i}` : null;
1273
1307
  }
1274
- function Cn(e, t = 9) {
1308
+ function Ln(e, t = 9) {
1275
1309
  const n = (e ?? "").replace(/\D/g, "");
1276
1310
  return n.length < t ? null : n.slice(-t);
1277
1311
  }
1278
- function ie(e) {
1312
+ function re(e) {
1279
1313
  if (!e) return null;
1280
1314
  const t = e.trim().toLowerCase(), n = t.lastIndexOf("@");
1281
1315
  if (n <= 0 || n === t.length - 1) return null;
1282
1316
  const a = t.slice(0, n).split("+")[0], i = t.slice(n + 1);
1283
1317
  return !a || !i.includes(".") ? null : `${a}@${i}`;
1284
1318
  }
1285
- function Nn(e) {
1286
- const t = ie(e);
1319
+ function On(e) {
1320
+ const t = re(e);
1287
1321
  return t ? t.slice(t.lastIndexOf("@") + 1) : null;
1288
1322
  }
1289
- const je = /* @__PURE__ */ new Set([
1323
+ const Xe = /* @__PURE__ */ new Set([
1290
1324
  "co.uk",
1291
1325
  "org.uk",
1292
1326
  "gov.uk",
@@ -1296,14 +1330,14 @@ const je = /* @__PURE__ */ new Set([
1296
1330
  "com.br",
1297
1331
  "co.za"
1298
1332
  ]);
1299
- function Ve(e) {
1333
+ function We(e) {
1300
1334
  if (!e) return null;
1301
1335
  const t = e.trim().toLowerCase().replace(/\.$/, "").split(".").filter(Boolean);
1302
1336
  if (t.length < 2) return null;
1303
1337
  const n = t.slice(-2).join(".");
1304
- return je.has(n) && t.length >= 3 ? t.slice(-3).join(".") : n;
1338
+ return Xe.has(n) && t.length >= 3 ? t.slice(-3).join(".") : n;
1305
1339
  }
1306
- const He = /* @__PURE__ */ new Set([
1340
+ const ze = /* @__PURE__ */ new Set([
1307
1341
  "gmail.com",
1308
1342
  "googlemail.com",
1309
1343
  "outlook.com",
@@ -1348,16 +1382,16 @@ const He = /* @__PURE__ */ new Set([
1348
1382
  "proximus.be",
1349
1383
  "scarlet.be"
1350
1384
  ]);
1351
- function vn(e) {
1352
- const t = Ve(e);
1353
- return t ? He.has(t) : !1;
1385
+ function $n(e) {
1386
+ const t = We(e);
1387
+ return t ? ze.has(t) : !1;
1354
1388
  }
1355
- function xn(e) {
1389
+ function Rn(e) {
1356
1390
  if (!e) return !1;
1357
1391
  const t = e.trim().toLowerCase();
1358
1392
  return t === "tel" || t === "sms" || t === "whatsapp" || t === "fax";
1359
1393
  }
1360
- function kn(e, t, n) {
1394
+ function wn(e, t, n) {
1361
1395
  if (!e || !t) return null;
1362
1396
  const a = e.trim().toLowerCase();
1363
1397
  if (a === "tel" || a === "sms" || a === "whatsapp") {
@@ -1369,23 +1403,23 @@ function kn(e, t, n) {
1369
1403
  return r ? `fax:${r}` : null;
1370
1404
  }
1371
1405
  if (a === "mailto" || a === "email") {
1372
- const r = ie(t);
1406
+ const r = re(t);
1373
1407
  return r ? `mailto:${r}` : null;
1374
1408
  }
1375
1409
  const i = t.trim().toLowerCase();
1376
1410
  return i ? `${a}:${i}` : null;
1377
1411
  }
1378
- const Fe = /(\*\*|__)(?=\S)([\s\S]*?\S)\1/g, We = /(\*|_)(?=\S)([^*_\n]*?\S)\1/g;
1379
- function Ln(e) {
1412
+ const Ye = /(\*\*|__)(?=\S)([\s\S]*?\S)\1/g, qe = /(\*|_)(?=\S)([^*_\n]*?\S)\1/g;
1413
+ function Dn(e) {
1380
1414
  if (typeof e != "string" || !e) return "";
1381
1415
  let t = e;
1382
1416
  return t = t.replace(/```[a-z]*\n?/gi, "").replace(/~~~[a-z]*\n?/gi, ""), t = t.replace(/!\[([^\]]*)\]\([^)]*\)/g, "$1"), t = t.replace(/\[([^\]]*)\]\([^)]*\)/g, "$1"), t = t.replace(/\[([^\]]*)\]\[[^\]]*\]/g, "$1"), t = t.replace(/<((?:https?|mailto):[^>\s]+)>/gi, "$1"), t = t.split(`
1383
1417
  `).map(
1384
1418
  (n) => n.replace(/^\s{0,3}#{1,6}\s+/, "").replace(/^\s{0,3}>\s?/, "").replace(/^\s*[-*+]\s+/, "").replace(/^\s*\d+[.)]\s+/, "").replace(/^\s*(?:[-*_]\s*){3,}$/, "")
1385
1419
  ).join(`
1386
- `), t = t.replace(Fe, "$2"), t = t.replace(We, "$2"), t = t.replace(/~~(?=\S)([\s\S]*?\S)~~/g, "$1"), t = t.replace(/`([^`\n]+)`/g, "$1"), t.replace(/\s+/g, " ").trim();
1420
+ `), t = t.replace(Ye, "$2"), t = t.replace(qe, "$2"), t = t.replace(/~~(?=\S)([\s\S]*?\S)~~/g, "$1"), t = t.replace(/`([^`\n]+)`/g, "$1"), t.replace(/\s+/g, " ").trim();
1387
1421
  }
1388
- const Xe = [
1422
+ const Je = [
1389
1423
  /<blockquote/i,
1390
1424
  /class="?gmail_quote/i,
1391
1425
  // Gmail quote container
@@ -1398,17 +1432,17 @@ const Xe = [
1398
1432
  // Outlook underscore separator before "From:"
1399
1433
  /\bOn\b[\s\S]{0,200}?\bwrote:/i
1400
1434
  // Gmail "On <date> <name> wrote:"
1401
- ], W = /^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i, ze = /^\s*(?:on|op)\b.{0,200}?\b(?:wrote|schreef|geschreven)\s*:?\s*$/i;
1402
- function Ye(e) {
1435
+ ], X = /^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i, Qe = /^\s*(?:on|op)\b.{0,200}?\b(?:wrote|schreef|geschreven)\s*:?\s*$/i;
1436
+ function Ze(e) {
1403
1437
  const t = e.split(`
1404
1438
  `);
1405
1439
  for (let n = 0; n < t.length; n++)
1406
- if (ze.test(t[n]) || W.test(t[n]) && t.slice(n + 1, n + 4).some((a) => W.test(a)))
1440
+ if (Qe.test(t[n]) || X.test(t[n]) && t.slice(n + 1, n + 4).some((a) => X.test(a)))
1407
1441
  return t.slice(0, n).join(`
1408
1442
  `).trim();
1409
1443
  return e;
1410
1444
  }
1411
- function X(e) {
1445
+ function W(e) {
1412
1446
  let t = e;
1413
1447
  return t = t.replace(/<(script|style)[\s\S]*?<\/\1>/gi, ""), t = t.replace(/<br\s*\/?>/gi, `
1414
1448
  `), t = t.replace(/<\/(p|h[1-6]|ul|ol|table|blockquote)>/gi, `
@@ -1428,26 +1462,26 @@ function q(e) {
1428
1462
 
1429
1463
  `).trim();
1430
1464
  }
1431
- function $n(e) {
1465
+ function Pn(e) {
1432
1466
  if (typeof e != "string" || !e) return "";
1433
1467
  let t = e.length;
1434
- for (const r of Xe) {
1468
+ for (const r of Je) {
1435
1469
  const o = e.search(r);
1436
1470
  o >= 0 && o < t && (t = o);
1437
1471
  }
1438
1472
  const n = e.slice(0, t);
1439
- let a = q(Y(X(n)));
1440
- return a || (a = q(Y(X(e)))), Ye(a) || a;
1473
+ let a = q(Y(W(n)));
1474
+ return a || (a = q(Y(W(e)))), Ze(a) || a;
1441
1475
  }
1442
- const qe = /(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|newsletter|nieuwsbrief|mailer|mailing|notifications?|bounce|postmaster|marketing)@/i, Je = /\b(unsubscribe|afmelden|uitschrijven|opt[\s-]?out|manage (your )?preferences|geen (e-?mails?|nieuwsbrief|berichten) meer)\b/i;
1443
- function On(e, t) {
1444
- return !!(e && qe.test(e) || t && Je.test(t));
1476
+ const et = /(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|newsletter|nieuwsbrief|mailer|mailing|notifications?|bounce|postmaster|marketing)@/i, tt = /\b(unsubscribe|afmelden|uitschrijven|opt[\s-]?out|manage (your )?preferences|geen (e-?mails?|nieuwsbrief|berichten) meer)\b/i;
1477
+ function Un(e, t) {
1478
+ return !!(e && et.test(e) || t && tt.test(t));
1445
1479
  }
1446
- const Qe = 3, Ze = 600;
1447
- function Rn(e, t) {
1448
- return e >= Qe || t >= Ze;
1480
+ const nt = 3, it = 600;
1481
+ function Kn(e, t) {
1482
+ return e >= nt || t >= it;
1449
1483
  }
1450
- const et = /* @__PURE__ */ new Set(["image/png", "image/jpeg", "image/jpg", "image/gif", "image/webp"]), tt = /* @__PURE__ */ new Set([
1484
+ const at = /* @__PURE__ */ new Set(["image/png", "image/jpeg", "image/jpg", "image/gif", "image/webp"]), rt = /* @__PURE__ */ new Set([
1451
1485
  "text/plain",
1452
1486
  "text/markdown",
1453
1487
  "text/csv",
@@ -1456,29 +1490,29 @@ const et = /* @__PURE__ */ new Set(["image/png", "image/jpeg", "image/jpg", "ima
1456
1490
  "application/xml",
1457
1491
  "text/xml"
1458
1492
  ]);
1459
- function nt(e) {
1493
+ function ot(e) {
1460
1494
  const t = (e ?? "").trim().toLowerCase().split(";")[0];
1461
- return t ? et.has(t) ? "image" : t === "application/pdf" ? "pdf" : tt.has(t) ? "text" : t.startsWith("audio/") ? "audio" : "unsupported" : "unsupported";
1495
+ return t ? at.has(t) ? "image" : t === "application/pdf" ? "pdf" : rt.has(t) ? "text" : t.startsWith("audio/") ? "audio" : "unsupported" : "unsupported";
1462
1496
  }
1463
- const g = 1024 * 1024, it = {
1497
+ const g = 1024 * 1024, st = {
1464
1498
  image: 5 * g,
1465
1499
  pdf: 20 * g,
1466
1500
  text: 1 * g,
1467
1501
  audio: 20 * g
1468
- }, wn = 25 * g, Dn = 5;
1469
- function Un(e, t) {
1470
- const n = nt(e);
1471
- return n === "unsupported" ? "unsupported" : t > it[n] ? "too-large" : null;
1502
+ }, Gn = 25 * g, Bn = 5;
1503
+ function Hn(e, t) {
1504
+ const n = ot(e);
1505
+ return n === "unsupported" ? "unsupported" : t > st[n] ? "too-large" : null;
1472
1506
  }
1473
- function at(e, t) {
1474
- const n = new Set(e.disabledIntents ?? []), a = e.intentOverrides ?? {}, i = t.intents.filter((o) => !n.has(o.intent)).map((o) => ot(o, a[o.intent]));
1507
+ function lt(e, t) {
1508
+ const n = new Set(e.disabledIntents ?? []), a = e.intentOverrides ?? {}, i = t.intents.filter((o) => !n.has(o.intent)).map((o) => ut(o, a[o.intent]));
1475
1509
  if (!e.extraIntents || e.extraIntents.length === 0) return i;
1476
1510
  const r = new Set(i.map((o) => o.intent));
1477
1511
  for (const o of e.extraIntents)
1478
1512
  r.has(o.intent) || (i.push(o), r.add(o.intent));
1479
1513
  return i;
1480
1514
  }
1481
- function rt(e, t) {
1515
+ function ct(e, t) {
1482
1516
  const n = {};
1483
1517
  for (const a of e.intents) {
1484
1518
  if (!a.togglable) continue;
@@ -1487,46 +1521,46 @@ function rt(e, t) {
1487
1521
  }
1488
1522
  return n;
1489
1523
  }
1490
- function Pn(e, t) {
1491
- const n = rt(e, t);
1524
+ function jn(e, t) {
1525
+ const n = ct(e, t);
1492
1526
  return Object.entries(n).filter(([, a]) => !a).map(([a]) => a);
1493
1527
  }
1494
- function ot(e, t) {
1528
+ function ut(e, t) {
1495
1529
  return t ? {
1496
1530
  intent: t.intent ?? e.intent,
1497
1531
  targetSchemes: t.targetSchemes ?? e.targetSchemes,
1498
1532
  transport: t.transport ?? e.transport
1499
1533
  } : e;
1500
1534
  }
1501
- function Kn(e, t) {
1535
+ function Vn(e, t) {
1502
1536
  const n = [];
1503
1537
  for (const a of e) {
1504
1538
  if (!a.enabled) continue;
1505
1539
  const i = t[a.providerId];
1506
1540
  if (i)
1507
- for (const r of at(a, i))
1541
+ for (const r of lt(a, i))
1508
1542
  n.push({ channel: a, description: i, capability: r });
1509
1543
  }
1510
1544
  return n;
1511
1545
  }
1512
- function Gn(e, t) {
1546
+ function Fn(e, t) {
1513
1547
  return t.filter((n) => n.capability.intent === e);
1514
1548
  }
1515
- function st(e, t) {
1549
+ function pt(e, t) {
1516
1550
  return t.filter((n) => n.capability.targetSchemes.includes(e));
1517
1551
  }
1518
- function Bn(e, t) {
1519
- return st(e.scheme, t);
1552
+ function Xn(e, t) {
1553
+ return pt(e.scheme, t);
1520
1554
  }
1521
- function jn(e, t, n) {
1555
+ function Wn(e, t, n) {
1522
1556
  const a = [];
1523
1557
  for (const i of e)
1524
1558
  for (const r of n)
1525
1559
  r.capability.intent === t && r.capability.targetSchemes.includes(i.scheme) && a.push({ channelIntent: r, endpoint: i });
1526
1560
  return a;
1527
1561
  }
1528
- var lt = /* @__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))(lt || {});
1529
- const ct = {
1562
+ var dt = /* @__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))(dt || {});
1563
+ const ft = {
1530
1564
  mailto: "mail",
1531
1565
  sip: "tel",
1532
1566
  tel: "tel",
@@ -1548,10 +1582,10 @@ const ct = {
1548
1582
  id: "note",
1549
1583
  custom: "note"
1550
1584
  };
1551
- function Vn(e) {
1552
- return e ? ct[e] ?? "note" : "note";
1585
+ function zn(e) {
1586
+ return e ? ft[e] ?? "note" : "note";
1553
1587
  }
1554
- const Hn = "message_window", Fn = "message_templates", Wn = {
1588
+ const Yn = "message_window", qn = "message_templates", Jn = {
1555
1589
  // E-mail
1556
1590
  FROM: "from",
1557
1591
  TO: "to",
@@ -1568,23 +1602,23 @@ const Hn = "message_window", Fn = "message_templates", Wn = {
1568
1602
  // Voice/conference
1569
1603
  HOST: "host",
1570
1604
  PARTICIPANT: "participant"
1571
- }, Xn = (e, t) => ({ intent: e, ...t }), zn = "folder_management", Yn = "remote_search", qn = { ok: !1, code: "UNSUPPORTED", message: "Provider does not support this op" }, ut = "auth";
1572
- function pt(e) {
1605
+ }, Qn = (e, t) => ({ intent: e, ...t }), Zn = "folder_management", ei = "remote_search", ti = { ok: !1, code: "UNSUPPORTED", message: "Provider does not support this op" }, mt = "auth";
1606
+ function gt(e) {
1573
1607
  const t = typeof e == "string" ? e.match(/apps\/([^/?#]+)/) : null;
1574
1608
  return t ? t[1] : null;
1575
1609
  }
1576
- function Jn(e) {
1577
- const t = pt(e);
1578
- return t ? t !== ut : typeof e == "string" && e.startsWith("/wake");
1610
+ function ni(e) {
1611
+ const t = gt(e);
1612
+ return t ? t !== mt : typeof e == "string" && e.startsWith("/wake");
1579
1613
  }
1580
- function dt(e) {
1614
+ function ht(e) {
1581
1615
  return e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
1582
1616
  }
1583
- function ft(e) {
1584
- const n = e.split("/").filter(Boolean).map((a) => a.startsWith(":") ? a.endsWith("?") ? "(?:/[^/]+)?" : "/[^/]+" : "/" + dt(a)).join("");
1617
+ function yt(e) {
1618
+ const n = e.split("/").filter(Boolean).map((a) => a.startsWith(":") ? a.endsWith("?") ? "(?:/[^/]+)?" : "/[^/]+" : "/" + ht(a)).join("");
1585
1619
  return new RegExp(`^${n}\\/?$`);
1586
1620
  }
1587
- function mt(e, t) {
1621
+ function bt(e, t) {
1588
1622
  const n = e.split("/").filter(Boolean), a = t.split("/").filter(Boolean), i = {};
1589
1623
  return n.forEach((r, o) => {
1590
1624
  if (r.startsWith(":")) {
@@ -1593,23 +1627,28 @@ function mt(e, t) {
1593
1627
  }
1594
1628
  }), i;
1595
1629
  }
1596
- function gt(e) {
1630
+ function At(e) {
1597
1631
  return e.publicBasePath ?? `/apps/${e.name}`;
1598
1632
  }
1599
- function Qn(e) {
1633
+ function ii(e) {
1600
1634
  const t = [];
1601
1635
  for (const n of e) {
1602
1636
  if (!n?.name) continue;
1603
- const a = gt(n);
1637
+ const a = At(n);
1604
1638
  for (const i of n.routes ?? []) {
1605
1639
  if (!i.public) continue;
1606
1640
  const r = i.path === "/" ? "" : i.path;
1607
- t.push({ appName: n.name, resource: i.resource, pattern: `${a}${r}` });
1641
+ t.push({
1642
+ appName: n.name,
1643
+ resource: i.resource,
1644
+ pattern: `${a}${r}`,
1645
+ props: i.props
1646
+ });
1608
1647
  }
1609
1648
  }
1610
1649
  return t;
1611
1650
  }
1612
- function ht(e, t) {
1651
+ function Et(e, t) {
1613
1652
  const n = e.split("/").filter(Boolean), a = t.split("/").filter(Boolean);
1614
1653
  for (let i = 0; i < Math.min(n.length, a.length); i++) {
1615
1654
  const r = n[i].startsWith(":"), o = a[i].startsWith(":");
@@ -1617,162 +1656,168 @@ function ht(e, t) {
1617
1656
  }
1618
1657
  return n.length > a.length;
1619
1658
  }
1620
- function yt(e, t) {
1659
+ function _t(e, t) {
1621
1660
  if (typeof e != "string") return null;
1622
1661
  let n = null;
1623
1662
  for (const a of t)
1624
- ft(a.pattern).test(e) && (!n || ht(a.pattern, n.pattern)) && (n = a);
1625
- return n ? { ...n, params: mt(n.pattern, e) } : null;
1663
+ yt(a.pattern).test(e) && (!n || Et(a.pattern, n.pattern)) && (n = a);
1664
+ return n ? { ...n, params: { ...n.props, ...bt(n.pattern, e) } } : null;
1626
1665
  }
1627
- function Zn(e, t) {
1628
- return yt(e, t) !== null;
1666
+ function ai(e, t) {
1667
+ return _t(e, t) !== null;
1629
1668
  }
1630
- const ei = 9e4, ti = "installation-id";
1669
+ const ri = 9e4, oi = "installation-id";
1631
1670
  export {
1632
1671
  m as ACTIVITY_CATALOG,
1633
- it as AI_ATTACHMENT_LIMITS,
1634
- Dn as AI_ATTACHMENT_MAX_PER_TURN,
1635
- wn as AI_ATTACHMENT_TURN_BUDGET,
1636
- ne as AI_VENDORS,
1637
- Ee as ALLOWED_LINK_SCHEMES,
1672
+ st as AI_ATTACHMENT_LIMITS,
1673
+ Bn as AI_ATTACHMENT_MAX_PER_TURN,
1674
+ Gn as AI_ATTACHMENT_TURN_BUDGET,
1675
+ ae as AI_VENDORS,
1676
+ Te as ALLOWED_LINK_SCHEMES,
1638
1677
  w as ARTIFACT_MAX_BLOCKS,
1639
- Gt as ARTIFACT_MAX_BODY_BYTES,
1678
+ Vt as ARTIFACT_MAX_BODY_BYTES,
1640
1679
  M as ARTIFACT_MAX_CELL_LEN,
1641
1680
  K as ARTIFACT_MAX_KPI_ITEMS,
1642
1681
  D as ARTIFACT_MAX_LIST_ITEMS,
1643
- P as ARTIFACT_MAX_TABLE_COLUMNS,
1644
- U as ARTIFACT_MAX_TABLE_ROWS,
1682
+ U as ARTIFACT_MAX_TABLE_COLUMNS,
1683
+ P as ARTIFACT_MAX_TABLE_ROWS,
1645
1684
  Q as ARTIFACT_MAX_TEXT_LEN,
1646
- ut as AUTH_APP_NAME,
1647
- ue as ActivityTypeRegistry,
1648
- $t as BUILT_IN_ONLY,
1649
- qt as CLASSIFY_VARS,
1650
- Dt as CORE_DIMENSIONS,
1651
- lt as CommunicationScheme,
1652
- In as DEFAULT_MEMORY_BUDGET,
1653
- Ue as DEFAULT_PHONE_REGION,
1654
- zn as FEATURE_FOLDER_MANAGEMENT,
1655
- Yn as FEATURE_REMOTE_SEARCH,
1656
- ti as INSTALLATION_HEADER,
1657
- Wn as InteractionParticipantRole,
1658
- Oe as KB_FALLBACK_LOCALE,
1659
- _t as MAX_ACTIONS,
1660
- bt as MAX_BLOCKS,
1661
- At as MAX_FIELDS,
1662
- Et as MAX_LIST_ITEMS,
1663
- Tn as MAX_MEMORY_BUDGET,
1664
- En as MAX_MEMORY_CHARS,
1665
- _n as MIN_MEMORY_BUDGET,
1666
- Le as PAUSED_RUN_STATUSES,
1685
+ mt as AUTH_APP_NAME,
1686
+ de as ActivityTypeRegistry,
1687
+ Dt as BUILT_IN_ONLY,
1688
+ en as CLASSIFY_VARS,
1689
+ Gt as CORE_DIMENSIONS,
1690
+ dt as CommunicationScheme,
1691
+ vn as DEFAULT_MEMORY_BUDGET,
1692
+ Be as DEFAULT_PHONE_REGION,
1693
+ Zn as FEATURE_FOLDER_MANAGEMENT,
1694
+ ei as FEATURE_REMOTE_SEARCH,
1695
+ oi as INSTALLATION_HEADER,
1696
+ Jn as InteractionParticipantRole,
1697
+ Pe as KB_FALLBACK_LOCALE,
1698
+ Mt as MAX_ACTIONS,
1699
+ Tt as MAX_BLOCKS,
1700
+ ne as MAX_COLLECTION_DEPTH,
1701
+ It as MAX_FIELDS,
1702
+ St as MAX_LIST_ITEMS,
1703
+ Nn as MAX_MEMORY_BUDGET,
1704
+ Mn as MAX_MEMORY_CHARS,
1705
+ Cn as MIN_MEMORY_BUDGET,
1706
+ $e as PAUSED_RUN_STATUSES,
1667
1707
  v as PHONE_REGIONS,
1668
- ei as PRESENCE_ONLINE_WINDOW_MS,
1669
- Fn as PROVIDER_FEATURE_MESSAGE_TEMPLATES,
1670
- Hn as PROVIDER_FEATURE_MESSAGE_WINDOW,
1671
- He as PUBLIC_EMAIL_DOMAINS,
1672
- De as RELATED_SUBJECT_KINDS,
1673
- dn as SIGNATURE_INTENTS,
1674
- Ze as SUMMARY_MIN_LAST_CHARS,
1675
- Qe as SUMMARY_MIN_MESSAGES,
1676
- ke as TERMINAL_RUN_STATUSES,
1677
- Yt as TRIGGER_VARS,
1678
- qn as UNSUPPORTED,
1679
- he as USAGE_DIMENSIONS,
1680
- ye as USAGE_DIMENSION_IDS,
1681
- xe as actingIdentityKey,
1682
- It as activityIconOf,
1683
- Lt as activityJoinUrl,
1684
- se as activitySnippet,
1685
- le as activityTextParams,
1686
- kt as activityTimelineText,
1687
- wt as activityTimestamp,
1708
+ ri as PRESENCE_ONLINE_WINDOW_MS,
1709
+ qn as PROVIDER_FEATURE_MESSAGE_TEMPLATES,
1710
+ Yn as PROVIDER_FEATURE_MESSAGE_WINDOW,
1711
+ ze as PUBLIC_EMAIL_DOMAINS,
1712
+ Ge as RELATED_SUBJECT_KINDS,
1713
+ yn as SIGNATURE_INTENTS,
1714
+ it as SUMMARY_MIN_LAST_CHARS,
1715
+ nt as SUMMARY_MIN_MESSAGES,
1716
+ Oe as TERMINAL_RUN_STATUSES,
1717
+ Zt as TRIGGER_VARS,
1718
+ ti as UNSUPPORTED,
1719
+ be as USAGE_DIMENSIONS,
1720
+ Ae as USAGE_DIMENSION_IDS,
1721
+ Le as actingIdentityKey,
1722
+ Nt as activityIconOf,
1723
+ wt as activityJoinUrl,
1724
+ ce as activitySnippet,
1725
+ ue as activityTextParams,
1726
+ Rt as activityTimelineText,
1727
+ Kt as activityTimestamp,
1688
1728
  f as activityTypeInfo,
1689
- Zt as actorKey,
1690
- nt as aiAttachmentKind,
1691
- Un as aiAttachmentRejection,
1692
- pn as aiVendorAcceptsAttachment,
1693
- ln as aiVendorDefaultModel,
1694
- sn as aiVendorLabel,
1695
- un as aiVendorNeedsBaseUrl,
1696
- cn as aiVendorsWith,
1697
- pt as appNameFromPath,
1698
- fn as applySignature,
1699
- jt as artifactBodyBytes,
1700
- Vt as artifactOutline,
1701
- Ht as artifactToMarkdown,
1702
- Ot as buildActivityPreview,
1703
- Kn as buildChannelIntents,
1704
- Ft as buildShareKeys,
1705
- Nt as carriesText,
1706
- on as categoryLabel,
1707
- Vn as channelKindForScheme,
1708
- St as channelKindOf,
1709
- $n as cleanMessageText,
1710
- Re as defaultLocaleOf,
1711
- Xn as defineIntent,
1712
- Pn as disabledIntentsFromCapabilities,
1713
- Nn as emailDomain,
1714
- kn as endpointKey,
1715
- mt as extractParams,
1716
- Bn as filterByEndpoint,
1717
- Gn as filterByIntent,
1718
- st as filterByTargetScheme,
1729
+ an as actorKey,
1730
+ ot as aiAttachmentKind,
1731
+ Hn as aiAttachmentRejection,
1732
+ hn as aiVendorAcceptsAttachment,
1733
+ fn as aiVendorDefaultModel,
1734
+ dn as aiVendorLabel,
1735
+ gn as aiVendorNeedsBaseUrl,
1736
+ mn as aiVendorsWith,
1737
+ gt as appNameFromPath,
1738
+ bn as applySignature,
1739
+ Xt as artifactBodyBytes,
1740
+ Wt as artifactOutline,
1741
+ zt as artifactToMarkdown,
1742
+ Pt as buildActivityPreview,
1743
+ Vn as buildChannelIntents,
1744
+ Yt as buildShareKeys,
1745
+ cn as canNestUnder,
1746
+ Lt as carriesText,
1747
+ pn as categoryLabel,
1748
+ zn as channelKindForScheme,
1749
+ vt as channelKindOf,
1750
+ Pn as cleanMessageText,
1751
+ Ue as defaultLocaleOf,
1752
+ Qn as defineIntent,
1753
+ we as depthOf,
1754
+ jn as disabledIntentsFromCapabilities,
1755
+ On as emailDomain,
1756
+ wn as endpointKey,
1757
+ bt as extractParams,
1758
+ Xn as filterByEndpoint,
1759
+ Fn as filterByIntent,
1760
+ pt as filterByTargetScheme,
1719
1761
  E as findAiVendor,
1720
- Ut as flattenLocales,
1721
- fe as floorToPeriod,
1722
- ve as formatActingIdentity,
1723
- de as formatPeriod,
1724
- Rt as getActivitySeenUserIds,
1725
- mn as getContactEndpoints,
1726
- bn as getShortTitle,
1727
- yn as getUrgencyScore,
1728
- an as helpCenterText,
1729
- zt as humanizeAction,
1730
- gn as isAssigned,
1731
- hn as isClosed,
1732
- Jn as isDeepLink,
1733
- An as isInteractionUnseen,
1734
- On as isLikelyBulk,
1735
- Mt as isMessageType,
1736
- tn as isPaused,
1737
- xt as isPlaybookAuthoredType,
1738
- vn as isPublicEmailDomain,
1739
- Zn as isPublicPath,
1740
- Ct as isReplyableType,
1741
- en as isRetryable,
1742
- $e as isTerminal,
1743
- Rn as isThreadLongEnough,
1744
- nn as linkLabel,
1745
- rn as localesOf,
1746
- Mn as looksLikeEmail,
1747
- jn as matchContactToIntents,
1748
- yt as matchPublicRoute,
1749
- vt as messageCountsAs,
1750
- xn as needsPhoneRegion,
1751
- Bt as normalizeArtifactBlocks,
1752
- Tt as normalizeBlocks,
1753
- ie as normalizeEmail,
1754
- Jt as parseActingIdentity,
1755
- ft as pathToRegex,
1756
- Pt as periodsInRange,
1757
- Cn as phoneSuffix,
1758
- Ln as plainTextFromMarkdown,
1759
- Qt as playbookActor,
1760
- gt as publicBasePathFor,
1761
- Qn as publicRoutePatterns,
1762
+ Bt as flattenLocales,
1763
+ ge as floorToPeriod,
1764
+ ke as formatActingIdentity,
1765
+ me as formatPeriod,
1766
+ Ut as getActivitySeenUserIds,
1767
+ An as getContactEndpoints,
1768
+ In as getShortTitle,
1769
+ Tn as getUrgencyScore,
1770
+ ie as heightOf,
1771
+ ln as helpCenterText,
1772
+ Qt as humanizeAction,
1773
+ En as isAssigned,
1774
+ _n as isClosed,
1775
+ ni as isDeepLink,
1776
+ De as isDescendant,
1777
+ Sn as isInteractionUnseen,
1778
+ Un as isLikelyBulk,
1779
+ xt as isMessageType,
1780
+ Et as isMoreSpecificPattern,
1781
+ on as isPaused,
1782
+ $t as isPlaybookAuthoredType,
1783
+ $n as isPublicEmailDomain,
1784
+ ai as isPublicPath,
1785
+ kt as isReplyableType,
1786
+ rn as isRetryable,
1787
+ Re as isTerminal,
1788
+ Kn as isThreadLongEnough,
1789
+ sn as linkLabel,
1790
+ un as localesOf,
1791
+ kn as looksLikeEmail,
1792
+ Wn as matchContactToIntents,
1793
+ _t as matchPublicRoute,
1794
+ Ot as messageCountsAs,
1795
+ Rn as needsPhoneRegion,
1796
+ Ft as normalizeArtifactBlocks,
1797
+ Ct as normalizeBlocks,
1798
+ re as normalizeEmail,
1799
+ tn as parseActingIdentity,
1800
+ yt as pathToRegex,
1801
+ Ht as periodsInRange,
1802
+ Ln as phoneSuffix,
1803
+ Dn as plainTextFromMarkdown,
1804
+ nn as playbookActor,
1805
+ At as publicBasePathFor,
1806
+ ii as publicRoutePatterns,
1762
1807
  C as readPath,
1763
- Ve as registrableDomain,
1764
- Sn as relatedByDefault,
1765
- rt as resolveAccountCapabilities,
1808
+ We as registrableDomain,
1809
+ xn as relatedByDefault,
1810
+ ct as resolveAccountCapabilities,
1766
1811
  N as resolveActivityText,
1767
- at as resolveChannelIntents,
1768
- we as resolveSignature,
1769
- Se as sanitizeInline,
1812
+ lt as resolveChannelIntents,
1813
+ Ke as resolveSignature,
1814
+ Ce as sanitizeInline,
1770
1815
  te as shareKeyForTeam,
1771
1816
  ee as shareKeyForUser,
1772
- Wt as shareKeysForViewer,
1773
- oe as stripHtml,
1817
+ qt as shareKeysForViewer,
1818
+ le as stripHtml,
1774
1819
  F as toE164,
1775
- Xt as toolSourceKinds,
1776
- be as usageMetricId,
1777
- Kt as usageMetrics
1820
+ Jt as toolSourceKinds,
1821
+ Ee as usageMetricId,
1822
+ jt as usageMetrics
1778
1823
  };