@opencxh/domain 1.195.0 → 1.196.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 Yn = 10, qn = 10, Jn = 10, Zn = 5, ve = /* @__PURE__ */ new Set([
1
+ const Yn = 10, qn = 10, Jn = 10, Zn = 5, Ne = /* @__PURE__ */ new Set([
2
2
  "header",
3
3
  "section",
4
4
  "context",
@@ -25,7 +25,7 @@ function Qn(e, t = () => {
25
25
  }
26
26
  if (!r || typeof r != "object") continue;
27
27
  const i = r;
28
- if (!ve.has(i.type)) {
28
+ if (!Ne.has(i.type)) {
29
29
  t(`unknown block type ${String(i.type)}`);
30
30
  continue;
31
31
  }
@@ -59,9 +59,9 @@ function Qn(e, t = () => {
59
59
  i.items.length > 10 && (t("more than 10 list items"), i.items = i.items.slice(0, 10));
60
60
  break;
61
61
  case "actions": {
62
- const a = Array.isArray(i.elements) ? i.elements : [], o = a.filter((s) => s?.action_id && s.invoke && w(s.text));
63
- if (o.length !== a.length && t("an action without action_id, invoke or text"), o.length === 0) continue;
64
- o.length > 5 && t("more than 5 actions"), i.elements = o.slice(0, 5);
62
+ const o = Array.isArray(i.elements) ? i.elements : [], a = o.filter((s) => s?.action_id && s.invoke && w(s.text));
63
+ if (a.length !== o.length && t("an action without action_id, invoke or text"), a.length === 0) continue;
64
+ a.length > 5 && t("more than 5 actions"), i.elements = a.slice(0, 5);
65
65
  break;
66
66
  }
67
67
  }
@@ -69,7 +69,7 @@ function Qn(e, t = () => {
69
69
  }
70
70
  return n;
71
71
  }
72
- function Ne(e) {
72
+ function ve(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 b(e) {
@@ -439,7 +439,7 @@ const m = {
439
439
  }
440
440
  };
441
441
  function P(e) {
442
- const t = e.payload, n = t.bodyText?.trim() || t.bodySnippet?.trim() || Ne(t.body ?? "");
442
+ const t = e.payload, n = t.bodyText?.trim() || t.bodySnippet?.trim() || ve(t.body ?? "");
443
443
  return t.subject ? `${t.subject} — ${n}` : n;
444
444
  }
445
445
  function d(e) {
@@ -466,10 +466,10 @@ function ir(e) {
466
466
  function Re(e) {
467
467
  return d(e)?.countsAs;
468
468
  }
469
- function ar(e) {
469
+ function or(e) {
470
470
  return d(e)?.playbookAuthored === !0;
471
471
  }
472
- function or(e) {
472
+ function ar(e) {
473
473
  return d(e)?.connected === !0;
474
474
  }
475
475
  function sr(e) {
@@ -488,7 +488,7 @@ function lr(e) {
488
488
  const t = d(e.type)?.joinUrl;
489
489
  return t ? t(e) : void 0;
490
490
  }
491
- function v(e, t) {
491
+ function N(e, t) {
492
492
  let n = e;
493
493
  for (const r of t.split(".")) {
494
494
  if (n == null || typeof n != "object") return "";
@@ -496,14 +496,14 @@ function v(e, t) {
496
496
  }
497
497
  return n == null ? "" : typeof n == "string" ? n : typeof n == "number" || typeof n == "boolean" ? String(n) : "";
498
498
  }
499
- function N(e, t, n) {
499
+ function v(e, t, n) {
500
500
  if (e === void 0) return null;
501
501
  if (typeof e == "string") return e || null;
502
502
  if ("value" in e)
503
- return v(t, e.value) || null;
503
+ return N(t, e.value) || null;
504
504
  const r = {};
505
- for (const [a, o] of Object.entries(e.params ?? {}))
506
- r[a] = v(t, o);
505
+ for (const [o, a] of Object.entries(e.params ?? {}))
506
+ r[o] = N(t, a);
507
507
  const i = n(e.key, r);
508
508
  return i === e.key ? null : i;
509
509
  }
@@ -511,7 +511,7 @@ function xe(e, t) {
511
511
  if (!e || typeof e == "string" || "value" in e) return null;
512
512
  const n = {};
513
513
  for (const [r, i] of Object.entries(e.params ?? {}))
514
- n[r] = v(t, i);
514
+ n[r] = N(t, i);
515
515
  return { key: e.key, params: n };
516
516
  }
517
517
  const U = 140;
@@ -520,7 +520,7 @@ function De(e) {
520
520
  return t.length <= U ? t : `${t.slice(0, U - 1).trimEnd()}…`;
521
521
  }
522
522
  function ur(e, t) {
523
- const n = xe(t?.text, e), r = t ? N(t.text, e, (i) => i) : null;
523
+ const n = xe(t?.text, e), r = t ? v(t.text, e, (i) => i) : null;
524
524
  return {
525
525
  activityId: e.id,
526
526
  type: e.type,
@@ -589,14 +589,14 @@ class Pe {
589
589
  const r = m[t.type];
590
590
  if (r?.timeline) return r.timeline(t, n);
591
591
  const i = this.declared.get(t.type);
592
- return N(i?.text, t, this.translate) ?? t.type.replace(/_/g, " ").toLowerCase();
592
+ return v(i?.text, t, this.translate) ?? t.type.replace(/_/g, " ").toLowerCase();
593
593
  }
594
594
  /** The line for the inbox list. Empty when the type has nothing to show. */
595
595
  snippet(t) {
596
596
  const n = m[t.type];
597
597
  if (n?.snippet) return n.snippet(t);
598
598
  const r = this.declared.get(t.type);
599
- return N(r?.text, t, this.translate) ?? "";
599
+ return v(r?.text, t, this.translate) ?? "";
600
600
  }
601
601
  /** The descriptor as it arrived; needed to store `text` as a key. */
602
602
  descriptor(t) {
@@ -654,7 +654,7 @@ function pr(e, t, n = []) {
654
654
  const r = e.createdAt;
655
655
  if (!r) return [];
656
656
  const i = new Set(n);
657
- return e.author.type === "user" && e.author.id && i.add(e.author.id), Object.entries(t).filter(([a, o]) => o >= r && !i.has(a)).map(([a]) => a);
657
+ return e.author.type === "user" && e.author.id && i.add(e.author.id), Object.entries(t).filter(([o, a]) => a >= r && !i.has(o)).map(([o]) => o);
658
658
  }
659
659
  function Ue(e) {
660
660
  return e.createdAt ?? 0;
@@ -817,33 +817,33 @@ function Ge(e, t) {
817
817
  const Be = 36e5, He = 864e5;
818
818
  function Ir(e, t, n) {
819
819
  const r = n === "hour" ? Be : He, i = [];
820
- for (let a = Ge(e, n); a <= t; a += r)
821
- i.push(je(a, n));
820
+ for (let o = Ge(e, n); o <= t; o += r)
821
+ i.push(je(o, n));
822
822
  return i;
823
823
  }
824
824
  const Fe = [
825
825
  { id: "resource", label: "Resource", labelSource: "raw" },
826
826
  { id: "origin", label: "Herkomst", labelSource: "raw" }
827
- ], We = Fe.map((e) => e.id);
828
- function Ve(e, t) {
827
+ ], Ve = Fe.map((e) => e.id);
828
+ function We(e, t) {
829
829
  return `${e}.usage.${t}`;
830
830
  }
831
831
  function wr(e, t) {
832
832
  return t.map((n) => ({
833
- id: Ve(e, n.unit),
833
+ id: We(e, n.unit),
834
834
  label: n.label,
835
835
  category: "Verbruik",
836
836
  valueType: n.valueType ?? "count",
837
837
  aggregation: "sum",
838
838
  supportedDimensions: [
839
839
  "provider",
840
- ...We,
840
+ ...Ve,
841
841
  ...n.extraDimensions ?? [],
842
842
  "time"
843
843
  ]
844
844
  }));
845
845
  }
846
- const de = /* @__PURE__ */ new Set(["info", "success", "warning", "destructive"]), B = 200, H = 100, F = 200, W = 12, V = 4, pe = 4e3, C = 500, Mr = 256 * 1024, ze = /* @__PURE__ */ new Set([
846
+ const de = /* @__PURE__ */ new Set(["info", "success", "warning", "destructive"]), B = 200, H = 100, F = 200, V = 12, W = 4, pe = 4e3, C = 500, Mr = 256 * 1024, ze = /* @__PURE__ */ new Set([
847
847
  "heading",
848
848
  "paragraph",
849
849
  "list",
@@ -869,31 +869,31 @@ function Je(e) {
869
869
  t += e[n], n += 1;
870
870
  continue;
871
871
  }
872
- const i = n + (r ? 2 : 1), a = z(e, i, "[", "]");
873
- if (a < 0 || e[a + 1] !== "(") {
872
+ const i = n + (r ? 2 : 1), o = z(e, i, "[", "]");
873
+ if (o < 0 || e[o + 1] !== "(") {
874
874
  t += e[n], n += 1;
875
875
  continue;
876
876
  }
877
- const o = z(e, a + 2, "(", ")");
878
- if (o < 0) {
877
+ const a = z(e, o + 2, "(", ")");
878
+ if (a < 0) {
879
879
  t += e[n], n += 1;
880
880
  continue;
881
881
  }
882
- const s = e.slice(i, a), c = e.slice(a + 2, o).trim().split(/\s+/)[0] ?? "";
883
- t += r || !fe(c) ? s : e.slice(n, o + 1), n = o + 1;
882
+ const s = e.slice(i, o), c = e.slice(o + 2, a).trim().split(/\s+/)[0] ?? "";
883
+ t += r || !fe(c) ? s : e.slice(n, a + 1), n = a + 1;
884
884
  }
885
885
  return t;
886
886
  }
887
887
  function z(e, t, n, r) {
888
888
  let i = 1;
889
- for (let a = t; a < e.length; a += 1) {
890
- if (e[a] === "\\") {
891
- a += 1;
889
+ for (let o = t; o < e.length; o += 1) {
890
+ if (e[o] === "\\") {
891
+ o += 1;
892
892
  continue;
893
893
  }
894
- if (e[a] === n) i += 1;
895
- else if (e[a] === r && (i -= 1, i === 0))
896
- return a;
894
+ if (e[o] === n) i += 1;
895
+ else if (e[o] === r && (i -= 1, i === 0))
896
+ return o;
897
897
  }
898
898
  return -1;
899
899
  }
@@ -927,52 +927,52 @@ function kr(e, t = () => {
927
927
  t(`unknown block type ${String(i.type)}`);
928
928
  continue;
929
929
  }
930
- const a = typeof i.block_id == "string" ? { block_id: i.block_id } : {};
930
+ const o = typeof i.block_id == "string" ? { block_id: i.block_id } : {};
931
931
  switch (i.type) {
932
932
  case "heading": {
933
- const o = u(i.text);
934
- if (!o) {
933
+ const a = u(i.text);
934
+ if (!a) {
935
935
  t("a heading without text");
936
936
  continue;
937
937
  }
938
938
  const s = i.level === 2 || i.level === 3 ? i.level : 1;
939
- n.push({ ...a, type: "heading", level: s, text: o });
939
+ n.push({ ...o, type: "heading", level: s, text: a });
940
940
  break;
941
941
  }
942
942
  case "paragraph": {
943
- const o = u(i.text);
944
- if (!o) {
943
+ const a = u(i.text);
944
+ if (!a) {
945
945
  t("a paragraph without text");
946
946
  continue;
947
947
  }
948
- n.push({ ...a, type: "paragraph", text: o });
948
+ n.push({ ...o, type: "paragraph", text: a });
949
949
  break;
950
950
  }
951
951
  case "quote": {
952
- const o = u(i.text);
953
- if (!o) {
952
+ const a = u(i.text);
953
+ if (!a) {
954
954
  t("a quote without text");
955
955
  continue;
956
956
  }
957
- n.push({ ...a, type: "quote", text: o });
957
+ n.push({ ...o, type: "quote", text: a });
958
958
  break;
959
959
  }
960
960
  case "code": {
961
- const o = Qe(i.text);
962
- if (!o) {
961
+ const a = Qe(i.text);
962
+ if (!a) {
963
963
  t("a code block without text");
964
964
  continue;
965
965
  }
966
966
  const s = typeof i.lang == "string" ? { lang: i.lang.slice(0, 32) } : {};
967
- n.push({ ...a, type: "code", ...s, text: o });
967
+ n.push({ ...o, type: "code", ...s, text: a });
968
968
  break;
969
969
  }
970
970
  case "divider":
971
- n.push({ ...a, type: "divider" });
971
+ n.push({ ...o, type: "divider" });
972
972
  break;
973
973
  case "list": {
974
- const o = Array.isArray(i.items) ? i.items : [], s = [];
975
- for (const p of o) {
974
+ const a = Array.isArray(i.items) ? i.items : [], s = [];
975
+ for (const p of a) {
976
976
  if (s.length >= H) {
977
977
  t(`more than ${H} list items`);
978
978
  break;
@@ -987,14 +987,14 @@ function kr(e, t = () => {
987
987
  continue;
988
988
  }
989
989
  const c = i.style === "numbered" ? "numbered" : "bulleted";
990
- n.push({ ...a, type: "list", style: c, items: s });
990
+ n.push({ ...o, type: "list", style: c, items: s });
991
991
  break;
992
992
  }
993
993
  case "table": {
994
- const o = Array.isArray(i.columns) ? i.columns : [], s = [];
995
- for (const l of o) {
996
- if (s.length >= W) {
997
- t(`more than ${W} table columns`);
994
+ const a = Array.isArray(i.columns) ? i.columns : [], s = [];
995
+ for (const l of a) {
996
+ if (s.length >= V) {
997
+ t(`more than ${V} table columns`);
998
998
  break;
999
999
  }
1000
1000
  const A = u(l?.label, C), I = l?.align === "right" ? "right" : void 0;
@@ -1015,7 +1015,7 @@ function kr(e, t = () => {
1015
1015
  }
1016
1016
  const f = u(i.caption, C);
1017
1017
  n.push({
1018
- ...a,
1018
+ ...o,
1019
1019
  type: "table",
1020
1020
  columns: s,
1021
1021
  rows: p,
@@ -1024,10 +1024,10 @@ function kr(e, t = () => {
1024
1024
  break;
1025
1025
  }
1026
1026
  case "kpi": {
1027
- const o = Array.isArray(i.items) ? i.items : [], s = [];
1028
- for (const c of o) {
1029
- if (s.length >= V) {
1030
- t(`more than ${V} kpi items`);
1027
+ const a = Array.isArray(i.items) ? i.items : [], s = [];
1028
+ for (const c of a) {
1029
+ if (s.length >= W) {
1030
+ t(`more than ${W} kpi items`);
1031
1031
  break;
1032
1032
  }
1033
1033
  const p = u(c?.value, 40), f = u(c?.label, 80);
@@ -1041,22 +1041,22 @@ function kr(e, t = () => {
1041
1041
  t("a kpi block without usable items");
1042
1042
  continue;
1043
1043
  }
1044
- n.push({ ...a, type: "kpi", items: s });
1044
+ n.push({ ...o, type: "kpi", items: s });
1045
1045
  break;
1046
1046
  }
1047
1047
  case "callout": {
1048
- const o = u(i.text);
1049
- if (!o) {
1048
+ const a = u(i.text);
1049
+ if (!a) {
1050
1050
  t("a callout without text");
1051
1051
  continue;
1052
1052
  }
1053
1053
  const s = u(i.title, 200);
1054
1054
  n.push({
1055
- ...a,
1055
+ ...o,
1056
1056
  type: "callout",
1057
1057
  tone: et(i.tone),
1058
1058
  ...s ? { title: s } : {},
1059
- text: o
1059
+ text: a
1060
1060
  });
1061
1061
  break;
1062
1062
  }
@@ -1078,7 +1078,7 @@ function X(e) {
1078
1078
  return e.replace(/\|/g, "\\|").replace(/\r?\n/g, " ").trim();
1079
1079
  }
1080
1080
  function Y(e, t, n) {
1081
- const r = e.map((i, a) => n?.[a] === "right" ? "---:" : "---");
1081
+ const r = e.map((i, o) => n?.[o] === "right" ? "---:" : "---");
1082
1082
  return [
1083
1083
  `| ${e.map(X).join(" | ")} |`,
1084
1084
  `| ${r.join(" | ")} |`,
@@ -1119,12 +1119,12 @@ function tt(e) {
1119
1119
  return (e.title ? `**${e.title}** ${e.text}` : e.text).split(/\r?\n/).map((n) => `> ${n}`);
1120
1120
  }
1121
1121
  }
1122
- function vr(e, t) {
1122
+ function Nr(e, t) {
1123
1123
  const n = [], r = e.some((i) => i.type === "heading" && i.level === 1);
1124
1124
  t && !r && n.push(`# ${t}`);
1125
1125
  for (const i of e) {
1126
- const a = tt(i);
1127
- a.length > 0 && n.push(a.join(`
1126
+ const o = tt(i);
1127
+ o.length > 0 && n.push(o.join(`
1128
1128
  `));
1129
1129
  }
1130
1130
  return `${n.join(`
@@ -1133,7 +1133,7 @@ function vr(e, t) {
1133
1133
  `;
1134
1134
  }
1135
1135
  const me = (e) => `user:${e}`, ge = (e) => `team:${e}`;
1136
- function Nr(e) {
1136
+ function vr(e) {
1137
1137
  const t = /* @__PURE__ */ new Set();
1138
1138
  for (const n of e ?? [])
1139
1139
  n?.id && (n.kind === "user" && t.add(me(n.id)), n.kind === "team" && t.add(ge(n.id)));
@@ -1181,13 +1181,13 @@ function Ur(e, t, n = it) {
1181
1181
  };
1182
1182
  }
1183
1183
  const Kr = /* @__PURE__ */ new Set(["mail", "message"]);
1184
- function at(e, t) {
1184
+ function ot(e, t) {
1185
1185
  const n = e.settings?.signatures?.[t];
1186
1186
  return !n?.enabled || !n.body || n.body.trim() === "" ? null : n;
1187
1187
  }
1188
1188
  function jr(e, t, n, r = "html") {
1189
1189
  if (!e) return n;
1190
- const i = at(e, t);
1190
+ const i = ot(e, t);
1191
1191
  return i ? `${n}${r === "text" ? `
1192
1192
 
1193
1193
  ` : t === "mail" ? "<br><br>-- <br>" : "<br><br>"}${i.body}` : n;
@@ -1195,7 +1195,7 @@ function jr(e, t, n, r = "html") {
1195
1195
  function Gr(e) {
1196
1196
  return e.endpoints ?? [];
1197
1197
  }
1198
- const ot = 36e5, st = 864e5, g = -1 / 0, Br = (e) => e.score > g, _ = {
1198
+ const at = 36e5, st = 864e5, g = -1 / 0, Br = (e) => e.score > g, _ = {
1199
1199
  urgent: 40,
1200
1200
  high: 25,
1201
1201
  normal: 10,
@@ -1235,16 +1235,16 @@ function Et(e, t, n) {
1235
1235
  }
1236
1236
  const he = (e) => Re(e) === "outbound_message", ye = (e) => mt.includes(e);
1237
1237
  function R(e, t) {
1238
- return Math.max(0, (t - At(e)) / ot);
1238
+ return Math.max(0, (t - At(e)) / at);
1239
1239
  }
1240
- function Wr(e, t) {
1240
+ function Vr(e, t) {
1241
1241
  return !ye(e.status) || e.firstResponseAt ? !1 : R(e, t) > ht[e.priority ?? "normal"];
1242
1242
  }
1243
1243
  function St(e, t) {
1244
1244
  const n = e.lastActivityPreview;
1245
1245
  return n?.direction !== "outbound" || !he(n.type) ? !1 : R(e, t) < yt;
1246
1246
  }
1247
- function Vr(e, t) {
1247
+ function Wr(e, t) {
1248
1248
  if (!ye(e.status)) return { score: g, reasons: [] };
1249
1249
  if (e.snoozedTill && e.snoozedTill > t.now) return { score: g, reasons: [] };
1250
1250
  if (St(e, t.now)) return { score: g, reasons: [] };
@@ -1252,13 +1252,13 @@ function Vr(e, t) {
1252
1252
  let n = 0;
1253
1253
  const r = [], i = e.priority ?? "normal";
1254
1254
  _[i] > 0 && (n += _[i], r.push(`priority:${i}`)), ft(e, t.userId) && (n += 20, r.push("unseen")), e.assignedUserId && e.assignedUserId === t.userId && (n += 15, r.push("assigned-to-you"));
1255
- const a = R(e, t.now);
1256
- if (a > 0) {
1257
- const s = Math.min(a * 2, 30);
1258
- n += s, a >= 1 && r.push(`waiting:${Math.round(a)}h`);
1255
+ const o = R(e, t.now);
1256
+ if (o > 0) {
1257
+ const s = Math.min(o * 2, 30);
1258
+ n += s, o >= 1 && r.push(`waiting:${Math.round(o)}h`);
1259
1259
  }
1260
- const o = e.lastActivityPreview;
1261
- return o?.type === "AI_ACTION_PROPOSED" && (n += 30, r.push("awaiting-approval")), o?.direction === "outbound" && he(o.type) && (n += 10, r.push("no-reply")), !e.firstResponseAt && e.lastActivityPreview?.direction === "inbound" && (n += 10, r.push("awaiting-reply")), ut(e.remoteParty?.resource, e.lastActivityPreview?.snippet) && (n -= gt, r.push("bulk")), { score: n, reasons: r };
1260
+ const a = e.lastActivityPreview;
1261
+ return a?.type === "AI_ACTION_PROPOSED" && (n += 30, r.push("awaiting-approval")), a?.direction === "outbound" && he(a.type) && (n += 10, r.push("no-reply")), !e.firstResponseAt && e.lastActivityPreview?.direction === "inbound" && (n += 10, r.push("awaiting-reply")), ut(e.remoteParty?.resource, e.lastActivityPreview?.snippet) && (n -= gt, r.push("bulk")), { score: n, reasons: r };
1262
1262
  }
1263
1263
  const zr = (e) => !!e.assignedUserId || !!e.assignedInboxId, Xr = (e) => e.status === "closed", Yr = (e) => ({
1264
1264
  urgent: 10,
@@ -1313,10 +1313,10 @@ function _t(e, t) {
1313
1313
  function ti(e, t, n) {
1314
1314
  if (!e) return !0;
1315
1315
  if (e === t) return !1;
1316
- const r = new Map(n.map((o) => [o.id, o]));
1316
+ const r = new Map(n.map((a) => [a.id, a]));
1317
1317
  if (!r.has(e) || t && Tt(e, t, r)) return !1;
1318
- const i = _t(e, r), a = t ? Ee(t, n) : 1;
1319
- return i + a <= be;
1318
+ const i = _t(e, r), o = t ? Ee(t, n) : 1;
1319
+ return i + o <= be;
1320
1320
  }
1321
1321
  function Tt(e, t, n) {
1322
1322
  const r = /* @__PURE__ */ new Set();
@@ -1378,10 +1378,10 @@ function Mt(e, t) {
1378
1378
  function ii(e, t) {
1379
1379
  return e.filter((n) => n.enabled && Mt(n.ownerScope, t));
1380
1380
  }
1381
- function ai(e) {
1381
+ function oi(e) {
1382
1382
  return e.credentialScope ? e.credentialScope : (e.authMode ?? "header") === "header" || e.oauth?.scope === "org" ? "shared" : "per-user";
1383
1383
  }
1384
- function oi(e) {
1384
+ function ai(e) {
1385
1385
  return `mcp__${e}__`;
1386
1386
  }
1387
1387
  const si = 1e3, ci = 2e3, li = 500, ui = 12e3, di = 4e3, kt = ["contact", "company", "work_item"];
@@ -1416,7 +1416,7 @@ function hi(e) {
1416
1416
  function Ot(e) {
1417
1417
  return Ct(e);
1418
1418
  }
1419
- function vt(e) {
1419
+ function Nt(e) {
1420
1420
  switch (e.kind) {
1421
1421
  case "personal":
1422
1422
  return { kind: "user", userId: e.userId };
@@ -1426,9 +1426,9 @@ function vt(e) {
1426
1426
  return { kind: "org" };
1427
1427
  }
1428
1428
  }
1429
- const Nt = vt;
1429
+ const vt = Nt;
1430
1430
  function yi(e) {
1431
- return e.agentId ? { kind: "user", userId: e.agentId } : Nt(e.ownerScope);
1431
+ return e.agentId ? { kind: "user", userId: e.agentId } : vt(e.ownerScope);
1432
1432
  }
1433
1433
  function Ai(e) {
1434
1434
  return Ot(e);
@@ -1453,8 +1453,8 @@ function Rt(e) {
1453
1453
  return e?.kind === "assignment";
1454
1454
  }
1455
1455
  function _i(e) {
1456
- const { trigger: t, agentId: n, target: r, activityType: i, assigneeUserId: a, authorUserId: o } = e;
1457
- return Rt(t) ? n ? r ? r.activityTypes.includes(i) ? a ? a !== n ? "assigned to someone else" : o && o === n ? "the agent assigned this to itself, which would restart its own run" : null : `no assignee found at ${r.assigneePath}` : `activity type ${i} does not announce an assignment for ${r.id}` : `assignment target kind "${t.targetKind}" is not declared by any installed app` : "this playbook has no agent, so an assignment can never be for it" : "trigger is not an assignment trigger";
1456
+ const { trigger: t, agentId: n, target: r, activityType: i, assigneeUserId: o, authorUserId: a } = e;
1457
+ return Rt(t) ? n ? r ? r.activityTypes.includes(i) ? o ? o !== n ? "assigned to someone else" : a && a === n ? "the agent assigned this to itself, which would restart its own run" : null : `no assignee found at ${r.assigneePath}` : `activity type ${i} does not announce an assignment for ${r.id}` : `assignment target kind "${t.targetKind}" is not declared by any installed app` : "this playbook has no agent, so an assignment can never be for it" : "trigger is not an assignment trigger";
1458
1458
  }
1459
1459
  function Ti(e) {
1460
1460
  return (e.startsWith("tool:") ? e.slice(5) : e).replace(/__/g, " · ").replace(/\./g, " · ").replace(/_/g, " ");
@@ -1532,12 +1532,12 @@ function Ut(e) {
1532
1532
  return { total: n, rate: n ? t / n : 0 };
1533
1533
  }
1534
1534
  const Kt = 10, jt = 0.9;
1535
- function vi(e) {
1535
+ function Ni(e) {
1536
1536
  const { total: t, rate: n } = Ut(e);
1537
1537
  return t >= Kt && n >= jt;
1538
1538
  }
1539
1539
  const Gt = ["done", "escalated", "failed", "stopped"];
1540
- function Ni(e) {
1540
+ function vi(e) {
1541
1541
  return Gt.includes(e);
1542
1542
  }
1543
1543
  function Bt(e) {
@@ -1571,7 +1571,7 @@ function Pi(e) {
1571
1571
  return `${Math.floor(t / 60)}:${String(t % 60).padStart(2, "0")}`;
1572
1572
  }
1573
1573
  function Ui(e) {
1574
- const t = Math.max(0, Math.floor(e)), n = (a) => String(a).padStart(2, "0"), r = Math.floor(t / 60) % 60, i = Math.floor(t / 3600);
1574
+ const t = Math.max(0, Math.floor(e)), n = (o) => String(o).padStart(2, "0"), r = Math.floor(t / 60) % 60, i = Math.floor(t / 3600);
1575
1575
  return i > 0 ? `${i}:${n(r)}:${n(t % 60)}` : `${n(r)}:${n(t % 60)}`;
1576
1576
  }
1577
1577
  function Ht(e) {
@@ -1581,8 +1581,8 @@ function Ki(e, t) {
1581
1581
  const n = Ht(e) || "werksoort", r = new Set(t);
1582
1582
  if (!r.has(n)) return n;
1583
1583
  for (let i = 2; i < 500; i++) {
1584
- const a = `${n}-${i}`;
1585
- if (!r.has(a)) return a;
1584
+ const o = `${n}-${i}`;
1585
+ if (!r.has(o)) return o;
1586
1586
  }
1587
1587
  return `${n}-${r.size + 1}`;
1588
1588
  }
@@ -1597,7 +1597,7 @@ function Ft(e, t) {
1597
1597
  const n = (e.order ?? 0) - (t.order ?? 0);
1598
1598
  return n !== 0 ? n : (e.label || "").localeCompare(t.label || "");
1599
1599
  }
1600
- const Wt = 20, Vt = 20, O = 300;
1600
+ const Vt = 20, Wt = 20, O = 300;
1601
1601
  function h(e) {
1602
1602
  return e.toLowerCase().replace(/[^\p{L}\p{N}\s]/gu, " ").replace(/\s+/g, " ").trim();
1603
1603
  }
@@ -1609,14 +1609,14 @@ function zt(e) {
1609
1609
  }
1610
1610
  function Bi(e, t) {
1611
1611
  const n = zt(t.text), r = h(n);
1612
- if (!r || (e.examples ?? []).some((o) => h(o) === r)) return null;
1613
- const i = e.exampleCandidates ?? [], a = i.findIndex((o) => h(o.text) === r);
1614
- if (a >= 0) {
1615
- if (i[a].corrected || !t.corrected) return null;
1616
- const o = [...i];
1617
- return o[a] = { ...o[a], corrected: !0, addedAt: t.addedAt }, Q(o);
1612
+ if (!r || (e.examples ?? []).some((a) => h(a) === r)) return null;
1613
+ const i = e.exampleCandidates ?? [], o = i.findIndex((a) => h(a.text) === r);
1614
+ if (o >= 0) {
1615
+ if (i[o].corrected || !t.corrected) return null;
1616
+ const a = [...i];
1617
+ return a[o] = { ...a[o], corrected: !0, addedAt: t.addedAt }, Q(a);
1618
1618
  }
1619
- return Q([{ ...t, text: n }, ...i]).slice(0, Vt);
1619
+ return Q([{ ...t, text: n }, ...i]).slice(0, Wt);
1620
1620
  }
1621
1621
  function Q(e) {
1622
1622
  return [...e].sort(
@@ -1624,8 +1624,8 @@ function Q(e) {
1624
1624
  );
1625
1625
  }
1626
1626
  function Hi(e, t) {
1627
- const n = h(t), r = (e.examples ?? []).filter((a) => a.trim());
1628
- return { examples: r.some((a) => h(a) === n) ? r : [...r, t].slice(-Wt), exampleCandidates: Xt(e, t) };
1627
+ const n = h(t), r = (e.examples ?? []).filter((o) => o.trim());
1628
+ return { examples: r.some((o) => h(o) === n) ? r : [...r, t].slice(-Vt), exampleCandidates: Xt(e, t) };
1629
1629
  }
1630
1630
  function Xt(e, t) {
1631
1631
  const n = h(t);
@@ -1638,10 +1638,10 @@ function Yt(e, t) {
1638
1638
  function Fi(e, t) {
1639
1639
  return e.filter((n) => Yt(n, t));
1640
1640
  }
1641
- function Wi(e) {
1641
+ function Vi(e) {
1642
1642
  return e.type === "agent";
1643
1643
  }
1644
- const Vi = "WORK_COMMENT_ADDED", zi = "WORK_ITEM_ASSIGNED", Xi = "WORK_ITEM_STATUS_CHANGED";
1644
+ const Wi = "WORK_COMMENT_ADDED", zi = "WORK_ITEM_ASSIGNED", Xi = "WORK_ITEM_STATUS_CHANGED";
1645
1645
  function qt(e, t) {
1646
1646
  const n = (r) => {
1647
1647
  const i = new Date(r);
@@ -1654,10 +1654,10 @@ function Yi(e, t) {
1654
1654
  const n = t.remindersById?.[e.id];
1655
1655
  if (n && n.remindAt > t.now) return { score: g, reasons: [] };
1656
1656
  let r = 0;
1657
- const i = [], a = e.priority ?? "normal";
1658
- if (_[a] > 0 && (r += _[a], i.push(`priority:${a}`)), typeof e.dueDate == "number") {
1659
- const o = qt(e.dueDate, t.now);
1660
- o < 0 ? (r += 35, i.push("overdue")) : o === 0 && (r += 20, i.push("due-today"));
1657
+ const i = [], o = e.priority ?? "normal";
1658
+ if (_[o] > 0 && (r += _[o], i.push(`priority:${o}`)), typeof e.dueDate == "number") {
1659
+ const a = qt(e.dueDate, t.now);
1660
+ a < 0 ? (r += 35, i.push("overdue")) : a === 0 && (r += 20, i.push("due-today"));
1661
1661
  }
1662
1662
  return e.source?.initiator === "system" && e.source.systemReason && (r += 15, i.push(`auto:${e.source.systemReason}`)), { score: r, reasons: i };
1663
1663
  }
@@ -1690,7 +1690,7 @@ function Qi(e, t = 25) {
1690
1690
  for (const r of e.partyKeys ?? []) n.add(r);
1691
1691
  return Array.from(n).slice(0, t);
1692
1692
  }
1693
- function ea(e) {
1693
+ function eo(e) {
1694
1694
  return [_e(e.id)];
1695
1695
  }
1696
1696
  const $ = [
@@ -1705,10 +1705,10 @@ function en(e) {
1705
1705
  function tn(e, t) {
1706
1706
  return t.find((n) => n.key === e)?.category ?? "todo";
1707
1707
  }
1708
- function ta(e, t) {
1708
+ function to(e, t) {
1709
1709
  return t.find((n) => n.key === e);
1710
1710
  }
1711
- function na(e) {
1711
+ function no(e) {
1712
1712
  const t = en(e), n = e?.defaultStatusKey;
1713
1713
  return n && t.some((r) => r.key === n) ? n : nn(t)[0]?.key ?? $[0].key;
1714
1714
  }
@@ -1718,22 +1718,22 @@ function nn(e) {
1718
1718
  return r !== 0 ? r : (t.label || "").localeCompare(n.label || "");
1719
1719
  });
1720
1720
  }
1721
- function ra(e, t) {
1721
+ function ro(e, t) {
1722
1722
  return tn(e, t) === "done";
1723
1723
  }
1724
1724
  function rn(e) {
1725
1725
  return (e || "").normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/[^a-z0-9]+/g, "-").slice(0, 48).replace(/^-+|-+$/g, "");
1726
1726
  }
1727
- function ia(e, t) {
1727
+ function io(e, t) {
1728
1728
  const n = rn(e) || "status", r = /* @__PURE__ */ new Set([...t, ...Te]);
1729
1729
  if (!r.has(n)) return n;
1730
1730
  for (let i = 2; i < 500; i++) {
1731
- const a = `${n}-${i}`;
1732
- if (!r.has(a)) return a;
1731
+ const o = `${n}-${i}`;
1732
+ if (!r.has(o)) return o;
1733
1733
  }
1734
1734
  return `${n}-${r.size + 1}`;
1735
1735
  }
1736
- function aa(e) {
1736
+ function oo(e) {
1737
1737
  const t = [];
1738
1738
  if (!e.length) return [{ index: -1, reason: "empty" }];
1739
1739
  const n = /* @__PURE__ */ new Set();
@@ -1745,7 +1745,7 @@ function aa(e) {
1745
1745
  Te.includes(r.key) && t.push({ index: i, reason: "reserved_key", key: r.key }), n.has(r.key) && t.push({ index: i, reason: "duplicate_key", key: r.key }), n.add(r.key);
1746
1746
  }), e.some((r) => r.category === "todo" || r.category === "in_progress") || t.push({ index: -1, reason: "no_open" }), e.some((r) => r.category === "done") || t.push({ index: -1, reason: "no_done" }), t;
1747
1747
  }
1748
- const an = /* @__PURE__ */ new Set(["image/png", "image/jpeg", "image/jpg", "image/gif", "image/webp"]), on = /* @__PURE__ */ new Set([
1748
+ const on = /* @__PURE__ */ new Set(["image/png", "image/jpeg", "image/jpg", "image/gif", "image/webp"]), an = /* @__PURE__ */ new Set([
1749
1749
  "text/plain",
1750
1750
  "text/markdown",
1751
1751
  "text/csv",
@@ -1756,62 +1756,62 @@ const an = /* @__PURE__ */ new Set(["image/png", "image/jpeg", "image/jpg", "ima
1756
1756
  ]);
1757
1757
  function sn(e) {
1758
1758
  const t = (e ?? "").trim().toLowerCase().split(";")[0];
1759
- return t ? an.has(t) ? "image" : t === "application/pdf" ? "pdf" : on.has(t) ? "text" : t.startsWith("audio/") ? "audio" : "unsupported" : "unsupported";
1759
+ return t ? on.has(t) ? "image" : t === "application/pdf" ? "pdf" : an.has(t) ? "text" : t.startsWith("audio/") ? "audio" : "unsupported" : "unsupported";
1760
1760
  }
1761
1761
  const y = 1024 * 1024, cn = {
1762
1762
  image: 5 * y,
1763
1763
  pdf: 20 * y,
1764
1764
  text: 1 * y,
1765
1765
  audio: 20 * y
1766
- }, oa = 25 * y, sa = 5;
1767
- function ca(e, t) {
1766
+ }, ao = 25 * y, so = 5;
1767
+ function co(e, t) {
1768
1768
  const n = sn(e);
1769
1769
  return n === "unsupported" ? "unsupported" : t > cn[n] ? "too-large" : null;
1770
1770
  }
1771
- function la(e) {
1771
+ function lo(e) {
1772
1772
  return e.access !== "read" && e.effect !== "internal";
1773
1773
  }
1774
1774
  function ln(e) {
1775
1775
  return `${e.kind}:${e.id || e.url || e.title}`;
1776
1776
  }
1777
- function ua(e, t = []) {
1777
+ function uo(e, t = []) {
1778
1778
  const n = new Set(t), r = [], i = [];
1779
- for (const a of e) {
1780
- const o = ln(a);
1781
- n.has(o) || (n.add(o), r.push(a), i.push(o));
1779
+ for (const o of e) {
1780
+ const a = ln(o);
1781
+ n.has(a) || (n.add(a), r.push(o), i.push(a));
1782
1782
  }
1783
1783
  return { sources: r, keys: i };
1784
1784
  }
1785
- const da = "assist-source", pa = ["blocking", "due", "open"];
1786
- function fa(e, t) {
1785
+ const po = "assist-source", fo = ["blocking", "due", "open"];
1786
+ function mo(e, t) {
1787
1787
  const [n, r] = (e.subjectKey ?? "").split(":");
1788
1788
  return n === t && r ? r : void 0;
1789
1789
  }
1790
1790
  const ee = { blocking: 0, due: 1, open: 2 };
1791
- function ma(e, t) {
1791
+ function go(e, t) {
1792
1792
  return ee[e.band ?? "open"] - ee[t.band ?? "open"] || (t.priority ?? 0) - (e.priority ?? 0) || e.id.localeCompare(t.id);
1793
1793
  }
1794
- function ga(e) {
1794
+ function ho(e) {
1795
1795
  return e.sessions.filter(
1796
1796
  (t) => t.id !== e.exceptSessionId && t.state === "connected" && e.canHold(t.providerId)
1797
1797
  );
1798
1798
  }
1799
- function ha(e) {
1799
+ function yo(e) {
1800
1800
  return e.sessions.filter(
1801
1801
  (t) => t.id !== e.exceptSessionId && t.state === "connected" && !e.canHold(t.providerId)
1802
1802
  );
1803
1803
  }
1804
- function ya(e) {
1804
+ function Ao(e) {
1805
1805
  return e.sessions.some(
1806
1806
  (n) => n.id !== e.exceptSessionId && (n.state === "connected" || n.state === "on_hold")
1807
1807
  ) ? { admit: !1, reason: "busy" } : { admit: !0 };
1808
1808
  }
1809
1809
  function un(e, t) {
1810
- const n = new Set(e.disabledIntents ?? []), r = e.intentOverrides ?? {}, i = t.intents.filter((o) => !n.has(o.intent)).map((o) => pn(o, r[o.intent]));
1810
+ const n = new Set(e.disabledIntents ?? []), r = e.intentOverrides ?? {}, i = t.intents.filter((a) => !n.has(a.intent)).map((a) => pn(a, r[a.intent]));
1811
1811
  if (!e.extraIntents || e.extraIntents.length === 0) return i;
1812
- const a = new Set(i.map((o) => o.intent));
1813
- for (const o of e.extraIntents)
1814
- a.has(o.intent) || (i.push(o), a.add(o.intent));
1812
+ const o = new Set(i.map((a) => a.intent));
1813
+ for (const a of e.extraIntents)
1814
+ o.has(a.intent) || (i.push(a), o.add(a.intent));
1815
1815
  return i;
1816
1816
  }
1817
1817
  function dn(e, t) {
@@ -1823,7 +1823,7 @@ function dn(e, t) {
1823
1823
  }
1824
1824
  return n;
1825
1825
  }
1826
- function Aa(e, t) {
1826
+ function bo(e, t) {
1827
1827
  const n = dn(e, t);
1828
1828
  return Object.entries(n).filter(([, r]) => !r).map(([r]) => r);
1829
1829
  }
@@ -1834,31 +1834,31 @@ function pn(e, t) {
1834
1834
  transport: t.transport ?? e.transport
1835
1835
  } : e;
1836
1836
  }
1837
- function ba(e, t) {
1837
+ function Eo(e, t) {
1838
1838
  const n = [];
1839
1839
  for (const r of e) {
1840
1840
  if (!r.enabled) continue;
1841
1841
  const i = t[r.providerId];
1842
1842
  if (i)
1843
- for (const a of un(r, i))
1844
- n.push({ channel: r, description: i, capability: a });
1843
+ for (const o of un(r, i))
1844
+ n.push({ channel: r, description: i, capability: o });
1845
1845
  }
1846
1846
  return n;
1847
1847
  }
1848
- function Ea(e, t) {
1848
+ function So(e, t) {
1849
1849
  return t.filter((n) => n.capability.intent === e);
1850
1850
  }
1851
1851
  function fn(e, t) {
1852
1852
  return t.filter((n) => n.capability.targetSchemes.includes(e));
1853
1853
  }
1854
- function Sa(e, t) {
1854
+ function _o(e, t) {
1855
1855
  return fn(e.scheme, t);
1856
1856
  }
1857
- function _a(e, t, n) {
1857
+ function To(e, t, n) {
1858
1858
  const r = [];
1859
1859
  for (const i of e)
1860
- for (const a of n)
1861
- a.capability.intent === t && a.capability.targetSchemes.includes(i.scheme) && r.push({ channelIntent: a, endpoint: i });
1860
+ for (const o of n)
1861
+ o.capability.intent === t && o.capability.targetSchemes.includes(i.scheme) && r.push({ channelIntent: o, endpoint: i });
1862
1862
  return r;
1863
1863
  }
1864
1864
  var mn = /* @__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))(mn || {});
@@ -1883,10 +1883,10 @@ const gn = {
1883
1883
  id: "note",
1884
1884
  custom: "note"
1885
1885
  };
1886
- function Ta(e) {
1886
+ function Io(e) {
1887
1887
  return e ? gn[e] ?? "note" : "note";
1888
1888
  }
1889
- const Ia = "message_window", wa = "message_templates", Ma = {
1889
+ const wo = "message_window", Mo = "message_templates", ko = {
1890
1890
  // E-mail
1891
1891
  FROM: "from",
1892
1892
  TO: "to",
@@ -1903,19 +1903,19 @@ const Ia = "message_window", wa = "message_templates", Ma = {
1903
1903
  // Voice/conference
1904
1904
  HOST: "host",
1905
1905
  PARTICIPANT: "participant"
1906
- }, ka = (e, t) => ({ intent: e, ...t }), Ca = "folder_management", Oa = "remote_search", va = {
1906
+ }, Co = (e, t) => ({ intent: e, ...t }), Oo = "folder_management", No = "remote_search", vo = {
1907
1907
  ok: !1,
1908
1908
  code: "UNSUPPORTED",
1909
1909
  message: "Provider does not support this op"
1910
- }, Na = "installation-id";
1911
- function Ra(e) {
1910
+ }, Ro = "context.collect", $o = "installation-id";
1911
+ function xo(e) {
1912
1912
  const t = [];
1913
1913
  for (const n of Object.keys(e))
1914
1914
  for (const r of Object.keys(e[n]))
1915
1915
  t.push({ lang: n, key: r, value: e[n][r] });
1916
1916
  return t;
1917
1917
  }
1918
- const $a = "notification-source", xa = (e, t) => `${e}.pref.${t}`, Da = {
1918
+ const Do = "notification-source", Lo = (e, t) => `${e}.pref.${t}`, Po = {
1919
1919
  ai: [
1920
1920
  "account.read",
1921
1921
  "account.write",
@@ -2049,24 +2049,24 @@ const $a = "notification-source", xa = (e, t) => `${e}.pref.${t}`, Da = {
2049
2049
  user: ["user.read", "user.write"],
2050
2050
  work: ["item.read", "item.write", "project.read", "project.write"]
2051
2051
  }, Ie = 9e4, hn = ["out_of_office"], we = (e) => hn.includes(e);
2052
- function La(e, t, n) {
2052
+ function Uo(e, t, n) {
2053
2053
  const r = n - e < Ie, i = t?.status && (!t.expiresAt || t.expiresAt > n) ? t : void 0;
2054
2054
  if (!i?.status) return { online: r, status: r ? "available" : "offline" };
2055
- const a = i.status;
2056
- return !r && !we(a) ? { online: !1, status: "offline" } : { online: r, status: a, message: i.message };
2055
+ const o = i.status;
2056
+ return !r && !we(o) ? { online: !1, status: "offline" } : { online: r, status: o, message: i.message };
2057
2057
  }
2058
- function Pa(e, t) {
2058
+ function Ko(e, t) {
2059
2059
  const n = t - e.lastSeenAt < Ie, r = n || we(e.status) ? e.status : "offline";
2060
2060
  return n === e.online && r === e.status ? e : { ...e, online: n, status: r };
2061
2061
  }
2062
- function Ua(e, t) {
2062
+ function jo(e, t) {
2063
2063
  return e?.teamId && t.includes(e.teamId) ? { teamId: e.teamId, mustChoose: !1 } : t.length === 1 ? { teamId: t[0], mustChoose: !1 } : { teamId: void 0, mustChoose: t.length > 1 };
2064
2064
  }
2065
- function Ka(e) {
2065
+ function Go(e) {
2066
2066
  return e.providerAvailable && e.allowed;
2067
2067
  }
2068
- const ja = "resources.describe", Ga = "resources.search", Ba = "resources.resolve", Ha = "resources.attached";
2069
- function Fa(e) {
2068
+ const Bo = "resources.describe", Ho = "resources.search", Fo = "resources.resolve", Vo = "resources.attached";
2069
+ function Wo(e) {
2070
2070
  const t = e.indexOf(":");
2071
2071
  return t === -1 ? e : e.slice(0, t);
2072
2072
  }
@@ -2075,11 +2075,11 @@ function ke(e) {
2075
2075
  const t = typeof e == "string" ? e.match(/apps\/([^/?#]+)/) : null;
2076
2076
  return t ? t[1] : null;
2077
2077
  }
2078
- function Wa(e) {
2078
+ function zo(e) {
2079
2079
  const t = ke(e);
2080
2080
  return t ? t !== Me : typeof e == "string" && e.startsWith("/wake");
2081
2081
  }
2082
- function Va(e) {
2082
+ function Xo(e) {
2083
2083
  return typeof e != "string" || e === "" || e === "/" ? !0 : ke(e) === Me;
2084
2084
  }
2085
2085
  function yn(e) {
@@ -2091,9 +2091,9 @@ function An(e) {
2091
2091
  }
2092
2092
  function bn(e, t) {
2093
2093
  const n = e.split("/").filter(Boolean), r = t.split("/").filter(Boolean), i = {};
2094
- return n.forEach((a, o) => {
2095
- if (a.startsWith(":")) {
2096
- const s = a.endsWith("?") ? a.slice(1, -1) : a.slice(1), c = r[o];
2094
+ return n.forEach((o, a) => {
2095
+ if (o.startsWith(":")) {
2096
+ const s = o.endsWith("?") ? o.slice(1, -1) : o.slice(1), c = r[a];
2097
2097
  c && (i[s] = c);
2098
2098
  }
2099
2099
  }), i;
@@ -2101,18 +2101,18 @@ function bn(e, t) {
2101
2101
  function En(e) {
2102
2102
  return e.publicBasePath ?? `/apps/${e.name}`;
2103
2103
  }
2104
- function za(e) {
2104
+ function Yo(e) {
2105
2105
  const t = [];
2106
2106
  for (const n of e) {
2107
2107
  if (!n?.name) continue;
2108
2108
  const r = En(n);
2109
2109
  for (const i of n.routes ?? []) {
2110
2110
  if (!i.public) continue;
2111
- const a = i.path === "/" ? "" : i.path;
2111
+ const o = i.path === "/" ? "" : i.path;
2112
2112
  t.push({
2113
2113
  appName: n.name,
2114
2114
  resource: i.resource,
2115
- pattern: `${r}${a}`,
2115
+ pattern: `${r}${o}`,
2116
2116
  props: i.props
2117
2117
  });
2118
2118
  }
@@ -2122,8 +2122,8 @@ function za(e) {
2122
2122
  function Sn(e, t) {
2123
2123
  const n = e.split("/").filter(Boolean), r = t.split("/").filter(Boolean);
2124
2124
  for (let i = 0; i < Math.min(n.length, r.length); i++) {
2125
- const a = n[i].startsWith(":"), o = r[i].startsWith(":");
2126
- if (a !== o) return o;
2125
+ const o = n[i].startsWith(":"), a = r[i].startsWith(":");
2126
+ if (o !== a) return a;
2127
2127
  }
2128
2128
  return n.length > r.length;
2129
2129
  }
@@ -2134,10 +2134,10 @@ function _n(e, t) {
2134
2134
  An(r.pattern).test(e) && (!n || Sn(r.pattern, n.pattern)) && (n = r);
2135
2135
  return n ? { ...n, params: { ...n.props, ...bn(n.pattern, e) } } : null;
2136
2136
  }
2137
- function Xa(e, t) {
2137
+ function qo(e, t) {
2138
2138
  return _n(e, t) !== null;
2139
2139
  }
2140
- const Ya = "sync-source", qa = "sync-target", Ja = 20, Tn = {
2140
+ const Jo = "sync-source", Zo = "sync-target", Qo = 20, Tn = {
2141
2141
  afrikaans: [
2142
2142
  "[Muziek]",
2143
2143
  "(C) TV GELDERLAND 2021",
@@ -2294,7 +2294,7 @@ const Ya = "sync-source", qa = "sync-target", Ja = 20, Tn = {
2294
2294
  t = t.replaceAll(r, "");
2295
2295
  });
2296
2296
  }), t = t.replace(/\(.*?\)/g, ""), t = t.replace(/\[.*?\]/g, ""), t;
2297
- }, wn = 6e4, Mn = 8e3, kn = 2, Cn = 0.4, On = 3, vn = /* @__PURE__ */ new Set([
2297
+ }, wn = 6e4, Mn = 8e3, kn = 2, Cn = 0.4, On = 3, Nn = /* @__PURE__ */ new Set([
2298
2298
  "aan",
2299
2299
  "als",
2300
2300
  "ben",
@@ -2407,10 +2407,10 @@ const Ya = "sync-source", qa = "sync-target", Ja = 20, Tn = {
2407
2407
  "you",
2408
2408
  "your"
2409
2409
  ]);
2410
- function Nn(e) {
2410
+ function vn(e) {
2411
2411
  const t = /* @__PURE__ */ new Set();
2412
2412
  for (const n of e.toLowerCase().split(/[^a-z0-9À-ɏ]+/))
2413
- n.length < On || vn.has(n) || t.add(n);
2413
+ n.length < On || Nn.has(n) || t.add(n);
2414
2414
  return [...t];
2415
2415
  }
2416
2416
  function Rn(e, t) {
@@ -2418,35 +2418,35 @@ function Rn(e, t) {
2418
2418
  if (!t.length) return 1;
2419
2419
  const n = new Set(t), r = new Set(e);
2420
2420
  let i = 0;
2421
- for (const a of r) n.has(a) || (i += 1);
2421
+ for (const o of r) n.has(o) || (i += 1);
2422
2422
  return i / r.size;
2423
2423
  }
2424
2424
  function $n(e, t = wn) {
2425
- const n = e.filter((o) => !o.partial && typeof o.text == "string");
2425
+ const n = e.filter((a) => !a.partial && typeof a.text == "string");
2426
2426
  if (!n.length) return { text: "", segmentCount: 0 };
2427
- const i = n.reduce((o, s) => Math.max(o, s.endedAt ?? 0), 0) - t;
2428
- return { text: n.filter((o) => (o.endedAt ?? 0) >= i).map((o) => In(o.text).trim()).filter(Boolean).join(" ").replace(/\s+/g, " ").trim(), segmentCount: n.length };
2427
+ const i = n.reduce((a, s) => Math.max(a, s.endedAt ?? 0), 0) - t;
2428
+ return { text: n.filter((a) => (a.endedAt ?? 0) >= i).map((a) => In(a.text).trim()).filter(Boolean).join(" ").replace(/\s+/g, " ").trim(), segmentCount: n.length };
2429
2429
  }
2430
2430
  const xn = 60;
2431
- function Za(e, t, n = xn) {
2431
+ function ea(e, t, n = xn) {
2432
2432
  const r = new Set(e), i = [...e];
2433
- for (const a of t)
2434
- !a || r.has(a) || (r.add(a), i.push(a));
2433
+ for (const o of t)
2434
+ !o || r.has(o) || (r.add(o), i.push(o));
2435
2435
  return i.slice(-n);
2436
2436
  }
2437
- function Qa(e) {
2437
+ function ta(e) {
2438
2438
  const { segments: t, now: n, state: r } = e;
2439
2439
  if (r.lastTriggerAt && n - r.lastTriggerAt < Mn)
2440
2440
  return { trigger: !1, reason: "too_soon" };
2441
2441
  const i = $n(t, e.windowMs);
2442
2442
  if (!i.text) return { trigger: !1, reason: "no_speech" };
2443
- const a = i.segmentCount - (r.lastSegmentCount ?? 0);
2444
- if (r.lastQueryTerms && a < kn)
2443
+ const o = i.segmentCount - (r.lastSegmentCount ?? 0);
2444
+ if (r.lastQueryTerms && o < kn)
2445
2445
  return { trigger: !1, reason: "too_few_new" };
2446
- const o = Nn(i.text);
2447
- return o.length ? r.lastQueryTerms?.length && Rn(o, r.lastQueryTerms) < Cn ? { trigger: !1, reason: "same_topic" } : { trigger: !0, text: i.text, terms: o, segmentCount: i.segmentCount } : { trigger: !1, reason: "no_speech" };
2446
+ const a = vn(i.text);
2447
+ return a.length ? r.lastQueryTerms?.length && Rn(a, r.lastQueryTerms) < Cn ? { trigger: !1, reason: "same_topic" } : { trigger: !0, text: i.text, terms: a, segmentCount: i.segmentCount } : { trigger: !1, reason: "no_speech" };
2448
2448
  }
2449
- const eo = "navNotice", x = {
2449
+ const na = "navNotice", x = {
2450
2450
  // The lower bounds are deliberately generous: service ranges (0800/0900) are
2451
2451
  // shorter than geographic numbers, and a too-strict minimum silently drops them.
2452
2452
  // An over-permissive key is harmless — it simply matches nothing.
@@ -2486,8 +2486,8 @@ function ne(e) {
2486
2486
  const n = e.slice(t.length);
2487
2487
  for (const r of Object.values(x)) {
2488
2488
  if (r.callingCode !== t) continue;
2489
- const i = r.trunkPrefix, a = i && n.startsWith(i) ? n.slice(i.length) : n;
2490
- if (S(a, r)) return `+${t}${a}`;
2489
+ const i = r.trunkPrefix, o = i && n.startsWith(i) ? n.slice(i.length) : n;
2490
+ if (S(o, r)) return `+${t}${o}`;
2491
2491
  }
2492
2492
  return null;
2493
2493
  }
@@ -2500,7 +2500,7 @@ function Kn(e) {
2500
2500
  const r = t.indexOf("@");
2501
2501
  return r >= 0 && (t = t.slice(0, r)), t.trim();
2502
2502
  }
2503
- function to(e) {
2503
+ function ra(e) {
2504
2504
  if (!e) return !1;
2505
2505
  const t = e.indexOf("@");
2506
2506
  if (t <= 0) return !1;
@@ -2515,20 +2515,20 @@ function re(e, t) {
2515
2515
  if (!i) return null;
2516
2516
  if (r) return ne(i);
2517
2517
  if (i.startsWith("00")) return ne(i.slice(2));
2518
- const a = te(t) ?? te(Dn);
2519
- if (!a) return null;
2520
- const o = a.trunkPrefix;
2521
- if (o && i.startsWith(o)) {
2522
- const s = i.slice(o.length);
2523
- return S(s, a) ? `+${a.callingCode}${s}` : null;
2518
+ const o = te(t) ?? te(Dn);
2519
+ if (!o) return null;
2520
+ const a = o.trunkPrefix;
2521
+ if (a && i.startsWith(a)) {
2522
+ const s = i.slice(a.length);
2523
+ return S(s, o) ? `+${o.callingCode}${s}` : null;
2524
2524
  }
2525
- if (i.startsWith(a.callingCode)) {
2526
- const s = i.slice(a.callingCode.length);
2527
- if (S(s, a)) return `+${a.callingCode}${s}`;
2525
+ if (i.startsWith(o.callingCode)) {
2526
+ const s = i.slice(o.callingCode.length);
2527
+ if (S(s, o)) return `+${o.callingCode}${s}`;
2528
2528
  }
2529
- return !o && S(i, a) ? `+${a.callingCode}${i}` : null;
2529
+ return !a && S(i, o) ? `+${o.callingCode}${i}` : null;
2530
2530
  }
2531
- function no(e, t = 9) {
2531
+ function ia(e, t = 9) {
2532
2532
  const n = (e ?? "").replace(/\D/g, "");
2533
2533
  return n.length < t ? null : n.slice(-t);
2534
2534
  }
@@ -2539,7 +2539,7 @@ function Ce(e) {
2539
2539
  const r = t.slice(0, n).split("+")[0], i = t.slice(n + 1);
2540
2540
  return !r || !i.includes(".") ? null : `${r}@${i}`;
2541
2541
  }
2542
- function ro(e) {
2542
+ function oa(e) {
2543
2543
  const t = Ce(e);
2544
2544
  return t ? t.slice(t.lastIndexOf("@") + 1) : null;
2545
2545
  }
@@ -2605,35 +2605,35 @@ const Bn = /* @__PURE__ */ new Set([
2605
2605
  "proximus.be",
2606
2606
  "scarlet.be"
2607
2607
  ]);
2608
- function io(e) {
2608
+ function aa(e) {
2609
2609
  const t = Gn(e);
2610
2610
  return t ? Bn.has(t) : !1;
2611
2611
  }
2612
- function ao(e) {
2612
+ function sa(e) {
2613
2613
  if (!e) return !1;
2614
2614
  const t = e.trim().toLowerCase();
2615
2615
  return t === "tel" || t === "sms" || t === "whatsapp" || t === "fax";
2616
2616
  }
2617
- function oo(e, t, n) {
2617
+ function ca(e, t, n) {
2618
2618
  if (!e || !t) return null;
2619
2619
  const r = e.trim().toLowerCase();
2620
2620
  if (r === "tel" || r === "sms" || r === "whatsapp") {
2621
- const a = re(t, n);
2622
- return a ? `tel:${a}` : null;
2621
+ const o = re(t, n);
2622
+ return o ? `tel:${o}` : null;
2623
2623
  }
2624
2624
  if (r === "fax") {
2625
- const a = re(t, n);
2626
- return a ? `fax:${a}` : null;
2625
+ const o = re(t, n);
2626
+ return o ? `fax:${o}` : null;
2627
2627
  }
2628
2628
  if (r === "mailto" || r === "email") {
2629
- const a = Ce(t);
2630
- return a ? `mailto:${a}` : null;
2629
+ const o = Ce(t);
2630
+ return o ? `mailto:${o}` : null;
2631
2631
  }
2632
2632
  const i = t.trim().toLowerCase();
2633
2633
  return i ? `${r}:${i}` : null;
2634
2634
  }
2635
2635
  const Hn = /(\*\*|__)(?=\S)([\s\S]*?\S)\1/g, Fn = /(\*|_)(?=\S)([^*_\n]*?\S)\1/g;
2636
- function so(e) {
2636
+ function la(e) {
2637
2637
  if (typeof e != "string" || !e) return "";
2638
2638
  let t = e;
2639
2639
  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(`
@@ -2642,7 +2642,7 @@ function so(e) {
2642
2642
  ).join(`
2643
2643
  `), t = t.replace(Hn, "$2"), t = t.replace(Fn, "$2"), t = t.replace(/~~(?=\S)([\s\S]*?\S)~~/g, "$1"), t = t.replace(/`([^`\n]+)`/g, "$1"), t.replace(/\s+/g, " ").trim();
2644
2644
  }
2645
- const Wn = [
2645
+ const Vn = [
2646
2646
  /<blockquote/i,
2647
2647
  /class="?gmail_quote/i,
2648
2648
  // Gmail quote container
@@ -2655,17 +2655,17 @@ const Wn = [
2655
2655
  // Outlook underscore separator before "From:"
2656
2656
  /\bOn\b[\s\S]{0,200}?\bwrote:/i
2657
2657
  // Gmail "On <date> <name> wrote:"
2658
- ], ie = /^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i, Vn = /^\s*(?:on|op)\b.{0,200}?\b(?:wrote|schreef|geschreven)\s*:?\s*$/i;
2658
+ ], ie = /^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i, Wn = /^\s*(?:on|op)\b.{0,200}?\b(?:wrote|schreef|geschreven)\s*:?\s*$/i;
2659
2659
  function zn(e) {
2660
2660
  const t = e.split(`
2661
2661
  `);
2662
2662
  for (let n = 0; n < t.length; n++)
2663
- if (Vn.test(t[n]) || ie.test(t[n]) && t.slice(n + 1, n + 4).some((r) => ie.test(r)))
2663
+ if (Wn.test(t[n]) || ie.test(t[n]) && t.slice(n + 1, n + 4).some((r) => ie.test(r)))
2664
2664
  return t.slice(0, n).join(`
2665
2665
  `).trim();
2666
2666
  return e;
2667
2667
  }
2668
- function ae(e) {
2668
+ function oe(e) {
2669
2669
  let t = e;
2670
2670
  return t = t.replace(/<(script|style)[\s\S]*?<\/\1>/gi, ""), t = t.replace(/<br\s*\/?>/gi, `
2671
2671
  `), t = t.replace(/<\/(p|h[1-6]|ul|ol|table|blockquote)>/gi, `
@@ -2673,11 +2673,11 @@ function ae(e) {
2673
2673
  `), t = t.replace(/<\/(div|li|tr)>/gi, `
2674
2674
  `), t = t.replace(/<\/(td|th)>/gi, " "), t = t.replace(/<[^>]+>/g, ""), t = t.replace(/<[^>]*$/, ""), t;
2675
2675
  }
2676
- function oe(e) {
2676
+ function ae(e) {
2677
2677
  return !Number.isInteger(e) || e < 0 || e > 1114111 ? null : String.fromCodePoint(e);
2678
2678
  }
2679
2679
  function se(e) {
2680
- return e.replace(/&nbsp;/gi, " ").replace(/&lt;/gi, "<").replace(/&gt;/gi, ">").replace(/&quot;/gi, '"').replace(/&#(\d+);/g, (t, n) => oe(Number(n)) ?? t).replace(/&#x([0-9a-f]+);/gi, (t, n) => oe(parseInt(n, 16)) ?? t).replace(/&amp;/gi, "&");
2680
+ return e.replace(/&nbsp;/gi, " ").replace(/&lt;/gi, "<").replace(/&gt;/gi, ">").replace(/&quot;/gi, '"').replace(/&#(\d+);/g, (t, n) => ae(Number(n)) ?? t).replace(/&#x([0-9a-f]+);/gi, (t, n) => ae(parseInt(n, 16)) ?? t).replace(/&amp;/gi, "&");
2681
2681
  }
2682
2682
  function ce(e) {
2683
2683
  return e.replace(/\r/g, "").replace(/[ \t]+/g, " ").replace(/ *\n */g, `
@@ -2686,39 +2686,39 @@ function ce(e) {
2686
2686
  `).trim();
2687
2687
  }
2688
2688
  const Xn = /<\s*(html|body|div|p|table|br|span)\b/i;
2689
- function co(e) {
2689
+ function ua(e) {
2690
2690
  return Xn.test(e);
2691
2691
  }
2692
- function lo(e) {
2692
+ function da(e) {
2693
2693
  if (typeof e != "string" || !e) return "";
2694
2694
  let t = e.length;
2695
- for (const a of Wn) {
2696
- const o = e.search(a);
2697
- o >= 0 && o < t && (t = o);
2695
+ for (const o of Vn) {
2696
+ const a = e.search(o);
2697
+ a >= 0 && a < t && (t = a);
2698
2698
  }
2699
2699
  const n = e.slice(0, t);
2700
- let r = ce(se(ae(n)));
2701
- return r || (r = ce(se(ae(e)))), zn(r) || r;
2700
+ let r = ce(se(oe(n)));
2701
+ return r || (r = ce(se(oe(e)))), zn(r) || r;
2702
2702
  }
2703
2703
  export {
2704
2704
  m as ACTIVITY_CATALOG,
2705
2705
  cn as AI_ATTACHMENT_LIMITS,
2706
- sa as AI_ATTACHMENT_MAX_PER_TURN,
2707
- oa as AI_ATTACHMENT_TURN_BUDGET,
2706
+ so as AI_ATTACHMENT_MAX_PER_TURN,
2707
+ ao as AI_ATTACHMENT_TURN_BUDGET,
2708
2708
  ue as AI_VENDORS,
2709
2709
  Xe as ALLOWED_LINK_SCHEMES,
2710
- Da as APP_PERMISSIONS,
2710
+ Po as APP_PERMISSIONS,
2711
2711
  B as ARTIFACT_MAX_BLOCKS,
2712
2712
  Mr as ARTIFACT_MAX_BODY_BYTES,
2713
2713
  C as ARTIFACT_MAX_CELL_LEN,
2714
- V as ARTIFACT_MAX_KPI_ITEMS,
2714
+ W as ARTIFACT_MAX_KPI_ITEMS,
2715
2715
  H as ARTIFACT_MAX_LIST_ITEMS,
2716
- W as ARTIFACT_MAX_TABLE_COLUMNS,
2716
+ V as ARTIFACT_MAX_TABLE_COLUMNS,
2717
2717
  F as ARTIFACT_MAX_TABLE_ROWS,
2718
2718
  pe as ARTIFACT_MAX_TEXT_LEN,
2719
2719
  rt as ASSIGNMENT_SCOPE_KIND,
2720
- pa as ASSIST_BANDS,
2721
- da as ASSIST_SOURCE_PROVIDER_GROUP,
2720
+ fo as ASSIST_BANDS,
2721
+ po as ASSIST_SOURCE_PROVIDER_GROUP,
2722
2722
  mt as ATTENTION_STATUSES,
2723
2723
  Me as AUTH_APP_NAME,
2724
2724
  Kt as AUTO_READY_MIN_PROPOSALS,
@@ -2731,21 +2731,22 @@ export {
2731
2731
  Cn as CADENCE_MIN_NOVELTY,
2732
2732
  wn as CADENCE_WINDOW_MS,
2733
2733
  wi as CLASSIFY_VARS,
2734
+ Ro as CONTEXT_COLLECT_SERVICE,
2734
2735
  Tr as CORE_DIMENSIONS,
2735
2736
  mn as CommunicationScheme,
2736
2737
  st as DAY_MS,
2737
2738
  di as DEFAULT_MEMORY_BUDGET,
2738
2739
  Dn as DEFAULT_PHONE_REGION,
2739
2740
  ki as EMPTY_WORKFLOW,
2740
- Ca as FEATURE_FOLDER_MANAGEMENT,
2741
- Oa as FEATURE_REMOTE_SEARCH,
2741
+ Oo as FEATURE_FOLDER_MANAGEMENT,
2742
+ No as FEATURE_REMOTE_SEARCH,
2742
2743
  yt as FOLLOW_UP_HOURS,
2743
- ot as HOUR_MS,
2744
+ at as HOUR_MS,
2744
2745
  Xn as HTML_BODY_RE,
2745
2746
  g as INELIGIBLE,
2746
- Na as INSTALLATION_HEADER,
2747
+ $o as INSTALLATION_HEADER,
2747
2748
  xt as INTERACTION_KIND,
2748
- Ma as InteractionParticipantRole,
2749
+ ko as InteractionParticipantRole,
2749
2750
  It as KB_FALLBACK_LOCALE,
2750
2751
  q as KB_LOCALES,
2751
2752
  $ as LOOSE_STATUSES,
@@ -2759,44 +2760,44 @@ export {
2759
2760
  ui as MAX_MEMORY_BUDGET,
2760
2761
  ci as MAX_MEMORY_CHARS,
2761
2762
  xn as MAX_SHOWN_KEYS,
2762
- Vt as MAX_TOPIC_CANDIDATES,
2763
- Wt as MAX_TOPIC_EXAMPLES,
2763
+ Wt as MAX_TOPIC_CANDIDATES,
2764
+ Vt as MAX_TOPIC_EXAMPLES,
2764
2765
  O as MAX_TOPIC_EXAMPLE_CHARS,
2765
2766
  li as MIN_MEMORY_BUDGET,
2766
- eo as NAV_NOTICE_SLOT,
2767
- $a as NOTIFICATION_SOURCE_PROVIDER_GROUP,
2767
+ na as NAV_NOTICE_SLOT,
2768
+ Do as NOTIFICATION_SOURCE_PROVIDER_GROUP,
2768
2769
  fi as ONBOARDING_SOURCE_PROVIDER_GROUP,
2769
2770
  x as PHONE_REGIONS,
2770
2771
  Ie as PRESENCE_ONLINE_WINDOW_MS,
2771
2772
  hn as PRESENCE_SURVIVES_OFFLINE,
2772
2773
  gi as PROFILE_TOOL_DISPOSITIONS,
2773
- wa as PROVIDER_FEATURE_MESSAGE_TEMPLATES,
2774
- Ia as PROVIDER_FEATURE_MESSAGE_WINDOW,
2774
+ Mo as PROVIDER_FEATURE_MESSAGE_TEMPLATES,
2775
+ wo as PROVIDER_FEATURE_MESSAGE_WINDOW,
2775
2776
  Bn as PUBLIC_EMAIL_DOMAINS,
2776
2777
  J as READ_STEP_TYPES,
2777
2778
  kt as RELATED_SUBJECT_KINDS,
2778
2779
  Te as RESERVED_STATUS_KEYS,
2779
- Ha as RESOURCE_ATTACHED_SERVICE,
2780
- ja as RESOURCE_DESCRIBE_SERVICE,
2781
- Ba as RESOURCE_RESOLVE_SERVICE,
2782
- Ga as RESOURCE_SEARCH_SERVICE,
2780
+ Vo as RESOURCE_ATTACHED_SERVICE,
2781
+ Bo as RESOURCE_DESCRIBE_SERVICE,
2782
+ Fo as RESOURCE_RESOLVE_SERVICE,
2783
+ Ho as RESOURCE_SEARCH_SERVICE,
2783
2784
  Kr as SIGNATURE_INTENTS,
2784
2785
  ht as SLA_HOURS_BY_PRIORITY,
2785
2786
  Pt as STEP_MAX_TOKENS_MAX,
2786
2787
  Lt as STEP_MAX_TOKENS_MIN,
2787
2788
  pt as SUMMARY_MIN_LAST_CHARS,
2788
2789
  dt as SUMMARY_MIN_MESSAGES,
2789
- Ja as SYNC_RUN_MAX_ERRORS,
2790
- Ya as SYNC_SOURCE_PROVIDER_GROUP,
2791
- qa as SYNC_TARGET_PROVIDER_GROUP,
2790
+ Qo as SYNC_RUN_MAX_ERRORS,
2791
+ Jo as SYNC_SOURCE_PROVIDER_GROUP,
2792
+ Zo as SYNC_TARGET_PROVIDER_GROUP,
2792
2793
  nt as TERMINAL_ASSIGNMENT_STATUSES,
2793
2794
  Gt as TERMINAL_RUN_STATUSES,
2794
2795
  Ii as TRIGGER_VARS,
2795
- va as UNSUPPORTED,
2796
+ vo as UNSUPPORTED,
2796
2797
  Fe as USAGE_DIMENSIONS,
2797
- We as USAGE_DIMENSION_IDS,
2798
+ Ve as USAGE_DIMENSION_IDS,
2798
2799
  mi as WORK_AREAS,
2799
- Vi as WORK_COMMENT_ADDED,
2800
+ Wi as WORK_COMMENT_ADDED,
2800
2801
  zi as WORK_ITEM_ASSIGNED,
2801
2802
  Jt as WORK_ITEM_SCOPE_KIND,
2802
2803
  Xi as WORK_ITEM_STATUS_CHANGED,
@@ -2814,9 +2815,9 @@ export {
2814
2815
  d as activityTypeInfo,
2815
2816
  Ai as actorKey,
2816
2817
  Bi as addExampleCandidate,
2817
- Pa as agePresenceEntry,
2818
+ Ko as agePresenceEntry,
2818
2819
  sn as aiAttachmentKind,
2819
- ca as aiAttachmentRejection,
2820
+ co as aiAttachmentRejection,
2820
2821
  G as aiBudgetLimit,
2821
2822
  Sr as aiBudgetPeriodKey,
2822
2823
  Ke as aiBudgetPeriodStart,
@@ -2832,50 +2833,50 @@ export {
2832
2833
  Ut as approvalRate,
2833
2834
  Cr as artifactBodyBytes,
2834
2835
  Or as artifactOutline,
2835
- vr as artifactToMarkdown,
2836
+ Nr as artifactToMarkdown,
2836
2837
  _i as assignmentMismatch,
2837
2838
  Dr as assignmentScopeKey,
2838
2839
  Pr as assignmentSubject,
2839
2840
  ur as buildActivityPreview,
2840
- ba as buildChannelIntents,
2841
- Nr as buildShareKeys,
2841
+ Eo as buildChannelIntents,
2842
+ vr as buildShareKeys,
2842
2843
  $n as buildWindow,
2843
2844
  ti as canNestUnder,
2844
2845
  ir as carriesText,
2845
2846
  ri as categoryLabel,
2846
2847
  tn as categoryOf,
2847
- Ta as channelKindForScheme,
2848
+ Io as channelKindForScheme,
2848
2849
  tr as channelKindOf,
2849
2850
  Mi as clampStepMaxTokens,
2850
- lo as cleanMessageText,
2851
- ma as compareAssistRank,
2851
+ da as cleanMessageText,
2852
+ go as compareAssistRank,
2852
2853
  Ft as compareWorkTypes,
2853
2854
  Ur as decideAssignmentState,
2854
- Qa as decideCadence,
2855
- ya as decideIncomingCall,
2855
+ ta as decideCadence,
2856
+ Ao as decideIncomingCall,
2856
2857
  wt as defaultLocaleOf,
2857
- na as defaultStatusKey,
2858
- ka as defineIntent,
2858
+ no as defaultStatusKey,
2859
+ Co as defineIntent,
2859
2860
  _t as depthOf,
2860
- La as derivePresence,
2861
- Aa as disabledIntentsFromCapabilities,
2861
+ Uo as derivePresence,
2862
+ bo as disabledIntentsFromCapabilities,
2862
2863
  Di as elapsedSeconds,
2863
- ro as emailDomain,
2864
- oo as endpointKey,
2864
+ oa as emailDomain,
2865
+ ca as endpointKey,
2865
2866
  bn as extractParams,
2866
- Nn as extractTerms,
2867
- Sa as filterByEndpoint,
2868
- Ea as filterByIntent,
2867
+ vn as extractTerms,
2868
+ _o as filterByEndpoint,
2869
+ So as filterByIntent,
2869
2870
  fn as filterByTargetScheme,
2870
2871
  T as findAiVendor,
2871
- Ra as flattenLocales,
2872
+ xo as flattenLocales,
2872
2873
  Ge as floorToPeriod,
2873
2874
  Ct as formatActingIdentity,
2874
2875
  Ui as formatClock,
2875
2876
  Pi as formatHm,
2876
2877
  qi as formatItemKey,
2877
2878
  je as formatPeriod,
2878
- ua as freshSources,
2879
+ uo as freshSources,
2879
2880
  pr as getActivitySeenUserIds,
2880
2881
  Gr as getContactEndpoints,
2881
2882
  qr as getShortTitle,
@@ -2884,40 +2885,40 @@ export {
2884
2885
  Zr as helpCenterText,
2885
2886
  Ti as humanizeAction,
2886
2887
  Dt as interactionIdOf,
2887
- Wi as isAgentUser,
2888
+ Vi as isAgentUser,
2888
2889
  zr as isAssigned,
2889
2890
  xr as isAssignmentTerminal,
2890
2891
  Rt as isAssignmentTrigger,
2891
- vi as isAutoReady,
2892
+ Ni as isAutoReady,
2892
2893
  St as isAwaitingThem,
2893
2894
  mr as isChatMessageActivity,
2894
2895
  Xr as isClosed,
2895
- or as isConnectedType,
2896
- Wa as isDeepLink,
2896
+ ar as isConnectedType,
2897
+ zo as isDeepLink,
2897
2898
  Tt as isDescendant,
2898
2899
  Br as isEligible,
2899
2900
  fr as isEmailActivity,
2900
- co as isHtmlBody,
2901
+ ua as isHtmlBody,
2901
2902
  Ri as isInFlight,
2902
2903
  ft as isInteractionUnseen,
2903
- Va as isLandingPath,
2904
+ Xo as isLandingPath,
2904
2905
  ut as isLikelyBulk,
2905
2906
  le as isMessageShape,
2906
2907
  nr as isMessageType,
2907
2908
  Sn as isMoreSpecificPattern,
2908
- la as isOutwardTool,
2909
+ lo as isOutwardTool,
2909
2910
  bt as isParked,
2910
2911
  Bt as isPaused,
2911
- ar as isPlaybookAuthoredType,
2912
- io as isPublicEmailDomain,
2913
- Xa as isPublicPath,
2912
+ or as isPlaybookAuthoredType,
2913
+ aa as isPublicEmailDomain,
2914
+ qo as isPublicPath,
2914
2915
  Et as isReminderActive,
2915
2916
  rr as isReplyableType,
2916
- Wr as isSlaAtRisk,
2917
- Ni as isTerminal,
2917
+ Vr as isSlaAtRisk,
2918
+ vi as isTerminal,
2918
2919
  Fr as isThreadLongEnough,
2919
2920
  sr as isTranscriptType,
2920
- ra as isWorkClosed,
2921
+ ro as isWorkClosed,
2921
2922
  ji as isWorkTypeVisible,
2922
2923
  Qi as itemDossierKeys,
2923
2924
  en as ladderFor,
@@ -2926,33 +2927,33 @@ export {
2926
2927
  ei as localeInstruction,
2927
2928
  Qr as localeName,
2928
2929
  ni as localesOf,
2929
- to as looksLikeEmail,
2930
- _a as matchContactToIntents,
2930
+ ra as looksLikeEmail,
2931
+ To as matchContactToIntents,
2931
2932
  _n as matchPublicRoute,
2932
- ai as mcpCredentialScope,
2933
- oi as mcpToolPrefix,
2934
- Za as mergeShownKeys,
2933
+ oi as mcpCredentialScope,
2934
+ ai as mcpToolPrefix,
2935
+ ea as mergeShownKeys,
2935
2936
  Re as messageCountsAs,
2936
- ao as needsPhoneRegion,
2937
+ sa as needsPhoneRegion,
2937
2938
  kr as normalizeArtifactBlocks,
2938
2939
  Qn as normalizeBlocks,
2939
2940
  Ce as normalizeEmail,
2940
2941
  h as normalizeExample,
2941
- xa as notificationPrefKey,
2942
+ Lo as notificationPrefKey,
2942
2943
  Rn as novelty,
2943
2944
  Hr as parkMarksById,
2944
2945
  hi as parseActingIdentity,
2945
2946
  Ji as parseItemKey,
2946
2947
  An as pathToRegex,
2947
2948
  Ir as periodsInRange,
2948
- no as phoneSuffix,
2949
- so as plainTextFromMarkdown,
2950
- Nt as playbookActor,
2949
+ ia as phoneSuffix,
2950
+ la as plainTextFromMarkdown,
2951
+ vt as playbookActor,
2951
2952
  Oi as procedureOf,
2952
- ea as projectDossierKeys,
2953
+ eo as projectDossierKeys,
2953
2954
  En as publicBasePathFor,
2954
- za as publicRoutePatterns,
2955
- v as readPath,
2955
+ Yo as publicRoutePatterns,
2956
+ N as readPath,
2956
2957
  Z as readStepError,
2957
2958
  At as recencyOf,
2958
2959
  $t as refKey,
@@ -2960,46 +2961,46 @@ export {
2960
2961
  Xt as rejectExampleCandidate,
2961
2962
  pi as relatedByDefault,
2962
2963
  dn as resolveAccountCapabilities,
2963
- N as resolveActivityText,
2964
+ v as resolveActivityText,
2964
2965
  un as resolveChannelIntents,
2965
- at as resolveSignature,
2966
- Ua as resolveWorkMode,
2967
- Fa as resourceKindOf,
2966
+ ot as resolveSignature,
2967
+ jo as resolveWorkMode,
2968
+ Wo as resourceKindOf,
2968
2969
  yi as runActor,
2969
2970
  xi as runInteractionId,
2970
2971
  Ze as sanitizeInline,
2971
2972
  In as sanitizeTranscript,
2972
- Vr as scoreInteraction,
2973
+ Wr as scoreInteraction,
2973
2974
  Yi as scoreWorkItem,
2974
2975
  ii as selectLenses,
2975
- ha as sessionsHoldCannotReach,
2976
- ga as sessionsToHold,
2976
+ yo as sessionsHoldCannotReach,
2977
+ ho as sessionsToHold,
2977
2978
  ge as shareKeyForTeam,
2978
2979
  me as shareKeyForUser,
2979
2980
  Rr as shareKeysForViewer,
2980
- Ka as shouldRunAudioPipeline,
2981
+ Go as shouldRunAudioPipeline,
2981
2982
  nn as sortStatuses,
2982
2983
  ln as sourceKey,
2983
- ta as statusIn,
2984
+ to as statusIn,
2984
2985
  Ci as stepsOf,
2985
- Ne as stripHtml,
2986
+ ve as stripHtml,
2986
2987
  $i as subjectKeyOf,
2987
2988
  Se as subjectOf,
2988
- fa as subjectRef,
2989
+ mo as subjectRef,
2989
2990
  Zi as suggestProjectKey,
2990
2991
  Si as targetById,
2991
2992
  Ei as targetForActivityType,
2992
- vt as toActingIdentity,
2993
+ Nt as toActingIdentity,
2993
2994
  re as toE164,
2994
2995
  $r as toolSourceKinds,
2995
2996
  Yt as topicOfferedForTeam,
2996
2997
  Fi as topicsForTeam,
2997
2998
  zt as truncateExample,
2998
- ia as uniqueWorkStatusKey,
2999
+ io as uniqueWorkStatusKey,
2999
3000
  Ki as uniqueWorkTypeKey,
3000
- Ve as usageMetricId,
3001
+ We as usageMetricId,
3001
3002
  wr as usageMetrics,
3002
- aa as validateStatuses,
3003
+ oo as validateStatuses,
3003
3004
  bi as valueAtPath,
3004
3005
  R as waitHoursOf,
3005
3006
  Lr as wakesAssignment,