@opencxh/domain 1.244.0 → 1.245.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/entities/document-template/tokens.d.ts +12 -3
- package/dist/entities/money/totals.d.ts +3 -0
- package/dist/entities/transaction/document.d.ts +2 -0
- package/dist/entities/transaction/types.d.ts +17 -0
- package/dist/index.cjs +18 -18
- package/dist/index.js +1076 -1071
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const
|
|
1
|
+
const is = 10, ss = 10, as = 10, cs = 5, on = /* @__PURE__ */ new Set([
|
|
2
2
|
"header",
|
|
3
3
|
"section",
|
|
4
4
|
"context",
|
|
@@ -14,7 +14,7 @@ function oe(e) {
|
|
|
14
14
|
const t = e;
|
|
15
15
|
return typeof t.key == "string" || typeof t.value == "string";
|
|
16
16
|
}
|
|
17
|
-
function
|
|
17
|
+
function ls(e, t = () => {
|
|
18
18
|
}) {
|
|
19
19
|
if (!Array.isArray(e)) return [];
|
|
20
20
|
const n = [];
|
|
@@ -59,9 +59,9 @@ function ci(e, t = () => {
|
|
|
59
59
|
o.items.length > 10 && (t("more than 10 list items"), o.items = o.items.slice(0, 10));
|
|
60
60
|
break;
|
|
61
61
|
case "actions": {
|
|
62
|
-
const
|
|
63
|
-
if (
|
|
64
|
-
|
|
62
|
+
const i = Array.isArray(o.elements) ? o.elements : [], s = i.filter((a) => a?.action_id && a.invoke && oe(a.text));
|
|
63
|
+
if (s.length !== i.length && t("an action without action_id, invoke or text"), s.length === 0) continue;
|
|
64
|
+
s.length > 5 && t("more than 5 actions"), o.elements = s.slice(0, 5);
|
|
65
65
|
break;
|
|
66
66
|
}
|
|
67
67
|
}
|
|
@@ -90,7 +90,7 @@ function X(e) {
|
|
|
90
90
|
function Le(e) {
|
|
91
91
|
return e ? ` — ${Math.floor(e / 60)}m ${e % 60}s` : "";
|
|
92
92
|
}
|
|
93
|
-
function
|
|
93
|
+
function ie(e) {
|
|
94
94
|
return e?.split("@")?.[0] || e || "";
|
|
95
95
|
}
|
|
96
96
|
function Y(e) {
|
|
@@ -106,7 +106,7 @@ const R = {
|
|
|
106
106
|
channelKind: "voice",
|
|
107
107
|
icon: "phone",
|
|
108
108
|
snippet: () => "Gesprek gestart",
|
|
109
|
-
timeline: (e) => e.direction === "inbound" ? `Inbound call started — ${
|
|
109
|
+
timeline: (e) => e.direction === "inbound" ? `Inbound call started — ${ie(e.payload.from)}` : `Outbound call started — ${ie(e.payload.to)}`
|
|
110
110
|
},
|
|
111
111
|
VOICE_CALL_ANSWERED: {
|
|
112
112
|
shape: "event",
|
|
@@ -141,7 +141,7 @@ const R = {
|
|
|
141
141
|
channelKind: "voice",
|
|
142
142
|
icon: "phone",
|
|
143
143
|
snippet: () => "Gemiste oproep",
|
|
144
|
-
timeline: (e) => `Missed call — ${
|
|
144
|
+
timeline: (e) => `Missed call — ${ie(e.payload.from)}`
|
|
145
145
|
},
|
|
146
146
|
VOICE_CALL_FAILED: {
|
|
147
147
|
shape: "event",
|
|
@@ -467,40 +467,40 @@ function Ke(e) {
|
|
|
467
467
|
function w(e) {
|
|
468
468
|
return R[e];
|
|
469
469
|
}
|
|
470
|
-
function
|
|
470
|
+
function us(e) {
|
|
471
471
|
return w(e)?.icon ?? "circle";
|
|
472
472
|
}
|
|
473
|
-
function
|
|
473
|
+
function ds(e) {
|
|
474
474
|
return w(e)?.channelKind;
|
|
475
475
|
}
|
|
476
476
|
function St(e) {
|
|
477
477
|
return e === "message" || e === "note";
|
|
478
478
|
}
|
|
479
|
-
function
|
|
479
|
+
function ps(e) {
|
|
480
480
|
return St(w(e)?.shape);
|
|
481
481
|
}
|
|
482
482
|
function It(e) {
|
|
483
483
|
return e === "note";
|
|
484
484
|
}
|
|
485
|
-
function
|
|
485
|
+
function fs(e) {
|
|
486
486
|
return It(w(e)?.shape);
|
|
487
487
|
}
|
|
488
|
-
function
|
|
488
|
+
function ms(e) {
|
|
489
489
|
return w(e)?.replyable === !0;
|
|
490
490
|
}
|
|
491
|
-
function
|
|
491
|
+
function hs(e) {
|
|
492
492
|
return w(e)?.carriesText === !0;
|
|
493
493
|
}
|
|
494
494
|
function un(e) {
|
|
495
495
|
return w(e)?.countsAs;
|
|
496
496
|
}
|
|
497
|
-
function
|
|
497
|
+
function gs(e) {
|
|
498
498
|
return w(e)?.playbookAuthored === !0;
|
|
499
499
|
}
|
|
500
|
-
function
|
|
500
|
+
function ys(e) {
|
|
501
501
|
return w(e)?.connected === !0;
|
|
502
502
|
}
|
|
503
|
-
function
|
|
503
|
+
function bs(e) {
|
|
504
504
|
const t = w(e);
|
|
505
505
|
return t?.shape === "artifact" && t?.carriesText === !0;
|
|
506
506
|
}
|
|
@@ -508,11 +508,11 @@ function dn(e) {
|
|
|
508
508
|
const t = w(e.type)?.snippet;
|
|
509
509
|
return t ? t(e) : "";
|
|
510
510
|
}
|
|
511
|
-
function
|
|
511
|
+
function As(e, t) {
|
|
512
512
|
const n = w(e.type)?.timeline;
|
|
513
513
|
return n ? n(e, t) : e.type.replace(/_/g, " ").toLowerCase();
|
|
514
514
|
}
|
|
515
|
-
function
|
|
515
|
+
function _s(e) {
|
|
516
516
|
const t = w(e.type)?.joinUrl;
|
|
517
517
|
return t ? t(e) : void 0;
|
|
518
518
|
}
|
|
@@ -530,8 +530,8 @@ function me(e, t, n) {
|
|
|
530
530
|
if ("value" in e)
|
|
531
531
|
return fe(t, e.value) || null;
|
|
532
532
|
const r = {};
|
|
533
|
-
for (const [
|
|
534
|
-
r[
|
|
533
|
+
for (const [i, s] of Object.entries(e.params ?? {}))
|
|
534
|
+
r[i] = fe(t, s);
|
|
535
535
|
const o = n(e.key, r);
|
|
536
536
|
return o === e.key ? null : o;
|
|
537
537
|
}
|
|
@@ -547,7 +547,7 @@ function fn(e) {
|
|
|
547
547
|
const t = e.trim();
|
|
548
548
|
return t.length <= Ue ? t : `${t.slice(0, Ue - 1).trimEnd()}…`;
|
|
549
549
|
}
|
|
550
|
-
function
|
|
550
|
+
function Es(e, t) {
|
|
551
551
|
const n = pn(t?.text, e), r = t ? me(t.text, e, (o) => o) : null;
|
|
552
552
|
return {
|
|
553
553
|
activityId: e.id,
|
|
@@ -681,20 +681,20 @@ class hn {
|
|
|
681
681
|
return this.translate;
|
|
682
682
|
}
|
|
683
683
|
}
|
|
684
|
-
const
|
|
685
|
-
function
|
|
684
|
+
const Ss = new hn();
|
|
685
|
+
function Is(e, t, n = []) {
|
|
686
686
|
const r = e.createdAt;
|
|
687
687
|
if (!r) return [];
|
|
688
688
|
const o = new Set(n);
|
|
689
|
-
return e.author.type === "user" && e.author.id && o.add(e.author.id), Object.entries(t).filter(([
|
|
689
|
+
return e.author.type === "user" && e.author.id && o.add(e.author.id), Object.entries(t).filter(([i, s]) => s >= r && !o.has(i)).map(([i]) => i);
|
|
690
690
|
}
|
|
691
691
|
function gn(e) {
|
|
692
692
|
return e.createdAt ?? 0;
|
|
693
693
|
}
|
|
694
|
-
function
|
|
694
|
+
function Ts(e) {
|
|
695
695
|
return e.type === "EMAIL_RECEIVED" || e.type === "EMAIL_SENT";
|
|
696
696
|
}
|
|
697
|
-
function
|
|
697
|
+
function ws(e) {
|
|
698
698
|
return e.type === "CHAT_MESSAGE_SENT" || e.type === "CHAT_MESSAGE_RECEIVED";
|
|
699
699
|
}
|
|
700
700
|
const Tt = [
|
|
@@ -790,23 +790,23 @@ const Tt = [
|
|
|
790
790
|
function te(e) {
|
|
791
791
|
return Tt.find((t) => t.id === e);
|
|
792
792
|
}
|
|
793
|
-
function
|
|
793
|
+
function ks(e) {
|
|
794
794
|
return te(e)?.label ?? e;
|
|
795
795
|
}
|
|
796
|
-
function
|
|
796
|
+
function Ms(e, t = "gpt-5-mini") {
|
|
797
797
|
return te(e)?.defaultModel ?? t;
|
|
798
798
|
}
|
|
799
|
-
function
|
|
799
|
+
function vs(e) {
|
|
800
800
|
return Tt.filter((t) => t.capabilities.includes(e));
|
|
801
801
|
}
|
|
802
|
-
function
|
|
802
|
+
function Cs(e) {
|
|
803
803
|
const t = te(e);
|
|
804
804
|
return !!t && !t.baseUrl;
|
|
805
805
|
}
|
|
806
|
-
function
|
|
806
|
+
function Os(e, t) {
|
|
807
807
|
return t === "text" ? !0 : te(e)?.attachmentKinds?.includes(t) === !0;
|
|
808
808
|
}
|
|
809
|
-
function
|
|
809
|
+
function xs(e, t) {
|
|
810
810
|
if (!e.enabled) return "ok";
|
|
811
811
|
const n = je(e.hardLimitNanos), r = je(e.softLimitNanos);
|
|
812
812
|
return n !== void 0 && t >= n ? "hard" : r !== void 0 && t >= r ? "soft" : "ok";
|
|
@@ -818,14 +818,14 @@ function yn(e, t = "month") {
|
|
|
818
818
|
const n = new Date(e);
|
|
819
819
|
return Date.UTC(n.getUTCFullYear(), n.getUTCMonth(), 1);
|
|
820
820
|
}
|
|
821
|
-
function
|
|
821
|
+
function Ns(e, t = "month") {
|
|
822
822
|
const n = new Date(yn(e, t));
|
|
823
823
|
return `${n.getUTCFullYear()}-${String(n.getUTCMonth() + 1).padStart(2, "0")}`;
|
|
824
824
|
}
|
|
825
|
-
function
|
|
825
|
+
function Rs(e) {
|
|
826
826
|
return e?.listeningEnabled !== !1;
|
|
827
827
|
}
|
|
828
|
-
const
|
|
828
|
+
const Ds = [
|
|
829
829
|
{ id: "agent", label: "Agent", labelSource: "user" },
|
|
830
830
|
{ id: "team", label: "Team", labelSource: "team" },
|
|
831
831
|
{ id: "inbox", label: "Inbox", labelSource: "inbox" },
|
|
@@ -835,26 +835,26 @@ const Ri = [
|
|
|
835
835
|
{ id: "handledBy", label: "Afhandelaar", labelSource: "raw" },
|
|
836
836
|
{ id: "time", label: "Tijd", labelSource: "raw" }
|
|
837
837
|
];
|
|
838
|
-
function
|
|
838
|
+
function se(e) {
|
|
839
839
|
return e < 10 ? `0${e}` : `${e}`;
|
|
840
840
|
}
|
|
841
841
|
function j(e, t) {
|
|
842
|
-
const n = new Date(e), r = `${n.getUTCFullYear()}-${
|
|
843
|
-
return t === "day" ? r : `${r}T${
|
|
842
|
+
const n = new Date(e), r = `${n.getUTCFullYear()}-${se(n.getUTCMonth() + 1)}-${se(n.getUTCDate())}`;
|
|
843
|
+
return t === "day" ? r : `${r}T${se(n.getUTCHours())}`;
|
|
844
844
|
}
|
|
845
845
|
function H(e, t) {
|
|
846
846
|
const n = new Date(e);
|
|
847
847
|
return n.setUTCMinutes(0, 0, 0), t === "day" && n.setUTCHours(0), n.getTime();
|
|
848
848
|
}
|
|
849
849
|
const bn = 36e5, An = 864e5;
|
|
850
|
-
function
|
|
850
|
+
function $s(e, t, n) {
|
|
851
851
|
const r = n === "hour" ? bn : An, o = [];
|
|
852
|
-
for (let
|
|
853
|
-
o.push(j(
|
|
852
|
+
for (let i = H(e, n); i <= t; i += r)
|
|
853
|
+
o.push(j(i, n));
|
|
854
854
|
return o;
|
|
855
855
|
}
|
|
856
856
|
const _n = /* @__PURE__ */ new Set(["time"]);
|
|
857
|
-
function
|
|
857
|
+
function Ls(e, t, n) {
|
|
858
858
|
if (!e) return [];
|
|
859
859
|
const r = new Set(e.supportedDimensions ?? []);
|
|
860
860
|
return t.filter((o) => r.has(o.id) && !_n.has(o.id)).map((o) => ({
|
|
@@ -863,11 +863,11 @@ function $i(e, t, n) {
|
|
|
863
863
|
options: o.options?.length ? o.options : n[o.id] ?? []
|
|
864
864
|
})).filter((o) => o.options.length > 0);
|
|
865
865
|
}
|
|
866
|
-
function
|
|
866
|
+
function Ps(e, t) {
|
|
867
867
|
const n = t.find((o) => o.id === e.dimensionId), r = n?.options.find((o) => o.value === e.value);
|
|
868
868
|
return `${n?.label ?? e.dimensionId} · ${r?.label ?? e.value}`;
|
|
869
869
|
}
|
|
870
|
-
function
|
|
870
|
+
function Ks(e) {
|
|
871
871
|
return { value: e.id, label: `${e.category} · ${e.label}` };
|
|
872
872
|
}
|
|
873
873
|
const En = [
|
|
@@ -877,7 +877,7 @@ const En = [
|
|
|
877
877
|
function In(e, t) {
|
|
878
878
|
return `${e}.usage.${t}`;
|
|
879
879
|
}
|
|
880
|
-
function
|
|
880
|
+
function Us(e, t) {
|
|
881
881
|
return t.map((n) => ({
|
|
882
882
|
id: In(e, n.unit),
|
|
883
883
|
label: n.label,
|
|
@@ -892,7 +892,7 @@ function Ki(e, t) {
|
|
|
892
892
|
]
|
|
893
893
|
}));
|
|
894
894
|
}
|
|
895
|
-
const wt = /* @__PURE__ */ new Set(["info", "success", "warning", "destructive"]), He = 200, Ge = 100, We = 200, Ve = 12, ze = 4, Xe = 10, Tn = 8, Ye = 12, kt = 4e3, q = 500,
|
|
895
|
+
const wt = /* @__PURE__ */ new Set(["info", "success", "warning", "destructive"]), He = 200, Ge = 100, We = 200, Ve = 12, ze = 4, Xe = 10, Tn = 8, Ye = 12, kt = 4e3, q = 500, Fs = 1024 * 1024, wn = /* @__PURE__ */ new Set([
|
|
896
896
|
"heading",
|
|
897
897
|
"paragraph",
|
|
898
898
|
"list",
|
|
@@ -922,31 +922,31 @@ function Cn(e) {
|
|
|
922
922
|
t += e[n], n += 1;
|
|
923
923
|
continue;
|
|
924
924
|
}
|
|
925
|
-
const o = n + (r ? 2 : 1),
|
|
926
|
-
if (
|
|
925
|
+
const o = n + (r ? 2 : 1), i = qe(e, o, "[", "]");
|
|
926
|
+
if (i < 0 || e[i + 1] !== "(") {
|
|
927
927
|
t += e[n], n += 1;
|
|
928
928
|
continue;
|
|
929
929
|
}
|
|
930
|
-
const
|
|
931
|
-
if (
|
|
930
|
+
const s = qe(e, i + 2, "(", ")");
|
|
931
|
+
if (s < 0) {
|
|
932
932
|
t += e[n], n += 1;
|
|
933
933
|
continue;
|
|
934
934
|
}
|
|
935
|
-
const a = e.slice(o,
|
|
936
|
-
t += r || !Me(c) ? a : e.slice(n,
|
|
935
|
+
const a = e.slice(o, i), c = e.slice(i + 2, s).trim().split(/\s+/)[0] ?? "";
|
|
936
|
+
t += r || !Me(c) ? a : e.slice(n, s + 1), n = s + 1;
|
|
937
937
|
}
|
|
938
938
|
return t;
|
|
939
939
|
}
|
|
940
940
|
function qe(e, t, n, r) {
|
|
941
941
|
let o = 1;
|
|
942
|
-
for (let
|
|
943
|
-
if (e[
|
|
944
|
-
|
|
942
|
+
for (let i = t; i < e.length; i += 1) {
|
|
943
|
+
if (e[i] === "\\") {
|
|
944
|
+
i += 1;
|
|
945
945
|
continue;
|
|
946
946
|
}
|
|
947
|
-
if (e[
|
|
948
|
-
else if (e[
|
|
949
|
-
return
|
|
947
|
+
if (e[i] === n) o += 1;
|
|
948
|
+
else if (e[i] === r && (o -= 1, o === 0))
|
|
949
|
+
return i;
|
|
950
950
|
}
|
|
951
951
|
return -1;
|
|
952
952
|
}
|
|
@@ -968,7 +968,7 @@ function U(e, t = 200) {
|
|
|
968
968
|
function Nn(e, t = "info") {
|
|
969
969
|
return typeof e == "string" && wt.has(e) ? e : t;
|
|
970
970
|
}
|
|
971
|
-
function
|
|
971
|
+
function Bs(e, t = () => {
|
|
972
972
|
}) {
|
|
973
973
|
if (!Array.isArray(e)) return [];
|
|
974
974
|
const n = [];
|
|
@@ -983,203 +983,203 @@ function Fi(e, t = () => {
|
|
|
983
983
|
t(`unknown block type ${String(o.type)}`);
|
|
984
984
|
continue;
|
|
985
985
|
}
|
|
986
|
-
const
|
|
986
|
+
const i = typeof o.block_id == "string" ? { block_id: o.block_id } : {};
|
|
987
987
|
switch (o.type) {
|
|
988
988
|
case "heading": {
|
|
989
|
-
const
|
|
990
|
-
if (!
|
|
989
|
+
const s = T(o.text);
|
|
990
|
+
if (!s) {
|
|
991
991
|
t("a heading without text");
|
|
992
992
|
continue;
|
|
993
993
|
}
|
|
994
994
|
const a = o.level === 2 || o.level === 3 ? o.level : 1;
|
|
995
|
-
n.push({ ...
|
|
995
|
+
n.push({ ...i, type: "heading", level: a, text: s });
|
|
996
996
|
break;
|
|
997
997
|
}
|
|
998
998
|
case "paragraph": {
|
|
999
|
-
const
|
|
1000
|
-
if (!
|
|
999
|
+
const s = T(o.text);
|
|
1000
|
+
if (!s) {
|
|
1001
1001
|
t("a paragraph without text");
|
|
1002
1002
|
continue;
|
|
1003
1003
|
}
|
|
1004
|
-
n.push({ ...
|
|
1004
|
+
n.push({ ...i, type: "paragraph", text: s });
|
|
1005
1005
|
break;
|
|
1006
1006
|
}
|
|
1007
1007
|
case "quote": {
|
|
1008
|
-
const
|
|
1009
|
-
if (!
|
|
1008
|
+
const s = T(o.text);
|
|
1009
|
+
if (!s) {
|
|
1010
1010
|
t("a quote without text");
|
|
1011
1011
|
continue;
|
|
1012
1012
|
}
|
|
1013
|
-
n.push({ ...
|
|
1013
|
+
n.push({ ...i, type: "quote", text: s });
|
|
1014
1014
|
break;
|
|
1015
1015
|
}
|
|
1016
1016
|
case "code": {
|
|
1017
|
-
const
|
|
1018
|
-
if (!
|
|
1017
|
+
const s = xn(o.text);
|
|
1018
|
+
if (!s) {
|
|
1019
1019
|
t("a code block without text");
|
|
1020
1020
|
continue;
|
|
1021
1021
|
}
|
|
1022
1022
|
const a = typeof o.lang == "string" ? { lang: o.lang.slice(0, 32) } : {};
|
|
1023
|
-
n.push({ ...
|
|
1023
|
+
n.push({ ...i, type: "code", ...a, text: s });
|
|
1024
1024
|
break;
|
|
1025
1025
|
}
|
|
1026
1026
|
case "divider":
|
|
1027
|
-
n.push({ ...
|
|
1027
|
+
n.push({ ...i, type: "divider" });
|
|
1028
1028
|
break;
|
|
1029
1029
|
case "list": {
|
|
1030
|
-
const
|
|
1031
|
-
for (const
|
|
1030
|
+
const s = Array.isArray(o.items) ? o.items : [], a = [];
|
|
1031
|
+
for (const u of s) {
|
|
1032
1032
|
if (a.length >= Ge) {
|
|
1033
1033
|
t(`more than ${Ge} list items`);
|
|
1034
1034
|
break;
|
|
1035
1035
|
}
|
|
1036
|
-
const d = T(
|
|
1036
|
+
const d = T(u?.text);
|
|
1037
1037
|
if (!d) continue;
|
|
1038
|
-
const
|
|
1039
|
-
a.push(
|
|
1038
|
+
const l = T(u?.lead, 200);
|
|
1039
|
+
a.push(l ? { lead: l, text: d } : { text: d });
|
|
1040
1040
|
}
|
|
1041
1041
|
if (a.length === 0) {
|
|
1042
1042
|
t("a list without usable items");
|
|
1043
1043
|
continue;
|
|
1044
1044
|
}
|
|
1045
1045
|
const c = o.style === "numbered" ? "numbered" : "bulleted";
|
|
1046
|
-
n.push({ ...
|
|
1046
|
+
n.push({ ...i, type: "list", style: c, items: a });
|
|
1047
1047
|
break;
|
|
1048
1048
|
}
|
|
1049
1049
|
case "table": {
|
|
1050
|
-
const
|
|
1051
|
-
for (const
|
|
1050
|
+
const s = Array.isArray(o.columns) ? o.columns : [], a = [];
|
|
1051
|
+
for (const l of s) {
|
|
1052
1052
|
if (a.length >= Ve) {
|
|
1053
1053
|
t(`more than ${Ve} table columns`);
|
|
1054
1054
|
break;
|
|
1055
1055
|
}
|
|
1056
|
-
const p = T(
|
|
1056
|
+
const p = T(l?.label, q), f = l?.align === "right" ? "right" : void 0;
|
|
1057
1057
|
a.push(f ? { label: p, align: f } : { label: p });
|
|
1058
1058
|
}
|
|
1059
1059
|
if (a.length === 0) {
|
|
1060
1060
|
t("a table without columns");
|
|
1061
1061
|
continue;
|
|
1062
1062
|
}
|
|
1063
|
-
const c = Array.isArray(o.rows) ? o.rows : [],
|
|
1064
|
-
for (const
|
|
1065
|
-
if (
|
|
1063
|
+
const c = Array.isArray(o.rows) ? o.rows : [], u = [];
|
|
1064
|
+
for (const l of c) {
|
|
1065
|
+
if (u.length >= We) {
|
|
1066
1066
|
t(`more than ${We} table rows`);
|
|
1067
1067
|
break;
|
|
1068
1068
|
}
|
|
1069
|
-
const p = Array.isArray(
|
|
1070
|
-
|
|
1069
|
+
const p = Array.isArray(l) ? l : [];
|
|
1070
|
+
u.push(a.map((f, y) => T(p[y], q)));
|
|
1071
1071
|
}
|
|
1072
1072
|
const d = T(o.caption, q);
|
|
1073
1073
|
n.push({
|
|
1074
|
-
...
|
|
1074
|
+
...i,
|
|
1075
1075
|
type: "table",
|
|
1076
1076
|
columns: a,
|
|
1077
|
-
rows:
|
|
1077
|
+
rows: u,
|
|
1078
1078
|
...d ? { caption: d } : {}
|
|
1079
1079
|
});
|
|
1080
1080
|
break;
|
|
1081
1081
|
}
|
|
1082
1082
|
case "kpi": {
|
|
1083
|
-
const
|
|
1084
|
-
for (const c of
|
|
1083
|
+
const s = Array.isArray(o.items) ? o.items : [], a = [];
|
|
1084
|
+
for (const c of s) {
|
|
1085
1085
|
if (a.length >= ze) {
|
|
1086
1086
|
t(`more than ${ze} kpi items`);
|
|
1087
1087
|
break;
|
|
1088
1088
|
}
|
|
1089
|
-
const
|
|
1090
|
-
if (!
|
|
1091
|
-
const
|
|
1089
|
+
const u = T(c?.value, 40), d = T(c?.label, 80);
|
|
1090
|
+
if (!u || !d) continue;
|
|
1091
|
+
const l = c?.tone;
|
|
1092
1092
|
a.push(
|
|
1093
|
-
typeof
|
|
1093
|
+
typeof l == "string" && wt.has(l) ? { value: u, label: d, tone: l } : { value: u, label: d }
|
|
1094
1094
|
);
|
|
1095
1095
|
}
|
|
1096
1096
|
if (a.length === 0) {
|
|
1097
1097
|
t("a kpi block without usable items");
|
|
1098
1098
|
continue;
|
|
1099
1099
|
}
|
|
1100
|
-
n.push({ ...
|
|
1100
|
+
n.push({ ...i, type: "kpi", items: a });
|
|
1101
1101
|
break;
|
|
1102
1102
|
}
|
|
1103
1103
|
case "image": {
|
|
1104
|
-
const
|
|
1105
|
-
if (!
|
|
1104
|
+
const s = typeof o.url == "string" ? o.url.trim() : "";
|
|
1105
|
+
if (!s || !Me(s)) {
|
|
1106
1106
|
t("an image without a usable url");
|
|
1107
1107
|
continue;
|
|
1108
1108
|
}
|
|
1109
1109
|
const a = T(o.alt, 200), c = T(o.caption, q);
|
|
1110
1110
|
n.push({
|
|
1111
|
-
...
|
|
1111
|
+
...i,
|
|
1112
1112
|
type: "image",
|
|
1113
|
-
url:
|
|
1113
|
+
url: s,
|
|
1114
1114
|
...a ? { alt: a } : {},
|
|
1115
1115
|
...c ? { caption: c } : {}
|
|
1116
1116
|
});
|
|
1117
1117
|
break;
|
|
1118
1118
|
}
|
|
1119
1119
|
case "letterhead": {
|
|
1120
|
-
const
|
|
1121
|
-
for (const d of
|
|
1120
|
+
const s = Array.isArray(o.fields) ? o.fields : [], a = [];
|
|
1121
|
+
for (const d of s) {
|
|
1122
1122
|
if (a.length >= Xe) {
|
|
1123
1123
|
t(`more than ${Xe} letterhead fields`);
|
|
1124
1124
|
break;
|
|
1125
1125
|
}
|
|
1126
|
-
const
|
|
1126
|
+
const l = d, p = typeof l?.key == "string" ? l.key.slice(0, 48) : "", f = U(l?.value);
|
|
1127
1127
|
if (!p || !f) continue;
|
|
1128
|
-
const y = U(
|
|
1128
|
+
const y = U(l?.label, 80);
|
|
1129
1129
|
a.push(y ? { key: p, label: y, value: f } : { key: p, value: f });
|
|
1130
1130
|
}
|
|
1131
|
-
const
|
|
1132
|
-
if (a.length === 0 &&
|
|
1131
|
+
const u = (Array.isArray(o.recipient) ? o.recipient : []).slice(0, Tn).map((d) => U(d)).filter(Boolean);
|
|
1132
|
+
if (a.length === 0 && u.length === 0) {
|
|
1133
1133
|
t("a letterhead without fields or recipient");
|
|
1134
1134
|
continue;
|
|
1135
1135
|
}
|
|
1136
1136
|
n.push({
|
|
1137
|
-
...
|
|
1137
|
+
...i,
|
|
1138
1138
|
type: "letterhead",
|
|
1139
1139
|
fields: a,
|
|
1140
|
-
...
|
|
1140
|
+
...u.length > 0 ? { recipient: u } : {}
|
|
1141
1141
|
});
|
|
1142
1142
|
break;
|
|
1143
1143
|
}
|
|
1144
1144
|
case "totals": {
|
|
1145
|
-
const
|
|
1146
|
-
const d = Array.isArray(
|
|
1145
|
+
const s = (u) => {
|
|
1146
|
+
const d = Array.isArray(u) ? u : [], l = [];
|
|
1147
1147
|
for (const p of d) {
|
|
1148
|
-
if (
|
|
1148
|
+
if (l.length >= Ye) {
|
|
1149
1149
|
t(`more than ${Ye} totals rows`);
|
|
1150
1150
|
break;
|
|
1151
1151
|
}
|
|
1152
1152
|
const f = p, y = U(f?.label), m = U(f?.amount, 40);
|
|
1153
|
-
!y || !m ||
|
|
1153
|
+
!y || !m || l.push(
|
|
1154
1154
|
f?.emphasis === !0 ? { label: y, amount: m, emphasis: !0 } : { label: y, amount: m }
|
|
1155
1155
|
);
|
|
1156
1156
|
}
|
|
1157
|
-
return
|
|
1158
|
-
}, a =
|
|
1159
|
-
if (a.length === 0) {
|
|
1157
|
+
return l;
|
|
1158
|
+
}, a = s(o.rows);
|
|
1159
|
+
if (a.length === 0 && !o.block_id) {
|
|
1160
1160
|
t("a totals block without usable rows");
|
|
1161
1161
|
continue;
|
|
1162
1162
|
}
|
|
1163
|
-
const c =
|
|
1164
|
-
n.push({ ...
|
|
1163
|
+
const c = s(o.taxRows);
|
|
1164
|
+
n.push({ ...i, type: "totals", rows: a, ...c.length > 0 ? { taxRows: c } : {} });
|
|
1165
1165
|
break;
|
|
1166
1166
|
}
|
|
1167
1167
|
case "pagebreak":
|
|
1168
|
-
n.push({ ...
|
|
1168
|
+
n.push({ ...i, type: "pagebreak" });
|
|
1169
1169
|
break;
|
|
1170
1170
|
case "callout": {
|
|
1171
|
-
const
|
|
1172
|
-
if (!
|
|
1171
|
+
const s = T(o.text);
|
|
1172
|
+
if (!s) {
|
|
1173
1173
|
t("a callout without text");
|
|
1174
1174
|
continue;
|
|
1175
1175
|
}
|
|
1176
1176
|
const a = T(o.title, 200);
|
|
1177
1177
|
n.push({
|
|
1178
|
-
...
|
|
1178
|
+
...i,
|
|
1179
1179
|
type: "callout",
|
|
1180
1180
|
tone: Nn(o.tone),
|
|
1181
1181
|
...a ? { title: a } : {},
|
|
1182
|
-
text:
|
|
1182
|
+
text: s
|
|
1183
1183
|
});
|
|
1184
1184
|
break;
|
|
1185
1185
|
}
|
|
@@ -1187,10 +1187,10 @@ function Fi(e, t = () => {
|
|
|
1187
1187
|
}
|
|
1188
1188
|
return n;
|
|
1189
1189
|
}
|
|
1190
|
-
function
|
|
1190
|
+
function js(e) {
|
|
1191
1191
|
return JSON.stringify(e).length;
|
|
1192
1192
|
}
|
|
1193
|
-
function
|
|
1193
|
+
function Hs(e) {
|
|
1194
1194
|
return {
|
|
1195
1195
|
blocks: e.length,
|
|
1196
1196
|
types: e.map((t) => t.type),
|
|
@@ -1201,7 +1201,7 @@ function Qe(e) {
|
|
|
1201
1201
|
return e.replace(/\|/g, "\\|").replace(/\r?\n/g, " ").trim();
|
|
1202
1202
|
}
|
|
1203
1203
|
function ae(e, t, n) {
|
|
1204
|
-
const r = e.map((o,
|
|
1204
|
+
const r = e.map((o, i) => n?.[i] === "right" ? "---:" : "---");
|
|
1205
1205
|
return [
|
|
1206
1206
|
`| ${e.map(Qe).join(" | ")} |`,
|
|
1207
1207
|
`| ${r.join(" | ")} |`,
|
|
@@ -1268,8 +1268,8 @@ function Dn(e, t) {
|
|
|
1268
1268
|
const n = [], r = e.some((o) => o.type === "heading" && o.level === 1);
|
|
1269
1269
|
t && !r && n.push(`# ${t}`);
|
|
1270
1270
|
for (const o of e) {
|
|
1271
|
-
const
|
|
1272
|
-
|
|
1271
|
+
const i = Rn(o);
|
|
1272
|
+
i.length > 0 && n.push(i.join(`
|
|
1273
1273
|
`));
|
|
1274
1274
|
}
|
|
1275
1275
|
return `${n.join(`
|
|
@@ -1278,44 +1278,44 @@ function Dn(e, t) {
|
|
|
1278
1278
|
`;
|
|
1279
1279
|
}
|
|
1280
1280
|
const Mt = (e) => `user:${e}`, vt = (e) => `team:${e}`;
|
|
1281
|
-
function
|
|
1281
|
+
function Gs(e) {
|
|
1282
1282
|
const t = /* @__PURE__ */ new Set();
|
|
1283
1283
|
for (const n of e ?? [])
|
|
1284
1284
|
n?.id && (n.kind === "user" && t.add(Mt(n.id)), n.kind === "team" && t.add(vt(n.id)));
|
|
1285
1285
|
return [...t].sort();
|
|
1286
1286
|
}
|
|
1287
|
-
function
|
|
1287
|
+
function Ws(e, t) {
|
|
1288
1288
|
return [Mt(e), ...t.map(vt)];
|
|
1289
1289
|
}
|
|
1290
|
-
function
|
|
1290
|
+
function Vs(e) {
|
|
1291
1291
|
const t = /* @__PURE__ */ new Set();
|
|
1292
1292
|
for (const n of e ?? [])
|
|
1293
1293
|
n?.kind && t.add(n.kind);
|
|
1294
1294
|
return [...t];
|
|
1295
1295
|
}
|
|
1296
|
-
const $n = ["done", "escalated"],
|
|
1297
|
-
function
|
|
1296
|
+
const $n = ["done", "escalated"], zs = ["open", "waiting"];
|
|
1297
|
+
function Xs(e) {
|
|
1298
1298
|
return $n.includes(e);
|
|
1299
1299
|
}
|
|
1300
1300
|
const Ln = "assignment";
|
|
1301
|
-
function
|
|
1301
|
+
function Ys(e) {
|
|
1302
1302
|
return `${Ln}:${e}`;
|
|
1303
1303
|
}
|
|
1304
|
-
function
|
|
1304
|
+
function qs(e, t, n, r) {
|
|
1305
1305
|
if (e.direction === "inbound") return !0;
|
|
1306
1306
|
if (e.author?.type === "user" && e.author.id === t) return !1;
|
|
1307
1307
|
const o = e.payload?.mentions;
|
|
1308
1308
|
return Array.isArray(o) && o.includes(t) || r && r === t ? !0 : n === "reply";
|
|
1309
1309
|
}
|
|
1310
|
-
function
|
|
1310
|
+
function Qs(e) {
|
|
1311
1311
|
const { targetAuthorId: t, reactorId: n, agentId: r, on: o } = e;
|
|
1312
1312
|
return !o || !t || t !== r ? !1 : n !== r;
|
|
1313
1313
|
}
|
|
1314
|
-
function
|
|
1314
|
+
function Zs(e) {
|
|
1315
1315
|
return e.subjectKind && e.subjectId ? { type: e.subjectKind, id: e.subjectId } : void 0;
|
|
1316
1316
|
}
|
|
1317
1317
|
const Pn = 12;
|
|
1318
|
-
function
|
|
1318
|
+
function Js(e, t, n = Pn) {
|
|
1319
1319
|
const r = t + 1;
|
|
1320
1320
|
return e ? e.kind === "done" ? { status: "done", waitingOn: null, turns: r, reason: e.note } : e.kind === "escalate" ? { status: "escalated", waitingOn: null, turns: r, reason: e.reason } : r >= n ? {
|
|
1321
1321
|
status: "escalated",
|
|
@@ -1341,7 +1341,7 @@ function Un(e) {
|
|
|
1341
1341
|
t += Number(e[n]) * (n % 2 === 0 ? 3 : 1);
|
|
1342
1342
|
return (10 - t % 10) % 10;
|
|
1343
1343
|
}
|
|
1344
|
-
function
|
|
1344
|
+
function ea(e, t) {
|
|
1345
1345
|
const n = t.trim(), r = Kn(n), o = [{ sku: n }, { barcodes: { $in: [n] } }];
|
|
1346
1346
|
return r && o.push({ gtin: r }), { organizationId: e, $or: o };
|
|
1347
1347
|
}
|
|
@@ -1350,38 +1350,38 @@ function G(e) {
|
|
|
1350
1350
|
}
|
|
1351
1351
|
function Fn(e, t) {
|
|
1352
1352
|
if (t.length === 0) return [];
|
|
1353
|
-
const n = t.reduce((c,
|
|
1354
|
-
if (n === 0) return t.map((c,
|
|
1353
|
+
const n = t.reduce((c, u) => c + u, 0);
|
|
1354
|
+
if (n === 0) return t.map((c, u) => u === 0 ? e : 0);
|
|
1355
1355
|
const r = t.map((c) => e * c / n), o = r.map((c) => Math.trunc(c));
|
|
1356
|
-
let
|
|
1357
|
-
const
|
|
1358
|
-
for (let c = 0;
|
|
1359
|
-
o[
|
|
1356
|
+
let i = e - o.reduce((c, u) => c + u, 0);
|
|
1357
|
+
const s = r.map((c, u) => ({ index: u, fraction: Math.abs(c - o[u]) })).sort((c, u) => u.fraction - c.fraction), a = i < 0 ? -1 : 1;
|
|
1358
|
+
for (let c = 0; i !== 0 && c < s.length; c++)
|
|
1359
|
+
o[s[c].index] += a, i -= a;
|
|
1360
1360
|
return o;
|
|
1361
1361
|
}
|
|
1362
1362
|
function D(e, t = {}) {
|
|
1363
|
-
const n = t.decimal ?? ",", r = t.group ?? ".", o = e < 0,
|
|
1363
|
+
const n = t.decimal ?? ",", r = t.group ?? ".", o = e < 0, i = Math.abs(Math.trunc(e)).toString().padStart(3, "0"), s = i.slice(0, -2), a = i.slice(-2);
|
|
1364
1364
|
let c = "";
|
|
1365
|
-
for (let
|
|
1366
|
-
|
|
1365
|
+
for (let u = 0; u < s.length; u++)
|
|
1366
|
+
u > 0 && (s.length - u) % 3 === 0 && (c += r), c += s[u];
|
|
1367
1367
|
return `${o ? "-" : ""}${c}${n}${a}`;
|
|
1368
1368
|
}
|
|
1369
|
-
function
|
|
1369
|
+
function ta(e) {
|
|
1370
1370
|
const t = e.trim().replace(/[\s ]/g, "");
|
|
1371
1371
|
if (!t) return;
|
|
1372
1372
|
const n = t.replace(/^[-+]?[^\d.,-]*/, "").replace(/[^\d.,-]+$/, ""), r = /^-/.test(t) || /-$/.test(t), o = n.replace(/-/g, "");
|
|
1373
1373
|
if (!o || !/^[\d.,]+$/.test(o)) return;
|
|
1374
|
-
const
|
|
1374
|
+
const i = o.lastIndexOf(","), s = o.lastIndexOf("."), a = Math.max(i, s), c = a === -1 ? "" : o.slice(a + 1), u = a !== -1 && c.length >= 1 && c.length <= 2, d = u ? o.slice(0, a) : o;
|
|
1375
1375
|
if (!Bn(d)) return;
|
|
1376
|
-
const
|
|
1377
|
-
if (
|
|
1378
|
-
const f = Number(
|
|
1376
|
+
const l = d.replace(/[.,]/g, ""), p = u ? c.padEnd(2, "0") : "00";
|
|
1377
|
+
if (l === "") return;
|
|
1378
|
+
const f = Number(l) * 100 + Number(p);
|
|
1379
1379
|
return r ? -f : f;
|
|
1380
1380
|
}
|
|
1381
1381
|
function Bn(e) {
|
|
1382
1382
|
return /^\d+$/.test(e) ? !0 : e.includes(".") && e.includes(",") ? !1 : /^\d{1,3}([.,]\d{3})*$/.test(e);
|
|
1383
1383
|
}
|
|
1384
|
-
function
|
|
1384
|
+
function na(e) {
|
|
1385
1385
|
return e.costPriceCents == null ? e.netCents : e.netCents - G(e.costPriceCents * e.quantity);
|
|
1386
1386
|
}
|
|
1387
1387
|
const jn = [
|
|
@@ -1406,20 +1406,20 @@ const jn = [
|
|
|
1406
1406
|
matches: (e, t) => !e.contractId && !e.companyId && !!e.segmentKey && e.segmentKey === t.segmentKey && !!e.categoryKey
|
|
1407
1407
|
}
|
|
1408
1408
|
];
|
|
1409
|
-
function
|
|
1409
|
+
function ra(e, t, n) {
|
|
1410
1410
|
const r = n.filter(
|
|
1411
1411
|
(o) => o.currency === e.currency && (o.validFrom == null || o.validFrom <= t.at) && (o.validTo == null || o.validTo >= t.at) && (o.minQuantity == null || t.quantity >= o.minQuantity) && (o.productId == null || o.productId === e.id) && (o.categoryKey == null || o.categoryKey === e.categoryKey) && (o.productId != null || o.categoryKey != null)
|
|
1412
1412
|
);
|
|
1413
1413
|
for (const o of jn) {
|
|
1414
|
-
const
|
|
1415
|
-
if (
|
|
1416
|
-
const
|
|
1414
|
+
const i = r.filter((a) => o.matches(a, t));
|
|
1415
|
+
if (i.length === 0) continue;
|
|
1416
|
+
const s = i.reduce(
|
|
1417
1417
|
(a, c) => (c.minQuantity ?? 0) >= (a.minQuantity ?? 0) ? c : a
|
|
1418
1418
|
);
|
|
1419
1419
|
return {
|
|
1420
|
-
unitPriceCents: Hn(
|
|
1421
|
-
sourceKey: (
|
|
1422
|
-
ruleId:
|
|
1420
|
+
unitPriceCents: Hn(s, e.listPriceCents),
|
|
1421
|
+
sourceKey: (s.minQuantity ?? 0) > 1 ? "tier" : o.key,
|
|
1422
|
+
ruleId: s.id
|
|
1423
1423
|
};
|
|
1424
1424
|
}
|
|
1425
1425
|
return { unitPriceCents: e.listPriceCents, sourceKey: "list" };
|
|
@@ -1427,7 +1427,7 @@ function na(e, t, n) {
|
|
|
1427
1427
|
function Hn(e, t) {
|
|
1428
1428
|
return e.unitPriceCents != null ? e.unitPriceCents : e.discountPercent != null ? G(t * (1 - e.discountPercent / 100)) : t;
|
|
1429
1429
|
}
|
|
1430
|
-
const
|
|
1430
|
+
const oa = ["piece", "hour", "day", "month", "km", "license"], ia = /* @__PURE__ */ new Set(["mail", "message"]);
|
|
1431
1431
|
function Gn(e, t) {
|
|
1432
1432
|
const n = e.settings?.signatures?.[t];
|
|
1433
1433
|
return !n?.enabled || !n.body || n.body.trim() === "" ? null : n;
|
|
@@ -1439,7 +1439,7 @@ function sa(e, t, n, r = "html") {
|
|
|
1439
1439
|
|
|
1440
1440
|
` : t === "mail" ? "<br><br>-- <br>" : "<br><br>"}${o.body}` : n;
|
|
1441
1441
|
}
|
|
1442
|
-
function
|
|
1442
|
+
function aa(e) {
|
|
1443
1443
|
return e.endpoints ?? [];
|
|
1444
1444
|
}
|
|
1445
1445
|
function $(e) {
|
|
@@ -1447,14 +1447,14 @@ function $(e) {
|
|
|
1447
1447
|
if (t)
|
|
1448
1448
|
return t.split(/[-_]/)[0] || void 0;
|
|
1449
1449
|
}
|
|
1450
|
-
function
|
|
1450
|
+
function ca(e) {
|
|
1451
1451
|
return $(e.contactLocale) ?? $(e.companyLocale) ?? $(e.organizationLocale);
|
|
1452
1452
|
}
|
|
1453
|
-
function
|
|
1453
|
+
function la(e, t, n, r) {
|
|
1454
1454
|
const o = e.filter((a) => a.key === t && !a.archived);
|
|
1455
1455
|
if (o.length === 0) return;
|
|
1456
|
-
const
|
|
1457
|
-
return o.find((a) => $(a.locale) ===
|
|
1456
|
+
const i = $(n), s = $(r);
|
|
1457
|
+
return o.find((a) => $(a.locale) === i) ?? o.find((a) => $(a.locale) === s) ?? // A row with no language at all is the single-language case: it is for everybody.
|
|
1458
1458
|
o.find((a) => !a.locale) ?? o[0];
|
|
1459
1459
|
}
|
|
1460
1460
|
const Wn = /\{([a-zA-Z0-9_.]+)\}/g;
|
|
@@ -1469,12 +1469,12 @@ function Ct(e, t) {
|
|
|
1469
1469
|
function Vn(e) {
|
|
1470
1470
|
return typeof e == "string" ? e : typeof e == "number" || typeof e == "boolean" ? String(e) : "";
|
|
1471
1471
|
}
|
|
1472
|
-
function zn(e, t) {
|
|
1473
|
-
const
|
|
1474
|
-
return { text: e.replace(Wn, (
|
|
1475
|
-
const
|
|
1476
|
-
return
|
|
1477
|
-
}), unresolved:
|
|
1472
|
+
function zn(e, t, n) {
|
|
1473
|
+
const r = [];
|
|
1474
|
+
return { text: e.replace(Wn, (i, s) => {
|
|
1475
|
+
const a = Ct(t, s);
|
|
1476
|
+
return a == null || a === "" ? (r.includes(s) || r.push(s), n ?? `{${s}}`) : Vn(a);
|
|
1477
|
+
}), unresolved: r };
|
|
1478
1478
|
}
|
|
1479
1479
|
function Xn(e, t) {
|
|
1480
1480
|
if (!e) return !0;
|
|
@@ -1485,104 +1485,104 @@ function Xn(e, t) {
|
|
|
1485
1485
|
}
|
|
1486
1486
|
return e.equals !== void 0 ? n === e.equals : !0;
|
|
1487
1487
|
}
|
|
1488
|
-
function
|
|
1489
|
-
const
|
|
1490
|
-
const
|
|
1491
|
-
for (const
|
|
1492
|
-
return
|
|
1488
|
+
function ua(e, t, n, r, o) {
|
|
1489
|
+
const i = [], s = [], a = (c) => {
|
|
1490
|
+
const u = zn(c, t, o);
|
|
1491
|
+
for (const d of u.unresolved) i.includes(d) || i.push(d);
|
|
1492
|
+
return u.text;
|
|
1493
1493
|
};
|
|
1494
|
-
for (const
|
|
1495
|
-
if (
|
|
1496
|
-
const
|
|
1497
|
-
if (
|
|
1498
|
-
s.push(...
|
|
1494
|
+
for (const c of e) {
|
|
1495
|
+
if (c.block_id && !Xn(n?.[c.block_id], t)) continue;
|
|
1496
|
+
const u = c.block_id ? r?.[c.block_id] : void 0;
|
|
1497
|
+
if (u) {
|
|
1498
|
+
s.push(...u);
|
|
1499
1499
|
continue;
|
|
1500
1500
|
}
|
|
1501
|
-
switch (
|
|
1501
|
+
switch (c.type) {
|
|
1502
1502
|
case "heading":
|
|
1503
1503
|
case "paragraph":
|
|
1504
1504
|
case "quote":
|
|
1505
|
-
s.push({ ...
|
|
1505
|
+
s.push({ ...c, text: a(c.text) });
|
|
1506
1506
|
break;
|
|
1507
1507
|
case "callout":
|
|
1508
1508
|
s.push({
|
|
1509
|
-
...
|
|
1510
|
-
...
|
|
1511
|
-
text:
|
|
1509
|
+
...c,
|
|
1510
|
+
...c.title ? { title: a(c.title) } : {},
|
|
1511
|
+
text: a(c.text)
|
|
1512
1512
|
});
|
|
1513
1513
|
break;
|
|
1514
1514
|
case "code":
|
|
1515
|
-
s.push(
|
|
1515
|
+
s.push(c);
|
|
1516
1516
|
break;
|
|
1517
1517
|
case "list":
|
|
1518
1518
|
s.push({
|
|
1519
|
-
...
|
|
1520
|
-
items:
|
|
1521
|
-
...
|
|
1522
|
-
text:
|
|
1519
|
+
...c,
|
|
1520
|
+
items: c.items.map((d) => ({
|
|
1521
|
+
...d.lead ? { lead: a(d.lead) } : {},
|
|
1522
|
+
text: a(d.text)
|
|
1523
1523
|
}))
|
|
1524
1524
|
});
|
|
1525
1525
|
break;
|
|
1526
1526
|
case "table":
|
|
1527
1527
|
s.push({
|
|
1528
|
-
...
|
|
1529
|
-
columns:
|
|
1530
|
-
rows:
|
|
1531
|
-
...
|
|
1528
|
+
...c,
|
|
1529
|
+
columns: c.columns.map((d) => ({ ...d, label: a(d.label) })),
|
|
1530
|
+
rows: c.rows.map((d) => d.map(a)),
|
|
1531
|
+
...c.caption ? { caption: a(c.caption) } : {}
|
|
1532
1532
|
});
|
|
1533
1533
|
break;
|
|
1534
1534
|
case "kpi":
|
|
1535
1535
|
s.push({
|
|
1536
|
-
...
|
|
1537
|
-
items:
|
|
1538
|
-
...
|
|
1539
|
-
value:
|
|
1540
|
-
label:
|
|
1536
|
+
...c,
|
|
1537
|
+
items: c.items.map((d) => ({
|
|
1538
|
+
...d,
|
|
1539
|
+
value: a(d.value),
|
|
1540
|
+
label: a(d.label)
|
|
1541
1541
|
}))
|
|
1542
1542
|
});
|
|
1543
1543
|
break;
|
|
1544
1544
|
case "letterhead":
|
|
1545
1545
|
s.push({
|
|
1546
|
-
...
|
|
1547
|
-
fields:
|
|
1548
|
-
...
|
|
1546
|
+
...c,
|
|
1547
|
+
fields: c.fields.map((d) => ({ ...d, value: a(d.value) })),
|
|
1548
|
+
...c.recipient ? { recipient: c.recipient.map(a) } : {}
|
|
1549
1549
|
});
|
|
1550
1550
|
break;
|
|
1551
1551
|
case "totals":
|
|
1552
1552
|
s.push({
|
|
1553
|
-
...
|
|
1554
|
-
rows:
|
|
1555
|
-
...
|
|
1556
|
-
label:
|
|
1557
|
-
amount:
|
|
1553
|
+
...c,
|
|
1554
|
+
rows: c.rows.map((d) => ({
|
|
1555
|
+
...d,
|
|
1556
|
+
label: a(d.label),
|
|
1557
|
+
amount: a(d.amount)
|
|
1558
1558
|
})),
|
|
1559
|
-
...
|
|
1560
|
-
taxRows:
|
|
1561
|
-
...
|
|
1562
|
-
label:
|
|
1563
|
-
amount:
|
|
1559
|
+
...c.taxRows ? {
|
|
1560
|
+
taxRows: c.taxRows.map((d) => ({
|
|
1561
|
+
...d,
|
|
1562
|
+
label: a(d.label),
|
|
1563
|
+
amount: a(d.amount)
|
|
1564
1564
|
}))
|
|
1565
1565
|
} : {}
|
|
1566
1566
|
});
|
|
1567
1567
|
break;
|
|
1568
1568
|
case "image":
|
|
1569
1569
|
s.push({
|
|
1570
|
-
...
|
|
1571
|
-
url:
|
|
1572
|
-
...
|
|
1570
|
+
...c,
|
|
1571
|
+
url: a(c.url),
|
|
1572
|
+
...c.alt ? { alt: a(c.alt) } : {}
|
|
1573
1573
|
});
|
|
1574
1574
|
break;
|
|
1575
1575
|
default:
|
|
1576
|
-
s.push(
|
|
1576
|
+
s.push(c);
|
|
1577
1577
|
}
|
|
1578
1578
|
}
|
|
1579
|
-
return { blocks: s, unresolved:
|
|
1579
|
+
return { blocks: s, unresolved: i };
|
|
1580
1580
|
}
|
|
1581
|
-
function
|
|
1582
|
-
const t = e?.billing, n = e?.address, r = e?.houseStyle, o = [n?.street, n?.houseNumber].filter(Boolean).join(" "),
|
|
1581
|
+
function da(e) {
|
|
1582
|
+
const t = e?.billing, n = e?.address, r = e?.houseStyle, o = [n?.street, n?.houseNumber].filter(Boolean).join(" "), i = [n?.postalCode, n?.city].filter(Boolean).join(" ");
|
|
1583
1583
|
return {
|
|
1584
1584
|
name: t?.companyName || e?.name || e?.displayName || "",
|
|
1585
|
-
addressLines: [o,
|
|
1585
|
+
addressLines: [o, i, n?.country ?? ""].filter(Boolean),
|
|
1586
1586
|
footerLines: [
|
|
1587
1587
|
r?.footerText ?? "",
|
|
1588
1588
|
t?.kvkNumber ? `KvK ${t.kvkNumber}` : "",
|
|
@@ -1592,13 +1592,13 @@ function ua(e) {
|
|
|
1592
1592
|
...e?.logo ? { logo: e.logo } : {}
|
|
1593
1593
|
};
|
|
1594
1594
|
}
|
|
1595
|
-
const Yn = 36e5, qn = 864e5, L = -1 / 0,
|
|
1595
|
+
const Yn = 36e5, qn = 864e5, L = -1 / 0, pa = (e) => e.score > L, J = {
|
|
1596
1596
|
urgent: 40,
|
|
1597
1597
|
high: 25,
|
|
1598
1598
|
normal: 10,
|
|
1599
1599
|
low: 0
|
|
1600
1600
|
};
|
|
1601
|
-
function
|
|
1601
|
+
function fa(e) {
|
|
1602
1602
|
return Object.fromEntries(e.map((t) => [t.resourceId, t]));
|
|
1603
1603
|
}
|
|
1604
1604
|
const Qn = /(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|newsletter|nieuwsbrief|mailer|mailing|notifications?|bounce|postmaster|marketing)@/i, Ot = /\b(unsubscribe|afmelden|uitschrijven|opt[\s-]?out|manage (your )?preferences|geen (e-?mails?|nieuwsbrief|berichten) meer)\b/i;
|
|
@@ -1606,7 +1606,7 @@ function Zn(e, t) {
|
|
|
1606
1606
|
return !!(e && Qn.test(e) || t && Ot.test(t));
|
|
1607
1607
|
}
|
|
1608
1608
|
const Jn = 3, er = 600;
|
|
1609
|
-
function
|
|
1609
|
+
function ma(e, t) {
|
|
1610
1610
|
return e >= Jn || t >= er;
|
|
1611
1611
|
}
|
|
1612
1612
|
const tr = [
|
|
@@ -1619,7 +1619,7 @@ const tr = [
|
|
|
1619
1619
|
"feedback-id",
|
|
1620
1620
|
"x-mailer"
|
|
1621
1621
|
];
|
|
1622
|
-
function
|
|
1622
|
+
function ha(e) {
|
|
1623
1623
|
const t = {};
|
|
1624
1624
|
for (const n of e) {
|
|
1625
1625
|
const r = n.name?.toLowerCase();
|
|
@@ -1628,7 +1628,7 @@ function ma(e) {
|
|
|
1628
1628
|
return t;
|
|
1629
1629
|
}
|
|
1630
1630
|
const nr = /(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|notifications?|bounce|postmaster|mailer)@/i, rr = /(^|[._+-])(newsletter|nieuwsbrief|marketing|mailing)@/i;
|
|
1631
|
-
function
|
|
1631
|
+
function ga(e) {
|
|
1632
1632
|
const t = e.headers ?? {}, n = e.from?.email, r = t["auto-submitted"]?.toLowerCase();
|
|
1633
1633
|
if (r && r !== "no" || t["x-auto-response-suppress"] || n && nr.test(n))
|
|
1634
1634
|
return "automated";
|
|
@@ -1639,7 +1639,7 @@ function ha(e) {
|
|
|
1639
1639
|
function or(e, t) {
|
|
1640
1640
|
return e.lastActivityAt ? !(e.seenBy ?? []).includes(t) : !1;
|
|
1641
1641
|
}
|
|
1642
|
-
const
|
|
1642
|
+
const ir = ["open"], sr = 1e3, ar = {
|
|
1643
1643
|
urgent: 1,
|
|
1644
1644
|
high: 4,
|
|
1645
1645
|
normal: 8,
|
|
@@ -1654,7 +1654,7 @@ function ur(e, t) {
|
|
|
1654
1654
|
function dr(e, t, n) {
|
|
1655
1655
|
return !e || e.remindAt <= n ? !1 : !((t.lastActivityAt ?? 0) > e.parkedAt && t.lastActivityPreview?.direction === "inbound");
|
|
1656
1656
|
}
|
|
1657
|
-
const xt = (e) => un(e) === "outbound_message", Nt = (e) =>
|
|
1657
|
+
const xt = (e) => un(e) === "outbound_message", Nt = (e) => ir.includes(e);
|
|
1658
1658
|
function ve(e, t) {
|
|
1659
1659
|
return Math.max(0, (t - lr(e)) / Yn);
|
|
1660
1660
|
}
|
|
@@ -1662,20 +1662,20 @@ function pr(e, t) {
|
|
|
1662
1662
|
const n = e.assignedInboxId ? t?.[e.assignedInboxId] : void 0;
|
|
1663
1663
|
return typeof n == "number" && n > 0 ? n : ar[e.priority ?? "normal"];
|
|
1664
1664
|
}
|
|
1665
|
-
function
|
|
1665
|
+
function ya(e) {
|
|
1666
1666
|
const t = {};
|
|
1667
1667
|
for (const n of e)
|
|
1668
1668
|
typeof n.slaHours == "number" && n.slaHours > 0 && (t[n.id] = n.slaHours);
|
|
1669
1669
|
return t;
|
|
1670
1670
|
}
|
|
1671
|
-
function
|
|
1671
|
+
function ba(e, t, n) {
|
|
1672
1672
|
return !Nt(e.status) || e.firstResponseAt ? !1 : ve(e, t) > pr(e, n);
|
|
1673
1673
|
}
|
|
1674
1674
|
function fr(e, t) {
|
|
1675
1675
|
const n = e.lastActivityPreview;
|
|
1676
1676
|
return n?.direction !== "outbound" || !xt(n.type) ? !1 : ve(e, t) < cr;
|
|
1677
1677
|
}
|
|
1678
|
-
function
|
|
1678
|
+
function Aa(e, t) {
|
|
1679
1679
|
if (!Nt(e.status)) return { score: L, reasons: [] };
|
|
1680
1680
|
if (e.snoozedTill && e.snoozedTill > t.now) return { score: L, reasons: [] };
|
|
1681
1681
|
if (fr(e, t.now)) return { score: L, reasons: [] };
|
|
@@ -1683,25 +1683,25 @@ function ba(e, t) {
|
|
|
1683
1683
|
let n = 0;
|
|
1684
1684
|
const r = [], o = e.priority ?? "normal";
|
|
1685
1685
|
J[o] > 0 && (n += J[o], r.push(`priority:${o}`)), or(e, t.userId) && (n += 20, r.push("unseen")), e.assignedUserId && e.assignedUserId === t.userId && (n += 15, r.push("assigned-to-you"));
|
|
1686
|
-
const
|
|
1687
|
-
if (
|
|
1688
|
-
const c = Math.min(
|
|
1689
|
-
n += c,
|
|
1686
|
+
const i = ve(e, t.now);
|
|
1687
|
+
if (i > 0) {
|
|
1688
|
+
const c = Math.min(i * 2, 30);
|
|
1689
|
+
n += c, i >= 1 && r.push(`waiting:${Math.round(i)}h`);
|
|
1690
1690
|
}
|
|
1691
|
-
const
|
|
1692
|
-
return
|
|
1691
|
+
const s = e.lastActivityPreview;
|
|
1692
|
+
return s?.type === "AI_ACTION_PROPOSED" && (n += 30, r.push("awaiting-approval")), s?.direction === "outbound" && xt(s.type) && (n += 10, r.push("no-reply")), !e.firstResponseAt && e.lastActivityPreview?.direction === "inbound" && (n += 10, r.push("awaiting-reply")), (e.tags?.some((c) => c === "marketing" || c === "automated") || Zn(e.remoteParty?.resource, e.lastActivityPreview?.snippet)) && (n -= sr, r.push("bulk")), { score: n, reasons: r };
|
|
1693
1693
|
}
|
|
1694
|
-
const
|
|
1694
|
+
const _a = (e) => !!e.assignedUserId || !!e.assignedInboxId, Ea = (e) => e.status === "closed", Sa = (e) => ({
|
|
1695
1695
|
urgent: 10,
|
|
1696
1696
|
high: 5,
|
|
1697
1697
|
normal: 2,
|
|
1698
1698
|
low: 1
|
|
1699
|
-
})[e.priority] || 0,
|
|
1700
|
-
function
|
|
1699
|
+
})[e.priority] || 0, Ia = (e, t = 30) => e.title?.length <= t ? e.title : `${e.title.substring(0, t)}...`;
|
|
1700
|
+
function Ta(e, t) {
|
|
1701
1701
|
const n = e.labels ?? [];
|
|
1702
1702
|
return n.find((r) => r.locale === t)?.label ?? n[0]?.label ?? e.url;
|
|
1703
1703
|
}
|
|
1704
|
-
function
|
|
1704
|
+
function wa(e, t, n) {
|
|
1705
1705
|
const r = e.translations ?? [];
|
|
1706
1706
|
return r.find((o) => o.locale === t) ?? (n ? r.find((o) => o.locale === n) : void 0) ?? { locale: t };
|
|
1707
1707
|
}
|
|
@@ -1724,10 +1724,10 @@ function Rt(e) {
|
|
|
1724
1724
|
const t = (e ?? "").toLowerCase();
|
|
1725
1725
|
return Ze.find((n) => n.code === t) ?? Ze.find((n) => n.code === t.split("-")[0]);
|
|
1726
1726
|
}
|
|
1727
|
-
function
|
|
1727
|
+
function ka(e) {
|
|
1728
1728
|
return Rt(e)?.label ?? e;
|
|
1729
1729
|
}
|
|
1730
|
-
function
|
|
1730
|
+
function Ma(e) {
|
|
1731
1731
|
const t = Rt(e);
|
|
1732
1732
|
return t ? t.english === t.label ? `${t.english} (${t.code})` : `${t.english} — ${t.label} (${t.code})` : e;
|
|
1733
1733
|
}
|
|
@@ -1741,13 +1741,13 @@ function mr(e, t) {
|
|
|
1741
1741
|
}
|
|
1742
1742
|
return r;
|
|
1743
1743
|
}
|
|
1744
|
-
function
|
|
1744
|
+
function va(e, t, n) {
|
|
1745
1745
|
if (!e) return !0;
|
|
1746
1746
|
if (e === t) return !1;
|
|
1747
|
-
const r = new Map(n.map((
|
|
1747
|
+
const r = new Map(n.map((s) => [s.id, s]));
|
|
1748
1748
|
if (!r.has(e) || t && hr(e, t, r)) return !1;
|
|
1749
|
-
const o = mr(e, r),
|
|
1750
|
-
return o +
|
|
1749
|
+
const o = mr(e, r), i = t ? $t(t, n) : 1;
|
|
1750
|
+
return o + i <= Dt;
|
|
1751
1751
|
}
|
|
1752
1752
|
function hr(e, t, n) {
|
|
1753
1753
|
const r = /* @__PURE__ */ new Set();
|
|
@@ -1769,13 +1769,13 @@ const gr = "en";
|
|
|
1769
1769
|
function yr(e) {
|
|
1770
1770
|
return e.defaultLocale || e.locale || gr;
|
|
1771
1771
|
}
|
|
1772
|
-
function
|
|
1772
|
+
function Ca(e) {
|
|
1773
1773
|
const t = /* @__PURE__ */ new Set(), n = [];
|
|
1774
1774
|
for (const r of [yr(e), ...e.locales ?? []])
|
|
1775
1775
|
!r || t.has(r) || (t.add(r), n.push(r));
|
|
1776
1776
|
return n;
|
|
1777
1777
|
}
|
|
1778
|
-
function
|
|
1778
|
+
function Oa(e, t, n) {
|
|
1779
1779
|
const r = e.translations ?? [];
|
|
1780
1780
|
return r.find((o) => o.locale === t)?.name ?? (n ? r.find((o) => o.locale === n)?.name : void 0) ?? e.name;
|
|
1781
1781
|
}
|
|
@@ -1806,22 +1806,22 @@ function br(e, t) {
|
|
|
1806
1806
|
return e.userId === t.userId;
|
|
1807
1807
|
}
|
|
1808
1808
|
}
|
|
1809
|
-
function
|
|
1809
|
+
function xa(e, t) {
|
|
1810
1810
|
return e.filter((n) => n.enabled && br(n.ownerScope, t));
|
|
1811
1811
|
}
|
|
1812
|
-
function
|
|
1812
|
+
function Na(e) {
|
|
1813
1813
|
return e.credentialScope ? e.credentialScope : (e.authMode ?? "header") === "header" || e.oauth?.scope === "org" ? "shared" : "per-user";
|
|
1814
1814
|
}
|
|
1815
|
-
function
|
|
1815
|
+
function Ra(e) {
|
|
1816
1816
|
return `mcp__${e}__`;
|
|
1817
1817
|
}
|
|
1818
|
-
const
|
|
1819
|
-
function
|
|
1818
|
+
const Da = 1e3, $a = 2e3, La = 500, Pa = 12e3, Ka = 4e3, Ar = ["contact", "company", "work_item"];
|
|
1819
|
+
function Ua(e) {
|
|
1820
1820
|
if (!e) return !1;
|
|
1821
1821
|
const t = e.slice(0, e.indexOf(":"));
|
|
1822
1822
|
return Ar.includes(t);
|
|
1823
1823
|
}
|
|
1824
|
-
const
|
|
1824
|
+
const Fa = [
|
|
1825
1825
|
{ key: "high", label: "tax_high", percent: 21, kind: "standard" },
|
|
1826
1826
|
{ key: "low", label: "tax_low", percent: 9, kind: "reduced" },
|
|
1827
1827
|
{ key: "zero", label: "tax_zero", percent: 0, kind: "zero" },
|
|
@@ -1841,39 +1841,39 @@ function Er(e) {
|
|
|
1841
1841
|
const t = 1 - (e.discountPercent ?? 0) / 100;
|
|
1842
1842
|
return G(e.quantity * e.unitPriceCents * t);
|
|
1843
1843
|
}
|
|
1844
|
-
function
|
|
1845
|
-
const r = e.map((
|
|
1846
|
-
for (let
|
|
1847
|
-
if (r[
|
|
1848
|
-
const d = n ?? r[
|
|
1849
|
-
|
|
1844
|
+
function Ba(e, t, n) {
|
|
1845
|
+
const r = e.map((u) => ({ ...u, netCents: Er(u), taxCents: 0 })), o = /* @__PURE__ */ new Map();
|
|
1846
|
+
for (let u = 0; u < r.length; u++) {
|
|
1847
|
+
if (r[u].kind !== "product" || r[u].optional) continue;
|
|
1848
|
+
const d = n ?? r[u].taxRateKey, l = o.get(d);
|
|
1849
|
+
l ? l.push(u) : o.set(d, [u]);
|
|
1850
1850
|
}
|
|
1851
|
-
const
|
|
1852
|
-
let
|
|
1853
|
-
for (const [
|
|
1854
|
-
const
|
|
1851
|
+
const i = [];
|
|
1852
|
+
let s = 0, a = 0;
|
|
1853
|
+
for (const [u, d] of o) {
|
|
1854
|
+
const l = _r(u, t), p = d.reduce((m, S) => m + r[S].netCents, 0), f = G(p * l.percent / 100), y = Fn(
|
|
1855
1855
|
f,
|
|
1856
1856
|
d.map((m) => r[m].netCents)
|
|
1857
1857
|
);
|
|
1858
1858
|
for (let m = 0; m < d.length; m++) r[d[m]].taxCents = y[m];
|
|
1859
|
-
|
|
1859
|
+
i.push({ taxRateKey: u, netCents: p, taxCents: f }), s += p, a += f;
|
|
1860
1860
|
}
|
|
1861
1861
|
const c = r.reduce(
|
|
1862
|
-
(
|
|
1862
|
+
(u, d) => d.costPriceCents == null || d.optional ? u : u + G(d.costPriceCents * d.quantity),
|
|
1863
1863
|
0
|
|
1864
1864
|
);
|
|
1865
1865
|
return {
|
|
1866
1866
|
lines: r,
|
|
1867
1867
|
totals: {
|
|
1868
|
-
netCents:
|
|
1868
|
+
netCents: s,
|
|
1869
1869
|
taxCents: a,
|
|
1870
|
-
grossCents:
|
|
1870
|
+
grossCents: s + a,
|
|
1871
1871
|
costCents: c,
|
|
1872
|
-
byRate:
|
|
1872
|
+
byRate: i
|
|
1873
1873
|
}
|
|
1874
1874
|
};
|
|
1875
1875
|
}
|
|
1876
|
-
const
|
|
1876
|
+
const ja = "onboarding-source", Ha = ["support", "billing", "availability", "sales", "onboarding"], Ga = ["keep", "replace"], Ce = [
|
|
1877
1877
|
{
|
|
1878
1878
|
key: "shift",
|
|
1879
1879
|
label: "kind_shift",
|
|
@@ -1965,7 +1965,7 @@ function Lt(e, t, n = Ce) {
|
|
|
1965
1965
|
const r = N(e.kindKey, n);
|
|
1966
1966
|
return r.absent ? !1 : r.productive || r.capacity;
|
|
1967
1967
|
}
|
|
1968
|
-
function
|
|
1968
|
+
function Wa(e, t = Ce) {
|
|
1969
1969
|
if (!e.userId || !W(e.status)) return !1;
|
|
1970
1970
|
const n = N(e.kindKey, t);
|
|
1971
1971
|
return n.capacity || n.productive || n.absent;
|
|
@@ -1987,8 +1987,8 @@ function Ut(e, t) {
|
|
|
1987
1987
|
function Ft(e, t, n, r) {
|
|
1988
1988
|
const o = e.filter(
|
|
1989
1989
|
(a) => a.effectiveFrom === void 0 || a.effectiveFrom <= r
|
|
1990
|
-
),
|
|
1991
|
-
return
|
|
1990
|
+
), i = (a) => a.sort((c, u) => (u.effectiveFrom ?? 0) - (c.effectiveFrom ?? 0))[0], s = i(o.filter((a) => a.userId === t));
|
|
1991
|
+
return s || i(
|
|
1992
1992
|
o.filter((a) => !a.userId && a.teamId && n.includes(a.teamId))
|
|
1993
1993
|
);
|
|
1994
1994
|
}
|
|
@@ -2007,34 +2007,34 @@ function ge(e, t, n, r) {
|
|
|
2007
2007
|
return o > 0 ? o / 1e3 : 0;
|
|
2008
2008
|
}
|
|
2009
2009
|
const tt = { interval: 0, day: 1, week: 2 };
|
|
2010
|
-
function
|
|
2011
|
-
const { entries: n, patterns: r = [], terms: o = [] } = t,
|
|
2012
|
-
(
|
|
2013
|
-
),
|
|
2014
|
-
(
|
|
2010
|
+
function Va(e, t) {
|
|
2011
|
+
const { entries: n, patterns: r = [], terms: o = [] } = t, i = n.filter(
|
|
2012
|
+
(l) => l.userId && W(l.status) && N(l.kindKey).capacity
|
|
2013
|
+
), s = n.filter(
|
|
2014
|
+
(l) => l.userId && W(l.status) && N(l.kindKey).absent
|
|
2015
2015
|
), a = t.userIds ?? [
|
|
2016
2016
|
.../* @__PURE__ */ new Set([
|
|
2017
|
-
...
|
|
2018
|
-
...r.map((
|
|
2019
|
-
...o.map((
|
|
2017
|
+
...i.map((l) => l.userId),
|
|
2018
|
+
...r.map((l) => l.userId),
|
|
2019
|
+
...o.map((l) => l.userId)
|
|
2020
2020
|
])
|
|
2021
|
-
].filter((
|
|
2022
|
-
let
|
|
2023
|
-
const d = (
|
|
2024
|
-
tt[
|
|
2021
|
+
].filter((l) => !!l), c = {};
|
|
2022
|
+
let u = "interval";
|
|
2023
|
+
const d = (l) => {
|
|
2024
|
+
tt[l] > tt[u] && (u = l);
|
|
2025
2025
|
};
|
|
2026
|
-
for (const
|
|
2027
|
-
const p = t.teamIdsOf?.(
|
|
2026
|
+
for (const l of a) {
|
|
2027
|
+
const p = t.teamIdsOf?.(l) ?? [];
|
|
2028
2028
|
let f = 0, y = 0, m = 0;
|
|
2029
2029
|
for (const h of kr(e)) {
|
|
2030
2030
|
const E = Math.max(h, e.from), x = Math.min(h + he, e.to);
|
|
2031
2031
|
m++;
|
|
2032
|
-
const C =
|
|
2032
|
+
const C = i.filter((k) => k.userId === l).reduce((k, $e) => k + ge($e.start, $e.end, E, x), 0);
|
|
2033
2033
|
if (C > 0) {
|
|
2034
2034
|
f += C;
|
|
2035
2035
|
continue;
|
|
2036
2036
|
}
|
|
2037
|
-
const M = Ft(r,
|
|
2037
|
+
const M = Ft(r, l, p, h), O = M ? Kt(M, h) : 0;
|
|
2038
2038
|
if (M && O > 0) {
|
|
2039
2039
|
f += O * 60, d(Ut(M, h) ? "interval" : "day");
|
|
2040
2040
|
continue;
|
|
@@ -2042,67 +2042,67 @@ function Wa(e, t) {
|
|
|
2042
2042
|
M || y++;
|
|
2043
2043
|
}
|
|
2044
2044
|
if (y > 0) {
|
|
2045
|
-
const h = wr(o,
|
|
2045
|
+
const h = wr(o, l, e.from);
|
|
2046
2046
|
h && (f += h.weeklyMinutes * 60 * (y / 7), d("week"));
|
|
2047
2047
|
}
|
|
2048
|
-
const S =
|
|
2048
|
+
const S = s.filter((h) => h.userId === l).reduce(
|
|
2049
2049
|
(h, E) => h + ge(E.start, E.end, e.from, e.to),
|
|
2050
2050
|
0
|
|
2051
2051
|
), g = Math.max(0, f - S);
|
|
2052
|
-
(g > 0 || m > 0) && (c[
|
|
2052
|
+
(g > 0 || m > 0) && (c[l] = g);
|
|
2053
2053
|
}
|
|
2054
2054
|
return {
|
|
2055
|
-
seconds: Object.values(c).reduce((
|
|
2056
|
-
precision:
|
|
2055
|
+
seconds: Object.values(c).reduce((l, p) => l + p, 0),
|
|
2056
|
+
precision: u,
|
|
2057
2057
|
byUser: c
|
|
2058
2058
|
};
|
|
2059
2059
|
}
|
|
2060
|
-
function
|
|
2060
|
+
function za(e, t) {
|
|
2061
2061
|
if (!e.some((a) => a.userId)) return [];
|
|
2062
2062
|
const n = "", r = /* @__PURE__ */ new Map();
|
|
2063
2063
|
for (const a of e) {
|
|
2064
2064
|
const c = a.userId ?? n;
|
|
2065
2065
|
r.set(c, (r.get(c) ?? 0) + a.seconds);
|
|
2066
2066
|
}
|
|
2067
|
-
const
|
|
2067
|
+
const i = [.../* @__PURE__ */ new Set([
|
|
2068
2068
|
...Object.keys(t.byUser),
|
|
2069
2069
|
...[...r.keys()].filter((a) => a !== n)
|
|
2070
2070
|
])].map((a) => {
|
|
2071
|
-
const c = r.get(a) ?? 0,
|
|
2071
|
+
const c = r.get(a) ?? 0, u = t.byUser[a] ?? 0;
|
|
2072
2072
|
return {
|
|
2073
2073
|
userId: a,
|
|
2074
2074
|
requiredSeconds: c,
|
|
2075
|
-
capacitySeconds:
|
|
2076
|
-
netSeconds:
|
|
2075
|
+
capacitySeconds: u,
|
|
2076
|
+
netSeconds: u - c
|
|
2077
2077
|
};
|
|
2078
2078
|
});
|
|
2079
|
-
|
|
2080
|
-
const
|
|
2081
|
-
return
|
|
2079
|
+
i.sort((a, c) => a.netSeconds - c.netSeconds);
|
|
2080
|
+
const s = r.get(n) ?? 0;
|
|
2081
|
+
return s > 0 && i.push({ requiredSeconds: s, capacitySeconds: 0, netSeconds: -s }), i;
|
|
2082
2082
|
}
|
|
2083
|
-
function
|
|
2083
|
+
function Xa(e, t, n, r) {
|
|
2084
2084
|
const o = e.filter(
|
|
2085
|
-
(
|
|
2086
|
-
),
|
|
2087
|
-
([
|
|
2088
|
-
let c = 0,
|
|
2085
|
+
(s) => s.userId && W(s.status) && !N(s.kindKey).absent
|
|
2086
|
+
), i = Object.entries(r.byUser).map(
|
|
2087
|
+
([s, a]) => {
|
|
2088
|
+
let c = 0, u = 0;
|
|
2089
2089
|
for (const d of o) {
|
|
2090
|
-
if (d.userId !==
|
|
2091
|
-
const
|
|
2092
|
-
|
|
2090
|
+
if (d.userId !== s || N(d.kindKey).capacity && !d.workstreamId) continue;
|
|
2091
|
+
const l = ge(d.start, d.end, n.from, n.to);
|
|
2092
|
+
l <= 0 || (Lt(d, t) ? c += l : u += l);
|
|
2093
2093
|
}
|
|
2094
2094
|
return {
|
|
2095
|
-
userId:
|
|
2095
|
+
userId: s,
|
|
2096
2096
|
capacitySeconds: a,
|
|
2097
2097
|
onThisSeconds: c,
|
|
2098
|
-
elsewhereSeconds:
|
|
2099
|
-
freeSeconds: Math.max(0, a - c -
|
|
2098
|
+
elsewhereSeconds: u,
|
|
2099
|
+
freeSeconds: Math.max(0, a - c - u)
|
|
2100
2100
|
};
|
|
2101
2101
|
}
|
|
2102
2102
|
);
|
|
2103
|
-
return
|
|
2103
|
+
return i.sort((s, a) => a.freeSeconds - s.freeSeconds), i;
|
|
2104
2104
|
}
|
|
2105
|
-
const
|
|
2105
|
+
const Ya = "demand-source", nt = 1e3;
|
|
2106
2106
|
function Mr(e, t) {
|
|
2107
2107
|
let n = 1;
|
|
2108
2108
|
for (let r = 1; r <= e; r++)
|
|
@@ -2126,9 +2126,9 @@ function xr(e, t, n, r) {
|
|
|
2126
2126
|
if (e <= 0 || t <= 0) return 0;
|
|
2127
2127
|
const o = Or(e, t, n);
|
|
2128
2128
|
if (o <= 0) return 0;
|
|
2129
|
-
const
|
|
2129
|
+
const i = r.serviceLevelPercent / 100, s = r.maxOccupancyPercent ? r.maxOccupancyPercent / 100 : void 0;
|
|
2130
2130
|
for (let a = Math.max(1, Math.ceil(o)); a <= nt; a++)
|
|
2131
|
-
if (!(a <= o) && !(Cr(a, o, r.targetSeconds, t) <
|
|
2131
|
+
if (!(a <= o) && !(Cr(a, o, r.targetSeconds, t) < i) && !(s && o / a > s))
|
|
2132
2132
|
return a;
|
|
2133
2133
|
return nt;
|
|
2134
2134
|
}
|
|
@@ -2136,7 +2136,7 @@ const Nr = 36e5, Rr = 864e5;
|
|
|
2136
2136
|
function Dr(e) {
|
|
2137
2137
|
return e === "day" ? Rr : Nr;
|
|
2138
2138
|
}
|
|
2139
|
-
function
|
|
2139
|
+
function qa(e, t) {
|
|
2140
2140
|
return e.start < t.end && t.start < e.end;
|
|
2141
2141
|
}
|
|
2142
2142
|
function ce(e, t, n) {
|
|
@@ -2146,19 +2146,19 @@ function ce(e, t, n) {
|
|
|
2146
2146
|
function $r(e, t, n) {
|
|
2147
2147
|
const r = e.handleSeconds ?? 0, o = e.seconds ?? (e.volume !== void 0 ? e.volume * r : 0);
|
|
2148
2148
|
if (o <= 0 && !e.volume) return { seconds: 0, headcount: 0 };
|
|
2149
|
-
const
|
|
2149
|
+
const i = (t.unplannedLossPercent ?? 0) / 100, s = i > 0 && i < 1 ? 1 / (1 - i) : 1;
|
|
2150
2150
|
if (t.model === "queue" && e.volume !== void 0 && r > 0) {
|
|
2151
2151
|
const a = xr(e.volume, r, n, t);
|
|
2152
|
-
return { seconds: o, headcount: a *
|
|
2152
|
+
return { seconds: o, headcount: a * s };
|
|
2153
2153
|
}
|
|
2154
|
-
return { seconds: o, headcount: o / n *
|
|
2154
|
+
return { seconds: o, headcount: o / n * s };
|
|
2155
2155
|
}
|
|
2156
|
-
function
|
|
2157
|
-
const { entries: t, workstreamId: n, staffing: r, demand: o, range:
|
|
2158
|
-
for (let m = H(
|
|
2159
|
-
const S = m + a, g = j(m,
|
|
2156
|
+
function Qa(e) {
|
|
2157
|
+
const { entries: t, workstreamId: n, staffing: r, demand: o, range: i } = e, s = e.grain ?? "hour", a = Dr(s), c = a / 1e3, u = e.kinds, d = t.filter((m) => W(m.status)), l = d.filter((m) => Lt(m, n, u)), p = d.filter((m) => N(m.kindKey, u).capacity), f = d.filter((m) => N(m.kindKey, u).absent), y = [];
|
|
2158
|
+
for (let m = H(i.from, s); m < i.to; m += a) {
|
|
2159
|
+
const S = m + a, g = j(m, s);
|
|
2160
2160
|
let h = 0;
|
|
2161
|
-
for (const k of
|
|
2161
|
+
for (const k of l) h += ce(k, m, S);
|
|
2162
2162
|
let E = 0;
|
|
2163
2163
|
for (const k of p) E += ce(k, m, S);
|
|
2164
2164
|
let x = 0;
|
|
@@ -2181,11 +2181,11 @@ function qa(e) {
|
|
|
2181
2181
|
function Lr(e, t) {
|
|
2182
2182
|
return e.workTypeKey ?? t?.defaultWorkTypeKey;
|
|
2183
2183
|
}
|
|
2184
|
-
function
|
|
2184
|
+
function Za(e, t, n) {
|
|
2185
2185
|
const r = Lr(e, t);
|
|
2186
2186
|
return r ? n.find((o) => o.key === r)?.defaultBillable ?? !1 : !1;
|
|
2187
2187
|
}
|
|
2188
|
-
function
|
|
2188
|
+
function Ja(e) {
|
|
2189
2189
|
return e.filter(
|
|
2190
2190
|
(t) => t.netHeadcount < 0 && t.requiredHeadcount > 0
|
|
2191
2191
|
);
|
|
@@ -2197,15 +2197,15 @@ function Br(e) {
|
|
|
2197
2197
|
}
|
|
2198
2198
|
function jr(e, t, n) {
|
|
2199
2199
|
const r = [];
|
|
2200
|
-
for (let
|
|
2201
|
-
const
|
|
2202
|
-
let c = 0,
|
|
2203
|
-
for (const [d,
|
|
2204
|
-
d >= a && d <
|
|
2205
|
-
|
|
2200
|
+
for (let i = 0; i < n; i++) {
|
|
2201
|
+
const s = t - i * ye, a = s - ye;
|
|
2202
|
+
let c = 0, u = !1;
|
|
2203
|
+
for (const [d, l] of e)
|
|
2204
|
+
d >= a && d < s && (c += l, u = !0);
|
|
2205
|
+
u && r.push(c);
|
|
2206
2206
|
}
|
|
2207
2207
|
if (r.length < 2) return 1;
|
|
2208
|
-
const o = r.reduce((
|
|
2208
|
+
const o = r.reduce((i, s) => i + s, 0) / r.length;
|
|
2209
2209
|
return o <= 0 ? 1 : Math.min(Fr, Math.max(Ur, r[0] / o));
|
|
2210
2210
|
}
|
|
2211
2211
|
function Hr(e, t) {
|
|
@@ -2215,30 +2215,30 @@ function Hr(e, t) {
|
|
|
2215
2215
|
t >= r.from && t < r.to && (n = r);
|
|
2216
2216
|
return n;
|
|
2217
2217
|
}
|
|
2218
|
-
function
|
|
2219
|
-
const r = Math.max(1, n?.weeks ?? Kr), o = /* @__PURE__ */ new Map(),
|
|
2218
|
+
function ec(e, t, n) {
|
|
2219
|
+
const r = Math.max(1, n?.weeks ?? Kr), o = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Set();
|
|
2220
2220
|
for (const c of e)
|
|
2221
|
-
o.set(Br(c.period), c.value),
|
|
2222
|
-
const
|
|
2221
|
+
o.set(Br(c.period), c.value), i.add(c.period.slice(0, 10));
|
|
2222
|
+
const s = jr(o, H(t.from, "hour"), r), a = [];
|
|
2223
2223
|
for (let c = H(t.from, "hour"); c < t.to; c += Pr) {
|
|
2224
|
-
let
|
|
2224
|
+
let u = 0, d = 0;
|
|
2225
2225
|
for (let f = 1; f <= r; f++) {
|
|
2226
|
-
const y = c - f * ye, S = o.get(y) ?? (
|
|
2226
|
+
const y = c - f * ye, S = o.get(y) ?? (i.has(j(y, "day")) ? 0 : void 0);
|
|
2227
2227
|
if (S === void 0) continue;
|
|
2228
2228
|
const g = r - f + 1;
|
|
2229
|
-
|
|
2229
|
+
u += S * g, d += g;
|
|
2230
2230
|
}
|
|
2231
|
-
let
|
|
2231
|
+
let l = d > 0 ? u / d * s : 0;
|
|
2232
2232
|
const p = Hr(n?.adjustments, c);
|
|
2233
|
-
p?.absoluteVolume !== void 0 ?
|
|
2233
|
+
p?.absoluteVolume !== void 0 ? l = p.absoluteVolume : p?.factor !== void 0 && (l *= p.factor), a.push({ period: j(c, "hour"), volume: l });
|
|
2234
2234
|
}
|
|
2235
2235
|
return a;
|
|
2236
2236
|
}
|
|
2237
2237
|
const Gr = "schedule_entry", Wr = "workstream";
|
|
2238
|
-
function
|
|
2238
|
+
function tc(e) {
|
|
2239
2239
|
return `${Gr}:${e}`;
|
|
2240
2240
|
}
|
|
2241
|
-
function
|
|
2241
|
+
function nc(e) {
|
|
2242
2242
|
return `${Wr}:${e}`;
|
|
2243
2243
|
}
|
|
2244
2244
|
const be = 36e5, K = 864e5;
|
|
@@ -2255,29 +2255,29 @@ function le(e, t, n, r) {
|
|
|
2255
2255
|
const o = Math.min(t, r) - Math.max(e, n);
|
|
2256
2256
|
return o > 0 ? o / 1e3 : 0;
|
|
2257
2257
|
}
|
|
2258
|
-
function
|
|
2259
|
-
const r = n.grain ?? "hour", o = Vr(t, r),
|
|
2260
|
-
for (const
|
|
2261
|
-
if (!(c &&
|
|
2258
|
+
function rc(e, t, n = {}) {
|
|
2259
|
+
const r = n.grain ?? "hour", o = Vr(t, r), i = r === "day" ? K : be, s = new Map(o.map((l) => [l, 0])), a = e.filter((l) => l.userId && N(l.kindKey).capacity), c = n.userIds?.length ? new Set(n.userIds) : null, u = /* @__PURE__ */ new Set();
|
|
2260
|
+
for (const l of a)
|
|
2261
|
+
if (!(c && l.userId && !c.has(l.userId))) {
|
|
2262
2262
|
for (const p of o) {
|
|
2263
|
-
const f = le(
|
|
2264
|
-
f > 0 &&
|
|
2263
|
+
const f = le(l.start, l.end, p, p + i);
|
|
2264
|
+
f > 0 && s.set(p, (s.get(p) ?? 0) + f);
|
|
2265
2265
|
}
|
|
2266
2266
|
for (const p of rt(t))
|
|
2267
|
-
le(
|
|
2267
|
+
le(l.start, l.end, p, p + K) > 0 && u.add(`${l.userId}:${p}`);
|
|
2268
2268
|
}
|
|
2269
2269
|
const d = n.userIds ?? [
|
|
2270
2270
|
.../* @__PURE__ */ new Set([
|
|
2271
|
-
...a.map((
|
|
2272
|
-
...(n.patterns ?? []).map((
|
|
2271
|
+
...a.map((l) => l.userId),
|
|
2272
|
+
...(n.patterns ?? []).map((l) => l.userId)
|
|
2273
2273
|
])
|
|
2274
|
-
].filter((
|
|
2274
|
+
].filter((l) => !!l);
|
|
2275
2275
|
if (n.patterns?.length)
|
|
2276
|
-
for (const
|
|
2277
|
-
const p = n.teamIdsOf?.(
|
|
2276
|
+
for (const l of d) {
|
|
2277
|
+
const p = n.teamIdsOf?.(l) ?? [];
|
|
2278
2278
|
for (const f of rt(t)) {
|
|
2279
|
-
if (
|
|
2280
|
-
const y = Ft(n.patterns,
|
|
2279
|
+
if (u.has(`${l}:${f}`)) continue;
|
|
2280
|
+
const y = Ft(n.patterns, l, p, f);
|
|
2281
2281
|
if (!y) continue;
|
|
2282
2282
|
const m = Kt(y, f);
|
|
2283
2283
|
if (m <= 0) continue;
|
|
@@ -2285,18 +2285,18 @@ function nc(e, t, n = {}) {
|
|
|
2285
2285
|
if (S) {
|
|
2286
2286
|
const [E, x] = S.split(":").map(Number), C = f + E * be + (x ?? 0) * 6e4, M = C + m * 6e4;
|
|
2287
2287
|
for (const O of o) {
|
|
2288
|
-
const k = le(C, M, O, O +
|
|
2289
|
-
k > 0 &&
|
|
2288
|
+
const k = le(C, M, O, O + i);
|
|
2289
|
+
k > 0 && s.set(O, (s.get(O) ?? 0) + k);
|
|
2290
2290
|
}
|
|
2291
2291
|
continue;
|
|
2292
2292
|
}
|
|
2293
2293
|
const g = o.filter((E) => E >= f && E < f + K);
|
|
2294
2294
|
if (!g.length) continue;
|
|
2295
2295
|
const h = m * 60 / g.length;
|
|
2296
|
-
for (const E of g)
|
|
2296
|
+
for (const E of g) s.set(E, (s.get(E) ?? 0) + h);
|
|
2297
2297
|
}
|
|
2298
2298
|
}
|
|
2299
|
-
return o.map((
|
|
2299
|
+
return o.map((l) => ({ period: j(l, r), weight: s.get(l) ?? 0 }));
|
|
2300
2300
|
}
|
|
2301
2301
|
function zr(e, t) {
|
|
2302
2302
|
if (e <= 0 || !t.length) return [];
|
|
@@ -2307,17 +2307,17 @@ function zr(e, t) {
|
|
|
2307
2307
|
}
|
|
2308
2308
|
return t.filter((r) => r.weight > 0).map((r) => ({ period: r.period, seconds: e * r.weight / n }));
|
|
2309
2309
|
}
|
|
2310
|
-
function
|
|
2310
|
+
function oc(e, t, n) {
|
|
2311
2311
|
const r = /* @__PURE__ */ new Map();
|
|
2312
2312
|
for (const o of e) {
|
|
2313
|
-
const
|
|
2314
|
-
for (const a of zr(o.seconds,
|
|
2315
|
-
const c = `${a.period}|${o.userId ?? ""}`,
|
|
2316
|
-
|
|
2313
|
+
const i = o.by ? t.filter((a) => n(a.period) < o.by) : t, s = i.length ? i : t;
|
|
2314
|
+
for (const a of zr(o.seconds, s)) {
|
|
2315
|
+
const c = `${a.period}|${o.userId ?? ""}`, u = r.get(c);
|
|
2316
|
+
u ? u.seconds += a.seconds : r.set(c, { ...a, userId: o.userId });
|
|
2317
2317
|
}
|
|
2318
2318
|
}
|
|
2319
2319
|
return [...r.values()].sort(
|
|
2320
|
-
(o,
|
|
2320
|
+
(o, i) => o.period.localeCompare(i.period) || (o.userId ?? "").localeCompare(i.userId ?? "")
|
|
2321
2321
|
);
|
|
2322
2322
|
}
|
|
2323
2323
|
function Xr(e) {
|
|
@@ -2330,7 +2330,7 @@ function Xr(e) {
|
|
|
2330
2330
|
return "org";
|
|
2331
2331
|
}
|
|
2332
2332
|
}
|
|
2333
|
-
function
|
|
2333
|
+
function ic(e) {
|
|
2334
2334
|
if (typeof e != "string") return;
|
|
2335
2335
|
const t = e.trim();
|
|
2336
2336
|
if (t === "org") return { kind: "org" };
|
|
@@ -2359,10 +2359,10 @@ const Qr = qr;
|
|
|
2359
2359
|
function sc(e) {
|
|
2360
2360
|
return e.agentId ? { kind: "user", userId: e.agentId } : Qr(e.ownerScope);
|
|
2361
2361
|
}
|
|
2362
|
-
function
|
|
2362
|
+
function ac(e) {
|
|
2363
2363
|
return Yr(e);
|
|
2364
2364
|
}
|
|
2365
|
-
function
|
|
2365
|
+
function cc(e, t) {
|
|
2366
2366
|
if (!t) return;
|
|
2367
2367
|
let n = e;
|
|
2368
2368
|
for (const r of t.split(".")) {
|
|
@@ -2371,24 +2371,24 @@ function ac(e, t) {
|
|
|
2371
2371
|
}
|
|
2372
2372
|
return n;
|
|
2373
2373
|
}
|
|
2374
|
-
function
|
|
2374
|
+
function lc(e, t) {
|
|
2375
2375
|
return e.targets.find((n) => n.activityTypes.includes(t));
|
|
2376
2376
|
}
|
|
2377
|
-
function
|
|
2377
|
+
function uc(e, t) {
|
|
2378
2378
|
if (t)
|
|
2379
2379
|
return e.targets.find((n) => n.id === t);
|
|
2380
2380
|
}
|
|
2381
2381
|
function Zr(e) {
|
|
2382
2382
|
return e?.kind === "assignment";
|
|
2383
2383
|
}
|
|
2384
|
-
function uc(e) {
|
|
2385
|
-
const { trigger: t, agentId: n, target: r, activityType: o, assigneeUserId: s, authorUserId: i } = e;
|
|
2386
|
-
return Zr(t) ? n ? r ? r.activityTypes.includes(o) ? s ? s !== n ? "assigned to someone else" : i && i === n ? "the agent assigned this to itself, which would restart its own run" : null : `no assignee found at ${r.assigneePath}` : `activity type ${o} 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";
|
|
2387
|
-
}
|
|
2388
2384
|
function dc(e) {
|
|
2385
|
+
const { trigger: t, agentId: n, target: r, activityType: o, assigneeUserId: i, authorUserId: s } = e;
|
|
2386
|
+
return Zr(t) ? n ? r ? r.activityTypes.includes(o) ? i ? i !== n ? "assigned to someone else" : s && s === n ? "the agent assigned this to itself, which would restart its own run" : null : `no assignee found at ${r.assigneePath}` : `activity type ${o} 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";
|
|
2387
|
+
}
|
|
2388
|
+
function pc(e) {
|
|
2389
2389
|
return (e.startsWith("tool:") ? e.slice(5) : e).replace(/__/g, " · ").replace(/\./g, " · ").replace(/_/g, " ");
|
|
2390
2390
|
}
|
|
2391
|
-
const
|
|
2391
|
+
const fc = [
|
|
2392
2392
|
{ name: "text", type: "string" },
|
|
2393
2393
|
{ name: "subject", type: "string" },
|
|
2394
2394
|
{ name: "from", type: "string" },
|
|
@@ -2428,7 +2428,7 @@ const pc = [
|
|
|
2428
2428
|
// `buildTriggerVars` cannot fill it itself: the job does that with the catalog in hand, before
|
|
2429
2429
|
// the trigger filter runs — like contactId/companyId above.
|
|
2430
2430
|
{ name: "assigneeUserId", type: "string" }
|
|
2431
|
-
],
|
|
2431
|
+
], mc = {
|
|
2432
2432
|
topics: [
|
|
2433
2433
|
{ name: "topicId", type: "string" },
|
|
2434
2434
|
{ name: "topic", type: "string" },
|
|
@@ -2450,48 +2450,48 @@ function to(e) {
|
|
|
2450
2450
|
return e?.type === eo ? e.id : void 0;
|
|
2451
2451
|
}
|
|
2452
2452
|
const no = 64, ro = 8e3;
|
|
2453
|
-
function
|
|
2453
|
+
function hc(e) {
|
|
2454
2454
|
const t = typeof e == "number" ? e : Number(String(e ?? "").trim());
|
|
2455
2455
|
if (!(!Number.isFinite(t) || t <= 0))
|
|
2456
2456
|
return Math.min(Math.max(Math.round(t), no), ro);
|
|
2457
2457
|
}
|
|
2458
|
-
const
|
|
2459
|
-
function
|
|
2458
|
+
const gc = { kind: "workflow", steps: [] };
|
|
2459
|
+
function yc(e) {
|
|
2460
2460
|
return e?.kind === "workflow" ? e.steps : [];
|
|
2461
2461
|
}
|
|
2462
|
-
function
|
|
2462
|
+
function bc(e) {
|
|
2463
2463
|
return e?.kind === "procedure" ? e.procedure : void 0;
|
|
2464
2464
|
}
|
|
2465
2465
|
function oo(e) {
|
|
2466
2466
|
const t = e?.approved ?? 0, n = t + (e?.rejected ?? 0);
|
|
2467
2467
|
return { total: n, rate: n ? t / n : 0 };
|
|
2468
2468
|
}
|
|
2469
|
-
const
|
|
2470
|
-
function
|
|
2469
|
+
const io = 10, so = 0.9;
|
|
2470
|
+
function Ac(e) {
|
|
2471
2471
|
const { total: t, rate: n } = oo(e);
|
|
2472
|
-
return t >=
|
|
2472
|
+
return t >= io && n >= so;
|
|
2473
2473
|
}
|
|
2474
2474
|
const ao = ["done", "escalated", "failed", "stopped"];
|
|
2475
|
-
function
|
|
2475
|
+
function _c(e) {
|
|
2476
2476
|
return ao.includes(e);
|
|
2477
2477
|
}
|
|
2478
2478
|
function co(e) {
|
|
2479
2479
|
return e === "waiting";
|
|
2480
2480
|
}
|
|
2481
|
-
function
|
|
2481
|
+
function Ec(e) {
|
|
2482
2482
|
return e === "running" || co(e);
|
|
2483
2483
|
}
|
|
2484
2484
|
function Bt(e) {
|
|
2485
2485
|
return e.subjectKind && e.subjectId ? { type: e.subjectKind, id: e.subjectId } : void 0;
|
|
2486
2486
|
}
|
|
2487
|
-
function
|
|
2487
|
+
function Sc(e) {
|
|
2488
2488
|
const t = Bt(e);
|
|
2489
2489
|
return t ? Jr(t) : void 0;
|
|
2490
2490
|
}
|
|
2491
|
-
function
|
|
2491
|
+
function Ic(e) {
|
|
2492
2492
|
return to(Bt(e));
|
|
2493
2493
|
}
|
|
2494
|
-
function
|
|
2494
|
+
function Tc(e) {
|
|
2495
2495
|
const t = [], n = /* @__PURE__ */ new Map();
|
|
2496
2496
|
for (const r of [...e].sort(lo)) {
|
|
2497
2497
|
const o = n.get(r.emoji);
|
|
@@ -2507,7 +2507,7 @@ function Ic(e) {
|
|
|
2507
2507
|
}).sort((r, o) => o.count - r.count || t.indexOf(r.emoji) - t.indexOf(o.emoji));
|
|
2508
2508
|
}
|
|
2509
2509
|
const lo = (e, t) => (e.createdAt ?? 0) - (t.createdAt ?? 0);
|
|
2510
|
-
function
|
|
2510
|
+
function wc(e, t) {
|
|
2511
2511
|
return t ? e.actors.some((n) => n.type === "user" && n.id === t) : !1;
|
|
2512
2512
|
}
|
|
2513
2513
|
const Ae = 6e4, uo = 36e5, V = 864e5, jt = 800;
|
|
@@ -2529,10 +2529,10 @@ function fo(e) {
|
|
|
2529
2529
|
function Gt(e, t) {
|
|
2530
2530
|
const n = Ht(e, t), r = e + n, o = Math.floor(r / V);
|
|
2531
2531
|
if (!t.days.includes(fo(o))) return null;
|
|
2532
|
-
const
|
|
2532
|
+
const i = o * V;
|
|
2533
2533
|
return {
|
|
2534
|
-
open:
|
|
2535
|
-
close:
|
|
2534
|
+
open: i + t.fromMinutes * Ae - n,
|
|
2535
|
+
close: i + t.toMinutes * Ae - n
|
|
2536
2536
|
};
|
|
2537
2537
|
}
|
|
2538
2538
|
function Wt(e, t) {
|
|
@@ -2543,10 +2543,10 @@ function _e(e, t, n) {
|
|
|
2543
2543
|
if (t <= e) return 0;
|
|
2544
2544
|
if (!n) return t - e;
|
|
2545
2545
|
let r = 0, o = e;
|
|
2546
|
-
for (let
|
|
2547
|
-
const
|
|
2548
|
-
if (
|
|
2549
|
-
const a = Math.max(o,
|
|
2546
|
+
for (let i = 0; i < jt && o < t; i++) {
|
|
2547
|
+
const s = Gt(o, n);
|
|
2548
|
+
if (s) {
|
|
2549
|
+
const a = Math.max(o, s.open), c = Math.min(t, s.close);
|
|
2550
2550
|
c > a && (r += c - a);
|
|
2551
2551
|
}
|
|
2552
2552
|
o = Wt(o, n);
|
|
@@ -2556,12 +2556,12 @@ function _e(e, t, n) {
|
|
|
2556
2556
|
function Oe(e, t, n) {
|
|
2557
2557
|
if (!n) return e + t;
|
|
2558
2558
|
let r = t, o = e;
|
|
2559
|
-
for (let
|
|
2560
|
-
const
|
|
2561
|
-
if (
|
|
2562
|
-
const a = Math.max(o,
|
|
2563
|
-
if (
|
|
2564
|
-
const c =
|
|
2559
|
+
for (let i = 0; i < jt; i++) {
|
|
2560
|
+
const s = Gt(o, n);
|
|
2561
|
+
if (s) {
|
|
2562
|
+
const a = Math.max(o, s.open);
|
|
2563
|
+
if (s.close > a) {
|
|
2564
|
+
const c = s.close - a;
|
|
2565
2565
|
if (r <= c) return a + r;
|
|
2566
2566
|
r -= c;
|
|
2567
2567
|
}
|
|
@@ -2570,32 +2570,32 @@ function Oe(e, t, n) {
|
|
|
2570
2570
|
}
|
|
2571
2571
|
return e + t;
|
|
2572
2572
|
}
|
|
2573
|
-
function
|
|
2573
|
+
function kc(e) {
|
|
2574
2574
|
const t = /^([01]\d|2[0-3]):([0-5]\d)$/.exec(e);
|
|
2575
2575
|
return t ? Number(t[1]) * 60 + Number(t[2]) : null;
|
|
2576
2576
|
}
|
|
2577
2577
|
const Ee = 1, Se = 2;
|
|
2578
|
-
function
|
|
2578
|
+
function Mc(e) {
|
|
2579
2579
|
return e === "snoozed" ? Ee : Se;
|
|
2580
2580
|
}
|
|
2581
2581
|
function xe(e) {
|
|
2582
2582
|
const t = e.calendar;
|
|
2583
2583
|
return t && Array.isArray(t.days) ? t : null;
|
|
2584
2584
|
}
|
|
2585
|
-
const
|
|
2585
|
+
const vc = [
|
|
2586
2586
|
"speed_of_answer",
|
|
2587
2587
|
"first_response",
|
|
2588
2588
|
"next_response",
|
|
2589
2589
|
"resolution",
|
|
2590
2590
|
"close"
|
|
2591
|
-
],
|
|
2591
|
+
], Cc = ["snoozed", "waiting_for_customer"], mo = 6e4, Vt = ["speed_of_answer", "first_response", "next_response"], ho = [...Vt, "resolution", "close"];
|
|
2592
2592
|
function z(e) {
|
|
2593
2593
|
return e.state === "running" || e.state === "paused";
|
|
2594
2594
|
}
|
|
2595
2595
|
function go(e, t) {
|
|
2596
2596
|
return z(e) ? { state: (e.state === "paused" ? e.remainingMs > 0 : t <= e.dueAt) ? "hit" : "missed", settledAt: Math.max(t, e.startedAt) } : null;
|
|
2597
2597
|
}
|
|
2598
|
-
function
|
|
2598
|
+
function it(e) {
|
|
2599
2599
|
return z(e) ? { state: "void" } : null;
|
|
2600
2600
|
}
|
|
2601
2601
|
function yo(e, t, n, r) {
|
|
@@ -2608,19 +2608,19 @@ function bo(e, t, n, r) {
|
|
|
2608
2608
|
const o = e.pauseBits & ~t;
|
|
2609
2609
|
return o !== 0 ? { pauseBits: o } : { pauseBits: o, state: "running", dueAt: Oe(n, e.remainingMs, r) };
|
|
2610
2610
|
}
|
|
2611
|
-
function
|
|
2612
|
-
const
|
|
2611
|
+
function Oc({ event: e, at: t, now: n, clocks: r, profile: o }) {
|
|
2612
|
+
const i = xe(o), s = Math.min(t, n), a = r.map((g) => ({ ...g })), c = [], u = (g, h) => {
|
|
2613
2613
|
h && (c.push({ op: "patch", clockId: g.id, patch: h }), Object.assign(g, h));
|
|
2614
2614
|
}, d = (g) => {
|
|
2615
2615
|
for (const h of a)
|
|
2616
|
-
h.metric === g &&
|
|
2617
|
-
},
|
|
2616
|
+
h.metric === g && u(h, go(h, s));
|
|
2617
|
+
}, l = (g) => {
|
|
2618
2618
|
for (const h of a)
|
|
2619
|
-
g.includes(h.metric) &&
|
|
2619
|
+
g.includes(h.metric) && u(h, it(h));
|
|
2620
2620
|
}, p = (g) => {
|
|
2621
|
-
for (const h of a)
|
|
2621
|
+
for (const h of a) u(h, yo(h, g, s, i));
|
|
2622
2622
|
}, f = (g) => {
|
|
2623
|
-
for (const h of a)
|
|
2623
|
+
for (const h of a) u(h, bo(h, g, s, i));
|
|
2624
2624
|
}, y = (g) => a.reduce((h, E) => E.metric === g ? Math.max(h, E.attempt) : h, 0) + 1, m = (g) => a.some((h) => h.metric === g && z(h)), S = (g, h) => {
|
|
2625
2625
|
const E = o.targets.find((C) => C.metric === g);
|
|
2626
2626
|
if (!E) return;
|
|
@@ -2631,18 +2631,18 @@ function Cc({ event: e, at: t, now: n, clocks: r, profile: o }) {
|
|
|
2631
2631
|
attempt: y(g),
|
|
2632
2632
|
startedAt: h,
|
|
2633
2633
|
targetMs: x,
|
|
2634
|
-
dueAt: Oe(h, x,
|
|
2634
|
+
dueAt: Oe(h, x, i)
|
|
2635
2635
|
});
|
|
2636
2636
|
};
|
|
2637
2637
|
switch (e) {
|
|
2638
2638
|
case "apply": {
|
|
2639
2639
|
for (const g of a)
|
|
2640
|
-
g.profileId !== o.id &&
|
|
2640
|
+
g.profileId !== o.id && u(g, it(g));
|
|
2641
2641
|
for (const g of o.targets) {
|
|
2642
2642
|
if (g.metric === "next_response") continue;
|
|
2643
2643
|
a.some(
|
|
2644
2644
|
(E) => E.metric === g.metric && E.profileId === o.id
|
|
2645
|
-
) || S(g.metric,
|
|
2645
|
+
) || S(g.metric, s);
|
|
2646
2646
|
}
|
|
2647
2647
|
break;
|
|
2648
2648
|
}
|
|
@@ -2654,17 +2654,17 @@ function Cc({ event: e, at: t, now: n, clocks: r, profile: o }) {
|
|
|
2654
2654
|
break;
|
|
2655
2655
|
}
|
|
2656
2656
|
case "inbound": {
|
|
2657
|
-
f(Se), !m("first_response") && !m("next_response") && S("next_response",
|
|
2657
|
+
f(Se), !m("first_response") && !m("next_response") && S("next_response", s);
|
|
2658
2658
|
break;
|
|
2659
2659
|
}
|
|
2660
2660
|
case "resolved":
|
|
2661
2661
|
d("resolution");
|
|
2662
2662
|
break;
|
|
2663
2663
|
case "closed":
|
|
2664
|
-
d("close"), d("resolution"),
|
|
2664
|
+
d("close"), d("resolution"), l(Vt);
|
|
2665
2665
|
break;
|
|
2666
2666
|
case "reopened":
|
|
2667
|
-
m("resolution") || S("resolution",
|
|
2667
|
+
m("resolution") || S("resolution", s), m("close") || S("close", s);
|
|
2668
2668
|
break;
|
|
2669
2669
|
case "snoozed":
|
|
2670
2670
|
o.pauseOn.includes("snoozed") && p(Ee);
|
|
@@ -2673,7 +2673,7 @@ function Cc({ event: e, at: t, now: n, clocks: r, profile: o }) {
|
|
|
2673
2673
|
f(Ee);
|
|
2674
2674
|
break;
|
|
2675
2675
|
case "discarded":
|
|
2676
|
-
|
|
2676
|
+
l(ho);
|
|
2677
2677
|
break;
|
|
2678
2678
|
}
|
|
2679
2679
|
return c;
|
|
@@ -2685,18 +2685,18 @@ function Ie(e, t) {
|
|
|
2685
2685
|
const n = xe(e);
|
|
2686
2686
|
return e.state === "paused" ? e.remainingMs : t >= e.dueAt ? -_e(e.dueAt, t, n) : _e(t, e.dueAt, n);
|
|
2687
2687
|
}
|
|
2688
|
-
function
|
|
2688
|
+
function xc(e, t) {
|
|
2689
2689
|
return e.state === "paused" ? Oe(t, e.remainingMs, xe(e)) : e.dueAt;
|
|
2690
2690
|
}
|
|
2691
|
-
function
|
|
2691
|
+
function Nc(e, t) {
|
|
2692
2692
|
const n = e.filter(Ao);
|
|
2693
2693
|
if (!n.length) return;
|
|
2694
|
-
const r = n.filter((
|
|
2694
|
+
const r = n.filter((i) => i.state === "running");
|
|
2695
2695
|
return (r.length ? r : n).reduce(
|
|
2696
|
-
(
|
|
2696
|
+
(i, s) => Ie(s, t) < Ie(i, t) ? s : i
|
|
2697
2697
|
);
|
|
2698
2698
|
}
|
|
2699
|
-
function
|
|
2699
|
+
function Rc(e, t) {
|
|
2700
2700
|
if (e.state === "missed") return "breached";
|
|
2701
2701
|
if (e.state === "hit") return "met";
|
|
2702
2702
|
if (e.state === "paused") return "paused";
|
|
@@ -2704,7 +2704,7 @@ function Nc(e, t) {
|
|
|
2704
2704
|
const n = Ie(e, t);
|
|
2705
2705
|
return n <= 0 ? "breached" : n <= e.targetMs / 5 ? "urgent" : "running";
|
|
2706
2706
|
}
|
|
2707
|
-
function
|
|
2707
|
+
function Dc(e) {
|
|
2708
2708
|
const t = Math.floor(Math.abs(e) / 1e3), n = Math.floor(t / 86400), r = Math.floor(t % 86400 / 3600), o = Math.floor(t % 3600 / 60);
|
|
2709
2709
|
return n ? r ? `${n}d ${r}u` : `${n}d` : r ? o ? `${r}u ${o}m` : `${r}u` : o ? `${o}m` : `${t % 60}s`;
|
|
2710
2710
|
}
|
|
@@ -2712,12 +2712,12 @@ const _o = "strategy_item";
|
|
|
2712
2712
|
function zt(e) {
|
|
2713
2713
|
return `${_o}:${e}`;
|
|
2714
2714
|
}
|
|
2715
|
-
function
|
|
2715
|
+
function $c(e, t = 25) {
|
|
2716
2716
|
const n = /* @__PURE__ */ new Set([zt(e.id)]);
|
|
2717
2717
|
for (const r of e.ancestorKeys ?? []) n.add(r);
|
|
2718
2718
|
return Array.from(n).slice(0, t);
|
|
2719
2719
|
}
|
|
2720
|
-
function
|
|
2720
|
+
function Lc(e) {
|
|
2721
2721
|
return e ? [...e.ancestorKeys ?? [], zt(e.id)] : [];
|
|
2722
2722
|
}
|
|
2723
2723
|
const ne = [
|
|
@@ -2731,14 +2731,14 @@ function Io(e, t = ne) {
|
|
|
2731
2731
|
function Te(e, t = ne) {
|
|
2732
2732
|
return Io(e, t)?.order ?? Eo;
|
|
2733
2733
|
}
|
|
2734
|
-
function
|
|
2734
|
+
function Pc(e, t, n = ne) {
|
|
2735
2735
|
return Te(t, n) <= Te(e, n);
|
|
2736
2736
|
}
|
|
2737
|
-
function
|
|
2737
|
+
function Kc(e, t = ne) {
|
|
2738
2738
|
const n = Te(e, t);
|
|
2739
|
-
return t.filter((o) => o.order > n).sort((o,
|
|
2739
|
+
return t.filter((o) => o.order > n).sort((o, i) => o.order - i.order)[0]?.key ?? e;
|
|
2740
2740
|
}
|
|
2741
|
-
function
|
|
2741
|
+
function Uc(e) {
|
|
2742
2742
|
const t = e.trim().toLowerCase();
|
|
2743
2743
|
return t ? t.includes("key result") || t.includes("keyresult") || t === "kr" ? "key_result" : t.includes("objective") || t.includes("goal") || t.includes("doel") ? "objective" : t.includes("focus") || t.includes("area") || t.includes("theme") ? "area" : null : null;
|
|
2744
2744
|
}
|
|
@@ -2751,86 +2751,86 @@ const we = {
|
|
|
2751
2751
|
achieved: "closed",
|
|
2752
2752
|
missed: "closed"
|
|
2753
2753
|
};
|
|
2754
|
-
function
|
|
2754
|
+
function Fc(e) {
|
|
2755
2755
|
return we[e] ?? "open";
|
|
2756
2756
|
}
|
|
2757
|
-
function
|
|
2757
|
+
function Bc(e) {
|
|
2758
2758
|
return Object.keys(we).filter(
|
|
2759
2759
|
(t) => e.includes(we[t])
|
|
2760
2760
|
);
|
|
2761
2761
|
}
|
|
2762
2762
|
const To = 864e5, re = (e) => e <= 0 ? 0 : e > 1 ? 1 : e;
|
|
2763
|
-
function
|
|
2763
|
+
function jc(e, t) {
|
|
2764
2764
|
const { direction: n } = e, r = e.startValue ?? 0, o = e.targetValue ?? 0;
|
|
2765
2765
|
if (!Number.isFinite(t)) return 0;
|
|
2766
|
-
const
|
|
2767
|
-
return (n === "down" ?
|
|
2766
|
+
const i = n === "down" ? t <= o : t >= o, s = o - r;
|
|
2767
|
+
return (n === "down" ? s < 0 : s > 0) ? re((t - r) / s) : i ? 1 : 0;
|
|
2768
2768
|
}
|
|
2769
|
-
function
|
|
2769
|
+
function Hc(e, t) {
|
|
2770
2770
|
const { startDate: n, targetDate: r } = e;
|
|
2771
2771
|
if (!(typeof n != "number" || typeof r != "number") && !(r <= n))
|
|
2772
2772
|
return re((t - n) / (r - n));
|
|
2773
2773
|
}
|
|
2774
2774
|
const wo = 0.1, ko = 0.25;
|
|
2775
|
-
function
|
|
2775
|
+
function Gc(e, t) {
|
|
2776
2776
|
if (typeof e != "number" || typeof t != "number") return;
|
|
2777
2777
|
if (e >= 1) return "achieved";
|
|
2778
2778
|
const n = t - e;
|
|
2779
2779
|
return n >= ko ? "off_track" : n >= wo ? "at_risk" : "on_track";
|
|
2780
2780
|
}
|
|
2781
|
-
function
|
|
2781
|
+
function Wc(e, t) {
|
|
2782
2782
|
if (t)
|
|
2783
2783
|
return re(e / t);
|
|
2784
2784
|
}
|
|
2785
|
-
function
|
|
2785
|
+
function Vc(e) {
|
|
2786
2786
|
const t = e.map((n) => n.progress?.ratio).filter((n) => typeof n == "number" && Number.isFinite(n));
|
|
2787
2787
|
if (t.length)
|
|
2788
2788
|
return re(t.reduce((n, r) => n + r, 0) / t.length);
|
|
2789
2789
|
}
|
|
2790
|
-
function
|
|
2790
|
+
function zc(e, t) {
|
|
2791
2791
|
const n = e.lastCheckInAt ?? e.createdAt;
|
|
2792
2792
|
if (typeof n != "number") return 0;
|
|
2793
2793
|
const r = (e.checkInEveryDays ?? So) * To, o = t - n - r;
|
|
2794
2794
|
return o > 0 ? o : 0;
|
|
2795
2795
|
}
|
|
2796
|
-
function
|
|
2796
|
+
function Xc(e) {
|
|
2797
2797
|
return e.targetDate ?? Number.MAX_SAFE_INTEGER;
|
|
2798
2798
|
}
|
|
2799
|
-
function
|
|
2799
|
+
function Yc(e, t) {
|
|
2800
2800
|
const n = e.accumulatedSeconds || 0;
|
|
2801
2801
|
return e.runningSince ? n + Math.max(0, Math.floor((t - e.runningSince) / 1e3)) : n;
|
|
2802
2802
|
}
|
|
2803
|
-
function
|
|
2803
|
+
function qc(e, t) {
|
|
2804
2804
|
const n = Math.max(1, Math.ceil(Math.max(0, e) / 60));
|
|
2805
2805
|
if (!t || t === "exact") return n * 60;
|
|
2806
2806
|
const r = Number(t);
|
|
2807
2807
|
return !Number.isFinite(r) || r <= 0 ? n * 60 : Math.ceil(n / r) * r * 60;
|
|
2808
2808
|
}
|
|
2809
|
-
function
|
|
2809
|
+
function Qc(e) {
|
|
2810
2810
|
const t = Math.max(0, Math.round(e / 60));
|
|
2811
2811
|
return `${Math.floor(t / 60)}:${String(t % 60).padStart(2, "0")}`;
|
|
2812
2812
|
}
|
|
2813
|
-
function
|
|
2814
|
-
const t = Math.max(0, Math.floor(e)), n = (
|
|
2813
|
+
function Zc(e) {
|
|
2814
|
+
const t = Math.max(0, Math.floor(e)), n = (i) => String(i).padStart(2, "0"), r = Math.floor(t / 60) % 60, o = Math.floor(t / 3600);
|
|
2815
2815
|
return o > 0 ? `${o}:${n(r)}:${n(t % 60)}` : `${n(r)}:${n(t % 60)}`;
|
|
2816
2816
|
}
|
|
2817
2817
|
function Mo(e) {
|
|
2818
2818
|
return (e || "").normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/[^a-z0-9]+/g, "-").slice(0, 48).replace(/^-+|-+$/g, "");
|
|
2819
2819
|
}
|
|
2820
|
-
function
|
|
2820
|
+
function Jc(e, t) {
|
|
2821
2821
|
const n = Mo(e) || "werksoort", r = new Set(t);
|
|
2822
2822
|
if (!r.has(n)) return n;
|
|
2823
2823
|
for (let o = 2; o < 500; o++) {
|
|
2824
|
-
const
|
|
2825
|
-
if (!r.has(
|
|
2824
|
+
const i = `${n}-${o}`;
|
|
2825
|
+
if (!r.has(i)) return i;
|
|
2826
2826
|
}
|
|
2827
2827
|
return `${n}-${r.size + 1}`;
|
|
2828
2828
|
}
|
|
2829
|
-
function
|
|
2829
|
+
function el(e, t) {
|
|
2830
2830
|
const n = e.ownerScope;
|
|
2831
2831
|
return !n || n.kind === "org" ? !0 : t.includes(n.teamId);
|
|
2832
2832
|
}
|
|
2833
|
-
function
|
|
2833
|
+
function tl(e) {
|
|
2834
2834
|
return e.filter((t) => !t.archived).sort(vo);
|
|
2835
2835
|
}
|
|
2836
2836
|
function vo(e, t) {
|
|
@@ -2847,25 +2847,25 @@ function xo(e) {
|
|
|
2847
2847
|
const n = t.slice(0, ue), r = Math.max(n.lastIndexOf(". "), n.lastIndexOf("! "), n.lastIndexOf("? "));
|
|
2848
2848
|
return r > ue * 0.6 ? n.slice(0, r + 1) : `${n.trimEnd()}…`;
|
|
2849
2849
|
}
|
|
2850
|
-
function
|
|
2850
|
+
function nl(e, t) {
|
|
2851
2851
|
const n = xo(t.text), r = P(n);
|
|
2852
|
-
if (!r || (e.examples ?? []).some((
|
|
2853
|
-
const o = e.exampleCandidates ?? [],
|
|
2854
|
-
if (
|
|
2855
|
-
if (o[
|
|
2856
|
-
const
|
|
2857
|
-
return i
|
|
2852
|
+
if (!r || (e.examples ?? []).some((s) => P(s) === r)) return null;
|
|
2853
|
+
const o = e.exampleCandidates ?? [], i = o.findIndex((s) => P(s.text) === r);
|
|
2854
|
+
if (i >= 0) {
|
|
2855
|
+
if (o[i].corrected || !t.corrected) return null;
|
|
2856
|
+
const s = [...o];
|
|
2857
|
+
return s[i] = { ...s[i], corrected: !0, addedAt: t.addedAt }, st(s);
|
|
2858
2858
|
}
|
|
2859
|
-
return
|
|
2859
|
+
return st([{ ...t, text: n }, ...o]).slice(0, Oo);
|
|
2860
2860
|
}
|
|
2861
|
-
function
|
|
2861
|
+
function st(e) {
|
|
2862
2862
|
return [...e].sort(
|
|
2863
2863
|
(t, n) => Number(n.corrected) - Number(t.corrected) || n.addedAt - t.addedAt
|
|
2864
2864
|
);
|
|
2865
2865
|
}
|
|
2866
|
-
function
|
|
2867
|
-
const n = P(t), r = (e.examples ?? []).filter((
|
|
2868
|
-
return { examples: r.some((
|
|
2866
|
+
function rl(e, t) {
|
|
2867
|
+
const n = P(t), r = (e.examples ?? []).filter((i) => i.trim());
|
|
2868
|
+
return { examples: r.some((i) => P(i) === n) ? r : [...r, t].slice(-Co), exampleCandidates: No(e, t) };
|
|
2869
2869
|
}
|
|
2870
2870
|
function No(e, t) {
|
|
2871
2871
|
const n = P(t);
|
|
@@ -2875,7 +2875,7 @@ function Ro(e, t) {
|
|
|
2875
2875
|
const n = e.ownerScope;
|
|
2876
2876
|
return n ? n.kind === "org" ? !0 : n.kind === "team" ? !!t && n.teamId === t : !1 : !1;
|
|
2877
2877
|
}
|
|
2878
|
-
function
|
|
2878
|
+
function ol(e, t) {
|
|
2879
2879
|
return e.filter((n) => Ro(n, t));
|
|
2880
2880
|
}
|
|
2881
2881
|
const Xt = [
|
|
@@ -2917,7 +2917,7 @@ function ke(e) {
|
|
|
2917
2917
|
statuses: ["draft"]
|
|
2918
2918
|
};
|
|
2919
2919
|
}
|
|
2920
|
-
function
|
|
2920
|
+
function il(e) {
|
|
2921
2921
|
return e.issuedAt != null;
|
|
2922
2922
|
}
|
|
2923
2923
|
const sl = [
|
|
@@ -2958,7 +2958,7 @@ function Do(e, t) {
|
|
|
2958
2958
|
source: e.source
|
|
2959
2959
|
};
|
|
2960
2960
|
}
|
|
2961
|
-
function
|
|
2961
|
+
function al(e) {
|
|
2962
2962
|
return {
|
|
2963
2963
|
...Do(e, e.kindKey),
|
|
2964
2964
|
sourceTransactionId: e.sourceTransactionId,
|
|
@@ -2968,7 +2968,7 @@ function il(e) {
|
|
|
2968
2968
|
totals: e.totals
|
|
2969
2969
|
};
|
|
2970
2970
|
}
|
|
2971
|
-
function
|
|
2971
|
+
function cl(e, t = {}) {
|
|
2972
2972
|
const n = ke(e.kindKey), r = e.totals ?? { netCents: 0, taxCents: 0, grossCents: 0 };
|
|
2973
2973
|
return {
|
|
2974
2974
|
customer: {
|
|
@@ -2977,7 +2977,7 @@ function al(e, t = {}) {
|
|
|
2977
2977
|
// One token per line of the address, plus `street` on its own for a template that wants
|
|
2978
2978
|
// the house number elsewhere. Empty stays empty: `fillText` reports it as a hole, and a
|
|
2979
2979
|
// recipient block missing its street is exactly what the issue gate has to refuse.
|
|
2980
|
-
address:
|
|
2980
|
+
address: Po(t.companyAddress),
|
|
2981
2981
|
street: t.companyAddress?.street ?? "",
|
|
2982
2982
|
house_number: t.companyAddress?.houseNumber ?? "",
|
|
2983
2983
|
postal_code: t.companyAddress?.postalCode ?? "",
|
|
@@ -3002,8 +3002,8 @@ function al(e, t = {}) {
|
|
|
3002
3002
|
}
|
|
3003
3003
|
};
|
|
3004
3004
|
}
|
|
3005
|
-
function
|
|
3006
|
-
const r = e.totals ?? { netCents: 0, grossCents: 0, byRate: [] }, o = (a) => t.find((c) => c.key === a)?.percent ?? 0,
|
|
3005
|
+
function ll(e, t = [], n = $o) {
|
|
3006
|
+
const r = e.totals ?? { netCents: 0, grossCents: 0, byRate: [] }, o = (a) => t.find((c) => c.key === a)?.percent ?? 0, i = {
|
|
3007
3007
|
block_id: "lines",
|
|
3008
3008
|
type: "table",
|
|
3009
3009
|
columns: [
|
|
@@ -3017,13 +3017,13 @@ function cl(e, t = [], n = $o) {
|
|
|
3017
3017
|
// A text line spans as a heading: empty money cells would read as "free".
|
|
3018
3018
|
[a.name, "", "", ""]
|
|
3019
3019
|
) : [
|
|
3020
|
-
a.
|
|
3021
|
-
|
|
3020
|
+
Lo(a.name, a.description, a.optional, n.optional),
|
|
3021
|
+
Ko(a.quantity),
|
|
3022
3022
|
D(a.unitPriceCents),
|
|
3023
3023
|
D(a.netCents)
|
|
3024
3024
|
]
|
|
3025
3025
|
)
|
|
3026
|
-
},
|
|
3026
|
+
}, s = {
|
|
3027
3027
|
block_id: "totals",
|
|
3028
3028
|
type: "totals",
|
|
3029
3029
|
rows: [
|
|
@@ -3035,20 +3035,25 @@ function cl(e, t = [], n = $o) {
|
|
|
3035
3035
|
amount: D(a.taxCents)
|
|
3036
3036
|
}))
|
|
3037
3037
|
};
|
|
3038
|
-
return { lines: [
|
|
3038
|
+
return { lines: [i], totals: [s] };
|
|
3039
3039
|
}
|
|
3040
3040
|
const $o = {
|
|
3041
3041
|
description: "Omschrijving",
|
|
3042
|
+
optional: "optioneel",
|
|
3042
3043
|
quantity: "Aantal",
|
|
3043
3044
|
unitPrice: "Stuksprijs",
|
|
3044
3045
|
net: "Netto",
|
|
3045
3046
|
tax: "Btw",
|
|
3046
3047
|
gross: "Totaal"
|
|
3047
3048
|
};
|
|
3048
|
-
function Lo(e) {
|
|
3049
|
-
|
|
3049
|
+
function Lo(e, t, n, r) {
|
|
3050
|
+
const o = t ? `${e} — ${t}` : e;
|
|
3051
|
+
return n ? `${o} (${r})` : o;
|
|
3050
3052
|
}
|
|
3051
3053
|
function Po(e) {
|
|
3054
|
+
return e?.street ? [e.street, e.houseNumber].filter(Boolean).join(" ") : "";
|
|
3055
|
+
}
|
|
3056
|
+
function Ko(e) {
|
|
3052
3057
|
return Number.isInteger(e) ? String(e) : String(e).replace(".", ",");
|
|
3053
3058
|
}
|
|
3054
3059
|
function at(e) {
|
|
@@ -3056,7 +3061,7 @@ function at(e) {
|
|
|
3056
3061
|
const t = new Date(e), n = (r) => String(r).padStart(2, "0");
|
|
3057
3062
|
return `${n(t.getDate())}-${n(t.getMonth() + 1)}-${t.getFullYear()}`;
|
|
3058
3063
|
}
|
|
3059
|
-
const
|
|
3064
|
+
const ul = [
|
|
3060
3065
|
{
|
|
3061
3066
|
block_id: "head",
|
|
3062
3067
|
type: "letterhead",
|
|
@@ -3089,39 +3094,39 @@ Hierbij onze offerte. Hieronder vindt u de specificatie.`
|
|
|
3089
3094
|
type: "paragraph",
|
|
3090
3095
|
text: "Genoemde bedragen zijn exclusief btw tenzij anders vermeld. Deze offerte is geldig tot {quote.valid_until}."
|
|
3091
3096
|
}
|
|
3092
|
-
],
|
|
3093
|
-
function
|
|
3097
|
+
], Uo = Xt.map((e) => e.key), Fo = "product";
|
|
3098
|
+
function dl(e, t) {
|
|
3094
3099
|
return `${e}:${t}`;
|
|
3095
3100
|
}
|
|
3096
|
-
function dl(e) {
|
|
3097
|
-
return `${Uo}:${e}`;
|
|
3098
|
-
}
|
|
3099
3101
|
function pl(e) {
|
|
3102
|
+
return `${Fo}:${e}`;
|
|
3103
|
+
}
|
|
3104
|
+
function fl(e) {
|
|
3100
3105
|
const t = e.indexOf(":");
|
|
3101
3106
|
if (t < 0) return;
|
|
3102
3107
|
const n = e.slice(0, t);
|
|
3103
|
-
return
|
|
3108
|
+
return Uo.includes(n) ? e.slice(t + 1) : void 0;
|
|
3104
3109
|
}
|
|
3105
|
-
function
|
|
3110
|
+
function ml(e) {
|
|
3106
3111
|
return e.type === "agent";
|
|
3107
3112
|
}
|
|
3108
|
-
const
|
|
3109
|
-
function
|
|
3113
|
+
const hl = "WORK_COMMENT_ADDED", gl = "WORK_ITEM_ASSIGNED", yl = "WORK_ITEM_STATUS_CHANGED";
|
|
3114
|
+
function Bo(e, t) {
|
|
3110
3115
|
const n = (r) => {
|
|
3111
3116
|
const o = new Date(r);
|
|
3112
3117
|
return o.setHours(0, 0, 0, 0), o.getTime();
|
|
3113
3118
|
};
|
|
3114
3119
|
return Math.round((n(e) - n(t)) / qn);
|
|
3115
3120
|
}
|
|
3116
|
-
function
|
|
3121
|
+
function bl(e, t) {
|
|
3117
3122
|
if (e.closedAt != null) return { score: L, reasons: [] };
|
|
3118
3123
|
const n = t.remindersById?.[e.id];
|
|
3119
3124
|
if (n && n.remindAt > t.now) return { score: L, reasons: [] };
|
|
3120
3125
|
let r = 0;
|
|
3121
|
-
const o = [],
|
|
3122
|
-
if (J[
|
|
3123
|
-
const
|
|
3124
|
-
|
|
3126
|
+
const o = [], i = e.priority ?? "normal";
|
|
3127
|
+
if (J[i] > 0 && (r += J[i], o.push(`priority:${i}`)), typeof e.dueDate == "number") {
|
|
3128
|
+
const s = Bo(e.dueDate, t.now);
|
|
3129
|
+
s < 0 ? (r += 35, o.push("overdue")) : s === 0 && (r += 20, o.push("due-today"));
|
|
3125
3130
|
}
|
|
3126
3131
|
return e.source?.initiator === "system" && e.source.systemReason && (r += 15, o.push(`auto:${e.source.systemReason}`)), { score: r, reasons: o };
|
|
3127
3132
|
}
|
|
@@ -3133,35 +3138,35 @@ const Ne = [
|
|
|
3133
3138
|
{ key: "subtask", label: "type_subtask" },
|
|
3134
3139
|
{ key: "case", label: "type_case" },
|
|
3135
3140
|
{ key: "deal", label: "type_deal" }
|
|
3136
|
-
],
|
|
3137
|
-
function
|
|
3141
|
+
], Al = Ne.map((e) => e.key);
|
|
3142
|
+
function _l(e) {
|
|
3138
3143
|
return e?.types?.length ? e.types : Ne;
|
|
3139
3144
|
}
|
|
3140
|
-
function
|
|
3145
|
+
function El(e, t) {
|
|
3141
3146
|
return t.find((n) => n.key === e);
|
|
3142
3147
|
}
|
|
3143
|
-
function
|
|
3148
|
+
function Sl(e) {
|
|
3144
3149
|
const t = e.trim().toLowerCase();
|
|
3145
3150
|
return t ? t.includes("sub-task") || t.includes("subtask") || t.includes("sub task") ? "subtask" : t.includes("bug") || t.includes("defect") ? "bug" : t.includes("epic") ? "epic" : t.includes("story") ? "story" : t.includes("incident") || t.includes("problem") || t.includes("service request") || t.includes("change") ? "case" : t.includes("task") ? "task" : null : null;
|
|
3146
3151
|
}
|
|
3147
|
-
function
|
|
3152
|
+
function Il(...e) {
|
|
3148
3153
|
return e.map((t) => Ne.find((n) => n.key === t)).filter((t) => !!t);
|
|
3149
3154
|
}
|
|
3150
|
-
const
|
|
3151
|
-
function
|
|
3152
|
-
return `${Bo}:${e}`;
|
|
3153
|
-
}
|
|
3154
|
-
function Yt(e) {
|
|
3155
|
+
const jo = "work_item", Ho = "work_project", Go = "work_activity", Tl = "work_cycle";
|
|
3156
|
+
function Wo(e) {
|
|
3155
3157
|
return `${jo}:${e}`;
|
|
3156
3158
|
}
|
|
3157
|
-
function
|
|
3159
|
+
function Yt(e) {
|
|
3158
3160
|
return `${Ho}:${e}`;
|
|
3159
3161
|
}
|
|
3160
|
-
function wl(e
|
|
3162
|
+
function wl(e) {
|
|
3163
|
+
return `${Go}:${e}`;
|
|
3164
|
+
}
|
|
3165
|
+
function kl(e, t, n) {
|
|
3161
3166
|
const r = `${e}-${t}`;
|
|
3162
3167
|
return n ? `${r}-${n}` : r;
|
|
3163
3168
|
}
|
|
3164
|
-
function
|
|
3169
|
+
function Ml(e) {
|
|
3165
3170
|
const t = /^([A-Za-z0-9]{2,8})-(\d+)(?:-(\d+))?$/.exec((e || "").trim());
|
|
3166
3171
|
return t ? {
|
|
3167
3172
|
projectKey: t[1].toUpperCase(),
|
|
@@ -3169,17 +3174,17 @@ function kl(e) {
|
|
|
3169
3174
|
...t[3] ? { subSequence: Number(t[3]) } : {}
|
|
3170
3175
|
} : null;
|
|
3171
3176
|
}
|
|
3172
|
-
function
|
|
3177
|
+
function vl(e) {
|
|
3173
3178
|
return (e || "").normalize("NFD").replace(/[\u0300-\u036f]/g, "").toUpperCase().replace(/[^A-Z0-9]/g, "").slice(0, 3) || "PRJ";
|
|
3174
3179
|
}
|
|
3175
|
-
function
|
|
3176
|
-
const n = /* @__PURE__ */ new Set([
|
|
3180
|
+
function Cl(e, t = 25) {
|
|
3181
|
+
const n = /* @__PURE__ */ new Set([Wo(e.id)]);
|
|
3177
3182
|
e.projectId && n.add(Yt(e.projectId));
|
|
3178
3183
|
for (const r of e.ancestorKeys ?? []) n.add(r);
|
|
3179
3184
|
for (const r of e.partyKeys ?? []) n.add(r);
|
|
3180
3185
|
return Array.from(n).slice(0, t);
|
|
3181
3186
|
}
|
|
3182
|
-
function
|
|
3187
|
+
function Ol(e) {
|
|
3183
3188
|
return [Yt(e.id)];
|
|
3184
3189
|
}
|
|
3185
3190
|
const Re = [
|
|
@@ -3188,41 +3193,41 @@ const Re = [
|
|
|
3188
3193
|
{ key: "done", label: "status_done", category: "done", order: 2 },
|
|
3189
3194
|
{ key: "cancelled", label: "status_cancelled", category: "done", order: 3 }
|
|
3190
3195
|
], qt = Re.map((e) => e.key);
|
|
3191
|
-
function
|
|
3196
|
+
function Vo(e) {
|
|
3192
3197
|
return e?.statuses?.length ? e.statuses : Re;
|
|
3193
3198
|
}
|
|
3194
|
-
function
|
|
3199
|
+
function zo(e, t) {
|
|
3195
3200
|
return t.find((n) => n.key === e)?.category ?? "todo";
|
|
3196
3201
|
}
|
|
3197
|
-
function
|
|
3202
|
+
function xl(e, t) {
|
|
3198
3203
|
return t.find((n) => n.key === e);
|
|
3199
3204
|
}
|
|
3200
|
-
function
|
|
3201
|
-
const t =
|
|
3202
|
-
return n && t.some((r) => r.key === n) ? n :
|
|
3205
|
+
function Nl(e) {
|
|
3206
|
+
const t = Vo(e), n = e?.defaultStatusKey;
|
|
3207
|
+
return n && t.some((r) => r.key === n) ? n : Xo(t)[0]?.key ?? Re[0].key;
|
|
3203
3208
|
}
|
|
3204
|
-
function
|
|
3209
|
+
function Xo(e) {
|
|
3205
3210
|
return [...e].sort((t, n) => {
|
|
3206
3211
|
const r = (t.order ?? 0) - (n.order ?? 0);
|
|
3207
3212
|
return r !== 0 ? r : (t.label || "").localeCompare(n.label || "");
|
|
3208
3213
|
});
|
|
3209
3214
|
}
|
|
3210
|
-
function
|
|
3211
|
-
return
|
|
3215
|
+
function Rl(e, t) {
|
|
3216
|
+
return zo(e, t) === "done";
|
|
3212
3217
|
}
|
|
3213
|
-
function
|
|
3218
|
+
function Yo(e) {
|
|
3214
3219
|
return (e || "").normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/[^a-z0-9]+/g, "-").slice(0, 48).replace(/^-+|-+$/g, "");
|
|
3215
3220
|
}
|
|
3216
|
-
function
|
|
3217
|
-
const n =
|
|
3221
|
+
function Dl(e, t) {
|
|
3222
|
+
const n = Yo(e) || "status", r = /* @__PURE__ */ new Set([...t, ...qt]);
|
|
3218
3223
|
if (!r.has(n)) return n;
|
|
3219
3224
|
for (let o = 2; o < 500; o++) {
|
|
3220
|
-
const
|
|
3221
|
-
if (!r.has(
|
|
3225
|
+
const i = `${n}-${o}`;
|
|
3226
|
+
if (!r.has(i)) return i;
|
|
3222
3227
|
}
|
|
3223
3228
|
return `${n}-${r.size + 1}`;
|
|
3224
3229
|
}
|
|
3225
|
-
function
|
|
3230
|
+
function $l(e) {
|
|
3226
3231
|
const t = [];
|
|
3227
3232
|
if (!e.length) return [{ index: -1, reason: "empty" }];
|
|
3228
3233
|
const n = /* @__PURE__ */ new Set();
|
|
@@ -3234,13 +3239,13 @@ function Dl(e) {
|
|
|
3234
3239
|
qt.includes(r.key) && t.push({ index: o, reason: "reserved_key", key: r.key }), n.has(r.key) && t.push({ index: o, reason: "duplicate_key", key: r.key }), n.add(r.key);
|
|
3235
3240
|
}), 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;
|
|
3236
3241
|
}
|
|
3237
|
-
function
|
|
3242
|
+
function Ll(e) {
|
|
3238
3243
|
return e.startDate ?? Number.MAX_SAFE_INTEGER;
|
|
3239
3244
|
}
|
|
3240
|
-
function
|
|
3245
|
+
function Pl(e) {
|
|
3241
3246
|
return e.completedAt ? "completed" : e.startedAt ? "active" : "planned";
|
|
3242
3247
|
}
|
|
3243
|
-
const
|
|
3248
|
+
const qo = /* @__PURE__ */ new Set(["image/png", "image/jpeg", "image/jpg", "image/gif", "image/webp"]), Qo = /* @__PURE__ */ new Set([
|
|
3244
3249
|
"text/plain",
|
|
3245
3250
|
"text/markdown",
|
|
3246
3251
|
"text/csv",
|
|
@@ -3249,67 +3254,67 @@ const Yo = /* @__PURE__ */ new Set(["image/png", "image/jpeg", "image/jpg", "ima
|
|
|
3249
3254
|
"application/xml",
|
|
3250
3255
|
"text/xml"
|
|
3251
3256
|
]);
|
|
3252
|
-
function
|
|
3257
|
+
function Zo(e) {
|
|
3253
3258
|
const t = (e ?? "").trim().toLowerCase().split(";")[0];
|
|
3254
|
-
return t ?
|
|
3259
|
+
return t ? qo.has(t) ? "image" : t === "application/pdf" ? "pdf" : Qo.has(t) ? "text" : t.startsWith("audio/") ? "audio" : "unsupported" : "unsupported";
|
|
3255
3260
|
}
|
|
3256
|
-
const F = 1024 * 1024,
|
|
3261
|
+
const F = 1024 * 1024, Jo = {
|
|
3257
3262
|
image: 5 * F,
|
|
3258
3263
|
pdf: 20 * F,
|
|
3259
3264
|
text: 1 * F,
|
|
3260
3265
|
audio: 20 * F
|
|
3261
|
-
},
|
|
3262
|
-
function
|
|
3263
|
-
const n =
|
|
3264
|
-
return n === "unsupported" ? "unsupported" : t >
|
|
3266
|
+
}, Kl = 25 * F, Ul = 5;
|
|
3267
|
+
function Fl(e, t) {
|
|
3268
|
+
const n = Zo(e);
|
|
3269
|
+
return n === "unsupported" ? "unsupported" : t > Jo[n] ? "too-large" : null;
|
|
3265
3270
|
}
|
|
3266
|
-
function
|
|
3271
|
+
function Bl(e) {
|
|
3267
3272
|
return e.access !== "read" && e.effect !== "internal";
|
|
3268
3273
|
}
|
|
3269
|
-
function
|
|
3274
|
+
function ei(e) {
|
|
3270
3275
|
return `${e.kind}:${e.id || e.url || e.title}`;
|
|
3271
3276
|
}
|
|
3272
|
-
function
|
|
3277
|
+
function jl(e, t = []) {
|
|
3273
3278
|
const n = new Set(t), r = [], o = [];
|
|
3274
|
-
for (const
|
|
3275
|
-
const
|
|
3276
|
-
n.has(
|
|
3279
|
+
for (const i of e) {
|
|
3280
|
+
const s = ei(i);
|
|
3281
|
+
n.has(s) || (n.add(s), r.push(i), o.push(s));
|
|
3277
3282
|
}
|
|
3278
3283
|
return { sources: r, keys: o };
|
|
3279
3284
|
}
|
|
3280
|
-
const
|
|
3281
|
-
function
|
|
3285
|
+
const Hl = "assist-source", Gl = ["blocking", "due", "open"];
|
|
3286
|
+
function Wl(e, t) {
|
|
3282
3287
|
const [n, r] = (e.subjectKey ?? "").split(":");
|
|
3283
3288
|
return n === t && r ? r : void 0;
|
|
3284
3289
|
}
|
|
3285
3290
|
const ct = { blocking: 0, due: 1, open: 2 };
|
|
3286
|
-
function
|
|
3291
|
+
function Vl(e, t) {
|
|
3287
3292
|
return ct[e.band ?? "open"] - ct[t.band ?? "open"] || (t.priority ?? 0) - (e.priority ?? 0) || e.id.localeCompare(t.id);
|
|
3288
3293
|
}
|
|
3289
|
-
function
|
|
3294
|
+
function zl(e) {
|
|
3290
3295
|
return e.sessions.filter(
|
|
3291
3296
|
(t) => t.id !== e.exceptSessionId && t.state === "connected" && e.canHold(t.providerId)
|
|
3292
3297
|
);
|
|
3293
3298
|
}
|
|
3294
|
-
function
|
|
3299
|
+
function Xl(e) {
|
|
3295
3300
|
return e.sessions.filter(
|
|
3296
3301
|
(t) => t.id !== e.exceptSessionId && t.state === "connected" && !e.canHold(t.providerId)
|
|
3297
3302
|
);
|
|
3298
3303
|
}
|
|
3299
|
-
function
|
|
3304
|
+
function Yl(e) {
|
|
3300
3305
|
return e.sessions.some(
|
|
3301
3306
|
(n) => n.id !== e.exceptSessionId && (n.state === "connected" || n.state === "on_hold")
|
|
3302
3307
|
) ? { admit: !1, reason: "busy" } : { admit: !0 };
|
|
3303
3308
|
}
|
|
3304
|
-
function
|
|
3305
|
-
const n = new Set(e.disabledIntents ?? []), r = e.intentOverrides ?? {}, o = t.intents.filter((
|
|
3309
|
+
function ti(e, t) {
|
|
3310
|
+
const n = new Set(e.disabledIntents ?? []), r = e.intentOverrides ?? {}, o = t.intents.filter((s) => !n.has(s.intent)).map((s) => ri(s, r[s.intent]));
|
|
3306
3311
|
if (!e.extraIntents || e.extraIntents.length === 0) return o;
|
|
3307
|
-
const
|
|
3308
|
-
for (const
|
|
3309
|
-
|
|
3312
|
+
const i = new Set(o.map((s) => s.intent));
|
|
3313
|
+
for (const s of e.extraIntents)
|
|
3314
|
+
i.has(s.intent) || (o.push(s), i.add(s.intent));
|
|
3310
3315
|
return o;
|
|
3311
3316
|
}
|
|
3312
|
-
function
|
|
3317
|
+
function ni(e, t) {
|
|
3313
3318
|
const n = {};
|
|
3314
3319
|
for (const r of e.intents) {
|
|
3315
3320
|
if (!r.togglable) continue;
|
|
@@ -3318,46 +3323,46 @@ function ts(e, t) {
|
|
|
3318
3323
|
}
|
|
3319
3324
|
return n;
|
|
3320
3325
|
}
|
|
3321
|
-
function
|
|
3322
|
-
const n =
|
|
3326
|
+
function ql(e, t) {
|
|
3327
|
+
const n = ni(e, t);
|
|
3323
3328
|
return Object.entries(n).filter(([, r]) => !r).map(([r]) => r);
|
|
3324
3329
|
}
|
|
3325
|
-
function
|
|
3330
|
+
function ri(e, t) {
|
|
3326
3331
|
return t ? {
|
|
3327
3332
|
intent: t.intent ?? e.intent,
|
|
3328
3333
|
targetSchemes: t.targetSchemes ?? e.targetSchemes,
|
|
3329
3334
|
transport: t.transport ?? e.transport
|
|
3330
3335
|
} : e;
|
|
3331
3336
|
}
|
|
3332
|
-
function
|
|
3337
|
+
function Ql(e, t) {
|
|
3333
3338
|
const n = [];
|
|
3334
3339
|
for (const r of e) {
|
|
3335
3340
|
if (!r.enabled) continue;
|
|
3336
3341
|
const o = t[r.providerId];
|
|
3337
3342
|
if (o)
|
|
3338
|
-
for (const
|
|
3339
|
-
n.push({ channel: r, description: o, capability:
|
|
3343
|
+
for (const i of ti(r, o))
|
|
3344
|
+
n.push({ channel: r, description: o, capability: i });
|
|
3340
3345
|
}
|
|
3341
3346
|
return n;
|
|
3342
3347
|
}
|
|
3343
|
-
function
|
|
3348
|
+
function Zl(e, t) {
|
|
3344
3349
|
return t.filter((n) => n.capability.intent === e);
|
|
3345
3350
|
}
|
|
3346
|
-
function
|
|
3351
|
+
function oi(e, t) {
|
|
3347
3352
|
return t.filter((n) => n.capability.targetSchemes.includes(e));
|
|
3348
3353
|
}
|
|
3349
|
-
function
|
|
3350
|
-
return
|
|
3354
|
+
function Jl(e, t) {
|
|
3355
|
+
return oi(e.scheme, t);
|
|
3351
3356
|
}
|
|
3352
|
-
function
|
|
3357
|
+
function eu(e, t, n) {
|
|
3353
3358
|
const r = [];
|
|
3354
3359
|
for (const o of e)
|
|
3355
|
-
for (const
|
|
3356
|
-
|
|
3360
|
+
for (const i of n)
|
|
3361
|
+
i.capability.intent === t && i.capability.targetSchemes.includes(o.scheme) && r.push({ channelIntent: i, endpoint: o });
|
|
3357
3362
|
return r;
|
|
3358
3363
|
}
|
|
3359
|
-
var
|
|
3360
|
-
const
|
|
3364
|
+
var ii = /* @__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))(ii || {});
|
|
3365
|
+
const si = {
|
|
3361
3366
|
mailto: "mail",
|
|
3362
3367
|
sip: "tel",
|
|
3363
3368
|
tel: "tel",
|
|
@@ -3378,10 +3383,10 @@ const ss = {
|
|
|
3378
3383
|
id: "note",
|
|
3379
3384
|
custom: "note"
|
|
3380
3385
|
};
|
|
3381
|
-
function
|
|
3382
|
-
return e ?
|
|
3386
|
+
function tu(e) {
|
|
3387
|
+
return e ? si[e] ?? "note" : "note";
|
|
3383
3388
|
}
|
|
3384
|
-
const
|
|
3389
|
+
const nu = "message_window", ru = "message_templates", ou = {
|
|
3385
3390
|
// E-mail
|
|
3386
3391
|
FROM: "from",
|
|
3387
3392
|
TO: "to",
|
|
@@ -3398,22 +3403,22 @@ const tu = "message_window", nu = "message_templates", ru = {
|
|
|
3398
3403
|
// Voice/conference
|
|
3399
3404
|
HOST: "host",
|
|
3400
3405
|
PARTICIPANT: "participant"
|
|
3401
|
-
},
|
|
3406
|
+
}, iu = (e, t) => ({ intent: e, ...t }), su = "folder_management", au = "remote_search", cu = "message_reactions", lu = {
|
|
3402
3407
|
ok: !1,
|
|
3403
3408
|
code: "UNSUPPORTED",
|
|
3404
3409
|
message: "Provider does not support this op"
|
|
3405
|
-
},
|
|
3406
|
-
function b(e, t, n, r, o,
|
|
3410
|
+
}, uu = "connector", du = "context.collect", _ = (e) => ({ type: "string", description: e }), A = (e) => ({ type: "number", description: e }), Q = (e) => ({ type: "boolean", description: e }), v = _("Sheet name. Omit for the sheet the user is looking at."), lt = _("Slide id, as `inspect` reports it.");
|
|
3411
|
+
function b(e, t, n, r, o, i) {
|
|
3407
3412
|
return {
|
|
3408
3413
|
op: e,
|
|
3409
3414
|
kinds: t,
|
|
3410
3415
|
summary: n,
|
|
3411
3416
|
parameters: { type: "object", properties: r, required: o },
|
|
3412
|
-
undoable:
|
|
3413
|
-
visible:
|
|
3417
|
+
undoable: i.undoable,
|
|
3418
|
+
visible: i.visible
|
|
3414
3419
|
};
|
|
3415
3420
|
}
|
|
3416
|
-
const B = { undoable: !1, visible: !0 }, I = { undoable: !0, visible: !0 }, ut = { undoable: !1, visible: !0 }, ee = { undoable: !1, visible: !1 },
|
|
3421
|
+
const B = { undoable: !1, visible: !0 }, I = { undoable: !0, visible: !0 }, ut = { undoable: !1, visible: !0 }, ee = { undoable: !1, visible: !1 }, ai = [
|
|
3417
3422
|
b(
|
|
3418
3423
|
"pdf.goToPage",
|
|
3419
3424
|
["pdf"],
|
|
@@ -3508,7 +3513,7 @@ const B = { undoable: !1, visible: !0 }, I = { undoable: !0, visible: !0 }, ut =
|
|
|
3508
3513
|
["page", "text"],
|
|
3509
3514
|
ee
|
|
3510
3515
|
)
|
|
3511
|
-
],
|
|
3516
|
+
], ci = [
|
|
3512
3517
|
b(
|
|
3513
3518
|
"sheet.setValues",
|
|
3514
3519
|
["sheet"],
|
|
@@ -3660,7 +3665,7 @@ const B = { undoable: !1, visible: !0 }, I = { undoable: !0, visible: !0 }, ut =
|
|
|
3660
3665
|
[],
|
|
3661
3666
|
B
|
|
3662
3667
|
)
|
|
3663
|
-
],
|
|
3668
|
+
], li = [
|
|
3664
3669
|
b(
|
|
3665
3670
|
"word.replaceParagraph",
|
|
3666
3671
|
["word"],
|
|
@@ -3722,7 +3727,7 @@ const B = { undoable: !1, visible: !0 }, I = { undoable: !0, visible: !0 }, ut =
|
|
|
3722
3727
|
["start"],
|
|
3723
3728
|
B
|
|
3724
3729
|
)
|
|
3725
|
-
],
|
|
3730
|
+
], ui = [
|
|
3726
3731
|
b(
|
|
3727
3732
|
"slides.setText",
|
|
3728
3733
|
["slides"],
|
|
@@ -3751,53 +3756,53 @@ const B = { undoable: !1, visible: !0 }, I = { undoable: !0, visible: !0 }, ut =
|
|
|
3751
3756
|
ee
|
|
3752
3757
|
)
|
|
3753
3758
|
], Qt = [
|
|
3754
|
-
...
|
|
3755
|
-
...
|
|
3756
|
-
...
|
|
3757
|
-
...
|
|
3759
|
+
...ai,
|
|
3760
|
+
...ci,
|
|
3761
|
+
...li,
|
|
3762
|
+
...ui
|
|
3758
3763
|
];
|
|
3759
|
-
function
|
|
3764
|
+
function pu(e) {
|
|
3760
3765
|
return Qt.filter((t) => t.kinds.includes(e));
|
|
3761
3766
|
}
|
|
3762
|
-
function
|
|
3767
|
+
function fu(e) {
|
|
3763
3768
|
return Qt.find((t) => t.op === e);
|
|
3764
3769
|
}
|
|
3765
|
-
const dt = /(?: {2,}|\\)$/,
|
|
3770
|
+
const dt = /(?: {2,}|\\)$/, di = /^\*\*([^*]+)\*\*\s+(.*)$/;
|
|
3766
3771
|
function pt(e) {
|
|
3767
|
-
const t =
|
|
3772
|
+
const t = di.exec(e);
|
|
3768
3773
|
return t ? { lead: t[1], text: t[2] } : { text: e };
|
|
3769
3774
|
}
|
|
3770
|
-
function
|
|
3775
|
+
function mu(e) {
|
|
3771
3776
|
const t = (e ?? "").replace(/\r\n/g, `
|
|
3772
3777
|
`).split(`
|
|
3773
3778
|
`), n = [];
|
|
3774
3779
|
let r = null;
|
|
3775
3780
|
const o = () => {
|
|
3776
3781
|
r && n.push({ type: "list", style: r.style, items: r.items }), r = null;
|
|
3777
|
-
},
|
|
3782
|
+
}, i = (p, f) => {
|
|
3778
3783
|
r && r.style !== p && o(), r ? r.items.push(pt(f)) : r = { style: p, items: [pt(f)] };
|
|
3779
3784
|
};
|
|
3780
|
-
let
|
|
3785
|
+
let s = [], a = [];
|
|
3781
3786
|
const c = () => {
|
|
3782
|
-
if (
|
|
3783
|
-
const p =
|
|
3784
|
-
p && n.push({ type: "paragraph", text: p }),
|
|
3787
|
+
if (s.length) {
|
|
3788
|
+
const p = s.join("").trim();
|
|
3789
|
+
p && n.push({ type: "paragraph", text: p }), s = [];
|
|
3785
3790
|
}
|
|
3786
|
-
},
|
|
3791
|
+
}, u = () => {
|
|
3787
3792
|
a.length && (n.push({ type: "quote", text: a.join(`
|
|
3788
3793
|
`) }), a = []);
|
|
3789
3794
|
}, d = () => {
|
|
3790
|
-
c(),
|
|
3795
|
+
c(), u(), o();
|
|
3791
3796
|
};
|
|
3792
|
-
let
|
|
3793
|
-
for (;
|
|
3794
|
-
const p = t[
|
|
3797
|
+
let l = 0;
|
|
3798
|
+
for (; l < t.length; ) {
|
|
3799
|
+
const p = t[l] ?? "", f = p.match(/^```(\w*)\s*$/);
|
|
3795
3800
|
if (f) {
|
|
3796
3801
|
d();
|
|
3797
3802
|
const g = [];
|
|
3798
|
-
for (
|
|
3799
|
-
g.push(t[
|
|
3800
|
-
|
|
3803
|
+
for (l++; l < t.length && !/^```\s*$/.test(t[l] ?? ""); )
|
|
3804
|
+
g.push(t[l] ?? ""), l++;
|
|
3805
|
+
l++, n.push({ type: "code", ...f[1] ? { lang: f[1] } : {}, text: g.join(`
|
|
3801
3806
|
`) });
|
|
3802
3807
|
continue;
|
|
3803
3808
|
}
|
|
@@ -3807,7 +3812,7 @@ function fu(e) {
|
|
|
3807
3812
|
type: "heading",
|
|
3808
3813
|
level: y[1].length,
|
|
3809
3814
|
text: y[2].trim()
|
|
3810
|
-
}),
|
|
3815
|
+
}), l++;
|
|
3811
3816
|
continue;
|
|
3812
3817
|
}
|
|
3813
3818
|
const m = p.match(/^!\[([^\]]*)\]\(([^)\s]+)\)\s*$/);
|
|
@@ -3816,57 +3821,57 @@ function fu(e) {
|
|
|
3816
3821
|
type: "image",
|
|
3817
3822
|
url: m[2],
|
|
3818
3823
|
...m[1] ? { alt: m[1] } : {}
|
|
3819
|
-
}),
|
|
3824
|
+
}), l++;
|
|
3820
3825
|
continue;
|
|
3821
3826
|
}
|
|
3822
3827
|
if (/^\s*[-*]\s+/.test(p)) {
|
|
3823
|
-
c(),
|
|
3828
|
+
c(), u(), i("bulleted", p.replace(/^\s*[-*]\s+/, "")), l++;
|
|
3824
3829
|
continue;
|
|
3825
3830
|
}
|
|
3826
3831
|
if (/^\s*\d+\.\s+/.test(p)) {
|
|
3827
|
-
c(),
|
|
3832
|
+
c(), u(), i("numbered", p.replace(/^\s*\d+\.\s+/, "")), l++;
|
|
3828
3833
|
continue;
|
|
3829
3834
|
}
|
|
3830
3835
|
if (/^\s*(-{3,}|\*{3,}|_{3,})\s*$/.test(p)) {
|
|
3831
|
-
d(), n.push({ type: "divider" }),
|
|
3836
|
+
d(), n.push({ type: "divider" }), l++;
|
|
3832
3837
|
continue;
|
|
3833
3838
|
}
|
|
3834
3839
|
if (/^>\s?/.test(p)) {
|
|
3835
|
-
c(), o(), a.push(p.replace(/^>\s?/, "")),
|
|
3840
|
+
c(), o(), a.push(p.replace(/^>\s?/, "")), l++;
|
|
3836
3841
|
continue;
|
|
3837
3842
|
}
|
|
3838
3843
|
if (p.trim() === "") {
|
|
3839
|
-
d(),
|
|
3844
|
+
d(), l++;
|
|
3840
3845
|
continue;
|
|
3841
3846
|
}
|
|
3842
|
-
|
|
3847
|
+
u(), o();
|
|
3843
3848
|
const S = dt.test(p);
|
|
3844
|
-
|
|
3845
|
-
` : " ")),
|
|
3849
|
+
s.push(p.replace(dt, "").trim() + (S ? `
|
|
3850
|
+
` : " ")), l++;
|
|
3846
3851
|
}
|
|
3847
3852
|
return d(), n;
|
|
3848
3853
|
}
|
|
3849
|
-
function
|
|
3854
|
+
function hu(e, t) {
|
|
3850
3855
|
return Dn(e, t).replace(/^```.*$/gm, "").replace(/^\|[\s:|-]*\|$/gm, "").replace(/[ \t]*\|[ \t]*/g, " ").replace(/^[ \t]*(#{1,6}|>|[-*+]|\d+\.)[ \t]+/gm, "").replace(/!\[([^\]]*)\]\([^)]*\)/g, "$1").replace(/\[([^\]]+)\]\([^)]*\)/g, "$1").replace(/(\*\*|__|\*|_|`|~~)/g, "").replace(/[ \t]+$/gm, "").replace(/\n{3,}/g, `
|
|
3851
3856
|
|
|
3852
3857
|
`).trim();
|
|
3853
3858
|
}
|
|
3854
|
-
const
|
|
3855
|
-
function
|
|
3859
|
+
const gu = "documents.describe", yu = "documents.inspect", bu = "documents.apply";
|
|
3860
|
+
function Au(e) {
|
|
3856
3861
|
const t = e.indexOf(":");
|
|
3857
3862
|
if (t !== -1) return e.slice(0, t);
|
|
3858
3863
|
const n = e.indexOf(".");
|
|
3859
3864
|
return n === -1 ? e : e.slice(0, n);
|
|
3860
3865
|
}
|
|
3861
|
-
const
|
|
3862
|
-
function
|
|
3866
|
+
const _u = "installation-id";
|
|
3867
|
+
function Eu(e) {
|
|
3863
3868
|
const t = [];
|
|
3864
3869
|
for (const n of Object.keys(e))
|
|
3865
3870
|
for (const r of Object.keys(e[n]))
|
|
3866
3871
|
t.push({ lang: n, key: r, value: e[n][r] });
|
|
3867
3872
|
return t;
|
|
3868
3873
|
}
|
|
3869
|
-
const
|
|
3874
|
+
const Su = "notification-source", Iu = (e, t) => `${e}.pref.${t}`, Tu = {
|
|
3870
3875
|
ai: [
|
|
3871
3876
|
"account.read",
|
|
3872
3877
|
"account.write",
|
|
@@ -4001,96 +4006,96 @@ const Eu = "notification-source", Su = (e, t) => `${e}.pref.${t}`, Iu = {
|
|
|
4001
4006
|
time: ["entry.read", "entry.write", "work-type.read", "work-type.write"],
|
|
4002
4007
|
user: ["user.read", "user.write"],
|
|
4003
4008
|
work: ["item.read", "item.write", "project.read", "project.write"]
|
|
4004
|
-
}, Zt = 9e4,
|
|
4005
|
-
function
|
|
4009
|
+
}, Zt = 9e4, pi = ["out_of_office"], Jt = (e) => pi.includes(e);
|
|
4010
|
+
function wu(e, t, n) {
|
|
4006
4011
|
const r = n - e < Zt, o = t?.status && (!t.expiresAt || t.expiresAt > n) ? t : void 0;
|
|
4007
4012
|
if (!o?.status) return { online: r, status: r ? "available" : "offline" };
|
|
4008
|
-
const
|
|
4009
|
-
return !r && !Jt(
|
|
4013
|
+
const i = o.status;
|
|
4014
|
+
return !r && !Jt(i) ? { online: !1, status: "offline" } : { online: r, status: i, message: o.message };
|
|
4010
4015
|
}
|
|
4011
|
-
function
|
|
4016
|
+
function ku(e, t) {
|
|
4012
4017
|
const n = t - e.lastSeenAt < Zt, r = n || Jt(e.status) ? e.status : "offline";
|
|
4013
4018
|
return n === e.online && r === e.status ? e : { ...e, online: n, status: r };
|
|
4014
4019
|
}
|
|
4015
|
-
function
|
|
4020
|
+
function Mu(e, t) {
|
|
4016
4021
|
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 };
|
|
4017
4022
|
}
|
|
4018
|
-
function
|
|
4023
|
+
function vu(e) {
|
|
4019
4024
|
return e.providerAvailable && e.allowed;
|
|
4020
4025
|
}
|
|
4021
|
-
const
|
|
4022
|
-
function
|
|
4026
|
+
const Cu = "resources.describe", Ou = "resources.search", xu = "resources.resolve", Nu = "resources.attached";
|
|
4027
|
+
function Ru(e) {
|
|
4023
4028
|
const t = e.indexOf(":");
|
|
4024
4029
|
return t === -1 ? e : e.slice(0, t);
|
|
4025
4030
|
}
|
|
4026
|
-
const
|
|
4031
|
+
const Du = "/provider/scope/related", $u = "/provider/scope/read", en = "auth";
|
|
4027
4032
|
function tn(e) {
|
|
4028
4033
|
const t = typeof e == "string" ? e.match(/apps\/([^/?#]+)/) : null;
|
|
4029
4034
|
return t ? t[1] : null;
|
|
4030
4035
|
}
|
|
4031
|
-
function
|
|
4036
|
+
function Lu(e) {
|
|
4032
4037
|
const t = tn(e);
|
|
4033
4038
|
return t ? t !== en : typeof e == "string" && e.startsWith("/wake");
|
|
4034
4039
|
}
|
|
4035
|
-
function
|
|
4040
|
+
function Pu(e) {
|
|
4036
4041
|
return typeof e != "string" || e === "" || e === "/" ? !0 : tn(e) === en;
|
|
4037
4042
|
}
|
|
4038
|
-
function
|
|
4043
|
+
function fi(e) {
|
|
4039
4044
|
return e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
4040
4045
|
}
|
|
4041
|
-
function
|
|
4042
|
-
const n = e.split("/").filter(Boolean).map((r) => r.startsWith(":") ? r.endsWith("?") ? "(?:/[^/]+)?" : "/[^/]+" : `/${
|
|
4046
|
+
function mi(e) {
|
|
4047
|
+
const n = e.split("/").filter(Boolean).map((r) => r.startsWith(":") ? r.endsWith("?") ? "(?:/[^/]+)?" : "/[^/]+" : `/${fi(r)}`).join("");
|
|
4043
4048
|
return new RegExp(`^${n}\\/?$`);
|
|
4044
4049
|
}
|
|
4045
|
-
function
|
|
4050
|
+
function hi(e, t) {
|
|
4046
4051
|
const n = e.split("/").filter(Boolean), r = t.split("/").filter(Boolean), o = {};
|
|
4047
|
-
return n.forEach((
|
|
4048
|
-
if (
|
|
4049
|
-
const a =
|
|
4052
|
+
return n.forEach((i, s) => {
|
|
4053
|
+
if (i.startsWith(":")) {
|
|
4054
|
+
const a = i.endsWith("?") ? i.slice(1, -1) : i.slice(1), c = r[s];
|
|
4050
4055
|
c && (o[a] = c);
|
|
4051
4056
|
}
|
|
4052
4057
|
}), o;
|
|
4053
4058
|
}
|
|
4054
|
-
function
|
|
4059
|
+
function gi(e) {
|
|
4055
4060
|
return e.publicBasePath ?? `/apps/${e.name}`;
|
|
4056
4061
|
}
|
|
4057
|
-
function
|
|
4062
|
+
function Ku(e) {
|
|
4058
4063
|
const t = [];
|
|
4059
4064
|
for (const n of e) {
|
|
4060
4065
|
if (!n?.name) continue;
|
|
4061
|
-
const r =
|
|
4066
|
+
const r = gi(n);
|
|
4062
4067
|
for (const o of n.routes ?? []) {
|
|
4063
4068
|
if (!o.public) continue;
|
|
4064
|
-
const
|
|
4069
|
+
const i = o.path === "/" ? "" : o.path;
|
|
4065
4070
|
t.push({
|
|
4066
4071
|
appName: n.name,
|
|
4067
4072
|
resource: o.resource,
|
|
4068
|
-
pattern: `${r}${
|
|
4073
|
+
pattern: `${r}${i}`,
|
|
4069
4074
|
props: o.props
|
|
4070
4075
|
});
|
|
4071
4076
|
}
|
|
4072
4077
|
}
|
|
4073
4078
|
return t;
|
|
4074
4079
|
}
|
|
4075
|
-
function
|
|
4080
|
+
function yi(e, t) {
|
|
4076
4081
|
const n = e.split("/").filter(Boolean), r = t.split("/").filter(Boolean);
|
|
4077
4082
|
for (let o = 0; o < Math.min(n.length, r.length); o++) {
|
|
4078
|
-
const
|
|
4079
|
-
if (
|
|
4083
|
+
const i = n[o].startsWith(":"), s = r[o].startsWith(":");
|
|
4084
|
+
if (i !== s) return s;
|
|
4080
4085
|
}
|
|
4081
4086
|
return n.length > r.length;
|
|
4082
4087
|
}
|
|
4083
|
-
function
|
|
4088
|
+
function bi(e, t) {
|
|
4084
4089
|
if (typeof e != "string") return null;
|
|
4085
4090
|
let n = null;
|
|
4086
4091
|
for (const r of t)
|
|
4087
|
-
|
|
4088
|
-
return n ? { ...n, params: { ...n.props, ...
|
|
4092
|
+
mi(r.pattern).test(e) && (!n || yi(r.pattern, n.pattern)) && (n = r);
|
|
4093
|
+
return n ? { ...n, params: { ...n.props, ...hi(n.pattern, e) } } : null;
|
|
4089
4094
|
}
|
|
4090
|
-
function
|
|
4091
|
-
return
|
|
4095
|
+
function Uu(e, t) {
|
|
4096
|
+
return bi(e, t) !== null;
|
|
4092
4097
|
}
|
|
4093
|
-
const
|
|
4098
|
+
const Fu = 10 * 1024 * 1024, Bu = 25 * 1024 * 1024, ju = "sync-target", Hu = 20, Ai = {
|
|
4094
4099
|
afrikaans: [
|
|
4095
4100
|
"[Muziek]",
|
|
4096
4101
|
"(C) TV GELDERLAND 2021",
|
|
@@ -4240,14 +4245,14 @@ const Uu = 10 * 1024 * 1024, Fu = 25 * 1024 * 1024, Bu = "sync-target", ju = 20,
|
|
|
4240
4245
|
"[MÚSICA]",
|
|
4241
4246
|
"[Music cuts in British]"
|
|
4242
4247
|
]
|
|
4243
|
-
},
|
|
4248
|
+
}, _i = (e) => {
|
|
4244
4249
|
let t = e;
|
|
4245
|
-
return Object.values(
|
|
4250
|
+
return Object.values(Ai).forEach((n) => {
|
|
4246
4251
|
n.forEach((r) => {
|
|
4247
4252
|
t = t.replaceAll(r, "");
|
|
4248
4253
|
});
|
|
4249
4254
|
}), t = t.replace(/\(.*?\)/g, ""), t = t.replace(/\[.*?\]/g, ""), t;
|
|
4250
|
-
},
|
|
4255
|
+
}, Ei = 6e4, Si = 8e3, Ii = 2, Ti = 0.4, wi = 3, ki = /* @__PURE__ */ new Set([
|
|
4251
4256
|
"aan",
|
|
4252
4257
|
"als",
|
|
4253
4258
|
"ben",
|
|
@@ -4360,52 +4365,52 @@ const Uu = 10 * 1024 * 1024, Fu = 25 * 1024 * 1024, Bu = "sync-target", ju = 20,
|
|
|
4360
4365
|
"you",
|
|
4361
4366
|
"your"
|
|
4362
4367
|
]);
|
|
4363
|
-
function
|
|
4368
|
+
function Mi(e) {
|
|
4364
4369
|
const t = /* @__PURE__ */ new Set();
|
|
4365
4370
|
for (const n of e.toLowerCase().split(/[^a-z0-9À-ɏ]+/))
|
|
4366
|
-
n.length <
|
|
4371
|
+
n.length < wi || ki.has(n) || t.add(n);
|
|
4367
4372
|
return [...t];
|
|
4368
4373
|
}
|
|
4369
|
-
function
|
|
4374
|
+
function vi(e, t) {
|
|
4370
4375
|
if (!e.length) return 0;
|
|
4371
4376
|
if (!t.length) return 1;
|
|
4372
4377
|
const n = new Set(t), r = new Set(e);
|
|
4373
4378
|
let o = 0;
|
|
4374
|
-
for (const
|
|
4379
|
+
for (const i of r) n.has(i) || (o += 1);
|
|
4375
4380
|
return o / r.size;
|
|
4376
4381
|
}
|
|
4377
|
-
function
|
|
4378
|
-
const n = e.filter((
|
|
4382
|
+
function Ci(e, t = Ei) {
|
|
4383
|
+
const n = e.filter((s) => !s.partial && typeof s.text == "string");
|
|
4379
4384
|
if (!n.length) return { text: "", segmentCount: 0 };
|
|
4380
|
-
const o = n.reduce((
|
|
4381
|
-
return { text: n.filter((
|
|
4385
|
+
const o = n.reduce((s, a) => Math.max(s, a.endedAt ?? 0), 0) - t;
|
|
4386
|
+
return { text: n.filter((s) => (s.endedAt ?? 0) >= o).map((s) => _i(s.text).trim()).filter(Boolean).join(" ").replace(/\s+/g, " ").trim(), segmentCount: n.length };
|
|
4382
4387
|
}
|
|
4383
|
-
const
|
|
4384
|
-
function
|
|
4388
|
+
const Oi = 60;
|
|
4389
|
+
function Gu(e, t, n = Oi) {
|
|
4385
4390
|
const r = new Set(e), o = [...e];
|
|
4386
|
-
for (const
|
|
4387
|
-
!
|
|
4391
|
+
for (const i of t)
|
|
4392
|
+
!i || r.has(i) || (r.add(i), o.push(i));
|
|
4388
4393
|
return o.slice(-n);
|
|
4389
4394
|
}
|
|
4390
|
-
function
|
|
4395
|
+
function Wu(e) {
|
|
4391
4396
|
const { segments: t, now: n, state: r } = e;
|
|
4392
|
-
if (r.lastTriggerAt && n - r.lastTriggerAt <
|
|
4397
|
+
if (r.lastTriggerAt && n - r.lastTriggerAt < Si)
|
|
4393
4398
|
return { trigger: !1, reason: "too_soon" };
|
|
4394
|
-
const o =
|
|
4399
|
+
const o = Ci(t, e.windowMs);
|
|
4395
4400
|
if (!o.text) return { trigger: !1, reason: "no_speech" };
|
|
4396
|
-
const
|
|
4397
|
-
if (r.lastQueryTerms &&
|
|
4401
|
+
const i = o.segmentCount - (r.lastSegmentCount ?? 0);
|
|
4402
|
+
if (r.lastQueryTerms && i < Ii)
|
|
4398
4403
|
return { trigger: !1, reason: "too_few_new" };
|
|
4399
|
-
const
|
|
4400
|
-
return
|
|
4404
|
+
const s = Mi(o.text);
|
|
4405
|
+
return s.length ? r.lastQueryTerms?.length && vi(s, r.lastQueryTerms) < Ti ? { trigger: !1, reason: "same_topic" } : { trigger: !0, text: o.text, terms: s, segmentCount: o.segmentCount } : { trigger: !1, reason: "no_speech" };
|
|
4401
4406
|
}
|
|
4402
|
-
const
|
|
4407
|
+
const Vu = [
|
|
4403
4408
|
"personal",
|
|
4404
4409
|
"workspace",
|
|
4405
4410
|
"connections",
|
|
4406
4411
|
"work",
|
|
4407
4412
|
"ai"
|
|
4408
|
-
],
|
|
4413
|
+
], zu = "navNotice", De = {
|
|
4409
4414
|
// The lower bounds are deliberately generous: service ranges (0800/0900) are
|
|
4410
4415
|
// shorter than geographic numbers, and a too-strict minimum silently drops them.
|
|
4411
4416
|
// An over-permissive key is harmless — it simply matches nothing.
|
|
@@ -4428,7 +4433,7 @@ const Wu = [
|
|
|
4428
4433
|
PL: { callingCode: "48", nsnMin: 9, nsnMax: 9 },
|
|
4429
4434
|
US: { callingCode: "1", nsnMin: 10, nsnMax: 10 },
|
|
4430
4435
|
CA: { callingCode: "1", nsnMin: 10, nsnMax: 10 }
|
|
4431
|
-
},
|
|
4436
|
+
}, xi = "NL", Ni = 15, Ri = 8, Di = Array.from(
|
|
4432
4437
|
new Set(Object.values(De).map((e) => e.callingCode))
|
|
4433
4438
|
).sort((e, t) => t.length - e.length);
|
|
4434
4439
|
function ft(e) {
|
|
@@ -4439,27 +4444,27 @@ function Z(e, t) {
|
|
|
4439
4444
|
return e.length >= t.nsnMin && e.length <= t.nsnMax;
|
|
4440
4445
|
}
|
|
4441
4446
|
function mt(e) {
|
|
4442
|
-
if (e.length >
|
|
4443
|
-
for (const t of
|
|
4447
|
+
if (e.length > Ni) return null;
|
|
4448
|
+
for (const t of Di) {
|
|
4444
4449
|
if (!e.startsWith(t)) continue;
|
|
4445
4450
|
const n = e.slice(t.length);
|
|
4446
4451
|
for (const r of Object.values(De)) {
|
|
4447
4452
|
if (r.callingCode !== t) continue;
|
|
4448
|
-
const o = r.trunkPrefix,
|
|
4449
|
-
if (Z(
|
|
4453
|
+
const o = r.trunkPrefix, i = o && n.startsWith(o) ? n.slice(o.length) : n;
|
|
4454
|
+
if (Z(i, r)) return `+${t}${i}`;
|
|
4450
4455
|
}
|
|
4451
4456
|
return null;
|
|
4452
4457
|
}
|
|
4453
|
-
return e.length <
|
|
4458
|
+
return e.length < Ri ? null : `+${e}`;
|
|
4454
4459
|
}
|
|
4455
|
-
function
|
|
4460
|
+
function $i(e) {
|
|
4456
4461
|
let t = e.trim();
|
|
4457
4462
|
const n = t.match(/^(sips?|tel|whatsapp):/i);
|
|
4458
4463
|
n && (t = t.slice(n[0].length));
|
|
4459
4464
|
const r = t.indexOf("@");
|
|
4460
4465
|
return r >= 0 && (t = t.slice(0, r)), t.trim();
|
|
4461
4466
|
}
|
|
4462
|
-
function
|
|
4467
|
+
function Xu(e) {
|
|
4463
4468
|
if (!e) return !1;
|
|
4464
4469
|
const t = e.indexOf("@");
|
|
4465
4470
|
if (t <= 0) return !1;
|
|
@@ -4468,26 +4473,26 @@ function zu(e) {
|
|
|
4468
4473
|
}
|
|
4469
4474
|
function ht(e, t) {
|
|
4470
4475
|
if (!e) return null;
|
|
4471
|
-
const n =
|
|
4476
|
+
const n = $i(e);
|
|
4472
4477
|
if (!n) return null;
|
|
4473
4478
|
const r = n.startsWith("+"), o = n.replace(/\D/g, "");
|
|
4474
4479
|
if (!o) return null;
|
|
4475
4480
|
if (r) return mt(o);
|
|
4476
4481
|
if (o.startsWith("00")) return mt(o.slice(2));
|
|
4477
|
-
const
|
|
4478
|
-
if (!
|
|
4479
|
-
const
|
|
4480
|
-
if (
|
|
4481
|
-
const a = o.slice(
|
|
4482
|
-
return Z(a,
|
|
4482
|
+
const i = ft(t) ?? ft(xi);
|
|
4483
|
+
if (!i) return null;
|
|
4484
|
+
const s = i.trunkPrefix;
|
|
4485
|
+
if (s && o.startsWith(s)) {
|
|
4486
|
+
const a = o.slice(s.length);
|
|
4487
|
+
return Z(a, i) ? `+${i.callingCode}${a}` : null;
|
|
4483
4488
|
}
|
|
4484
|
-
if (o.startsWith(
|
|
4485
|
-
const a = o.slice(
|
|
4486
|
-
if (Z(a,
|
|
4489
|
+
if (o.startsWith(i.callingCode)) {
|
|
4490
|
+
const a = o.slice(i.callingCode.length);
|
|
4491
|
+
if (Z(a, i)) return `+${i.callingCode}${a}`;
|
|
4487
4492
|
}
|
|
4488
|
-
return !
|
|
4493
|
+
return !s && Z(o, i) ? `+${i.callingCode}${o}` : null;
|
|
4489
4494
|
}
|
|
4490
|
-
function
|
|
4495
|
+
function Yu(e, t = 9) {
|
|
4491
4496
|
const n = (e ?? "").replace(/\D/g, "");
|
|
4492
4497
|
return n.length < t ? null : n.slice(-t);
|
|
4493
4498
|
}
|
|
@@ -4498,11 +4503,11 @@ function nn(e) {
|
|
|
4498
4503
|
const r = t.slice(0, n).split("+")[0], o = t.slice(n + 1);
|
|
4499
4504
|
return !r || !o.includes(".") ? null : `${r}@${o}`;
|
|
4500
4505
|
}
|
|
4501
|
-
function
|
|
4506
|
+
function qu(e) {
|
|
4502
4507
|
const t = nn(e);
|
|
4503
4508
|
return t ? t.slice(t.lastIndexOf("@") + 1) : null;
|
|
4504
4509
|
}
|
|
4505
|
-
const
|
|
4510
|
+
const Li = /* @__PURE__ */ new Set([
|
|
4506
4511
|
"co.uk",
|
|
4507
4512
|
"org.uk",
|
|
4508
4513
|
"gov.uk",
|
|
@@ -4512,14 +4517,14 @@ const $s = /* @__PURE__ */ new Set([
|
|
|
4512
4517
|
"com.br",
|
|
4513
4518
|
"co.za"
|
|
4514
4519
|
]);
|
|
4515
|
-
function
|
|
4520
|
+
function Pi(e) {
|
|
4516
4521
|
if (!e) return null;
|
|
4517
4522
|
const t = e.trim().toLowerCase().replace(/\.$/, "").split(".").filter(Boolean);
|
|
4518
4523
|
if (t.length < 2) return null;
|
|
4519
4524
|
const n = t.slice(-2).join(".");
|
|
4520
|
-
return
|
|
4525
|
+
return Li.has(n) && t.length >= 3 ? t.slice(-3).join(".") : n;
|
|
4521
4526
|
}
|
|
4522
|
-
const
|
|
4527
|
+
const Ki = /* @__PURE__ */ new Set([
|
|
4523
4528
|
"gmail.com",
|
|
4524
4529
|
"googlemail.com",
|
|
4525
4530
|
"outlook.com",
|
|
@@ -4564,34 +4569,34 @@ const Ps = /* @__PURE__ */ new Set([
|
|
|
4564
4569
|
"proximus.be",
|
|
4565
4570
|
"scarlet.be"
|
|
4566
4571
|
]);
|
|
4567
|
-
function qu(e) {
|
|
4568
|
-
const t = Ls(e);
|
|
4569
|
-
return t ? Ps.has(t) : !1;
|
|
4570
|
-
}
|
|
4571
4572
|
function Qu(e) {
|
|
4573
|
+
const t = Pi(e);
|
|
4574
|
+
return t ? Ki.has(t) : !1;
|
|
4575
|
+
}
|
|
4576
|
+
function Zu(e) {
|
|
4572
4577
|
if (!e) return !1;
|
|
4573
4578
|
const t = e.trim().toLowerCase();
|
|
4574
4579
|
return t === "tel" || t === "sms" || t === "whatsapp" || t === "fax";
|
|
4575
4580
|
}
|
|
4576
|
-
function
|
|
4581
|
+
function Ju(e, t, n) {
|
|
4577
4582
|
if (!e || !t) return null;
|
|
4578
4583
|
const r = e.trim().toLowerCase();
|
|
4579
4584
|
if (r === "tel" || r === "sms" || r === "whatsapp") {
|
|
4580
|
-
const
|
|
4581
|
-
return
|
|
4585
|
+
const i = ht(t, n);
|
|
4586
|
+
return i ? `tel:${i}` : null;
|
|
4582
4587
|
}
|
|
4583
4588
|
if (r === "fax") {
|
|
4584
|
-
const
|
|
4585
|
-
return
|
|
4589
|
+
const i = ht(t, n);
|
|
4590
|
+
return i ? `fax:${i}` : null;
|
|
4586
4591
|
}
|
|
4587
4592
|
if (r === "mailto" || r === "email") {
|
|
4588
|
-
const
|
|
4589
|
-
return
|
|
4593
|
+
const i = nn(t);
|
|
4594
|
+
return i ? `mailto:${i}` : null;
|
|
4590
4595
|
}
|
|
4591
4596
|
const o = t.trim().toLowerCase();
|
|
4592
4597
|
return o ? `${r}:${o}` : null;
|
|
4593
4598
|
}
|
|
4594
|
-
const
|
|
4599
|
+
const Ui = [
|
|
4595
4600
|
/<blockquote/i,
|
|
4596
4601
|
/class="?gmail_quote/i,
|
|
4597
4602
|
// Gmail quote container
|
|
@@ -4604,24 +4609,24 @@ const Ks = [
|
|
|
4604
4609
|
// Outlook underscore separator before "From:"
|
|
4605
4610
|
/\bOn\b[\s\S]{0,200}?\bwrote:/i
|
|
4606
4611
|
// Gmail "On <date> <name> wrote:"
|
|
4607
|
-
], gt = /^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i,
|
|
4608
|
-
function
|
|
4612
|
+
], gt = /^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i, Fi = /^\s*(?:on|op)\b.{0,200}?\b(?:wrote|schreef|geschreven)\s*:?\s*$/i;
|
|
4613
|
+
function Bi(e) {
|
|
4609
4614
|
const t = e.split(`
|
|
4610
4615
|
`);
|
|
4611
4616
|
for (let n = 0; n < t.length; n++)
|
|
4612
|
-
if (
|
|
4617
|
+
if (Fi.test(t[n]) || gt.test(t[n]) && t.slice(n + 1, n + 4).some((r) => gt.test(r)))
|
|
4613
4618
|
return t.slice(0, n).join(`
|
|
4614
4619
|
`).trim();
|
|
4615
4620
|
return e;
|
|
4616
4621
|
}
|
|
4617
|
-
const
|
|
4622
|
+
const ji = /^(?:https?:|mailto:|tel:)/i, Hi = /^(?:https?:|cid:|data:image\/)/i;
|
|
4618
4623
|
function de(e, t) {
|
|
4619
4624
|
const n = e.match(new RegExp(`\\b${t}\\s*=\\s*(?:"([^"]*)"|'([^']*)'|([^\\s">]+))`, "i"));
|
|
4620
4625
|
return (n?.[1] ?? n?.[2] ?? n?.[3] ?? "").trim();
|
|
4621
4626
|
}
|
|
4622
|
-
const
|
|
4627
|
+
const Gi = /(!\[[^\]]*\]\([^)]*\))/;
|
|
4623
4628
|
function yt(e) {
|
|
4624
|
-
return e.replace(/\s+/g, " ").trim().split(
|
|
4629
|
+
return e.replace(/\s+/g, " ").trim().split(Gi).map((t, n) => n % 2 === 1 ? t : t.replace(/[[\]]/g, "\\$&")).join("");
|
|
4625
4630
|
}
|
|
4626
4631
|
function pe(e) {
|
|
4627
4632
|
return e.replace(
|
|
@@ -4629,78 +4634,78 @@ function pe(e) {
|
|
|
4629
4634
|
(t) => `%${t.charCodeAt(0).toString(16).toUpperCase().padStart(2, "0")}`
|
|
4630
4635
|
);
|
|
4631
4636
|
}
|
|
4632
|
-
function
|
|
4637
|
+
function Wi(e) {
|
|
4633
4638
|
return e.replace(/<img\b([^>]*?)\/?>/gi, (n, r) => {
|
|
4634
4639
|
const o = de(r, "src");
|
|
4635
|
-
return
|
|
4640
|
+
return Hi.test(o) ? `})` : "";
|
|
4636
4641
|
}).replace(
|
|
4637
4642
|
/<a\b([^>]*)>([\s\S]*?)<\/a\s*>/gi,
|
|
4638
4643
|
(n, r, o) => {
|
|
4639
|
-
const
|
|
4640
|
-
return
|
|
4644
|
+
const i = yt(o.replace(/<[^>]*>/g, "")), s = de(r, "href");
|
|
4645
|
+
return ji.test(s) ? `[${i || pe(s)}](${pe(s)})` : i;
|
|
4641
4646
|
}
|
|
4642
4647
|
);
|
|
4643
4648
|
}
|
|
4644
|
-
const
|
|
4645
|
-
function
|
|
4649
|
+
const Vi = /<table\b[^>]*>((?:(?!<table\b)[\s\S])*?)<\/table\s*>/i, zi = /<tr\b[^>]*>([\s\S]*?)<\/tr\s*>/gi, Xi = /<(t[dh])\b([^>]*)>([\s\S]*?)<\/\1\s*>/gi;
|
|
4650
|
+
function Yi(e, t) {
|
|
4646
4651
|
return /<table\b/i.test(e) || e.includes(`
|
|
4647
4652
|
|
|
4648
4653
|
|`) || t.includes("![") || t.length > 200;
|
|
4649
4654
|
}
|
|
4650
|
-
const
|
|
4651
|
-
function
|
|
4655
|
+
const qi = 40, Qi = { left: "---", center: ":---:", right: "---:" };
|
|
4656
|
+
function Zi(e) {
|
|
4652
4657
|
const t = e.match(/align\s*[=:]\s*["']?\s*(right|center)/i);
|
|
4653
4658
|
return t ? t[1].toLowerCase() : "left";
|
|
4654
4659
|
}
|
|
4655
|
-
function
|
|
4660
|
+
function Ji(e) {
|
|
4656
4661
|
return e.replace(/<[^>]*>/g, "").replace(/\s+/g, " ").trim().replace(/\|/g, "\\|");
|
|
4657
4662
|
}
|
|
4658
|
-
function
|
|
4663
|
+
function es(e) {
|
|
4659
4664
|
const t = [];
|
|
4660
|
-
for (const
|
|
4665
|
+
for (const s of e.matchAll(zi)) {
|
|
4661
4666
|
const a = [];
|
|
4662
|
-
for (const c of
|
|
4663
|
-
const
|
|
4664
|
-
if (
|
|
4665
|
-
a.push({ text:
|
|
4667
|
+
for (const c of s[1].matchAll(Xi)) {
|
|
4668
|
+
const u = Ji(c[3]);
|
|
4669
|
+
if (Yi(c[3], u)) return null;
|
|
4670
|
+
a.push({ text: u, align: Zi(c[2]) });
|
|
4666
4671
|
}
|
|
4667
4672
|
if (a.length === 0) return null;
|
|
4668
4673
|
a.some((c) => c.text !== "") && t.push(a);
|
|
4669
4674
|
}
|
|
4670
4675
|
const n = t[0]?.length ?? 0;
|
|
4671
|
-
if (t.length < 2 || n < 2 || t.some((
|
|
4672
|
-
const r = (
|
|
4676
|
+
if (t.length < 2 || n < 2 || t.some((s) => s.length !== n)) return null;
|
|
4677
|
+
const r = (s) => `| ${s.map((a) => a.text).join(" | ")} |`, o = t[1].map((s) => Qi[s.align]).join(" | "), i = t.slice(1).map(r).join(`
|
|
4673
4678
|
`);
|
|
4674
4679
|
return `
|
|
4675
4680
|
|
|
4676
4681
|
${r(t[0])}
|
|
4677
4682
|
| ${o} |
|
|
4678
|
-
${
|
|
4683
|
+
${i}
|
|
4679
4684
|
|
|
4680
4685
|
`;
|
|
4681
4686
|
}
|
|
4682
|
-
function
|
|
4687
|
+
function ts(e) {
|
|
4683
4688
|
return e.replace(/<\/(t[dh])\s*>/gi, " ").replace(/<\/tr\s*>/gi, `
|
|
4684
4689
|
`).replace(/<(?:tbody|thead|tfoot|caption|colgroup|col|tr|t[dh])\b[^>]*>/gi, "").replace(/<\/(?:tbody|thead|tfoot|caption|colgroup)\s*>/gi, "");
|
|
4685
4690
|
}
|
|
4686
|
-
function
|
|
4691
|
+
function ns(e) {
|
|
4687
4692
|
let t = e;
|
|
4688
|
-
for (let n = 0; n <
|
|
4689
|
-
const r =
|
|
4693
|
+
for (let n = 0; n < qi; n++) {
|
|
4694
|
+
const r = Vi.exec(t);
|
|
4690
4695
|
if (!r || r.index === void 0) break;
|
|
4691
|
-
const
|
|
4696
|
+
const i = es(r[1]) ?? `
|
|
4692
4697
|
|
|
4693
|
-
${
|
|
4698
|
+
${ts(r[1])}
|
|
4694
4699
|
|
|
4695
4700
|
`;
|
|
4696
|
-
t = t.slice(0, r.index) +
|
|
4701
|
+
t = t.slice(0, r.index) + i + t.slice(r.index + r[0].length);
|
|
4697
4702
|
}
|
|
4698
4703
|
return t;
|
|
4699
4704
|
}
|
|
4700
4705
|
function bt(e, t) {
|
|
4701
4706
|
let n = e;
|
|
4702
4707
|
return n = n.replace(/<(script|style)[\s\S]*?<\/\1>/gi, ""), n = n.replace(/<!--[\s\S]*?-->/g, ""), n = n.replace(/<br\s*\/?>/gi, `
|
|
4703
|
-
`), t && (n =
|
|
4708
|
+
`), t && (n = ns(Wi(n))), n = n.replace(/<\/(p|h[1-6]|ul|ol|table|blockquote)>/gi, `
|
|
4704
4709
|
|
|
4705
4710
|
`), n = n.replace(/<\/(div|li|tr)>/gi, `
|
|
4706
4711
|
`), n = n.replace(/<\/(td|th)>/gi, " "), n = n.replace(/<[^>]+>/g, ""), n = n.replace(/<[^>]*$/, ""), n;
|
|
@@ -4708,7 +4713,7 @@ function bt(e, t) {
|
|
|
4708
4713
|
function At(e) {
|
|
4709
4714
|
return !Number.isInteger(e) || e < 0 || e > 1114111 ? null : String.fromCodePoint(e);
|
|
4710
4715
|
}
|
|
4711
|
-
const
|
|
4716
|
+
const rs = {
|
|
4712
4717
|
euro: "€",
|
|
4713
4718
|
pound: "£",
|
|
4714
4719
|
yen: "¥",
|
|
@@ -4731,7 +4736,7 @@ const ni = {
|
|
|
4731
4736
|
apos: "'"
|
|
4732
4737
|
};
|
|
4733
4738
|
function _t(e) {
|
|
4734
|
-
return e.replace(/ /gi, " ").replace(/&([a-z]+);/gi, (t, n) =>
|
|
4739
|
+
return e.replace(/ /gi, " ").replace(/&([a-z]+);/gi, (t, n) => rs[n.toLowerCase()] ?? t).replace(/</gi, "<").replace(/>/gi, ">").replace(/"/gi, '"').replace(/&#(\d+);/g, (t, n) => At(Number(n)) ?? t).replace(/&#x([0-9a-f]+);/gi, (t, n) => At(parseInt(n, 16)) ?? t).replace(/&/gi, "&");
|
|
4735
4740
|
}
|
|
4736
4741
|
function Et(e) {
|
|
4737
4742
|
return e.replace(/\r/g, "").replace(/[ \t]+/g, " ").replace(/ *\n */g, `
|
|
@@ -4739,38 +4744,38 @@ function Et(e) {
|
|
|
4739
4744
|
|
|
4740
4745
|
`).trim();
|
|
4741
4746
|
}
|
|
4742
|
-
const
|
|
4743
|
-
function Ju(e) {
|
|
4744
|
-
return ri.test(e);
|
|
4745
|
-
}
|
|
4747
|
+
const os = /<\s*(html|body|div|p|table|br|span)\b/i;
|
|
4746
4748
|
function ed(e) {
|
|
4747
|
-
return
|
|
4749
|
+
return os.test(e);
|
|
4748
4750
|
}
|
|
4749
4751
|
function td(e) {
|
|
4752
|
+
return rn(e, !1);
|
|
4753
|
+
}
|
|
4754
|
+
function nd(e) {
|
|
4750
4755
|
return rn(e, !0);
|
|
4751
4756
|
}
|
|
4752
4757
|
function rn(e, t) {
|
|
4753
4758
|
if (typeof e != "string" || !e) return "";
|
|
4754
4759
|
let n = e.length;
|
|
4755
|
-
for (const
|
|
4756
|
-
const a = e.search(
|
|
4760
|
+
for (const s of Ui) {
|
|
4761
|
+
const a = e.search(s);
|
|
4757
4762
|
a >= 0 && a < n && (n = a);
|
|
4758
4763
|
}
|
|
4759
4764
|
const r = e.slice(0, n);
|
|
4760
4765
|
let o = Et(_t(bt(r, t)));
|
|
4761
|
-
return o || (o = Et(_t(bt(e, t)))),
|
|
4766
|
+
return o || (o = Et(_t(bt(e, t)))), Bi(o) || o;
|
|
4762
4767
|
}
|
|
4763
4768
|
export {
|
|
4764
|
-
|
|
4769
|
+
zs as ACTIVE_ASSIGNMENT_STATUSES,
|
|
4765
4770
|
R as ACTIVITY_CATALOG,
|
|
4766
|
-
|
|
4767
|
-
|
|
4768
|
-
|
|
4771
|
+
Jo as AI_ATTACHMENT_LIMITS,
|
|
4772
|
+
Ul as AI_ATTACHMENT_MAX_PER_TURN,
|
|
4773
|
+
Kl as AI_ATTACHMENT_TURN_BUDGET,
|
|
4769
4774
|
Tt as AI_VENDORS,
|
|
4770
4775
|
kn as ALLOWED_LINK_SCHEMES,
|
|
4771
|
-
|
|
4776
|
+
Tu as APP_PERMISSIONS,
|
|
4772
4777
|
He as ARTIFACT_MAX_BLOCKS,
|
|
4773
|
-
|
|
4778
|
+
Fs as ARTIFACT_MAX_BODY_BYTES,
|
|
4774
4779
|
q as ARTIFACT_MAX_CELL_LEN,
|
|
4775
4780
|
ze as ARTIFACT_MAX_KPI_ITEMS,
|
|
4776
4781
|
Ge as ARTIFACT_MAX_LIST_ITEMS,
|
|
@@ -4778,37 +4783,37 @@ export {
|
|
|
4778
4783
|
We as ARTIFACT_MAX_TABLE_ROWS,
|
|
4779
4784
|
kt as ARTIFACT_MAX_TEXT_LEN,
|
|
4780
4785
|
Ln as ASSIGNMENT_SCOPE_KIND,
|
|
4781
|
-
|
|
4782
|
-
|
|
4783
|
-
|
|
4786
|
+
Gl as ASSIST_BANDS,
|
|
4787
|
+
Hl as ASSIST_SOURCE_PROVIDER_GROUP,
|
|
4788
|
+
ir as ATTENTION_STATUSES,
|
|
4784
4789
|
wo as AT_RISK_GAP,
|
|
4785
4790
|
en as AUTH_APP_NAME,
|
|
4786
|
-
|
|
4787
|
-
|
|
4791
|
+
io as AUTO_READY_MIN_PROPOSALS,
|
|
4792
|
+
so as AUTO_READY_RATE,
|
|
4788
4793
|
hn as ActivityTypeRegistry,
|
|
4789
|
-
|
|
4790
|
-
|
|
4791
|
-
|
|
4792
|
-
|
|
4793
|
-
|
|
4794
|
-
|
|
4795
|
-
|
|
4796
|
-
|
|
4797
|
-
|
|
4798
|
-
|
|
4799
|
-
|
|
4794
|
+
Ss as BUILT_IN_ONLY,
|
|
4795
|
+
sr as BULK_PENALTY,
|
|
4796
|
+
Si as CADENCE_FLOOR_MS,
|
|
4797
|
+
Ii as CADENCE_MIN_NEW_SEGMENTS,
|
|
4798
|
+
Ti as CADENCE_MIN_NOVELTY,
|
|
4799
|
+
Ei as CADENCE_WINDOW_MS,
|
|
4800
|
+
mc as CLASSIFY_VARS,
|
|
4801
|
+
uu as CONNECTOR_PROVIDER_GROUP,
|
|
4802
|
+
du as CONTEXT_COLLECT_SERVICE,
|
|
4803
|
+
Ds as CORE_DIMENSIONS,
|
|
4804
|
+
ii as CommunicationScheme,
|
|
4800
4805
|
qn as DAY_MS,
|
|
4801
4806
|
So as DEFAULT_CHECK_IN_DAYS,
|
|
4802
4807
|
Kr as DEFAULT_FORECAST_WEEKS,
|
|
4803
|
-
|
|
4804
|
-
|
|
4805
|
-
|
|
4806
|
-
|
|
4807
|
-
|
|
4808
|
-
|
|
4809
|
-
|
|
4808
|
+
Ka as DEFAULT_MEMORY_BUDGET,
|
|
4809
|
+
xi as DEFAULT_PHONE_REGION,
|
|
4810
|
+
ul as DEFAULT_QUOTE_TEMPLATE_BLOCKS,
|
|
4811
|
+
Ya as DEMAND_SOURCE_PROVIDER_GROUP,
|
|
4812
|
+
bu as DOCUMENT_APPLY_SERVICE,
|
|
4813
|
+
gu as DOCUMENT_DESCRIBE_SERVICE,
|
|
4814
|
+
yu as DOCUMENT_INSPECT_SERVICE,
|
|
4810
4815
|
He as DOCUMENT_MAX_BLOCKS,
|
|
4811
|
-
|
|
4816
|
+
Fs as DOCUMENT_MAX_BODY_BYTES,
|
|
4812
4817
|
q as DOCUMENT_MAX_CELL_LEN,
|
|
4813
4818
|
ze as DOCUMENT_MAX_KPI_ITEMS,
|
|
4814
4819
|
Xe as DOCUMENT_MAX_LETTERHEAD_FIELDS,
|
|
@@ -4820,419 +4825,419 @@ export {
|
|
|
4820
4825
|
Ye as DOCUMENT_MAX_TOTALS_ROWS,
|
|
4821
4826
|
Qt as DOCUMENT_OPERATIONS,
|
|
4822
4827
|
$o as DUTCH_SLOT_LABELS,
|
|
4823
|
-
|
|
4828
|
+
gc as EMPTY_WORKFLOW,
|
|
4824
4829
|
su as FEATURE_FOLDER_MANAGEMENT,
|
|
4825
|
-
|
|
4826
|
-
|
|
4830
|
+
cu as FEATURE_MESSAGE_REACTIONS,
|
|
4831
|
+
au as FEATURE_REMOTE_SEARCH,
|
|
4827
4832
|
Ce as FIXED_KINDS,
|
|
4828
4833
|
ne as FIXED_LEVELS,
|
|
4829
4834
|
Ne as FIXED_TYPES,
|
|
4830
|
-
|
|
4835
|
+
oa as FIXED_UNITS,
|
|
4831
4836
|
cr as FOLLOW_UP_HOURS,
|
|
4832
4837
|
sl as FROZEN_WRITABLE_FIELDS,
|
|
4833
4838
|
Yn as HOUR_MS,
|
|
4834
|
-
|
|
4839
|
+
os as HTML_BODY_RE,
|
|
4835
4840
|
L as INELIGIBLE,
|
|
4836
|
-
|
|
4841
|
+
_u as INSTALLATION_HEADER,
|
|
4837
4842
|
eo as INTERACTION_KIND,
|
|
4838
|
-
|
|
4843
|
+
ou as InteractionParticipantRole,
|
|
4839
4844
|
gr as KB_FALLBACK_LOCALE,
|
|
4840
4845
|
Ze as KB_LOCALES,
|
|
4841
4846
|
Ze as LOCALES,
|
|
4842
4847
|
Re as LOOSE_STATUSES,
|
|
4843
4848
|
tr as MAIL_HINT_HEADERS,
|
|
4844
|
-
|
|
4849
|
+
cs as MAX_ACTIONS,
|
|
4845
4850
|
Pn as MAX_ASSIGNMENT_TURNS,
|
|
4846
|
-
|
|
4851
|
+
is as MAX_BLOCKS,
|
|
4847
4852
|
Dt as MAX_COLLECTION_DEPTH,
|
|
4848
|
-
|
|
4849
|
-
|
|
4850
|
-
|
|
4851
|
-
|
|
4852
|
-
|
|
4853
|
-
|
|
4854
|
-
|
|
4853
|
+
Fu as MAX_EDITABLE_FILE_BYTES,
|
|
4854
|
+
ss as MAX_FIELDS,
|
|
4855
|
+
as as MAX_LIST_ITEMS,
|
|
4856
|
+
Da as MAX_MEMORY_BROWSE,
|
|
4857
|
+
Pa as MAX_MEMORY_BUDGET,
|
|
4858
|
+
$a as MAX_MEMORY_CHARS,
|
|
4859
|
+
Oi as MAX_SHOWN_KEYS,
|
|
4855
4860
|
Oo as MAX_TOPIC_CANDIDATES,
|
|
4856
4861
|
Co as MAX_TOPIC_EXAMPLES,
|
|
4857
4862
|
ue as MAX_TOPIC_EXAMPLE_CHARS,
|
|
4858
|
-
|
|
4859
|
-
|
|
4860
|
-
|
|
4861
|
-
|
|
4862
|
-
|
|
4863
|
+
Bu as MAX_VIEWABLE_FILE_BYTES,
|
|
4864
|
+
La as MIN_MEMORY_BUDGET,
|
|
4865
|
+
zu as NAV_NOTICE_SLOT,
|
|
4866
|
+
Fa as NL_TAX_RATES,
|
|
4867
|
+
Su as NOTIFICATION_SOURCE_PROVIDER_GROUP,
|
|
4863
4868
|
ko as OFF_TRACK_GAP,
|
|
4864
|
-
|
|
4869
|
+
ja as ONBOARDING_SOURCE_PROVIDER_GROUP,
|
|
4865
4870
|
Ee as PAUSE_SNOOZED,
|
|
4866
4871
|
Se as PAUSE_WAITING_FOR_CUSTOMER,
|
|
4867
4872
|
De as PHONE_REGIONS,
|
|
4868
4873
|
Zt as PRESENCE_ONLINE_WINDOW_MS,
|
|
4869
|
-
|
|
4870
|
-
|
|
4871
|
-
|
|
4872
|
-
|
|
4873
|
-
|
|
4874
|
-
|
|
4874
|
+
pi as PRESENCE_SURVIVES_OFFLINE,
|
|
4875
|
+
Fo as PRODUCT_SCOPE_KIND,
|
|
4876
|
+
Ga as PROFILE_TOOL_DISPOSITIONS,
|
|
4877
|
+
ru as PROVIDER_FEATURE_MESSAGE_TEMPLATES,
|
|
4878
|
+
nu as PROVIDER_FEATURE_MESSAGE_WINDOW,
|
|
4879
|
+
Ki as PUBLIC_EMAIL_DOMAINS,
|
|
4875
4880
|
Je as READ_STEP_TYPES,
|
|
4876
4881
|
Ar as RELATED_SUBJECT_KINDS,
|
|
4877
4882
|
qt as RESERVED_STATUS_KEYS,
|
|
4878
|
-
|
|
4879
|
-
|
|
4880
|
-
|
|
4881
|
-
|
|
4882
|
-
|
|
4883
|
+
Al as RESERVED_TYPE_KEYS,
|
|
4884
|
+
Nu as RESOURCE_ATTACHED_SERVICE,
|
|
4885
|
+
Cu as RESOURCE_DESCRIBE_SERVICE,
|
|
4886
|
+
xu as RESOURCE_RESOLVE_SERVICE,
|
|
4887
|
+
Ou as RESOURCE_SEARCH_SERVICE,
|
|
4883
4888
|
Gr as SCHEDULE_ENTRY_SCOPE_KIND,
|
|
4884
|
-
|
|
4885
|
-
|
|
4886
|
-
|
|
4887
|
-
|
|
4889
|
+
$u as SCOPE_READ_ROUTE,
|
|
4890
|
+
Du as SCOPE_RELATED_ROUTE,
|
|
4891
|
+
Vu as SETTINGS_CATEGORIES,
|
|
4892
|
+
ia as SIGNATURE_INTENTS,
|
|
4888
4893
|
ar as SLA_HOURS_BY_PRIORITY,
|
|
4889
|
-
|
|
4890
|
-
|
|
4894
|
+
vc as SLA_METRICS,
|
|
4895
|
+
Cc as SLA_PAUSE_REASONS,
|
|
4891
4896
|
ro as STEP_MAX_TOKENS_MAX,
|
|
4892
4897
|
no as STEP_MAX_TOKENS_MIN,
|
|
4893
4898
|
_o as STRATEGY_ITEM_SCOPE_KIND,
|
|
4894
4899
|
er as SUMMARY_MIN_LAST_CHARS,
|
|
4895
4900
|
Jn as SUMMARY_MIN_MESSAGES,
|
|
4896
|
-
|
|
4897
|
-
|
|
4901
|
+
Hu as SYNC_RUN_MAX_ERRORS,
|
|
4902
|
+
ju as SYNC_TARGET_PROVIDER_GROUP,
|
|
4898
4903
|
$n as TERMINAL_ASSIGNMENT_STATUSES,
|
|
4899
4904
|
ao as TERMINAL_RUN_STATUSES,
|
|
4900
4905
|
Xt as TRANSACTION_KINDS,
|
|
4901
|
-
|
|
4902
|
-
|
|
4906
|
+
Uo as TRANSACTION_SCOPE_KINDS,
|
|
4907
|
+
fc as TRIGGER_VARS,
|
|
4903
4908
|
Sr as UNKNOWN_KIND,
|
|
4904
4909
|
Eo as UNKNOWN_LEVEL_ORDER,
|
|
4905
|
-
|
|
4910
|
+
lu as UNSUPPORTED,
|
|
4906
4911
|
En as USAGE_DIMENSIONS,
|
|
4907
4912
|
Sn as USAGE_DIMENSION_IDS,
|
|
4908
4913
|
Wr as WORKSTREAM_SCOPE_KIND,
|
|
4909
|
-
|
|
4910
|
-
|
|
4911
|
-
|
|
4912
|
-
|
|
4913
|
-
|
|
4914
|
-
|
|
4915
|
-
|
|
4916
|
-
|
|
4914
|
+
Go as WORK_ACTIVITY_SCOPE_KIND,
|
|
4915
|
+
Ha as WORK_AREAS,
|
|
4916
|
+
hl as WORK_COMMENT_ADDED,
|
|
4917
|
+
Tl as WORK_CYCLE_SYNC_KIND,
|
|
4918
|
+
gl as WORK_ITEM_ASSIGNED,
|
|
4919
|
+
jo as WORK_ITEM_SCOPE_KIND,
|
|
4920
|
+
yl as WORK_ITEM_STATUS_CHANGED,
|
|
4921
|
+
Ho as WORK_PROJECT_SCOPE_KIND,
|
|
4917
4922
|
J as W_PRIORITY,
|
|
4918
|
-
|
|
4923
|
+
rl as acceptExampleCandidate,
|
|
4919
4924
|
Yr as actingIdentityKey,
|
|
4920
|
-
|
|
4921
|
-
|
|
4922
|
-
|
|
4925
|
+
tl as activeWorkTypes,
|
|
4926
|
+
us as activityIconOf,
|
|
4927
|
+
_s as activityJoinUrl,
|
|
4923
4928
|
dn as activitySnippet,
|
|
4924
4929
|
pn as activityTextParams,
|
|
4925
|
-
|
|
4930
|
+
As as activityTimelineText,
|
|
4926
4931
|
gn as activityTimestamp,
|
|
4927
4932
|
w as activityTypeInfo,
|
|
4928
|
-
|
|
4929
|
-
|
|
4933
|
+
ac as actorKey,
|
|
4934
|
+
nl as addExampleCandidate,
|
|
4930
4935
|
Oe as addWorkingMs,
|
|
4931
|
-
|
|
4932
|
-
|
|
4933
|
-
|
|
4936
|
+
ku as agePresenceEntry,
|
|
4937
|
+
Zo as aiAttachmentKind,
|
|
4938
|
+
Fl as aiAttachmentRejection,
|
|
4934
4939
|
je as aiBudgetLimit,
|
|
4935
|
-
|
|
4940
|
+
Ns as aiBudgetPeriodKey,
|
|
4936
4941
|
yn as aiBudgetPeriodStart,
|
|
4937
|
-
|
|
4938
|
-
|
|
4939
|
-
|
|
4940
|
-
|
|
4941
|
-
|
|
4942
|
-
|
|
4942
|
+
xs as aiBudgetState,
|
|
4943
|
+
Os as aiVendorAcceptsAttachment,
|
|
4944
|
+
Ms as aiVendorDefaultModel,
|
|
4945
|
+
ks as aiVendorLabel,
|
|
4946
|
+
Cs as aiVendorNeedsBaseUrl,
|
|
4947
|
+
vs as aiVendorsWith,
|
|
4943
4948
|
Fn as allocate,
|
|
4944
4949
|
tn as appNameFromPath,
|
|
4945
|
-
|
|
4950
|
+
qc as applyRounding,
|
|
4946
4951
|
sa as applySignature,
|
|
4947
4952
|
oo as approvalRate,
|
|
4948
|
-
|
|
4949
|
-
|
|
4953
|
+
js as artifactBodyBytes,
|
|
4954
|
+
Hs as artifactOutline,
|
|
4950
4955
|
Dn as artifactToMarkdown,
|
|
4951
|
-
|
|
4952
|
-
|
|
4953
|
-
|
|
4954
|
-
|
|
4955
|
-
|
|
4956
|
-
|
|
4957
|
-
|
|
4958
|
-
|
|
4959
|
-
|
|
4956
|
+
dc as assignmentMismatch,
|
|
4957
|
+
Ys as assignmentScopeKey,
|
|
4958
|
+
Zs as assignmentSubject,
|
|
4959
|
+
Xa as availabilityByPerson,
|
|
4960
|
+
Wa as belongsOnCalendar,
|
|
4961
|
+
Es as buildActivityPreview,
|
|
4962
|
+
Ql as buildChannelIntents,
|
|
4963
|
+
Gs as buildShareKeys,
|
|
4964
|
+
Ci as buildWindow,
|
|
4960
4965
|
Tr as calendarDaysBetween,
|
|
4961
4966
|
xe as calendarOf,
|
|
4962
|
-
|
|
4963
|
-
|
|
4964
|
-
|
|
4965
|
-
|
|
4966
|
-
|
|
4967
|
-
|
|
4968
|
-
|
|
4969
|
-
|
|
4970
|
-
|
|
4971
|
-
|
|
4972
|
-
|
|
4973
|
-
|
|
4974
|
-
|
|
4975
|
-
|
|
4976
|
-
|
|
4977
|
-
|
|
4967
|
+
va as canNestUnder,
|
|
4968
|
+
Pc as canParent,
|
|
4969
|
+
Va as capacityTotal,
|
|
4970
|
+
rc as capacityWeights,
|
|
4971
|
+
hs as carriesText,
|
|
4972
|
+
Oa as categoryLabel,
|
|
4973
|
+
zo as categoryOf,
|
|
4974
|
+
tu as channelKindForScheme,
|
|
4975
|
+
ds as channelKindOf,
|
|
4976
|
+
zc as checkInOverdueMs,
|
|
4977
|
+
hc as clampStepMaxTokens,
|
|
4978
|
+
ga as classifyMail,
|
|
4979
|
+
nd as cleanMessageMarkdown,
|
|
4980
|
+
td as cleanMessageText,
|
|
4981
|
+
ea as codeQuery,
|
|
4982
|
+
Vl as compareAssistRank,
|
|
4978
4983
|
vo as compareWorkTypes,
|
|
4979
4984
|
Xn as conditionHolds,
|
|
4980
4985
|
Do as copyFrom,
|
|
4981
4986
|
W as countsAsPlanned,
|
|
4982
|
-
|
|
4983
|
-
|
|
4987
|
+
za as coverageByPerson,
|
|
4988
|
+
Qa as coverageFor,
|
|
4984
4989
|
Lt as coversWorkstream,
|
|
4985
4990
|
Pt as cycleDayIndex,
|
|
4986
|
-
|
|
4987
|
-
|
|
4988
|
-
|
|
4989
|
-
|
|
4990
|
-
|
|
4991
|
+
Ll as cycleOrder,
|
|
4992
|
+
Pl as cycleState,
|
|
4993
|
+
Js as decideAssignmentState,
|
|
4994
|
+
Wu as decideCadence,
|
|
4995
|
+
Yl as decideIncomingCall,
|
|
4991
4996
|
yr as defaultLocaleOf,
|
|
4992
|
-
|
|
4993
|
-
|
|
4997
|
+
Nl as defaultStatusKey,
|
|
4998
|
+
iu as defineIntent,
|
|
4994
4999
|
mr as depthOf,
|
|
4995
|
-
|
|
4996
|
-
|
|
4997
|
-
|
|
4998
|
-
|
|
4999
|
-
|
|
5000
|
-
|
|
5000
|
+
wu as derivePresence,
|
|
5001
|
+
Ps as describeClause,
|
|
5002
|
+
ql as disabledIntentsFromCapabilities,
|
|
5003
|
+
js as documentBodyBytes,
|
|
5004
|
+
Au as documentKindOf,
|
|
5005
|
+
Hs as documentOutline,
|
|
5001
5006
|
Dn as documentToMarkdown,
|
|
5002
|
-
|
|
5003
|
-
|
|
5004
|
-
|
|
5005
|
-
|
|
5006
|
-
|
|
5007
|
+
hu as documentToText,
|
|
5008
|
+
xc as dueAtOf,
|
|
5009
|
+
Yc as elapsedSeconds,
|
|
5010
|
+
qu as emailDomain,
|
|
5011
|
+
Ju as endpointKey,
|
|
5007
5012
|
vr as erlangC,
|
|
5008
|
-
|
|
5009
|
-
|
|
5010
|
-
|
|
5013
|
+
hi as extractParams,
|
|
5014
|
+
Mi as extractTerms,
|
|
5015
|
+
ua as fillDocument,
|
|
5011
5016
|
zn as fillText,
|
|
5012
|
-
|
|
5013
|
-
|
|
5014
|
-
|
|
5015
|
-
|
|
5017
|
+
Jl as filterByEndpoint,
|
|
5018
|
+
Zl as filterByIntent,
|
|
5019
|
+
oi as filterByTargetScheme,
|
|
5020
|
+
Ls as filterableDimensions,
|
|
5016
5021
|
te as findAiVendor,
|
|
5017
|
-
|
|
5018
|
-
|
|
5019
|
-
|
|
5020
|
-
|
|
5022
|
+
Uc as fixedLevelForName,
|
|
5023
|
+
Sl as fixedTypeForName,
|
|
5024
|
+
Il as fixedTypes,
|
|
5025
|
+
Eu as flattenLocales,
|
|
5021
5026
|
H as floorToPeriod,
|
|
5022
|
-
|
|
5027
|
+
ec as forecastIntervals,
|
|
5023
5028
|
Xr as formatActingIdentity,
|
|
5024
5029
|
D as formatCents,
|
|
5025
|
-
|
|
5026
|
-
|
|
5027
|
-
|
|
5030
|
+
Zc as formatClock,
|
|
5031
|
+
Qc as formatHm,
|
|
5032
|
+
kl as formatItemKey,
|
|
5028
5033
|
j as formatPeriod,
|
|
5029
|
-
|
|
5030
|
-
|
|
5031
|
-
|
|
5032
|
-
|
|
5033
|
-
|
|
5034
|
-
|
|
5035
|
-
|
|
5036
|
-
|
|
5037
|
-
|
|
5034
|
+
Dc as formatSlaDuration,
|
|
5035
|
+
jl as freshSources,
|
|
5036
|
+
Is as getActivitySeenUserIds,
|
|
5037
|
+
aa as getContactEndpoints,
|
|
5038
|
+
Ia as getShortTitle,
|
|
5039
|
+
Sa as getUrgencyScore,
|
|
5040
|
+
wc as hasReacted,
|
|
5041
|
+
Fc as healthCategory,
|
|
5042
|
+
Bc as healthsInCategory,
|
|
5038
5043
|
$t as heightOf,
|
|
5039
|
-
|
|
5040
|
-
|
|
5044
|
+
wa as helpCenterText,
|
|
5045
|
+
pc as humanizeAction,
|
|
5041
5046
|
to as interactionIdOf,
|
|
5042
|
-
|
|
5043
|
-
|
|
5044
|
-
|
|
5047
|
+
ml as isAgentUser,
|
|
5048
|
+
_a as isAssigned,
|
|
5049
|
+
Xs as isAssignmentTerminal,
|
|
5045
5050
|
Zr as isAssignmentTrigger,
|
|
5046
|
-
|
|
5051
|
+
Ac as isAutoReady,
|
|
5047
5052
|
fr as isAwaitingThem,
|
|
5048
|
-
|
|
5049
|
-
|
|
5050
|
-
|
|
5051
|
-
|
|
5053
|
+
ws as isChatMessageActivity,
|
|
5054
|
+
Ea as isClosed,
|
|
5055
|
+
ys as isConnectedType,
|
|
5056
|
+
Lu as isDeepLink,
|
|
5052
5057
|
hr as isDescendant,
|
|
5053
|
-
|
|
5054
|
-
|
|
5055
|
-
|
|
5056
|
-
|
|
5057
|
-
|
|
5058
|
+
pa as isEligible,
|
|
5059
|
+
Ts as isEmailActivity,
|
|
5060
|
+
il as isFrozen,
|
|
5061
|
+
ed as isHtmlBody,
|
|
5062
|
+
Ec as isInFlight,
|
|
5058
5063
|
or as isInteractionUnseen,
|
|
5059
|
-
|
|
5064
|
+
Pu as isLandingPath,
|
|
5060
5065
|
Zn as isLikelyBulk,
|
|
5061
5066
|
St as isMessageShape,
|
|
5062
|
-
|
|
5063
|
-
|
|
5067
|
+
ps as isMessageType,
|
|
5068
|
+
yi as isMoreSpecificPattern,
|
|
5064
5069
|
It as isNoteShape,
|
|
5065
5070
|
Ao as isOpenClock,
|
|
5066
|
-
|
|
5071
|
+
Bl as isOutwardTool,
|
|
5067
5072
|
ur as isParked,
|
|
5068
5073
|
co as isPaused,
|
|
5069
|
-
|
|
5070
|
-
|
|
5071
|
-
|
|
5074
|
+
gs as isPlaybookAuthoredType,
|
|
5075
|
+
Qu as isPublicEmailDomain,
|
|
5076
|
+
Uu as isPublicPath,
|
|
5072
5077
|
dr as isReminderActive,
|
|
5073
|
-
|
|
5074
|
-
|
|
5075
|
-
|
|
5076
|
-
|
|
5077
|
-
|
|
5078
|
-
|
|
5079
|
-
|
|
5080
|
-
|
|
5078
|
+
ms as isReplyableType,
|
|
5079
|
+
ba as isSlaAtRisk,
|
|
5080
|
+
_c as isTerminal,
|
|
5081
|
+
ma as isThreadLongEnough,
|
|
5082
|
+
bs as isTranscriptType,
|
|
5083
|
+
Rl as isWorkClosed,
|
|
5084
|
+
el as isWorkTypeVisible,
|
|
5085
|
+
Cl as itemDossierKeys,
|
|
5081
5086
|
N as kindFor,
|
|
5082
|
-
|
|
5087
|
+
Vo as ladderFor,
|
|
5083
5088
|
Io as levelIn,
|
|
5084
5089
|
Te as levelOrder,
|
|
5085
5090
|
Er as lineNet,
|
|
5086
|
-
|
|
5087
|
-
|
|
5088
|
-
|
|
5089
|
-
|
|
5090
|
-
|
|
5091
|
-
|
|
5091
|
+
Ta as linkLabel,
|
|
5092
|
+
Rs as listeningAllowed,
|
|
5093
|
+
Ma as localeInstruction,
|
|
5094
|
+
ka as localeName,
|
|
5095
|
+
Ca as localesOf,
|
|
5096
|
+
Xu as looksLikeEmail,
|
|
5092
5097
|
Ct as lookup,
|
|
5093
|
-
|
|
5094
|
-
|
|
5095
|
-
|
|
5096
|
-
|
|
5097
|
-
|
|
5098
|
-
|
|
5099
|
-
|
|
5100
|
-
|
|
5098
|
+
na as marginCents,
|
|
5099
|
+
mu as markdownToDocument,
|
|
5100
|
+
eu as matchContactToIntents,
|
|
5101
|
+
bi as matchPublicRoute,
|
|
5102
|
+
Na as mcpCredentialScope,
|
|
5103
|
+
Ra as mcpToolPrefix,
|
|
5104
|
+
jc as measureRatio,
|
|
5105
|
+
Gu as mergeShownKeys,
|
|
5101
5106
|
un as messageCountsAs,
|
|
5102
|
-
|
|
5107
|
+
Ks as metricOption,
|
|
5103
5108
|
Kt as minutesOn,
|
|
5104
|
-
|
|
5105
|
-
|
|
5106
|
-
|
|
5107
|
-
|
|
5108
|
-
|
|
5109
|
-
|
|
5110
|
-
|
|
5111
|
-
|
|
5109
|
+
Zu as needsPhoneRegion,
|
|
5110
|
+
fs as nestsUnderParent,
|
|
5111
|
+
Kc as nextLevelBelow,
|
|
5112
|
+
Nc as nextSlaClock,
|
|
5113
|
+
al as nextVersion,
|
|
5114
|
+
Bs as normalizeArtifactBlocks,
|
|
5115
|
+
ls as normalizeBlocks,
|
|
5116
|
+
Bs as normalizeDocumentBlocks,
|
|
5112
5117
|
nn as normalizeEmail,
|
|
5113
5118
|
P as normalizeExample,
|
|
5114
5119
|
Kn as normalizeGtin,
|
|
5115
|
-
|
|
5116
|
-
|
|
5117
|
-
|
|
5118
|
-
|
|
5119
|
-
|
|
5120
|
+
Iu as notificationPrefKey,
|
|
5121
|
+
vi as novelty,
|
|
5122
|
+
fu as operationDescriptor,
|
|
5123
|
+
pu as operationsForKind,
|
|
5124
|
+
da as organizationSender,
|
|
5120
5125
|
ce as overlapSeconds,
|
|
5121
|
-
|
|
5122
|
-
|
|
5123
|
-
|
|
5124
|
-
|
|
5125
|
-
|
|
5126
|
-
|
|
5127
|
-
|
|
5128
|
-
|
|
5126
|
+
qa as overlaps,
|
|
5127
|
+
Hc as paceRatio,
|
|
5128
|
+
fa as parkMarksById,
|
|
5129
|
+
ic as parseActingIdentity,
|
|
5130
|
+
ta as parseAmount,
|
|
5131
|
+
kc as parseClockMinutes,
|
|
5132
|
+
Ml as parseItemKey,
|
|
5133
|
+
mi as pathToRegex,
|
|
5129
5134
|
Ft as patternFor,
|
|
5130
5135
|
Ut as patternStartTime,
|
|
5131
|
-
|
|
5132
|
-
|
|
5133
|
-
|
|
5134
|
-
|
|
5135
|
-
|
|
5136
|
-
|
|
5136
|
+
Mc as pauseBitFor,
|
|
5137
|
+
$s as periodsInRange,
|
|
5138
|
+
Yu as phoneSuffix,
|
|
5139
|
+
ha as pickMailHeaders,
|
|
5140
|
+
la as pickTemplate,
|
|
5141
|
+
oc as placeLumps,
|
|
5137
5142
|
cn as plainTextFromMarkdown,
|
|
5138
|
-
|
|
5139
|
-
|
|
5143
|
+
Oc as planSlaEvent,
|
|
5144
|
+
Za as plannedBillable,
|
|
5140
5145
|
Lr as plannedWorkTypeKey,
|
|
5141
5146
|
Qr as playbookActor,
|
|
5142
|
-
|
|
5143
|
-
|
|
5144
|
-
|
|
5145
|
-
|
|
5146
|
-
|
|
5147
|
-
|
|
5147
|
+
bc as procedureOf,
|
|
5148
|
+
pl as productScopeKey,
|
|
5149
|
+
Ol as projectDossierKeys,
|
|
5150
|
+
gi as publicBasePathFor,
|
|
5151
|
+
Ku as publicRoutePatterns,
|
|
5152
|
+
Qs as reactionWakesAssignment,
|
|
5148
5153
|
fe as readPath,
|
|
5149
5154
|
et as readStepError,
|
|
5150
5155
|
lr as recencyOf,
|
|
5151
|
-
|
|
5156
|
+
ca as recipientLocale,
|
|
5152
5157
|
Jr as refKey,
|
|
5153
|
-
|
|
5158
|
+
Pi as registrableDomain,
|
|
5154
5159
|
No as rejectExampleCandidate,
|
|
5155
|
-
|
|
5160
|
+
Ua as relatedByDefault,
|
|
5156
5161
|
Ie as remainingMsOf,
|
|
5157
5162
|
xr as requiredAgents,
|
|
5158
5163
|
$r as requirementFor,
|
|
5159
|
-
|
|
5164
|
+
ni as resolveAccountCapabilities,
|
|
5160
5165
|
me as resolveActivityText,
|
|
5161
|
-
|
|
5162
|
-
|
|
5166
|
+
ti as resolveChannelIntents,
|
|
5167
|
+
ra as resolvePrice,
|
|
5163
5168
|
Gn as resolveSignature,
|
|
5164
|
-
|
|
5165
|
-
|
|
5166
|
-
|
|
5169
|
+
Mu as resolveWorkMode,
|
|
5170
|
+
Ru as resourceKindOf,
|
|
5171
|
+
Vc as rollupChildren,
|
|
5167
5172
|
G as roundHalfUp,
|
|
5168
5173
|
sc as runActor,
|
|
5169
|
-
|
|
5174
|
+
Ic as runInteractionId,
|
|
5170
5175
|
On as sanitizeInline,
|
|
5171
|
-
|
|
5172
|
-
|
|
5173
|
-
|
|
5174
|
-
|
|
5175
|
-
|
|
5176
|
+
_i as sanitizeTranscript,
|
|
5177
|
+
tc as scheduleEntryScopeKey,
|
|
5178
|
+
Aa as scoreInteraction,
|
|
5179
|
+
bl as scoreWorkItem,
|
|
5180
|
+
xa as selectLenses,
|
|
5176
5181
|
Cr as serviceLevel,
|
|
5177
|
-
|
|
5178
|
-
|
|
5182
|
+
Xl as sessionsHoldCannotReach,
|
|
5183
|
+
zl as sessionsToHold,
|
|
5179
5184
|
vt as shareKeyForTeam,
|
|
5180
5185
|
Mt as shareKeyForUser,
|
|
5181
|
-
|
|
5182
|
-
|
|
5183
|
-
|
|
5184
|
-
|
|
5185
|
-
|
|
5186
|
+
Ws as shareKeysForViewer,
|
|
5187
|
+
Ja as shortfalls,
|
|
5188
|
+
vu as shouldRunAudioPipeline,
|
|
5189
|
+
Rc as slaBadgeTone,
|
|
5190
|
+
ya as slaHoursByInbox,
|
|
5186
5191
|
pr as slaHoursFor,
|
|
5187
|
-
|
|
5188
|
-
|
|
5192
|
+
Xo as sortStatuses,
|
|
5193
|
+
ei as sourceKey,
|
|
5189
5194
|
zr as spreadOverWeights,
|
|
5190
|
-
|
|
5191
|
-
|
|
5192
|
-
|
|
5193
|
-
|
|
5195
|
+
xl as statusIn,
|
|
5196
|
+
yc as stepsOf,
|
|
5197
|
+
Lc as strategyAncestorKeysFor,
|
|
5198
|
+
$c as strategyDossierKeys,
|
|
5194
5199
|
zt as strategyItemScopeKey,
|
|
5195
5200
|
ln as stripHtml,
|
|
5196
|
-
|
|
5201
|
+
Sc as subjectKeyOf,
|
|
5197
5202
|
Bt as subjectOf,
|
|
5198
|
-
|
|
5199
|
-
|
|
5200
|
-
|
|
5201
|
-
|
|
5202
|
-
|
|
5203
|
-
|
|
5204
|
-
|
|
5203
|
+
Wl as subjectRef,
|
|
5204
|
+
vl as suggestProjectKey,
|
|
5205
|
+
Gc as suggestedHealth,
|
|
5206
|
+
Tc as summarizeReactions,
|
|
5207
|
+
uc as targetById,
|
|
5208
|
+
lc as targetForActivityType,
|
|
5209
|
+
Xc as targetOrder,
|
|
5205
5210
|
_r as taxRateFor,
|
|
5206
5211
|
wr as termsFor,
|
|
5207
5212
|
qr as toActingIdentity,
|
|
5208
5213
|
ht as toE164,
|
|
5209
|
-
|
|
5214
|
+
Vs as toolSourceKinds,
|
|
5210
5215
|
Ro as topicOfferedForTeam,
|
|
5211
|
-
|
|
5216
|
+
ol as topicsForTeam,
|
|
5212
5217
|
Or as trafficIntensity,
|
|
5213
|
-
|
|
5214
|
-
|
|
5218
|
+
cl as transactionContext,
|
|
5219
|
+
fl as transactionIdFromScope,
|
|
5215
5220
|
ke as transactionKind,
|
|
5216
|
-
|
|
5217
|
-
|
|
5218
|
-
|
|
5221
|
+
dl as transactionScopeKey,
|
|
5222
|
+
ll as transactionSlots,
|
|
5223
|
+
Ba as transactionTotals,
|
|
5219
5224
|
xo as truncateExample,
|
|
5220
|
-
|
|
5221
|
-
|
|
5222
|
-
|
|
5223
|
-
|
|
5225
|
+
El as typeIn,
|
|
5226
|
+
_l as typesFor,
|
|
5227
|
+
Dl as uniqueWorkStatusKey,
|
|
5228
|
+
Jc as uniqueWorkTypeKey,
|
|
5224
5229
|
In as usageMetricId,
|
|
5225
|
-
|
|
5226
|
-
|
|
5227
|
-
|
|
5230
|
+
Us as usageMetrics,
|
|
5231
|
+
$l as validateStatuses,
|
|
5232
|
+
cc as valueAtPath,
|
|
5228
5233
|
ve as waitHoursOf,
|
|
5229
|
-
|
|
5230
|
-
|
|
5231
|
-
|
|
5234
|
+
qs as wakesAssignment,
|
|
5235
|
+
wl as workActivityScopeKey,
|
|
5236
|
+
Wo as workItemScopeKey,
|
|
5232
5237
|
Yt as workProjectScopeKey,
|
|
5233
|
-
|
|
5234
|
-
|
|
5238
|
+
Wc as workRatio,
|
|
5239
|
+
Yo as workStatusKey,
|
|
5235
5240
|
Mo as workTypeKey,
|
|
5236
5241
|
_e as workingMsBetween,
|
|
5237
|
-
|
|
5242
|
+
nc as workstreamScopeKey
|
|
5238
5243
|
};
|