@declarion/react 0.2.8 → 0.2.9
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-lib/{DraggableChildrenTable-CzdhUQ-B.js → DraggableChildrenTable-BJ3W4Wxm.js} +30 -30
- package/dist-lib/{DraggableChildrenTable-CzdhUQ-B.js.map → DraggableChildrenTable-BJ3W4Wxm.js.map} +1 -1
- package/dist-lib/{Grid-pE2-dvug.js → Grid-POpRhlPk.js} +2 -2
- package/dist-lib/{Grid-pE2-dvug.js.map → Grid-POpRhlPk.js.map} +1 -1
- package/dist-lib/{MarkdownRenderer-Dl3GDuY9.js → MarkdownRenderer-bs52XQ7M.js} +15 -12
- package/dist-lib/MarkdownRenderer-bs52XQ7M.js.map +1 -0
- package/dist-lib/components/primitives/ClassifiedFieldLocked.d.ts +10 -0
- package/dist-lib/components/primitives/Icons.d.ts +1 -0
- package/dist-lib/components/primitives/index.d.ts +1 -0
- package/dist-lib/{dataTableStyles-DVOINYzY.js → dataTableStyles-DctG2tMU.js} +621 -603
- package/dist-lib/dataTableStyles-DctG2tMU.js.map +1 -0
- package/dist-lib/declarion-react.css +1 -1
- package/dist-lib/index.d.ts +3 -0
- package/dist-lib/index.js +5195 -4880
- package/dist-lib/index.js.map +1 -1
- package/dist-lib/lib/field-classification.d.ts +52 -0
- package/dist-lib/lib/sort.d.ts +72 -0
- package/dist-lib/types/schema.d.ts +65 -0
- package/dist-lib/{value-qao1rdkR.js → value-CXFBdyeL.js} +10 -9
- package/dist-lib/{value-qao1rdkR.js.map → value-CXFBdyeL.js.map} +1 -1
- package/package.json +1 -1
- package/dist-lib/MarkdownRenderer-Dl3GDuY9.js.map +0 -1
- package/dist-lib/dataTableStyles-DVOINYzY.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as e, E as t, T as n, W as r, _ as i, b as a, c as o, d as s, f as c, g as l, h as u, i as d, k as f, l as p, m, n as h, o as g, p as _, r as v, t as y, u as b, v as x, w as S, x as ee, y as C } from "./value-
|
|
1
|
+
import { C as e, E as t, T as n, W as r, _ as i, b as a, c as o, d as s, f as c, g as l, h as u, i as d, k as f, l as p, m, n as h, o as g, p as _, r as v, t as y, u as b, v as x, w as S, x as ee, y as C } from "./value-CXFBdyeL.js";
|
|
2
2
|
import { a as w, i as T, o as E, r as D, s as O, t as k } from "./rich-text-CaQ6-8Gx.js";
|
|
3
3
|
import { Suspense as A, forwardRef as j, lazy as M, useCallback as N, useEffect as P, useLayoutEffect as F, useMemo as I, useRef as L, useState as R } from "react";
|
|
4
4
|
import { useQuery as z } from "@tanstack/react-query";
|
|
@@ -232,6 +232,13 @@ var K = (e, t = {}) => ({ size: n = 14, cls: r = "", style: i = {} }) => /* @__P
|
|
|
232
232
|
cy: "12",
|
|
233
233
|
r: "9"
|
|
234
234
|
}), /* @__PURE__ */ V("path", { d: "M12 7v5l3 2" })] })),
|
|
235
|
+
lock: K(/* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("rect", {
|
|
236
|
+
x: "5",
|
|
237
|
+
y: "11",
|
|
238
|
+
width: "14",
|
|
239
|
+
height: "9",
|
|
240
|
+
rx: "2"
|
|
241
|
+
}), /* @__PURE__ */ V("path", { d: "M8 11V8a4 4 0 0 1 8 0v3" })] })),
|
|
235
242
|
email: K(/* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("rect", {
|
|
236
243
|
x: "3",
|
|
237
244
|
y: "5",
|
|
@@ -1431,8 +1438,19 @@ function De({ size: e = 14 }) {
|
|
|
1431
1438
|
});
|
|
1432
1439
|
}
|
|
1433
1440
|
//#endregion
|
|
1441
|
+
//#region src/components/primitives/ClassifiedFieldLocked.tsx
|
|
1442
|
+
function Oe({ tier: e, tierDef: t, requiredPermission: n, locale: r = "en", variant: i = "value" }) {
|
|
1443
|
+
let a = t?.name?.[r] ?? t?.name?.en ?? e, o = n ? `Locked: requires permission "${n}". Ask your administrator to grant it to your role.` : `Locked: ${a} classification — requires explicit grant.`;
|
|
1444
|
+
return /* @__PURE__ */ H("span", {
|
|
1445
|
+
title: o,
|
|
1446
|
+
"aria-label": o,
|
|
1447
|
+
className: `inline-flex items-center gap-1 text-muted-foreground italic select-none ${i === "input" ? "border border-divider rounded-md px-2 py-1 bg-surface" : ""}`,
|
|
1448
|
+
children: [/* @__PURE__ */ V(q.lock, { size: 12 }), /* @__PURE__ */ V("span", { children: a })]
|
|
1449
|
+
});
|
|
1450
|
+
}
|
|
1451
|
+
//#endregion
|
|
1434
1452
|
//#region src/components/primitives/Fields.tsx
|
|
1435
|
-
var
|
|
1453
|
+
var ke = ({ children: e, required: t, hint: n }) => /* @__PURE__ */ H("div", {
|
|
1436
1454
|
style: {
|
|
1437
1455
|
display: "flex",
|
|
1438
1456
|
alignItems: "center",
|
|
@@ -1460,7 +1478,7 @@ var Oe = ({ children: e, required: t, hint: n }) => /* @__PURE__ */ H("div", {
|
|
|
1460
1478
|
children: /* @__PURE__ */ V(q.info, { size: 11 })
|
|
1461
1479
|
})
|
|
1462
1480
|
]
|
|
1463
|
-
}),
|
|
1481
|
+
}), Ae = {
|
|
1464
1482
|
width: "100%",
|
|
1465
1483
|
height: 30,
|
|
1466
1484
|
padding: "0 10px",
|
|
@@ -1480,7 +1498,7 @@ function Z({ value: e, onChange: t, placeholder: n, prefix: r, suffix: i, style:
|
|
|
1480
1498
|
display: "flex",
|
|
1481
1499
|
alignItems: "center",
|
|
1482
1500
|
gap: 6,
|
|
1483
|
-
...
|
|
1501
|
+
...Ae,
|
|
1484
1502
|
padding: r || i ? "0 8px" : "0 10px",
|
|
1485
1503
|
borderColor: s ? "var(--accent)" : "var(--border)",
|
|
1486
1504
|
boxShadow: s ? "0 0 0 3px var(--accent-ring)" : "none",
|
|
@@ -1522,7 +1540,7 @@ function Z({ value: e, onChange: t, placeholder: n, prefix: r, suffix: i, style:
|
|
|
1522
1540
|
]
|
|
1523
1541
|
});
|
|
1524
1542
|
}
|
|
1525
|
-
function
|
|
1543
|
+
function je({ value: e, onChange: t, placeholder: n, rows: r = 4, fill: i, id: a, name: o, ariaRequired: s }) {
|
|
1526
1544
|
let [c, l] = R(!1), u = i ? {
|
|
1527
1545
|
flex: 1,
|
|
1528
1546
|
height: "100%",
|
|
@@ -1543,7 +1561,7 @@ function Ae({ value: e, onChange: t, placeholder: n, rows: r = 4, fill: i, id: a
|
|
|
1543
1561
|
onFocus: () => l(!0),
|
|
1544
1562
|
onBlur: () => l(!1),
|
|
1545
1563
|
style: {
|
|
1546
|
-
...
|
|
1564
|
+
...Ae,
|
|
1547
1565
|
padding: "8px 10px",
|
|
1548
1566
|
lineHeight: 1.5,
|
|
1549
1567
|
...u,
|
|
@@ -1553,14 +1571,14 @@ function Ae({ value: e, onChange: t, placeholder: n, rows: r = 4, fill: i, id: a
|
|
|
1553
1571
|
}
|
|
1554
1572
|
});
|
|
1555
1573
|
}
|
|
1556
|
-
var
|
|
1557
|
-
function
|
|
1574
|
+
var Me = 20, Ne = 100;
|
|
1575
|
+
function Pe(e) {
|
|
1558
1576
|
return typeof e.label == "string" || typeof e.label == "number" ? String(e.label) : e.value;
|
|
1559
1577
|
}
|
|
1560
|
-
function
|
|
1561
|
-
let [a, o] = R(!1), [s, c] = R(""), l = L(null), u = t.find((t) => t.value === e), d = t.length >
|
|
1578
|
+
function Fe({ value: e, options: t, onChange: n, placeholder: r = "Select...", ...i }) {
|
|
1579
|
+
let [a, o] = R(!1), [s, c] = R(""), l = L(null), u = t.find((t) => t.value === e), d = t.length > Me, f = I(() => {
|
|
1562
1580
|
let e = s.trim().toLowerCase();
|
|
1563
|
-
return e ? t.filter((t) =>
|
|
1581
|
+
return e ? t.filter((t) => Pe(t).toLowerCase().includes(e)).slice(0, Ne) : t.slice(0, Ne);
|
|
1564
1582
|
}, [t, s]);
|
|
1565
1583
|
return /* @__PURE__ */ H(B, { children: [/* @__PURE__ */ H("button", {
|
|
1566
1584
|
type: "button",
|
|
@@ -1570,7 +1588,7 @@ function Pe({ value: e, options: t, onChange: n, placeholder: r = "Select...", .
|
|
|
1570
1588
|
},
|
|
1571
1589
|
...i,
|
|
1572
1590
|
style: {
|
|
1573
|
-
...
|
|
1591
|
+
...Ae,
|
|
1574
1592
|
display: "flex",
|
|
1575
1593
|
alignItems: "center",
|
|
1576
1594
|
justifyContent: "space-between",
|
|
@@ -1637,7 +1655,7 @@ function Pe({ value: e, options: t, onChange: n, placeholder: r = "Select...", .
|
|
|
1637
1655
|
]
|
|
1638
1656
|
})] });
|
|
1639
1657
|
}
|
|
1640
|
-
function
|
|
1658
|
+
function Ie({ value: e, onChange: t }) {
|
|
1641
1659
|
return /* @__PURE__ */ V(Z, {
|
|
1642
1660
|
value: e || "",
|
|
1643
1661
|
onChange: t,
|
|
@@ -1645,26 +1663,26 @@ function Fe({ value: e, onChange: t }) {
|
|
|
1645
1663
|
prefix: /* @__PURE__ */ V(q.calendar, { size: 13 })
|
|
1646
1664
|
});
|
|
1647
1665
|
}
|
|
1648
|
-
function
|
|
1666
|
+
function Le(e) {
|
|
1649
1667
|
if (!e) return 0;
|
|
1650
1668
|
let t = 0;
|
|
1651
1669
|
return e.length >= 8 && t++, e.length >= 12 && t++, /[A-Z]/.test(e) && /[a-z]/.test(e) && t++, /\d/.test(e) && t++, /[^A-Za-z0-9]/.test(e) && t++, Math.min(4, t);
|
|
1652
1670
|
}
|
|
1653
|
-
var
|
|
1671
|
+
var Re = [
|
|
1654
1672
|
"Too short",
|
|
1655
1673
|
"Weak",
|
|
1656
1674
|
"Fair",
|
|
1657
1675
|
"Good",
|
|
1658
1676
|
"Strong"
|
|
1659
|
-
],
|
|
1677
|
+
], ze = [
|
|
1660
1678
|
"var(--danger)",
|
|
1661
1679
|
"var(--danger)",
|
|
1662
1680
|
"var(--warning, #B45309)",
|
|
1663
1681
|
"var(--accent)",
|
|
1664
1682
|
"var(--success, #3FBF8F)"
|
|
1665
1683
|
];
|
|
1666
|
-
function
|
|
1667
|
-
let [s, c] = R(!1), l = e || "", u =
|
|
1684
|
+
function Be({ value: e, onChange: t, placeholder: n = "Enter password", showStrength: r, id: i, name: a, ariaRequired: o }) {
|
|
1685
|
+
let [s, c] = R(!1), l = e || "", u = Le(l);
|
|
1668
1686
|
return /* @__PURE__ */ H("div", { children: [/* @__PURE__ */ V(Z, {
|
|
1669
1687
|
id: i,
|
|
1670
1688
|
name: a,
|
|
@@ -1709,7 +1727,7 @@ function ze({ value: e, onChange: t, placeholder: n = "Enter password", showStre
|
|
|
1709
1727
|
flex: 1,
|
|
1710
1728
|
height: 3,
|
|
1711
1729
|
borderRadius: 999,
|
|
1712
|
-
background: e < u ?
|
|
1730
|
+
background: e < u ? ze[u] : "var(--surface-3)",
|
|
1713
1731
|
transition: "background .15s"
|
|
1714
1732
|
} }, e))
|
|
1715
1733
|
}), /* @__PURE__ */ V("span", {
|
|
@@ -1719,15 +1737,15 @@ function ze({ value: e, onChange: t, placeholder: n = "Enter password", showStre
|
|
|
1719
1737
|
minWidth: 54,
|
|
1720
1738
|
textAlign: "right"
|
|
1721
1739
|
},
|
|
1722
|
-
children: l ?
|
|
1740
|
+
children: l ? Re[u] : ""
|
|
1723
1741
|
})]
|
|
1724
1742
|
})] });
|
|
1725
1743
|
}
|
|
1726
|
-
function
|
|
1744
|
+
function Ve({ value: e = [], onChange: t }) {
|
|
1727
1745
|
let [n, r] = R("");
|
|
1728
1746
|
return /* @__PURE__ */ H("div", {
|
|
1729
1747
|
style: {
|
|
1730
|
-
...
|
|
1748
|
+
...Ae,
|
|
1731
1749
|
height: "auto",
|
|
1732
1750
|
minHeight: 30,
|
|
1733
1751
|
display: "flex",
|
|
@@ -1759,7 +1777,7 @@ function Be({ value: e = [], onChange: t }) {
|
|
|
1759
1777
|
})]
|
|
1760
1778
|
});
|
|
1761
1779
|
}
|
|
1762
|
-
function
|
|
1780
|
+
function He({ value: e, onChange: t }) {
|
|
1763
1781
|
return /* @__PURE__ */ H("div", {
|
|
1764
1782
|
style: {
|
|
1765
1783
|
border: "1px solid var(--border)",
|
|
@@ -1818,7 +1836,7 @@ function Ve({ value: e, onChange: t }) {
|
|
|
1818
1836
|
})]
|
|
1819
1837
|
});
|
|
1820
1838
|
}
|
|
1821
|
-
function
|
|
1839
|
+
function Ue({ value: e, entity: t = "company", onChange: n, items: r = [], id: i, ariaLabelledby: a, ariaRequired: o }) {
|
|
1822
1840
|
let [s, c] = R(!1), l = L(null);
|
|
1823
1841
|
return /* @__PURE__ */ H(B, { children: [/* @__PURE__ */ H("button", {
|
|
1824
1842
|
type: "button",
|
|
@@ -1828,7 +1846,7 @@ function He({ value: e, entity: t = "company", onChange: n, items: r = [], id: i
|
|
|
1828
1846
|
ref: l,
|
|
1829
1847
|
onClick: () => c(!0),
|
|
1830
1848
|
style: {
|
|
1831
|
-
...
|
|
1849
|
+
...Ae,
|
|
1832
1850
|
display: "flex",
|
|
1833
1851
|
alignItems: "center",
|
|
1834
1852
|
justifyContent: "space-between",
|
|
@@ -1884,7 +1902,7 @@ function He({ value: e, entity: t = "company", onChange: n, items: r = [], id: i
|
|
|
1884
1902
|
}, e.id))]
|
|
1885
1903
|
})] });
|
|
1886
1904
|
}
|
|
1887
|
-
function
|
|
1905
|
+
function We({ label: e, children: t, mono: n, wide: r, empty: i }) {
|
|
1888
1906
|
return /* @__PURE__ */ H("div", {
|
|
1889
1907
|
style: {
|
|
1890
1908
|
display: "flex",
|
|
@@ -1917,7 +1935,7 @@ function Ue({ label: e, children: t, mono: n, wide: r, empty: i }) {
|
|
|
1917
1935
|
})]
|
|
1918
1936
|
});
|
|
1919
1937
|
}
|
|
1920
|
-
function
|
|
1938
|
+
function Ge({ value: e, onChange: t, type: n = "text", options: r }) {
|
|
1921
1939
|
let [i, a] = R(!1), [o, s] = R(e), c = () => {
|
|
1922
1940
|
t && o !== void 0 && t(o), a(!1);
|
|
1923
1941
|
}, l = () => {
|
|
@@ -1932,7 +1950,7 @@ function We({ value: e, onChange: t, type: n = "text", options: r }) {
|
|
|
1932
1950
|
onKeyDown: (e) => {
|
|
1933
1951
|
e.key === "Enter" && c(), e.key === "Escape" && l();
|
|
1934
1952
|
},
|
|
1935
|
-
children: [n === "select" ? /* @__PURE__ */ V(
|
|
1953
|
+
children: [n === "select" ? /* @__PURE__ */ V(Fe, {
|
|
1936
1954
|
value: o,
|
|
1937
1955
|
options: r || [],
|
|
1938
1956
|
onChange: (e) => {
|
|
@@ -1986,7 +2004,7 @@ function We({ value: e, onChange: t, type: n = "text", options: r }) {
|
|
|
1986
2004
|
}
|
|
1987
2005
|
//#endregion
|
|
1988
2006
|
//#region src/types/ordmap.ts
|
|
1989
|
-
var
|
|
2007
|
+
var Ke = class e {
|
|
1990
2008
|
#e;
|
|
1991
2009
|
#t;
|
|
1992
2010
|
constructor(e) {
|
|
@@ -2030,18 +2048,18 @@ var Ge = class e {
|
|
|
2030
2048
|
function Q(e, t = "en") {
|
|
2031
2049
|
return e ? e[t] ?? Object.values(e)[0] ?? "" : "";
|
|
2032
2050
|
}
|
|
2033
|
-
var
|
|
2034
|
-
function
|
|
2051
|
+
var qe = "$display";
|
|
2052
|
+
function Je(e, t) {
|
|
2035
2053
|
if (!e) return;
|
|
2036
|
-
let n = e[
|
|
2054
|
+
let n = e[qe];
|
|
2037
2055
|
if (typeof n == "string" && n !== "") return n;
|
|
2038
2056
|
let r = t?.display?.display_field;
|
|
2039
2057
|
if (!r) return;
|
|
2040
2058
|
let i = e[r];
|
|
2041
2059
|
if (i != null) return typeof i == "object" && !Array.isArray(i) ? Q(i) || void 0 : String(i);
|
|
2042
2060
|
}
|
|
2043
|
-
function
|
|
2044
|
-
let r = e[
|
|
2061
|
+
function Ye(e, t, n) {
|
|
2062
|
+
let r = e[qe];
|
|
2045
2063
|
if (typeof r == "string" && r !== "") return r;
|
|
2046
2064
|
if (t) {
|
|
2047
2065
|
let r = e[t];
|
|
@@ -2049,11 +2067,11 @@ function Je(e, t, n) {
|
|
|
2049
2067
|
}
|
|
2050
2068
|
return n;
|
|
2051
2069
|
}
|
|
2052
|
-
function
|
|
2070
|
+
function Xe(e) {
|
|
2053
2071
|
let t = e.replace(/\/+$/, "").split("/").map((e) => e.startsWith(":") ? "[^/]+" : e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"));
|
|
2054
2072
|
return RegExp("^" + t.join("/") + "$");
|
|
2055
2073
|
}
|
|
2056
|
-
function
|
|
2074
|
+
function Ze(e) {
|
|
2057
2075
|
let t = (() => {
|
|
2058
2076
|
try {
|
|
2059
2077
|
return decodeURIComponent(e);
|
|
@@ -2063,17 +2081,17 @@ function Xe(e) {
|
|
|
2063
2081
|
})().split("-")[0];
|
|
2064
2082
|
return t.length > 8 ? t.slice(0, 8) : t;
|
|
2065
2083
|
}
|
|
2066
|
-
function
|
|
2084
|
+
function Qe(e, t, n) {
|
|
2067
2085
|
if (!t) return;
|
|
2068
2086
|
let r = e.replace(/\/+$/, "") || "/", i;
|
|
2069
2087
|
for (let e of Object.values(t)) {
|
|
2070
|
-
if (!e.route || !
|
|
2088
|
+
if (!e.route || !Xe(e.route).test(r)) continue;
|
|
2071
2089
|
let t = e.route.includes("/:"), a = Q(e.display?.name);
|
|
2072
2090
|
if (!a && t && n && e.entity) {
|
|
2073
2091
|
let t = Q(n[e.entity]?.display?.name);
|
|
2074
2092
|
if (t) {
|
|
2075
2093
|
let e = r.slice(r.lastIndexOf("/") + 1);
|
|
2076
|
-
a = e ? `${t} ${
|
|
2094
|
+
a = e ? `${t} ${Ze(e)}` : t;
|
|
2077
2095
|
}
|
|
2078
2096
|
}
|
|
2079
2097
|
if (!a) continue;
|
|
@@ -2086,7 +2104,7 @@ function Ze(e, t, n) {
|
|
|
2086
2104
|
}
|
|
2087
2105
|
return i;
|
|
2088
2106
|
}
|
|
2089
|
-
function
|
|
2107
|
+
function $e(e, t, n) {
|
|
2090
2108
|
let r = Q(e.display?.name);
|
|
2091
2109
|
if (r) return r;
|
|
2092
2110
|
if (e.type === "ref" && e.ref?.entity && n) {
|
|
@@ -2098,7 +2116,7 @@ function Qe(e, t, n) {
|
|
|
2098
2116
|
}
|
|
2099
2117
|
return t;
|
|
2100
2118
|
}
|
|
2101
|
-
function
|
|
2119
|
+
function et(e) {
|
|
2102
2120
|
let t = e.name, n = e.display ? {
|
|
2103
2121
|
...e.display,
|
|
2104
2122
|
name: e.display.name ?? t
|
|
@@ -2111,29 +2129,29 @@ function $e(e) {
|
|
|
2111
2129
|
structure: e.structure
|
|
2112
2130
|
};
|
|
2113
2131
|
}
|
|
2114
|
-
function
|
|
2132
|
+
function tt(e, t) {
|
|
2115
2133
|
return !e || e.readonly ? !1 : e.mutations?.[t] ?? !0;
|
|
2116
2134
|
}
|
|
2117
|
-
function
|
|
2135
|
+
function nt(e) {
|
|
2118
2136
|
if (e.primary_key && e.primary_key.length > 0) return e.primary_key;
|
|
2119
2137
|
for (let [t, n] of e.fields) if (n.primary) return [t];
|
|
2120
2138
|
return ["id"];
|
|
2121
2139
|
}
|
|
2122
|
-
function
|
|
2123
|
-
let n =
|
|
2140
|
+
function rt(e, t) {
|
|
2141
|
+
let n = nt(e), r = {};
|
|
2124
2142
|
for (let e of n) r[e] = String(t[e] ?? "");
|
|
2125
2143
|
return r;
|
|
2126
2144
|
}
|
|
2127
|
-
function rt(e) {
|
|
2128
|
-
return e.length === 1 ? e[0] : JSON.stringify(e);
|
|
2129
|
-
}
|
|
2130
2145
|
function it(e) {
|
|
2131
|
-
return
|
|
2146
|
+
return e.length === 1 ? e[0] : JSON.stringify(e);
|
|
2132
2147
|
}
|
|
2133
|
-
function at(e
|
|
2134
|
-
return
|
|
2148
|
+
function at(e) {
|
|
2149
|
+
return it(Object.values(e));
|
|
2135
2150
|
}
|
|
2136
2151
|
function ot(e, t) {
|
|
2152
|
+
return it(nt(e).map((e) => t[e] ?? ""));
|
|
2153
|
+
}
|
|
2154
|
+
function st(e, t) {
|
|
2137
2155
|
if (t <= 1) return [e];
|
|
2138
2156
|
try {
|
|
2139
2157
|
let n = JSON.parse(e);
|
|
@@ -2143,64 +2161,64 @@ function ot(e, t) {
|
|
|
2143
2161
|
}
|
|
2144
2162
|
return null;
|
|
2145
2163
|
}
|
|
2146
|
-
function
|
|
2164
|
+
function ct(e, t, n) {
|
|
2147
2165
|
if (e?.detail_screen === "none") return null;
|
|
2148
2166
|
let r = e?.detail_screen ?? t?.detail_screen;
|
|
2149
2167
|
return r ? n?.[r]?.route ?? null : null;
|
|
2150
2168
|
}
|
|
2151
|
-
function
|
|
2169
|
+
function lt(e, t, n, r) {
|
|
2152
2170
|
if (!t) return null;
|
|
2153
|
-
let i =
|
|
2171
|
+
let i = ct(e, n, r);
|
|
2154
2172
|
return i ? i.replace(":id", encodeURIComponent(t)) : null;
|
|
2155
2173
|
}
|
|
2156
|
-
function lt(e, t, n, r) {
|
|
2157
|
-
return !t || tt(t).some((e) => !r[e]) ? null : ct(e, at(t, r), t, n);
|
|
2158
|
-
}
|
|
2159
2174
|
function ut(e, t, n, r) {
|
|
2160
|
-
return t ? lt(e, t,
|
|
2175
|
+
return !t || nt(t).some((e) => !r[e]) ? null : lt(e, ot(t, r), t, n);
|
|
2176
|
+
}
|
|
2177
|
+
function dt(e, t, n, r) {
|
|
2178
|
+
return t ? ut(e, t, n, rt(t, r)) : null;
|
|
2161
2179
|
}
|
|
2162
|
-
function
|
|
2163
|
-
return
|
|
2180
|
+
function ft(e) {
|
|
2181
|
+
return nt(e).length > 1;
|
|
2164
2182
|
}
|
|
2165
2183
|
//#endregion
|
|
2166
2184
|
//#region src/api/schema.ts
|
|
2167
|
-
function
|
|
2185
|
+
function pt(e) {
|
|
2168
2186
|
return {
|
|
2169
2187
|
...e,
|
|
2170
|
-
params: e.params ?
|
|
2188
|
+
params: e.params ? Ke.fromObject(e.params) : void 0
|
|
2171
2189
|
};
|
|
2172
2190
|
}
|
|
2173
|
-
function
|
|
2191
|
+
function mt(e) {
|
|
2174
2192
|
return {
|
|
2175
2193
|
...e,
|
|
2176
|
-
resolved_params: e.resolved_params ?
|
|
2194
|
+
resolved_params: e.resolved_params ? Ke.fromObject(e.resolved_params) : void 0
|
|
2177
2195
|
};
|
|
2178
2196
|
}
|
|
2179
|
-
function
|
|
2197
|
+
function ht(e) {
|
|
2180
2198
|
let t = {};
|
|
2181
|
-
if (e.handlers) for (let [n, r] of Object.entries(e.handlers)) t[n] =
|
|
2199
|
+
if (e.handlers) for (let [n, r] of Object.entries(e.handlers)) t[n] = pt(r);
|
|
2182
2200
|
let n = {};
|
|
2183
|
-
if (e.actions) for (let [t, r] of Object.entries(e.actions)) n[t] =
|
|
2201
|
+
if (e.actions) for (let [t, r] of Object.entries(e.actions)) n[t] = mt(r);
|
|
2184
2202
|
return {
|
|
2185
2203
|
...e,
|
|
2186
|
-
fields:
|
|
2187
|
-
files: e.files ?
|
|
2204
|
+
fields: Ke.fromObject(e.fields),
|
|
2205
|
+
files: e.files ? Ke.fromObject(e.files) : void 0,
|
|
2188
2206
|
handlers: e.handlers ? t : void 0,
|
|
2189
2207
|
actions: e.actions ? n : void 0
|
|
2190
2208
|
};
|
|
2191
2209
|
}
|
|
2192
|
-
function
|
|
2210
|
+
function gt(e) {
|
|
2193
2211
|
let t = {};
|
|
2194
|
-
if (e.entities) for (let [n, r] of Object.entries(e.entities)) t[n] =
|
|
2212
|
+
if (e.entities) for (let [n, r] of Object.entries(e.entities)) t[n] = ht(r);
|
|
2195
2213
|
let n = {};
|
|
2196
2214
|
if (e.structures) for (let [t, r] of Object.entries(e.structures)) n[t] = {
|
|
2197
2215
|
...r,
|
|
2198
|
-
fields:
|
|
2216
|
+
fields: Ke.fromObject(r.fields)
|
|
2199
2217
|
};
|
|
2200
2218
|
let r = {};
|
|
2201
|
-
if (e.handlers) for (let [t, n] of Object.entries(e.handlers)) r[t] =
|
|
2219
|
+
if (e.handlers) for (let [t, n] of Object.entries(e.handlers)) r[t] = pt(n);
|
|
2202
2220
|
let i = {};
|
|
2203
|
-
if (e.actions) for (let [t, n] of Object.entries(e.actions)) i[t] =
|
|
2221
|
+
if (e.actions) for (let [t, n] of Object.entries(e.actions)) i[t] = mt(n);
|
|
2204
2222
|
return {
|
|
2205
2223
|
...e,
|
|
2206
2224
|
entities: t,
|
|
@@ -2209,15 +2227,15 @@ function ht(e) {
|
|
|
2209
2227
|
actions: i
|
|
2210
2228
|
};
|
|
2211
2229
|
}
|
|
2212
|
-
async function
|
|
2213
|
-
return
|
|
2230
|
+
async function _t() {
|
|
2231
|
+
return gt(await e("/api/schema"));
|
|
2214
2232
|
}
|
|
2215
2233
|
//#endregion
|
|
2216
2234
|
//#region src/api/auth.ts
|
|
2217
|
-
async function
|
|
2235
|
+
async function vt() {
|
|
2218
2236
|
return n("auth.check_setup");
|
|
2219
2237
|
}
|
|
2220
|
-
async function
|
|
2238
|
+
async function yt(e, t, r = !0) {
|
|
2221
2239
|
let i = await n("auth.login", {
|
|
2222
2240
|
email: e,
|
|
2223
2241
|
password: t,
|
|
@@ -2225,7 +2243,7 @@ async function vt(e, t, r = !0) {
|
|
|
2225
2243
|
});
|
|
2226
2244
|
return f(i.expires_at), i;
|
|
2227
2245
|
}
|
|
2228
|
-
async function
|
|
2246
|
+
async function bt(e, t, r) {
|
|
2229
2247
|
let i = await n("auth.signup", {
|
|
2230
2248
|
email: e,
|
|
2231
2249
|
password: t,
|
|
@@ -2233,42 +2251,42 @@ async function yt(e, t, r) {
|
|
|
2233
2251
|
});
|
|
2234
2252
|
return f(i.expires_at), i;
|
|
2235
2253
|
}
|
|
2236
|
-
async function
|
|
2254
|
+
async function xt() {
|
|
2237
2255
|
return n("auth.me");
|
|
2238
2256
|
}
|
|
2239
|
-
async function
|
|
2257
|
+
async function St() {
|
|
2240
2258
|
return (await n("auth.list_tenants")).tenants;
|
|
2241
2259
|
}
|
|
2242
|
-
async function
|
|
2260
|
+
async function Ct(e) {
|
|
2243
2261
|
let t = await n("auth.switch_tenant", { tenant_id: e });
|
|
2244
2262
|
return f(t.expires_at), t;
|
|
2245
2263
|
}
|
|
2246
|
-
async function
|
|
2264
|
+
async function wt() {
|
|
2247
2265
|
await n("auth.logout");
|
|
2248
2266
|
}
|
|
2249
|
-
async function
|
|
2267
|
+
async function Tt(e) {
|
|
2250
2268
|
return (await n("sso_provider.list", e ? { tenant_code: e } : {})).providers;
|
|
2251
2269
|
}
|
|
2252
|
-
function
|
|
2270
|
+
function Et(e, t, n) {
|
|
2253
2271
|
let r = new URLSearchParams();
|
|
2254
2272
|
t && r.set("tenant", t), n && r.set("redirect", n);
|
|
2255
2273
|
let i = r.toString();
|
|
2256
2274
|
return `/api/auth/sso/authorize/${encodeURIComponent(e)}${i ? `?${i}` : ""}`;
|
|
2257
2275
|
}
|
|
2258
|
-
async function
|
|
2276
|
+
async function Dt(e, t, r) {
|
|
2259
2277
|
let i = {
|
|
2260
2278
|
target_user_id: e,
|
|
2261
2279
|
reason: t
|
|
2262
2280
|
};
|
|
2263
2281
|
return r != null && (i.duration_minutes = r), n("impersonation.start", i);
|
|
2264
2282
|
}
|
|
2265
|
-
async function
|
|
2283
|
+
async function Ot() {
|
|
2266
2284
|
return n("impersonation.stop");
|
|
2267
2285
|
}
|
|
2268
|
-
async function
|
|
2286
|
+
async function kt(e) {
|
|
2269
2287
|
await n("impersonation.revoke", { session_id: e });
|
|
2270
2288
|
}
|
|
2271
|
-
async function
|
|
2289
|
+
async function At(e, t) {
|
|
2272
2290
|
await n("auth.change_password", {
|
|
2273
2291
|
current_password: e,
|
|
2274
2292
|
new_password: t
|
|
@@ -2276,7 +2294,7 @@ async function kt(e, t) {
|
|
|
2276
2294
|
}
|
|
2277
2295
|
//#endregion
|
|
2278
2296
|
//#region src/stores/auth.ts
|
|
2279
|
-
var
|
|
2297
|
+
var jt = W((e) => ({
|
|
2280
2298
|
user: null,
|
|
2281
2299
|
isAuthenticated: !1,
|
|
2282
2300
|
isLoading: !0,
|
|
@@ -2284,9 +2302,9 @@ var At = W((e) => ({
|
|
|
2284
2302
|
tenants: [],
|
|
2285
2303
|
initialize: async () => {
|
|
2286
2304
|
try {
|
|
2287
|
-
let t = await
|
|
2305
|
+
let t = await xt(), n = t.tenant ?? null, r = [];
|
|
2288
2306
|
try {
|
|
2289
|
-
r = await
|
|
2307
|
+
r = await St();
|
|
2290
2308
|
} catch {}
|
|
2291
2309
|
e({
|
|
2292
2310
|
user: t,
|
|
@@ -2305,7 +2323,7 @@ var At = W((e) => ({
|
|
|
2305
2323
|
},
|
|
2306
2324
|
refreshMe: async () => {
|
|
2307
2325
|
try {
|
|
2308
|
-
let t = await
|
|
2326
|
+
let t = await xt();
|
|
2309
2327
|
e({
|
|
2310
2328
|
user: t,
|
|
2311
2329
|
activeTenant: t.tenant ?? null
|
|
@@ -2329,7 +2347,7 @@ var At = W((e) => ({
|
|
|
2329
2347
|
logout: async () => {
|
|
2330
2348
|
t();
|
|
2331
2349
|
try {
|
|
2332
|
-
await
|
|
2350
|
+
await wt();
|
|
2333
2351
|
} catch {}
|
|
2334
2352
|
e({
|
|
2335
2353
|
user: null,
|
|
@@ -2341,18 +2359,18 @@ var At = W((e) => ({
|
|
|
2341
2359
|
}));
|
|
2342
2360
|
//#endregion
|
|
2343
2361
|
//#region src/hooks/useSchema.ts
|
|
2344
|
-
function
|
|
2345
|
-
let e =
|
|
2362
|
+
function Mt() {
|
|
2363
|
+
let e = jt((e) => e.isAuthenticated);
|
|
2346
2364
|
return z({
|
|
2347
2365
|
queryKey: ["schema", e],
|
|
2348
|
-
queryFn:
|
|
2366
|
+
queryFn: _t,
|
|
2349
2367
|
staleTime: Infinity,
|
|
2350
2368
|
enabled: e
|
|
2351
2369
|
});
|
|
2352
2370
|
}
|
|
2353
2371
|
//#endregion
|
|
2354
2372
|
//#region src/stores/appearance.ts
|
|
2355
|
-
var
|
|
2373
|
+
var Nt = {
|
|
2356
2374
|
theme: "light",
|
|
2357
2375
|
accent: "violet",
|
|
2358
2376
|
density: "compact",
|
|
@@ -2365,26 +2383,26 @@ var Mt = {
|
|
|
2365
2383
|
aiSurface: "both",
|
|
2366
2384
|
faviconSource: "google",
|
|
2367
2385
|
toastPosition: "bottom-right"
|
|
2368
|
-
},
|
|
2386
|
+
}, Pt = ["light", "dark"], Ft = [
|
|
2369
2387
|
"violet",
|
|
2370
2388
|
"blue",
|
|
2371
2389
|
"teal",
|
|
2372
2390
|
"amber",
|
|
2373
2391
|
"rose"
|
|
2374
|
-
],
|
|
2392
|
+
], It = [
|
|
2375
2393
|
"compact",
|
|
2376
2394
|
"comfortable",
|
|
2377
2395
|
"cozy"
|
|
2378
|
-
],
|
|
2396
|
+
], Lt = ["wide", "collapsed"], Rt = ["top", "bottom"], zt = [
|
|
2379
2397
|
"command",
|
|
2380
2398
|
"panel",
|
|
2381
2399
|
"both",
|
|
2382
2400
|
"off"
|
|
2383
|
-
],
|
|
2401
|
+
], Bt = [
|
|
2384
2402
|
"google",
|
|
2385
2403
|
"direct",
|
|
2386
2404
|
"none"
|
|
2387
|
-
],
|
|
2405
|
+
], Vt = [
|
|
2388
2406
|
"top-left",
|
|
2389
2407
|
"top-center",
|
|
2390
2408
|
"top-right",
|
|
@@ -2392,48 +2410,48 @@ var Mt = {
|
|
|
2392
2410
|
"bottom-center",
|
|
2393
2411
|
"bottom-right"
|
|
2394
2412
|
];
|
|
2395
|
-
function
|
|
2413
|
+
function Ht(e, t) {
|
|
2396
2414
|
return typeof t == "string" && e.includes(t) ? t : void 0;
|
|
2397
2415
|
}
|
|
2398
|
-
function
|
|
2399
|
-
let t = {}, n =
|
|
2416
|
+
function Ut(e) {
|
|
2417
|
+
let t = {}, n = Ht(Pt, e.theme);
|
|
2400
2418
|
n && (t.theme = n);
|
|
2401
|
-
let r =
|
|
2419
|
+
let r = Ht(Ft, e.accent);
|
|
2402
2420
|
r && (t.accent = r);
|
|
2403
|
-
let i =
|
|
2421
|
+
let i = Ht(It, e.density);
|
|
2404
2422
|
i && (t.density = i);
|
|
2405
|
-
let a =
|
|
2423
|
+
let a = Ht(Lt, e.sidebar);
|
|
2406
2424
|
a && (t.sidebar = a);
|
|
2407
|
-
let o =
|
|
2425
|
+
let o = Ht(Rt, e.tabsPosition);
|
|
2408
2426
|
o && (t.tabsPosition = o);
|
|
2409
|
-
let s =
|
|
2427
|
+
let s = Ht(zt, e.aiSurface);
|
|
2410
2428
|
s && (t.aiSurface = s);
|
|
2411
|
-
let c =
|
|
2429
|
+
let c = Ht(Bt, e.faviconSource);
|
|
2412
2430
|
c && (t.faviconSource = c);
|
|
2413
|
-
let l = Vt
|
|
2431
|
+
let l = Ht(Vt, e.toastPosition);
|
|
2414
2432
|
return l && (t.toastPosition = l), typeof e.tabsMaxOpen == "number" && e.tabsMaxOpen > 0 && (t.tabsMaxOpen = e.tabsMaxOpen), typeof e.radius == "number" && e.radius >= 0 && e.radius <= 32 && (t.radius = e.radius), typeof e.zebra == "boolean" && (t.zebra = e.zebra), typeof e.tabsPersist == "boolean" && (t.tabsPersist = e.tabsPersist), t;
|
|
2415
2433
|
}
|
|
2416
|
-
var
|
|
2417
|
-
function
|
|
2434
|
+
var Wt = "declarion-appearance";
|
|
2435
|
+
function Gt() {
|
|
2418
2436
|
if (typeof window > "u") return null;
|
|
2419
2437
|
try {
|
|
2420
|
-
let e = localStorage.getItem(
|
|
2438
|
+
let e = localStorage.getItem(Wt);
|
|
2421
2439
|
return e ? JSON.parse(e) : null;
|
|
2422
2440
|
} catch {
|
|
2423
2441
|
return null;
|
|
2424
2442
|
}
|
|
2425
2443
|
}
|
|
2426
|
-
function
|
|
2444
|
+
function Kt(e) {
|
|
2427
2445
|
if (!(typeof window > "u")) try {
|
|
2428
|
-
localStorage.setItem(
|
|
2446
|
+
localStorage.setItem(Wt, JSON.stringify(e));
|
|
2429
2447
|
} catch {}
|
|
2430
2448
|
}
|
|
2431
|
-
function
|
|
2449
|
+
function qt(e) {
|
|
2432
2450
|
if (typeof document > "u") return;
|
|
2433
2451
|
let t = document.documentElement;
|
|
2434
2452
|
t.dataset.theme = e.theme, t.dataset.accent = e.accent, t.dataset.density = e.density, t.dataset.sidebar = e.sidebar, t.dataset.tabbar = e.tabsPosition, t.dataset.zebra = e.zebra ? "on" : "off", t.dataset.ai = e.aiSurface, t.style.setProperty("--radius-md", `${e.radius}px`), t.style.setProperty("--radius-lg", `${e.radius + 3}px`);
|
|
2435
2453
|
}
|
|
2436
|
-
var
|
|
2454
|
+
var Jt = {
|
|
2437
2455
|
ui_theme: "theme",
|
|
2438
2456
|
ui_accent: "accent",
|
|
2439
2457
|
ui_density: "density",
|
|
@@ -2446,54 +2464,54 @@ var qt = {
|
|
|
2446
2464
|
ui_ai_surface: "aiSurface",
|
|
2447
2465
|
ui_favicon_source: "faviconSource",
|
|
2448
2466
|
ui_toast_position: "toastPosition"
|
|
2449
|
-
},
|
|
2450
|
-
...
|
|
2451
|
-
...
|
|
2467
|
+
}, Yt = Gt(), Xt = Yt ? new Set(Object.keys(Yt)) : /* @__PURE__ */ new Set(), Zt = {
|
|
2468
|
+
...Nt,
|
|
2469
|
+
...Yt ? Ut(Yt) : {}
|
|
2452
2470
|
};
|
|
2453
|
-
typeof window < "u" &&
|
|
2454
|
-
var
|
|
2455
|
-
...
|
|
2471
|
+
typeof window < "u" && qt(Zt);
|
|
2472
|
+
var Qt = W((e, t) => ({
|
|
2473
|
+
...Zt,
|
|
2456
2474
|
set: (n, r) => {
|
|
2457
|
-
let i =
|
|
2475
|
+
let i = Ut({ [n]: r });
|
|
2458
2476
|
if (i[n] === void 0) return;
|
|
2459
2477
|
let a = {
|
|
2460
2478
|
...t(),
|
|
2461
2479
|
...i
|
|
2462
2480
|
};
|
|
2463
|
-
|
|
2481
|
+
qt(a), Kt(a), Xt.add(n), e(i);
|
|
2464
2482
|
},
|
|
2465
2483
|
setMany: (n) => {
|
|
2466
|
-
let r =
|
|
2484
|
+
let r = Ut(n);
|
|
2467
2485
|
if (!Object.keys(r).length) return;
|
|
2468
2486
|
let i = {
|
|
2469
2487
|
...t(),
|
|
2470
2488
|
...r
|
|
2471
2489
|
};
|
|
2472
|
-
|
|
2473
|
-
for (let e of Object.keys(r))
|
|
2490
|
+
qt(i), Kt(i);
|
|
2491
|
+
for (let e of Object.keys(r)) Xt.add(e);
|
|
2474
2492
|
e(r);
|
|
2475
2493
|
},
|
|
2476
2494
|
hydrateFromParams: (t) => {
|
|
2477
2495
|
let n = {};
|
|
2478
|
-
for (let [e, r] of Object.entries(
|
|
2479
|
-
let r =
|
|
2480
|
-
Object.keys(r).length && (
|
|
2481
|
-
...
|
|
2496
|
+
for (let [e, r] of Object.entries(Jt)) Xt.has(r) || t[e] !== void 0 && (n[r] = t[e]);
|
|
2497
|
+
let r = Ut(n);
|
|
2498
|
+
Object.keys(r).length && (qt({
|
|
2499
|
+
...Qt.getState(),
|
|
2482
2500
|
...r
|
|
2483
2501
|
}), e(r));
|
|
2484
2502
|
}
|
|
2485
2503
|
}));
|
|
2486
2504
|
//#endregion
|
|
2487
2505
|
//#region src/lib/utils.ts
|
|
2488
|
-
function
|
|
2506
|
+
function $t(...e) {
|
|
2489
2507
|
return G(te(e));
|
|
2490
2508
|
}
|
|
2491
|
-
function
|
|
2509
|
+
function en(e) {
|
|
2492
2510
|
return e.metaKey || e.ctrlKey || e.shiftKey || e.altKey || e.button !== 0;
|
|
2493
2511
|
}
|
|
2494
2512
|
//#endregion
|
|
2495
2513
|
//#region src/components/shared/DynamicIcon.tsx
|
|
2496
|
-
function
|
|
2514
|
+
function tn({ name: e, size: t, className: n, style: r }) {
|
|
2497
2515
|
return /* @__PURE__ */ V(q[e] ?? q.folder, {
|
|
2498
2516
|
size: typeof t == "number" ? t : typeof t == "string" ? parseFloat(t) : void 0,
|
|
2499
2517
|
cls: n,
|
|
@@ -2502,61 +2520,61 @@ function en({ name: e, size: t, className: n, style: r }) {
|
|
|
2502
2520
|
}
|
|
2503
2521
|
//#endregion
|
|
2504
2522
|
//#region src/components/shared/Markdown.tsx
|
|
2505
|
-
var
|
|
2506
|
-
function
|
|
2523
|
+
var nn = M(() => import("./MarkdownRenderer-bs52XQ7M.js").then((e) => ({ default: e.MarkdownRenderer })));
|
|
2524
|
+
function rn() {
|
|
2507
2525
|
return /* @__PURE__ */ V("div", { className: "h-4 w-2/3 rounded bg-muted animate-pulse" });
|
|
2508
2526
|
}
|
|
2509
|
-
function
|
|
2527
|
+
function an(e) {
|
|
2510
2528
|
return /* @__PURE__ */ V(A, {
|
|
2511
|
-
fallback: /* @__PURE__ */ V(
|
|
2512
|
-
children: /* @__PURE__ */ V(
|
|
2529
|
+
fallback: /* @__PURE__ */ V(rn, {}),
|
|
2530
|
+
children: /* @__PURE__ */ V(nn, { ...e })
|
|
2513
2531
|
});
|
|
2514
2532
|
}
|
|
2515
2533
|
//#endregion
|
|
2516
2534
|
//#region src/api/data.ts
|
|
2517
|
-
function
|
|
2535
|
+
function on(e, t) {
|
|
2518
2536
|
let n = new URL(`/api/data/${e}`, window.location.origin);
|
|
2519
2537
|
if (t.page && n.searchParams.set("page", String(t.page)), t.per_page && n.searchParams.set("per_page", String(t.per_page)), t.sort && n.searchParams.set("sort", t.sort), t.search && n.searchParams.set("search", t.search), t.filters && t.filters.length > 0 && n.searchParams.set("filters", JSON.stringify(t.filters)), t.include_deleted && n.searchParams.set("include_deleted", "true"), t.expand) for (let e of t.expand) n.searchParams.append("expand", e);
|
|
2520
2538
|
return t.select && t.select.length > 0 && n.searchParams.set("select", t.select.join(",")), t.screen && n.searchParams.set("screen", t.screen), t.preview && n.searchParams.set("preview", "true"), t.count && n.searchParams.set("count", t.count), n.pathname + n.search;
|
|
2521
2539
|
}
|
|
2522
|
-
async function
|
|
2523
|
-
return e(
|
|
2540
|
+
async function sn(t, n = {}, r = {}) {
|
|
2541
|
+
return e(on(t, n), { signal: r.signal });
|
|
2524
2542
|
}
|
|
2525
|
-
async function
|
|
2543
|
+
async function cn(t, n) {
|
|
2526
2544
|
let r = new URLSearchParams();
|
|
2527
2545
|
if (typeof n == "string") r.set("id", n);
|
|
2528
2546
|
else for (let [e, t] of Object.entries(n)) r.set(e, t);
|
|
2529
2547
|
return e(`/api/data/${t}?${r.toString()}`);
|
|
2530
2548
|
}
|
|
2531
|
-
async function
|
|
2549
|
+
async function ln(t, n) {
|
|
2532
2550
|
return { data: (await e(`/api/data/${t}`, {
|
|
2533
2551
|
method: "POST",
|
|
2534
2552
|
body: JSON.stringify([n])
|
|
2535
2553
|
}))[0] };
|
|
2536
2554
|
}
|
|
2537
|
-
async function
|
|
2555
|
+
async function un(e, t, n) {
|
|
2538
2556
|
let r = typeof t == "string" ? { id: t } : t;
|
|
2539
|
-
return { data: ((await
|
|
2557
|
+
return { data: ((await vn(`${e}.__update`, { items: [{
|
|
2540
2558
|
...r,
|
|
2541
2559
|
...n
|
|
2542
2560
|
}] })).result?.rows ?? [])[0] };
|
|
2543
2561
|
}
|
|
2544
|
-
async function
|
|
2545
|
-
let n = typeof t == "string" ? t :
|
|
2546
|
-
await
|
|
2562
|
+
async function dn(e, t) {
|
|
2563
|
+
let n = typeof t == "string" ? t : fn(t);
|
|
2564
|
+
await vn(`${e}.__delete`, _n(void 0, [n]));
|
|
2547
2565
|
}
|
|
2548
|
-
function
|
|
2566
|
+
function fn(e) {
|
|
2549
2567
|
let t = Object.values(e);
|
|
2550
2568
|
return t.length === 1 ? t[0] : t.join("");
|
|
2551
2569
|
}
|
|
2552
|
-
async function
|
|
2570
|
+
async function pn(t, n) {
|
|
2553
2571
|
let r = typeof n == "string" ? { id: n } : n;
|
|
2554
2572
|
await e(`/api/data/${t}/restore`, {
|
|
2555
2573
|
method: "POST",
|
|
2556
2574
|
body: JSON.stringify([r])
|
|
2557
2575
|
});
|
|
2558
2576
|
}
|
|
2559
|
-
async function
|
|
2577
|
+
async function mn(e, t) {
|
|
2560
2578
|
let n = await S(`/api/data/${e}/export`, {
|
|
2561
2579
|
method: "POST",
|
|
2562
2580
|
body: JSON.stringify(t)
|
|
@@ -2566,7 +2584,7 @@ async function pn(e, t) {
|
|
|
2566
2584
|
filename: n.filename
|
|
2567
2585
|
};
|
|
2568
2586
|
}
|
|
2569
|
-
var
|
|
2587
|
+
var hn = class extends Error {
|
|
2570
2588
|
status;
|
|
2571
2589
|
response;
|
|
2572
2590
|
constructor(e, t) {
|
|
@@ -2574,36 +2592,36 @@ var mn = class extends Error {
|
|
|
2574
2592
|
super(n || "Action failed"), this.name = "ActionBatchError", this.status = e, this.response = t;
|
|
2575
2593
|
}
|
|
2576
2594
|
};
|
|
2577
|
-
function
|
|
2595
|
+
function gn(e) {
|
|
2578
2596
|
if (!e || typeof e != "object") return !1;
|
|
2579
2597
|
let t = e;
|
|
2580
2598
|
return typeof t.status == "string" && Array.isArray(t.errors);
|
|
2581
2599
|
}
|
|
2582
|
-
function
|
|
2600
|
+
function _n(e, t) {
|
|
2583
2601
|
let n = { ...e ?? {} };
|
|
2584
2602
|
if ("_ids" in n) throw Error("handler param \"_ids\" collides with reserved key");
|
|
2585
2603
|
return t !== void 0 && (n._ids = t), n;
|
|
2586
2604
|
}
|
|
2587
|
-
async function
|
|
2605
|
+
async function vn(t, n) {
|
|
2588
2606
|
try {
|
|
2589
2607
|
return await e(`/api/actions/${t}`, {
|
|
2590
2608
|
method: "POST",
|
|
2591
2609
|
body: JSON.stringify(n)
|
|
2592
2610
|
});
|
|
2593
2611
|
} catch (e) {
|
|
2594
|
-
throw e instanceof r &&
|
|
2612
|
+
throw e instanceof r && gn(e.raw) ? new hn(e.status, e.raw) : e;
|
|
2595
2613
|
}
|
|
2596
2614
|
}
|
|
2597
|
-
async function
|
|
2615
|
+
async function yn(t, n) {
|
|
2598
2616
|
let r = new URLSearchParams();
|
|
2599
2617
|
return r.set("ids", n.join(",")), e(`/api/associations/${t}?${r.toString()}`);
|
|
2600
2618
|
}
|
|
2601
2619
|
//#endregion
|
|
2602
2620
|
//#region src/types/fieldType.ts
|
|
2603
|
-
var
|
|
2621
|
+
var bn = /* @__PURE__ */ "bool.bytes.date.decimal.email.enum.float.int.int_array.json.multilang.multilang_text.password.phone.ref.rich_text.secret.string.string_array.structure.tags.text.time.timestamp.url.uuid.uuid_array".split(".");
|
|
2604
2622
|
//#endregion
|
|
2605
2623
|
//#region src/components/shared/CopyButton.tsx
|
|
2606
|
-
function
|
|
2624
|
+
function xn({ value: e, title: t, size: n = "icon" }) {
|
|
2607
2625
|
let [r, i] = R(!1), a = N(async (t) => {
|
|
2608
2626
|
t.stopPropagation(), t.preventDefault();
|
|
2609
2627
|
try {
|
|
@@ -2622,7 +2640,7 @@ function bn({ value: e, title: t, size: n = "icon" }) {
|
|
|
2622
2640
|
}
|
|
2623
2641
|
//#endregion
|
|
2624
2642
|
//#region src/components/fields/StringField.tsx
|
|
2625
|
-
function
|
|
2643
|
+
function Sn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a }) {
|
|
2626
2644
|
if (r === "display") {
|
|
2627
2645
|
let t = String(n ?? "");
|
|
2628
2646
|
return e.copyable && t ? /* @__PURE__ */ H("span", {
|
|
@@ -2634,7 +2652,7 @@ function xn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a
|
|
|
2634
2652
|
children: [/* @__PURE__ */ V("span", {
|
|
2635
2653
|
style: { fontSize: 12.5 },
|
|
2636
2654
|
children: t
|
|
2637
|
-
}), /* @__PURE__ */ V(
|
|
2655
|
+
}), /* @__PURE__ */ V(xn, {
|
|
2638
2656
|
value: t,
|
|
2639
2657
|
size: "sm"
|
|
2640
2658
|
})]
|
|
@@ -2656,7 +2674,7 @@ function xn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a
|
|
|
2656
2674
|
}
|
|
2657
2675
|
//#endregion
|
|
2658
2676
|
//#region src/components/fields/TextField.tsx
|
|
2659
|
-
function
|
|
2677
|
+
function Cn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fill: a, compact: o, fieldId: s }) {
|
|
2660
2678
|
let c = e.display?.widget;
|
|
2661
2679
|
if (r === "display") {
|
|
2662
2680
|
let t = String(n ?? "");
|
|
@@ -2667,7 +2685,7 @@ function Sn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fill: a, c
|
|
|
2667
2685
|
},
|
|
2668
2686
|
children: "—"
|
|
2669
2687
|
});
|
|
2670
|
-
let r = c === "markdown" ? /* @__PURE__ */ V(
|
|
2688
|
+
let r = c === "markdown" ? /* @__PURE__ */ V(an, { content: t }) : c === "code" ? /* @__PURE__ */ V("pre", {
|
|
2671
2689
|
className: "mono",
|
|
2672
2690
|
style: {
|
|
2673
2691
|
fontSize: 12,
|
|
@@ -2699,7 +2717,7 @@ function Sn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fill: a, c
|
|
|
2699
2717
|
top: 0,
|
|
2700
2718
|
right: 0
|
|
2701
2719
|
},
|
|
2702
|
-
children: /* @__PURE__ */ V(
|
|
2720
|
+
children: /* @__PURE__ */ V(xn, {
|
|
2703
2721
|
value: t,
|
|
2704
2722
|
size: "sm"
|
|
2705
2723
|
})
|
|
@@ -2714,7 +2732,7 @@ function Sn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fill: a, c
|
|
|
2714
2732
|
onChange: (e) => i?.(e)
|
|
2715
2733
|
});
|
|
2716
2734
|
let l = c === "markdown" || c === "code" ? 10 : 4;
|
|
2717
|
-
return /* @__PURE__ */ V(
|
|
2735
|
+
return /* @__PURE__ */ V(je, {
|
|
2718
2736
|
id: s,
|
|
2719
2737
|
name: t,
|
|
2720
2738
|
ariaRequired: e.required,
|
|
@@ -2726,8 +2744,8 @@ function Sn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fill: a, c
|
|
|
2726
2744
|
}
|
|
2727
2745
|
//#endregion
|
|
2728
2746
|
//#region src/components/fields/EnumField.tsx
|
|
2729
|
-
var
|
|
2730
|
-
function
|
|
2747
|
+
var wn = "__declarion_enum_null__";
|
|
2748
|
+
function Tn({ field: e, value: t, mode: n, onChange: r, fieldId: i, labelId: a }) {
|
|
2731
2749
|
let o = e.values ?? [], s = o.find((e) => e.code === t);
|
|
2732
2750
|
if (n === "display") return s ? /* @__PURE__ */ V(X, {
|
|
2733
2751
|
tone: s.color ?? "slate",
|
|
@@ -2740,26 +2758,26 @@ function wn({ field: e, value: t, mode: n, onChange: r, fieldId: i, labelId: a }
|
|
|
2740
2758
|
},
|
|
2741
2759
|
children: "—"
|
|
2742
2760
|
});
|
|
2743
|
-
let c = !e.required, l = t != null && t !== "" ? String(t) :
|
|
2744
|
-
value:
|
|
2761
|
+
let c = !e.required, l = t != null && t !== "" ? String(t) : wn, u = [...c ? [{
|
|
2762
|
+
value: wn,
|
|
2745
2763
|
label: "— None —"
|
|
2746
2764
|
}] : [], ...o.map((e) => ({
|
|
2747
2765
|
value: e.code,
|
|
2748
2766
|
label: Q(e.name) || e.code
|
|
2749
2767
|
}))];
|
|
2750
|
-
return /* @__PURE__ */ V(
|
|
2768
|
+
return /* @__PURE__ */ V(Fe, {
|
|
2751
2769
|
id: i,
|
|
2752
2770
|
"aria-labelledby": a,
|
|
2753
2771
|
"aria-required": e.required || void 0,
|
|
2754
2772
|
value: l,
|
|
2755
2773
|
options: u,
|
|
2756
|
-
onChange: (e) => r?.(e ===
|
|
2774
|
+
onChange: (e) => r?.(e === wn ? null : e),
|
|
2757
2775
|
placeholder: "Select…"
|
|
2758
2776
|
});
|
|
2759
2777
|
}
|
|
2760
2778
|
//#endregion
|
|
2761
2779
|
//#region src/components/fields/EmailField.tsx
|
|
2762
|
-
function
|
|
2780
|
+
function En({ field: e, fieldName: t, value: n, onChange: r, fieldId: i }) {
|
|
2763
2781
|
return /* @__PURE__ */ V(Z, {
|
|
2764
2782
|
id: i,
|
|
2765
2783
|
name: t,
|
|
@@ -2771,7 +2789,7 @@ function Tn({ field: e, fieldName: t, value: n, onChange: r, fieldId: i }) {
|
|
|
2771
2789
|
}
|
|
2772
2790
|
//#endregion
|
|
2773
2791
|
//#region src/components/fields/UrlField.tsx
|
|
2774
|
-
function
|
|
2792
|
+
function Dn({ field: e, fieldName: t, value: n, onChange: r, fieldId: i }) {
|
|
2775
2793
|
return /* @__PURE__ */ V(Z, {
|
|
2776
2794
|
id: i,
|
|
2777
2795
|
name: t,
|
|
@@ -2784,7 +2802,7 @@ function En({ field: e, fieldName: t, value: n, onChange: r, fieldId: i }) {
|
|
|
2784
2802
|
}
|
|
2785
2803
|
//#endregion
|
|
2786
2804
|
//#region src/components/fields/PhoneField.tsx
|
|
2787
|
-
function
|
|
2805
|
+
function On({ field: e, fieldName: t, value: n, onChange: r, fieldId: i }) {
|
|
2788
2806
|
return /* @__PURE__ */ V(Z, {
|
|
2789
2807
|
id: i,
|
|
2790
2808
|
name: t,
|
|
@@ -2797,10 +2815,10 @@ function Dn({ field: e, fieldName: t, value: n, onChange: r, fieldId: i }) {
|
|
|
2797
2815
|
}
|
|
2798
2816
|
//#endregion
|
|
2799
2817
|
//#region src/lib/timestamp.ts
|
|
2800
|
-
function
|
|
2818
|
+
function kn(e = /* @__PURE__ */ new Date()) {
|
|
2801
2819
|
return ie(e);
|
|
2802
2820
|
}
|
|
2803
|
-
function
|
|
2821
|
+
function An(e) {
|
|
2804
2822
|
let t = e.match(/([+-]\d{2}:\d{2})$/), n = e.endsWith("Z");
|
|
2805
2823
|
if (t || n) {
|
|
2806
2824
|
let r = new Date(e);
|
|
@@ -2833,7 +2851,7 @@ function kn(e) {
|
|
|
2833
2851
|
timeStyle: "short"
|
|
2834
2852
|
}).format(r);
|
|
2835
2853
|
}
|
|
2836
|
-
function
|
|
2854
|
+
function jn(e, t = /* @__PURE__ */ new Date()) {
|
|
2837
2855
|
if (e == null || e === "") return {
|
|
2838
2856
|
text: "—",
|
|
2839
2857
|
absolute: ""
|
|
@@ -2846,7 +2864,7 @@ function An(e, t = /* @__PURE__ */ new Date()) {
|
|
|
2846
2864
|
absolute: t
|
|
2847
2865
|
};
|
|
2848
2866
|
}
|
|
2849
|
-
let r =
|
|
2867
|
+
let r = An(typeof e == "string" ? e : n.toISOString()), i = t.getTime() - n.getTime();
|
|
2850
2868
|
return Math.abs(i) > 720 * 60 * 60 * 1e3 ? {
|
|
2851
2869
|
text: ie(n, { representation: "date" }),
|
|
2852
2870
|
absolute: r
|
|
@@ -2857,7 +2875,7 @@ function An(e, t = /* @__PURE__ */ new Date()) {
|
|
|
2857
2875
|
}
|
|
2858
2876
|
//#endregion
|
|
2859
2877
|
//#region src/components/fields/TimestampField.tsx
|
|
2860
|
-
function
|
|
2878
|
+
function Mn(e, t) {
|
|
2861
2879
|
if (t) {
|
|
2862
2880
|
let t = /* @__PURE__ */ new Date(e + "T00:00:00");
|
|
2863
2881
|
return isNaN(t.getTime()) ? e : new Intl.DateTimeFormat(void 0, {
|
|
@@ -2903,7 +2921,7 @@ function jn(e, t) {
|
|
|
2903
2921
|
minute: "2-digit"
|
|
2904
2922
|
}).format(i);
|
|
2905
2923
|
}
|
|
2906
|
-
function
|
|
2924
|
+
function Nn(e, t) {
|
|
2907
2925
|
if (t) {
|
|
2908
2926
|
let t = /* @__PURE__ */ new Date(e + "T00:00:00");
|
|
2909
2927
|
return isNaN(t.getTime()) ? e : new Intl.DateTimeFormat(void 0, {
|
|
@@ -2921,14 +2939,14 @@ function Mn(e, t) {
|
|
|
2921
2939
|
minute: "2-digit"
|
|
2922
2940
|
}).format(n);
|
|
2923
2941
|
}
|
|
2924
|
-
function
|
|
2942
|
+
function Pn(e) {
|
|
2925
2943
|
if (e.endsWith("Z")) return "UTC";
|
|
2926
2944
|
let t = e.match(/([+-]\d{2}:\d{2})$/);
|
|
2927
2945
|
if (!t) return null;
|
|
2928
2946
|
let n = t[1].charAt(0), r = parseInt(t[1].substring(1, 3), 10), i = parseInt(t[1].substring(4, 6), 10);
|
|
2929
2947
|
return r === 0 && i === 0 ? "UTC" : `UTC${n}${r}${i > 0 ? `:${String(i).padStart(2, "0")}` : ""}`;
|
|
2930
2948
|
}
|
|
2931
|
-
function
|
|
2949
|
+
function Fn(e, t) {
|
|
2932
2950
|
let n = e.match(/([+-]\d{2}:\d{2})$/), r = e.endsWith("Z"), i = new Date(e);
|
|
2933
2951
|
if (isNaN(i.getTime())) return "";
|
|
2934
2952
|
if (r) {
|
|
@@ -2941,13 +2959,13 @@ function Pn(e, t) {
|
|
|
2941
2959
|
}
|
|
2942
2960
|
return t ? e.slice(0, 10) : e.slice(0, 16);
|
|
2943
2961
|
}
|
|
2944
|
-
function
|
|
2962
|
+
function In(e, t) {
|
|
2945
2963
|
let n = new Date(e);
|
|
2946
2964
|
if (isNaN(n.getTime())) return "";
|
|
2947
2965
|
let r = n.getFullYear(), i = String(n.getMonth() + 1).padStart(2, "0"), a = String(n.getDate()).padStart(2, "0");
|
|
2948
2966
|
return t ? `${r}-${i}-${a}` : `${r}-${i}-${a}T${String(n.getHours()).padStart(2, "0")}:${String(n.getMinutes()).padStart(2, "0")}`;
|
|
2949
2967
|
}
|
|
2950
|
-
function
|
|
2968
|
+
function Ln({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a }) {
|
|
2951
2969
|
let o = e.type === "date", s = !!e.timezone;
|
|
2952
2970
|
if (r === "display") {
|
|
2953
2971
|
if (!n) return /* @__PURE__ */ V("span", {
|
|
@@ -2957,7 +2975,7 @@ function In({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a
|
|
|
2957
2975
|
},
|
|
2958
2976
|
children: "—"
|
|
2959
2977
|
});
|
|
2960
|
-
let e = String(n), t = s ?
|
|
2978
|
+
let e = String(n), t = s ? Mn(e, o) : Nn(e, o), r = s && !o ? Pn(e) : null;
|
|
2961
2979
|
return /* @__PURE__ */ H("span", {
|
|
2962
2980
|
style: { fontSize: 12.5 },
|
|
2963
2981
|
children: [t, r && /* @__PURE__ */ V("span", {
|
|
@@ -2969,7 +2987,7 @@ function In({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a
|
|
|
2969
2987
|
})]
|
|
2970
2988
|
});
|
|
2971
2989
|
}
|
|
2972
|
-
let c = n ? s ?
|
|
2990
|
+
let c = n ? s ? Fn(String(n), o) : In(String(n), o) : "";
|
|
2973
2991
|
return /* @__PURE__ */ V(Z, {
|
|
2974
2992
|
id: a,
|
|
2975
2993
|
name: t,
|
|
@@ -2990,13 +3008,13 @@ function In({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a
|
|
|
2990
3008
|
i?.(e);
|
|
2991
3009
|
return;
|
|
2992
3010
|
}
|
|
2993
|
-
i?.(
|
|
3011
|
+
i?.(kn(t));
|
|
2994
3012
|
}
|
|
2995
3013
|
});
|
|
2996
3014
|
}
|
|
2997
3015
|
//#endregion
|
|
2998
3016
|
//#region src/components/fields/BoolField.tsx
|
|
2999
|
-
function
|
|
3017
|
+
function Rn({ value: e, mode: t, onChange: n, fieldId: r, labelId: i }) {
|
|
3000
3018
|
let a = !!e;
|
|
3001
3019
|
return t === "display" ? /* @__PURE__ */ H("span", {
|
|
3002
3020
|
style: {
|
|
@@ -3021,7 +3039,7 @@ function Ln({ value: e, mode: t, onChange: n, fieldId: r, labelId: i }) {
|
|
|
3021
3039
|
}
|
|
3022
3040
|
//#endregion
|
|
3023
3041
|
//#region src/components/fields/NumberField.tsx
|
|
3024
|
-
function
|
|
3042
|
+
function zn(e) {
|
|
3025
3043
|
let t = e.trim();
|
|
3026
3044
|
if (t === "" || t === "-") return t;
|
|
3027
3045
|
let n = t.startsWith("-"), [r, i] = (n ? t.slice(1) : t).split("."), a;
|
|
@@ -3033,8 +3051,8 @@ function Rn(e) {
|
|
|
3033
3051
|
let o = n ? `-${a}` : a;
|
|
3034
3052
|
return i !== void 0 && (o += `.${i}`), o;
|
|
3035
3053
|
}
|
|
3036
|
-
var
|
|
3037
|
-
function
|
|
3054
|
+
var Bn = new Intl.NumberFormat();
|
|
3055
|
+
function Vn({ field: e, fieldName: t, value: n, mode: r, onChange: i, record: a, fieldId: o }) {
|
|
3038
3056
|
let s = e.display?.widget === "money", c = e.type === "decimal" || s, l = a?.$units?.[t], u = !l && e.unit ? e.unit.display || e.unit.storage : void 0, d = l || (u && !u.startsWith("$") ? u : void 0);
|
|
3039
3057
|
if (r === "display") {
|
|
3040
3058
|
if (n == null) return /* @__PURE__ */ V("span", {
|
|
@@ -3045,10 +3063,10 @@ function Bn({ field: e, fieldName: t, value: n, mode: r, onChange: i, record: a,
|
|
|
3045
3063
|
children: "—"
|
|
3046
3064
|
});
|
|
3047
3065
|
let e;
|
|
3048
|
-
if (c && typeof n == "string") e =
|
|
3066
|
+
if (c && typeof n == "string") e = zn(n);
|
|
3049
3067
|
else {
|
|
3050
3068
|
let t = Number(n);
|
|
3051
|
-
e = isNaN(t) ? null :
|
|
3069
|
+
e = isNaN(t) ? null : Bn.format(t);
|
|
3052
3070
|
}
|
|
3053
3071
|
return e == null ? /* @__PURE__ */ V("span", {
|
|
3054
3072
|
style: { fontSize: 12.5 },
|
|
@@ -3093,7 +3111,7 @@ function Bn({ field: e, fieldName: t, value: n, mode: r, onChange: i, record: a,
|
|
|
3093
3111
|
}
|
|
3094
3112
|
//#endregion
|
|
3095
3113
|
//#region src/hooks/useEntityData.ts
|
|
3096
|
-
function
|
|
3114
|
+
function Hn(e, t) {
|
|
3097
3115
|
let n = {
|
|
3098
3116
|
...t,
|
|
3099
3117
|
count: "window"
|
|
@@ -3104,12 +3122,12 @@ function Vn(e, t) {
|
|
|
3104
3122
|
e,
|
|
3105
3123
|
n
|
|
3106
3124
|
],
|
|
3107
|
-
queryFn: ({ signal: t }) =>
|
|
3125
|
+
queryFn: ({ signal: t }) => sn(e, n, { signal: t }),
|
|
3108
3126
|
enabled: !!e,
|
|
3109
3127
|
placeholderData: (t, n) => n?.queryKey?.[1] === e ? t : void 0
|
|
3110
3128
|
});
|
|
3111
3129
|
}
|
|
3112
|
-
function
|
|
3130
|
+
function Un(e, t) {
|
|
3113
3131
|
let n = {
|
|
3114
3132
|
...t,
|
|
3115
3133
|
count: "only",
|
|
@@ -3125,7 +3143,7 @@ function Hn(e, t) {
|
|
|
3125
3143
|
e,
|
|
3126
3144
|
n
|
|
3127
3145
|
],
|
|
3128
|
-
queryFn: ({ signal: t }) =>
|
|
3146
|
+
queryFn: ({ signal: t }) => sn(e, n, { signal: t }),
|
|
3129
3147
|
enabled: !!e,
|
|
3130
3148
|
retry: 1,
|
|
3131
3149
|
staleTime: 3e4,
|
|
@@ -3134,14 +3152,14 @@ function Hn(e, t) {
|
|
|
3134
3152
|
}
|
|
3135
3153
|
//#endregion
|
|
3136
3154
|
//#region src/hooks/useEntity.ts
|
|
3137
|
-
function
|
|
3138
|
-
let { data: t } =
|
|
3155
|
+
function Wn(e) {
|
|
3156
|
+
let { data: t } = Mt();
|
|
3139
3157
|
if (!(!t || !e)) return t.entities[e];
|
|
3140
3158
|
}
|
|
3141
3159
|
//#endregion
|
|
3142
3160
|
//#region src/components/fields/RefField.tsx
|
|
3143
|
-
function
|
|
3144
|
-
let s = e.ref?.entity, c =
|
|
3161
|
+
function Gn({ field: e, value: t, mode: n, onChange: r, refs: i, fieldId: a, labelId: o }) {
|
|
3162
|
+
let s = e.ref?.entity, c = Wn(s), l = e.display?.ref_display_field ?? e.ref?.display?.field ?? c?.display?.display_field, u = I(() => c ? [...c.fields].find(([, e]) => e.primary)?.[0] ?? "id" : "id", [c]), { data: d, isLoading: f } = Hn(n === "edit" ? s : void 0, {
|
|
3145
3163
|
per_page: 200,
|
|
3146
3164
|
sort: l ? `${l}:asc` : void 0
|
|
3147
3165
|
}), p = I(() => d?.data ?? [], [d?.data]), m = I(() => {
|
|
@@ -3151,12 +3169,12 @@ function Wn({ field: e, value: t, mode: n, onChange: r, refs: i, fieldId: a, lab
|
|
|
3151
3169
|
let t = i[s];
|
|
3152
3170
|
if (t) {
|
|
3153
3171
|
let n = t[e];
|
|
3154
|
-
if (n) return
|
|
3172
|
+
if (n) return Ye(n, l, e);
|
|
3155
3173
|
}
|
|
3156
3174
|
}
|
|
3157
3175
|
if (p.length > 0) {
|
|
3158
3176
|
let n = p.find((t) => String(t[u]) === e);
|
|
3159
|
-
if (n) return
|
|
3177
|
+
if (n) return Ye(n, l, String(t));
|
|
3160
3178
|
}
|
|
3161
3179
|
return e;
|
|
3162
3180
|
}, [
|
|
@@ -3188,11 +3206,11 @@ function Wn({ field: e, value: t, mode: n, onChange: r, refs: i, fieldId: a, lab
|
|
|
3188
3206
|
let t = String(e[u]);
|
|
3189
3207
|
return {
|
|
3190
3208
|
value: t,
|
|
3191
|
-
label:
|
|
3209
|
+
label: Ye(e, l, t)
|
|
3192
3210
|
};
|
|
3193
3211
|
})
|
|
3194
3212
|
];
|
|
3195
|
-
return /* @__PURE__ */ V(
|
|
3213
|
+
return /* @__PURE__ */ V(Fe, {
|
|
3196
3214
|
id: a,
|
|
3197
3215
|
"aria-labelledby": o,
|
|
3198
3216
|
"aria-required": e.required || void 0,
|
|
@@ -3204,29 +3222,29 @@ function Wn({ field: e, value: t, mode: n, onChange: r, refs: i, fieldId: a, lab
|
|
|
3204
3222
|
}
|
|
3205
3223
|
//#endregion
|
|
3206
3224
|
//#region src/components/fields/JsonField.tsx
|
|
3207
|
-
var
|
|
3208
|
-
function
|
|
3225
|
+
var Kn = M(() => import("./JsonEditor-CexL5HXN.js").then((e) => ({ default: e.JsonEditor })));
|
|
3226
|
+
function qn() {
|
|
3209
3227
|
return /* @__PURE__ */ V("div", { className: "h-20 rounded-md border border-border bg-muted animate-pulse" });
|
|
3210
3228
|
}
|
|
3211
|
-
function
|
|
3229
|
+
function Jn(e) {
|
|
3212
3230
|
return e == null ? !0 : typeof e == "string" ? e.trim() === "" : Array.isArray(e) ? e.length === 0 : typeof e == "object" ? Object.keys(e).length === 0 : !1;
|
|
3213
3231
|
}
|
|
3214
|
-
function
|
|
3215
|
-
return t === "display" ?
|
|
3232
|
+
function Yn({ value: e, mode: t, onChange: n, fieldId: r }) {
|
|
3233
|
+
return t === "display" ? Jn(e) ? /* @__PURE__ */ V("span", {
|
|
3216
3234
|
style: {
|
|
3217
3235
|
fontSize: 12.5,
|
|
3218
3236
|
color: "var(--text-4)"
|
|
3219
3237
|
},
|
|
3220
3238
|
children: "—"
|
|
3221
3239
|
}) : /* @__PURE__ */ V(A, {
|
|
3222
|
-
fallback: /* @__PURE__ */ V(
|
|
3223
|
-
children: /* @__PURE__ */ V(
|
|
3240
|
+
fallback: /* @__PURE__ */ V(qn, {}),
|
|
3241
|
+
children: /* @__PURE__ */ V(Kn, {
|
|
3224
3242
|
value: e,
|
|
3225
3243
|
readOnly: !0
|
|
3226
3244
|
})
|
|
3227
3245
|
}) : /* @__PURE__ */ V(A, {
|
|
3228
|
-
fallback: /* @__PURE__ */ V(
|
|
3229
|
-
children: /* @__PURE__ */ V(
|
|
3246
|
+
fallback: /* @__PURE__ */ V(qn, {}),
|
|
3247
|
+
children: /* @__PURE__ */ V(Kn, {
|
|
3230
3248
|
value: e,
|
|
3231
3249
|
onChange: n,
|
|
3232
3250
|
id: r
|
|
@@ -3235,14 +3253,14 @@ function Jn({ value: e, mode: t, onChange: n, fieldId: r }) {
|
|
|
3235
3253
|
}
|
|
3236
3254
|
//#endregion
|
|
3237
3255
|
//#region src/components/fields/MultilangField.tsx
|
|
3238
|
-
function
|
|
3256
|
+
function Xn(e) {
|
|
3239
3257
|
return e == null ? {} : typeof e == "object" && !Array.isArray(e) ? e : typeof e == "string" ? { en: e } : {};
|
|
3240
3258
|
}
|
|
3241
|
-
function
|
|
3242
|
-
let { data: o } =
|
|
3259
|
+
function Zn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a }) {
|
|
3260
|
+
let { data: o } = Mt(), s = o?.languages?.length ? o.languages : [{
|
|
3243
3261
|
code: "en",
|
|
3244
3262
|
name: { en: "English" }
|
|
3245
|
-
}], c =
|
|
3263
|
+
}], c = Xn(n);
|
|
3246
3264
|
if (r === "display") return /* @__PURE__ */ V("span", {
|
|
3247
3265
|
style: { fontSize: 12.5 },
|
|
3248
3266
|
children: Object.values(c)[0] ?? "—"
|
|
@@ -3298,14 +3316,14 @@ function Xn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a
|
|
|
3298
3316
|
}
|
|
3299
3317
|
//#endregion
|
|
3300
3318
|
//#region src/components/fields/MultilangTextField.tsx
|
|
3301
|
-
function
|
|
3319
|
+
function Qn(e) {
|
|
3302
3320
|
return e == null ? {} : typeof e == "object" && !Array.isArray(e) ? e : typeof e == "string" ? { en: e } : {};
|
|
3303
3321
|
}
|
|
3304
|
-
function
|
|
3305
|
-
let { data: o } =
|
|
3322
|
+
function $n({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a }) {
|
|
3323
|
+
let { data: o } = Mt(), s = o?.languages?.length ? o.languages : [{
|
|
3306
3324
|
code: "en",
|
|
3307
3325
|
name: { en: "English" }
|
|
3308
|
-
}], c =
|
|
3326
|
+
}], c = Qn(n);
|
|
3309
3327
|
if (r === "display") return /* @__PURE__ */ V("p", {
|
|
3310
3328
|
style: {
|
|
3311
3329
|
fontSize: 12.5,
|
|
@@ -3346,7 +3364,7 @@ function Qn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a
|
|
|
3346
3364
|
fontWeight: 500
|
|
3347
3365
|
},
|
|
3348
3366
|
children: n.code
|
|
3349
|
-
}), /* @__PURE__ */ V(
|
|
3367
|
+
}), /* @__PURE__ */ V(je, {
|
|
3350
3368
|
id: i,
|
|
3351
3369
|
name: t ? `${t}.${n.code}` : void 0,
|
|
3352
3370
|
ariaRequired: e.required && r === 0,
|
|
@@ -3361,25 +3379,25 @@ function Qn({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a
|
|
|
3361
3379
|
}
|
|
3362
3380
|
//#endregion
|
|
3363
3381
|
//#region src/components/fields/StructureField.tsx
|
|
3364
|
-
function
|
|
3365
|
-
let { field: t, value: n, mode: r, onChange: i, locale: a, fieldId: o } = e, { data: s } =
|
|
3366
|
-
return c ? t.array ? /* @__PURE__ */ V(
|
|
3382
|
+
function er(e) {
|
|
3383
|
+
let { field: t, value: n, mode: r, onChange: i, locale: a, fieldId: o } = e, { data: s } = Mt(), c = t.structure ? s?.structures?.[t.structure] : void 0;
|
|
3384
|
+
return c ? t.array ? /* @__PURE__ */ V(nr, {
|
|
3367
3385
|
structDef: c,
|
|
3368
3386
|
value: n,
|
|
3369
3387
|
mode: r,
|
|
3370
3388
|
onChange: i,
|
|
3371
3389
|
locale: a,
|
|
3372
3390
|
fieldId: o
|
|
3373
|
-
}) : /* @__PURE__ */ V(
|
|
3391
|
+
}) : /* @__PURE__ */ V(tr, {
|
|
3374
3392
|
structDef: c,
|
|
3375
3393
|
value: n,
|
|
3376
3394
|
mode: r,
|
|
3377
3395
|
onChange: i,
|
|
3378
3396
|
locale: a,
|
|
3379
3397
|
fieldId: o
|
|
3380
|
-
}) : /* @__PURE__ */ V(
|
|
3398
|
+
}) : /* @__PURE__ */ V(Yn, { ...e });
|
|
3381
3399
|
}
|
|
3382
|
-
function
|
|
3400
|
+
function tr({ structDef: e, value: t, mode: n, onChange: r, locale: i, fieldId: a }) {
|
|
3383
3401
|
let o = typeof t == "object" && t && !Array.isArray(t) ? t : {}, s = e.fields.names(), c = {
|
|
3384
3402
|
display: "flex",
|
|
3385
3403
|
flexDirection: "column",
|
|
@@ -3415,13 +3433,13 @@ function er({ structDef: e, value: t, mode: n, onChange: r, locale: i, fieldId:
|
|
|
3415
3433
|
minWidth: 0,
|
|
3416
3434
|
flex: 1
|
|
3417
3435
|
},
|
|
3418
|
-
children: n.type === "structure" && n.structure ? /* @__PURE__ */ V(
|
|
3436
|
+
children: n.type === "structure" && n.structure ? /* @__PURE__ */ V(er, {
|
|
3419
3437
|
field: n,
|
|
3420
3438
|
fieldName: t,
|
|
3421
3439
|
value: r,
|
|
3422
3440
|
mode: "display",
|
|
3423
3441
|
locale: i
|
|
3424
|
-
}) :
|
|
3442
|
+
}) : Ga({
|
|
3425
3443
|
field: n,
|
|
3426
3444
|
fieldName: t,
|
|
3427
3445
|
value: r,
|
|
@@ -3456,17 +3474,17 @@ function er({ structDef: e, value: t, mode: n, onChange: r, locale: i, fieldId:
|
|
|
3456
3474
|
flexDirection: "column",
|
|
3457
3475
|
gap: 2
|
|
3458
3476
|
},
|
|
3459
|
-
children: [/* @__PURE__ */ V(
|
|
3477
|
+
children: [/* @__PURE__ */ V(ke, {
|
|
3460
3478
|
required: n.required,
|
|
3461
3479
|
children: n.display ? Q(n.display.name) : t
|
|
3462
|
-
}), n.type === "structure" && n.structure ? /* @__PURE__ */ V(
|
|
3480
|
+
}), n.type === "structure" && n.structure ? /* @__PURE__ */ V(er, {
|
|
3463
3481
|
field: n,
|
|
3464
3482
|
fieldName: t,
|
|
3465
3483
|
value: o[t],
|
|
3466
3484
|
mode: "edit",
|
|
3467
3485
|
onChange: l(t),
|
|
3468
3486
|
locale: i
|
|
3469
|
-
}) :
|
|
3487
|
+
}) : Ga({
|
|
3470
3488
|
field: n,
|
|
3471
3489
|
fieldName: t,
|
|
3472
3490
|
value: o[t],
|
|
@@ -3478,7 +3496,7 @@ function er({ structDef: e, value: t, mode: n, onChange: r, locale: i, fieldId:
|
|
|
3478
3496
|
})
|
|
3479
3497
|
});
|
|
3480
3498
|
}
|
|
3481
|
-
function
|
|
3499
|
+
function nr({ structDef: e, value: t, mode: n, onChange: r, locale: i, fieldId: a }) {
|
|
3482
3500
|
let o = Array.isArray(t) ? t : [];
|
|
3483
3501
|
if (n === "display") return o.length === 0 ? /* @__PURE__ */ V("span", {
|
|
3484
3502
|
style: {
|
|
@@ -3492,7 +3510,7 @@ function tr({ structDef: e, value: t, mode: n, onChange: r, locale: i, fieldId:
|
|
|
3492
3510
|
flexDirection: "column",
|
|
3493
3511
|
gap: 8
|
|
3494
3512
|
},
|
|
3495
|
-
children: o.map((t, n) => /* @__PURE__ */ V(
|
|
3513
|
+
children: o.map((t, n) => /* @__PURE__ */ V(tr, {
|
|
3496
3514
|
structDef: e,
|
|
3497
3515
|
value: t,
|
|
3498
3516
|
mode: "display",
|
|
@@ -3518,7 +3536,7 @@ function tr({ structDef: e, value: t, mode: n, onChange: r, locale: i, fieldId:
|
|
|
3518
3536
|
role: "group",
|
|
3519
3537
|
children: [o.map((t, n) => /* @__PURE__ */ H("div", {
|
|
3520
3538
|
style: { position: "relative" },
|
|
3521
|
-
children: [/* @__PURE__ */ V(
|
|
3539
|
+
children: [/* @__PURE__ */ V(tr, {
|
|
3522
3540
|
structDef: e,
|
|
3523
3541
|
value: t,
|
|
3524
3542
|
mode: "edit",
|
|
@@ -3546,16 +3564,16 @@ function tr({ structDef: e, value: t, mode: n, onChange: r, locale: i, fieldId:
|
|
|
3546
3564
|
}
|
|
3547
3565
|
//#endregion
|
|
3548
3566
|
//#region src/components/fields/SecretField.tsx
|
|
3549
|
-
var
|
|
3550
|
-
function
|
|
3551
|
-
let [s, c] = R(""), l = a !== void 0, u = n ===
|
|
3567
|
+
var rr = "[SET]";
|
|
3568
|
+
function ir({ field: e, fieldName: t, value: n, mode: r, onChange: i, record: a, fieldId: o }) {
|
|
3569
|
+
let [s, c] = R(""), l = a !== void 0, u = n === rr || typeof n == "string" && n !== "";
|
|
3552
3570
|
return r === "display" ? u ? /* @__PURE__ */ V("span", {
|
|
3553
3571
|
className: "mono",
|
|
3554
3572
|
style: {
|
|
3555
3573
|
fontSize: 12.5,
|
|
3556
3574
|
color: "var(--text-3)"
|
|
3557
3575
|
},
|
|
3558
|
-
children:
|
|
3576
|
+
children: rr
|
|
3559
3577
|
}) : /* @__PURE__ */ V("span", {
|
|
3560
3578
|
style: {
|
|
3561
3579
|
fontSize: 12.5,
|
|
@@ -3563,29 +3581,29 @@ function rr({ field: e, fieldName: t, value: n, mode: r, onChange: i, record: a,
|
|
|
3563
3581
|
fontStyle: "italic"
|
|
3564
3582
|
},
|
|
3565
3583
|
children: "Not set"
|
|
3566
|
-
}) : /* @__PURE__ */ V(
|
|
3584
|
+
}) : /* @__PURE__ */ V(Be, {
|
|
3567
3585
|
id: o,
|
|
3568
3586
|
name: t,
|
|
3569
3587
|
ariaRequired: e.required,
|
|
3570
3588
|
value: s,
|
|
3571
3589
|
onChange: (e) => {
|
|
3572
|
-
c(e), l && e === "" ? i?.(u ?
|
|
3590
|
+
c(e), l && e === "" ? i?.(u ? rr : "") : i?.(e);
|
|
3573
3591
|
},
|
|
3574
3592
|
placeholder: l ? "Leave blank to keep existing value" : "Enter value"
|
|
3575
3593
|
});
|
|
3576
3594
|
}
|
|
3577
3595
|
//#endregion
|
|
3578
3596
|
//#region src/components/fields/PasswordField.tsx
|
|
3579
|
-
var
|
|
3580
|
-
function
|
|
3581
|
-
let [s, c] = R(""), l = a !== void 0, u = n ===
|
|
3597
|
+
var ar = "[SET]";
|
|
3598
|
+
function or({ field: e, fieldName: t, value: n, mode: r, onChange: i, record: a, fieldId: o }) {
|
|
3599
|
+
let [s, c] = R(""), l = a !== void 0, u = n === ar || typeof n == "string" && n !== "";
|
|
3582
3600
|
return r === "display" ? u ? /* @__PURE__ */ V("span", {
|
|
3583
3601
|
className: "mono",
|
|
3584
3602
|
style: {
|
|
3585
3603
|
fontSize: 12.5,
|
|
3586
3604
|
color: "var(--text-3)"
|
|
3587
3605
|
},
|
|
3588
|
-
children:
|
|
3606
|
+
children: ar
|
|
3589
3607
|
}) : /* @__PURE__ */ V("span", {
|
|
3590
3608
|
style: {
|
|
3591
3609
|
fontSize: 12.5,
|
|
@@ -3593,24 +3611,24 @@ function ar({ field: e, fieldName: t, value: n, mode: r, onChange: i, record: a,
|
|
|
3593
3611
|
fontStyle: "italic"
|
|
3594
3612
|
},
|
|
3595
3613
|
children: "Not set"
|
|
3596
|
-
}) : /* @__PURE__ */ V(
|
|
3614
|
+
}) : /* @__PURE__ */ V(Be, {
|
|
3597
3615
|
id: o,
|
|
3598
3616
|
name: t,
|
|
3599
3617
|
ariaRequired: e.required,
|
|
3600
3618
|
value: s,
|
|
3601
3619
|
onChange: (e) => {
|
|
3602
|
-
c(e), l && e === "" ? i?.(u ?
|
|
3620
|
+
c(e), l && e === "" ? i?.(u ? ar : "") : i?.(e);
|
|
3603
3621
|
},
|
|
3604
3622
|
placeholder: l ? "Leave blank to keep existing value" : "Enter password"
|
|
3605
3623
|
});
|
|
3606
3624
|
}
|
|
3607
3625
|
//#endregion
|
|
3608
3626
|
//#region src/components/fields/StringArrayField.tsx
|
|
3609
|
-
function
|
|
3627
|
+
function sr(e) {
|
|
3610
3628
|
return Array.isArray(e) ? e.filter((e) => e != null).map(String) : [];
|
|
3611
3629
|
}
|
|
3612
|
-
function
|
|
3613
|
-
let o =
|
|
3630
|
+
function cr({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a }) {
|
|
3631
|
+
let o = sr(n), [s, c] = R("");
|
|
3614
3632
|
if (r === "display") return o.length === 0 ? /* @__PURE__ */ V("span", {
|
|
3615
3633
|
style: {
|
|
3616
3634
|
fontSize: 12.5,
|
|
@@ -3679,11 +3697,11 @@ function sr({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a
|
|
|
3679
3697
|
}
|
|
3680
3698
|
//#endregion
|
|
3681
3699
|
//#region src/components/fields/IntArrayField.tsx
|
|
3682
|
-
function
|
|
3700
|
+
function lr(e) {
|
|
3683
3701
|
return Array.isArray(e) ? e.filter((e) => e != null).map(Number).filter((e) => !isNaN(e)) : [];
|
|
3684
3702
|
}
|
|
3685
|
-
function
|
|
3686
|
-
let o =
|
|
3703
|
+
function ur({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a }) {
|
|
3704
|
+
let o = lr(n), [s, c] = R("");
|
|
3687
3705
|
if (r === "display") return o.length === 0 ? /* @__PURE__ */ V("span", {
|
|
3688
3706
|
style: {
|
|
3689
3707
|
fontSize: 12.5,
|
|
@@ -3755,38 +3773,38 @@ function lr({ field: e, fieldName: t, value: n, mode: r, onChange: i, fieldId: a
|
|
|
3755
3773
|
}
|
|
3756
3774
|
//#endregion
|
|
3757
3775
|
//#region src/components/file-widgets/registry.ts
|
|
3758
|
-
var
|
|
3759
|
-
function
|
|
3760
|
-
|
|
3761
|
-
}
|
|
3762
|
-
function fr(e) {
|
|
3763
|
-
return ur.get(e);
|
|
3776
|
+
var dr = /* @__PURE__ */ new Map();
|
|
3777
|
+
function fr(e, t) {
|
|
3778
|
+
dr.set(e, t);
|
|
3764
3779
|
}
|
|
3765
3780
|
function pr(e) {
|
|
3766
|
-
return
|
|
3781
|
+
return dr.get(e);
|
|
3782
|
+
}
|
|
3783
|
+
function mr(e) {
|
|
3784
|
+
return dr.has(e);
|
|
3767
3785
|
}
|
|
3768
3786
|
//#endregion
|
|
3769
3787
|
//#region src/components/file-widgets/cropper.ts
|
|
3770
|
-
var
|
|
3788
|
+
var hr = async ({ file: e }) => ({
|
|
3771
3789
|
blob: e,
|
|
3772
3790
|
filename: e.name
|
|
3773
|
-
}),
|
|
3774
|
-
function
|
|
3775
|
-
|
|
3791
|
+
}), gr = hr;
|
|
3792
|
+
function _r(e) {
|
|
3793
|
+
gr = e ?? hr;
|
|
3776
3794
|
}
|
|
3777
|
-
function
|
|
3778
|
-
return
|
|
3795
|
+
function vr() {
|
|
3796
|
+
return gr;
|
|
3779
3797
|
}
|
|
3780
3798
|
//#endregion
|
|
3781
3799
|
//#region src/components/file-widgets/ImageWidget.tsx
|
|
3782
|
-
function
|
|
3800
|
+
function yr(e, t) {
|
|
3783
3801
|
return s(e, t);
|
|
3784
3802
|
}
|
|
3785
|
-
function
|
|
3803
|
+
function br(e) {
|
|
3786
3804
|
let t = e.trim().split(/\s+/).filter(Boolean);
|
|
3787
3805
|
return t.length === 0 ? "?" : t.length === 1 ? t[0].slice(0, 2).toUpperCase() : (t[0][0] + t[1][0]).toUpperCase();
|
|
3788
3806
|
}
|
|
3789
|
-
function
|
|
3807
|
+
function xr(e) {
|
|
3790
3808
|
let { field: t, fieldName: n, value: r, onChange: o, mode: s, alt: f, disabled: p, visual: _, uploadFieldCode: v, uploadSlotCode: y } = e, S = h(r), [C, w] = R("idle"), [T, E] = R(null), [D, O] = R(null), [k, A] = R(null), [j, M] = R(!1), F = L(null), z = L(!1), B = L(null), { register: U, unregister: W, isDraft: te } = g();
|
|
3791
3809
|
P(() => () => {
|
|
3792
3810
|
F.current && F.current.abort();
|
|
@@ -3804,9 +3822,9 @@ function br(e) {
|
|
|
3804
3822
|
}
|
|
3805
3823
|
let c = r;
|
|
3806
3824
|
if (t.display?.crop_on_upload) try {
|
|
3807
|
-
let { blob: e, filename: n } = await
|
|
3825
|
+
let { blob: e, filename: n } = await vr()({
|
|
3808
3826
|
file: r,
|
|
3809
|
-
aspectRatio:
|
|
3827
|
+
aspectRatio: Tr(t.display.aspect_ratio)
|
|
3810
3828
|
});
|
|
3811
3829
|
c = new File([e], n, { type: e.type || r.type });
|
|
3812
3830
|
} catch (e) {
|
|
@@ -3904,10 +3922,10 @@ function br(e) {
|
|
|
3904
3922
|
}, [p, re]), oe = N((e) => {
|
|
3905
3923
|
let t = e.target.files?.[0];
|
|
3906
3924
|
e.target.value = "", t && re(t);
|
|
3907
|
-
}, [re]), se = _.aspectRatio ??
|
|
3925
|
+
}, [re]), se = _.aspectRatio ?? wr(_.shape, t.display?.aspect_ratio), ce = m(S), le = {
|
|
3908
3926
|
aspectRatio: se,
|
|
3909
3927
|
width: _.width ?? (_.shape === "wide" ? "100%" : "120px")
|
|
3910
|
-
}, ue = !!S, de =
|
|
3928
|
+
}, ue = !!S, de = yr(S, t.display?.listable_thumbnail), fe = c(S, t.display?.listable_thumbnail), pe = d(S?.id, fe, de), me = s === "display", he = N((e) => {
|
|
3911
3929
|
e.stopPropagation(), M((e) => !e);
|
|
3912
3930
|
}, []), ge = N((e) => {
|
|
3913
3931
|
if (!S || !j) return;
|
|
@@ -3923,22 +3941,22 @@ function br(e) {
|
|
|
3923
3941
|
o
|
|
3924
3942
|
]);
|
|
3925
3943
|
return me ? /* @__PURE__ */ V("div", {
|
|
3926
|
-
className:
|
|
3944
|
+
className: Sr(_.shape, !1),
|
|
3927
3945
|
style: le,
|
|
3928
3946
|
"aria-label": G,
|
|
3929
3947
|
children: ue && pe ? /* @__PURE__ */ V("img", {
|
|
3930
3948
|
src: pe,
|
|
3931
3949
|
alt: G,
|
|
3932
|
-
className:
|
|
3950
|
+
className: Cr(_.shape),
|
|
3933
3951
|
style: { objectPosition: b(ce) },
|
|
3934
3952
|
loading: "lazy"
|
|
3935
|
-
}) : /* @__PURE__ */ V(
|
|
3953
|
+
}) : /* @__PURE__ */ V(Er, {
|
|
3936
3954
|
shape: _.shape,
|
|
3937
3955
|
label: G,
|
|
3938
3956
|
placeholder: t.display?.placeholder
|
|
3939
3957
|
})
|
|
3940
3958
|
}) : /* @__PURE__ */ H("div", {
|
|
3941
|
-
className:
|
|
3959
|
+
className: Sr(_.shape, !p),
|
|
3942
3960
|
style: le,
|
|
3943
3961
|
tabIndex: p ? -1 : 0,
|
|
3944
3962
|
role: "button",
|
|
@@ -3964,15 +3982,15 @@ function br(e) {
|
|
|
3964
3982
|
ue && pe ? /* @__PURE__ */ V("img", {
|
|
3965
3983
|
src: pe,
|
|
3966
3984
|
alt: G,
|
|
3967
|
-
className:
|
|
3985
|
+
className: Cr(_.shape),
|
|
3968
3986
|
style: { objectPosition: b(ce) },
|
|
3969
3987
|
loading: "lazy"
|
|
3970
|
-
}) : C === "uploading" ? null : /* @__PURE__ */ V(
|
|
3988
|
+
}) : C === "uploading" ? null : /* @__PURE__ */ V(Er, {
|
|
3971
3989
|
shape: _.shape,
|
|
3972
3990
|
label: G,
|
|
3973
3991
|
placeholder: t.display?.placeholder
|
|
3974
3992
|
}),
|
|
3975
|
-
C === "uploading" && /* @__PURE__ */ V(
|
|
3993
|
+
C === "uploading" && /* @__PURE__ */ V(Dr, { pct: T?.pct ?? 0 }),
|
|
3976
3994
|
k && /* @__PURE__ */ V("span", {
|
|
3977
3995
|
className: "absolute right-1 top-1 h-2 w-2 rounded-full bg-warning",
|
|
3978
3996
|
"aria-hidden": "true",
|
|
@@ -4043,32 +4061,32 @@ function br(e) {
|
|
|
4043
4061
|
]
|
|
4044
4062
|
});
|
|
4045
4063
|
}
|
|
4046
|
-
function
|
|
4064
|
+
function Sr(e, t) {
|
|
4047
4065
|
return [
|
|
4048
4066
|
"relative overflow-hidden border border-border bg-surface-2",
|
|
4049
4067
|
e === "circle" ? "rounded-full" : "rounded-md",
|
|
4050
4068
|
t ? "cursor-pointer focus-visible:outline focus-visible:outline-2 focus-visible:outline-accent" : ""
|
|
4051
4069
|
].filter(Boolean).join(" ");
|
|
4052
4070
|
}
|
|
4053
|
-
function
|
|
4071
|
+
function Cr(e) {
|
|
4054
4072
|
return "h-full w-full object-cover";
|
|
4055
4073
|
}
|
|
4056
|
-
function
|
|
4074
|
+
function wr(e, t) {
|
|
4057
4075
|
return t ? t.replace(":", " / ") : e === "wide" ? "16 / 9" : "1 / 1";
|
|
4058
4076
|
}
|
|
4059
|
-
function
|
|
4077
|
+
function Tr(e) {
|
|
4060
4078
|
if (!e) return;
|
|
4061
4079
|
let t = e.replace(/\s/g, "").match(/^(\d+(?:\.\d+)?)[:/](\d+(?:\.\d+)?)$/);
|
|
4062
4080
|
if (!t) return;
|
|
4063
4081
|
let n = Number(t[1]), r = Number(t[2]);
|
|
4064
4082
|
if (!(!n || !r)) return n / r;
|
|
4065
4083
|
}
|
|
4066
|
-
function
|
|
4084
|
+
function Er({ shape: e, label: t, placeholder: n }) {
|
|
4067
4085
|
return n === "initials" ? /* @__PURE__ */ V("div", {
|
|
4068
4086
|
className: "flex h-full w-full items-center justify-center bg-surface-3 text-text-3",
|
|
4069
4087
|
children: /* @__PURE__ */ V("span", {
|
|
4070
4088
|
className: e === "circle" ? "text-lg font-medium" : "text-base font-medium",
|
|
4071
|
-
children:
|
|
4089
|
+
children: br(t)
|
|
4072
4090
|
})
|
|
4073
4091
|
}) : /* @__PURE__ */ V("div", {
|
|
4074
4092
|
className: "flex h-full w-full items-center justify-center bg-surface-3 text-text-4",
|
|
@@ -4078,7 +4096,7 @@ function Tr({ shape: e, label: t, placeholder: n }) {
|
|
|
4078
4096
|
})
|
|
4079
4097
|
});
|
|
4080
4098
|
}
|
|
4081
|
-
function
|
|
4099
|
+
function Dr({ pct: e }) {
|
|
4082
4100
|
let t = 2 * Math.PI * 18, n = t - Math.max(0, Math.min(100, e)) / 100 * t;
|
|
4083
4101
|
return /* @__PURE__ */ H("div", {
|
|
4084
4102
|
className: "absolute inset-0 flex items-center justify-center bg-black/30",
|
|
@@ -4122,49 +4140,49 @@ function Er({ pct: e }) {
|
|
|
4122
4140
|
}
|
|
4123
4141
|
//#endregion
|
|
4124
4142
|
//#region src/components/file-widgets/SquareImage.tsx
|
|
4125
|
-
function
|
|
4126
|
-
return /* @__PURE__ */ V(
|
|
4143
|
+
function Or(e) {
|
|
4144
|
+
return /* @__PURE__ */ V(xr, {
|
|
4127
4145
|
...e,
|
|
4128
4146
|
visual: { shape: "square" }
|
|
4129
4147
|
});
|
|
4130
4148
|
}
|
|
4131
4149
|
//#endregion
|
|
4132
4150
|
//#region src/components/file-widgets/CircleImage.tsx
|
|
4133
|
-
function
|
|
4134
|
-
return /* @__PURE__ */ V(
|
|
4151
|
+
function kr(e) {
|
|
4152
|
+
return /* @__PURE__ */ V(xr, {
|
|
4135
4153
|
...e,
|
|
4136
4154
|
visual: { shape: "circle" }
|
|
4137
4155
|
});
|
|
4138
4156
|
}
|
|
4139
4157
|
//#endregion
|
|
4140
4158
|
//#region src/components/file-widgets/WideBanner.tsx
|
|
4141
|
-
function
|
|
4142
|
-
return /* @__PURE__ */ V(
|
|
4159
|
+
function Ar(e) {
|
|
4160
|
+
return /* @__PURE__ */ V(xr, {
|
|
4143
4161
|
...e,
|
|
4144
4162
|
visual: { shape: "wide" }
|
|
4145
4163
|
});
|
|
4146
4164
|
}
|
|
4147
4165
|
//#endregion
|
|
4148
4166
|
//#region src/components/file-widgets/GridLazy.tsx
|
|
4149
|
-
var
|
|
4150
|
-
function
|
|
4167
|
+
var jr = M(() => import("./Grid-POpRhlPk.js").then((e) => ({ default: e.Grid })));
|
|
4168
|
+
function Mr() {
|
|
4151
4169
|
return /* @__PURE__ */ V("div", { className: "h-24 w-full rounded-md bg-muted animate-pulse" });
|
|
4152
4170
|
}
|
|
4153
|
-
function
|
|
4171
|
+
function Nr(e) {
|
|
4154
4172
|
return /* @__PURE__ */ V(A, {
|
|
4155
|
-
fallback: /* @__PURE__ */ V(
|
|
4156
|
-
children: /* @__PURE__ */ V(
|
|
4173
|
+
fallback: /* @__PURE__ */ V(Mr, {}),
|
|
4174
|
+
children: /* @__PURE__ */ V(jr, { ...e })
|
|
4157
4175
|
});
|
|
4158
4176
|
}
|
|
4159
4177
|
//#endregion
|
|
4160
4178
|
//#region src/components/file-widgets/DocumentCard.tsx
|
|
4161
|
-
function
|
|
4179
|
+
function Pr({ contentType: e }) {
|
|
4162
4180
|
return /* @__PURE__ */ V("div", {
|
|
4163
4181
|
className: "flex h-16 w-16 flex-none items-center justify-center rounded-md border border-border bg-surface-3 text-xs font-medium text-muted-foreground",
|
|
4164
4182
|
children: e ? e.includes("pdf") ? "PDF" : e.includes("word") ? "DOC" : e.includes("sheet") || e.includes("excel") ? "XLS" : e.startsWith("image/") ? "IMG" : e.split("/")[1]?.slice(0, 4).toUpperCase() ?? "FILE" : "FILE"
|
|
4165
4183
|
});
|
|
4166
4184
|
}
|
|
4167
|
-
function
|
|
4185
|
+
function Fr(e) {
|
|
4168
4186
|
let { field: t, fieldName: n, value: r, onChange: s, mode: c, disabled: l, uploadFieldCode: u, uploadSlotCode: d } = e, f = h(r), [m, y] = R("idle"), [b, S] = R(null), [w, T] = R(null), [E, D] = R(!1), [O, k] = R(f?.filename ?? ""), A = L(null), j = L(!1), M = L(null), { register: F, unregister: I, isDraft: z } = g(), { open: U } = v();
|
|
4169
4187
|
P(() => () => {
|
|
4170
4188
|
A.current && A.current.abort();
|
|
@@ -4277,7 +4295,7 @@ function Pr(e) {
|
|
|
4277
4295
|
"data-testid": `file-widget-${n}`,
|
|
4278
4296
|
className: "flex items-center gap-3 rounded-md border border-dashed border-border bg-surface p-3",
|
|
4279
4297
|
children: [
|
|
4280
|
-
/* @__PURE__ */ V(
|
|
4298
|
+
/* @__PURE__ */ V(Pr, {}),
|
|
4281
4299
|
/* @__PURE__ */ H("div", {
|
|
4282
4300
|
className: "flex flex-col gap-1",
|
|
4283
4301
|
children: [/* @__PURE__ */ V("span", {
|
|
@@ -4312,7 +4330,7 @@ function Pr(e) {
|
|
|
4312
4330
|
"aria-busy": m === "uploading" || void 0,
|
|
4313
4331
|
"aria-invalid": m === "error" || void 0,
|
|
4314
4332
|
children: [
|
|
4315
|
-
/* @__PURE__ */ V(
|
|
4333
|
+
/* @__PURE__ */ V(Pr, { contentType: f?.content_type }),
|
|
4316
4334
|
/* @__PURE__ */ H("div", {
|
|
4317
4335
|
className: "flex min-w-0 flex-1 flex-col gap-1",
|
|
4318
4336
|
children: [
|
|
@@ -4341,7 +4359,7 @@ function Pr(e) {
|
|
|
4341
4359
|
children: [
|
|
4342
4360
|
f && /* @__PURE__ */ V("span", { children: C(f.size_bytes) }),
|
|
4343
4361
|
f?.page_count != null && /* @__PURE__ */ H("span", { children: [f.page_count, " pages"] }),
|
|
4344
|
-
f?.uploaded_at && /* @__PURE__ */ V("span", { children:
|
|
4362
|
+
f?.uploaded_at && /* @__PURE__ */ V("span", { children: Ir(f.uploaded_at) }),
|
|
4345
4363
|
f?.uploaded_by && /* @__PURE__ */ H("span", { children: ["by ", f.uploaded_by] }),
|
|
4346
4364
|
f?.version?.number != null && /* @__PURE__ */ H("span", {
|
|
4347
4365
|
"data-testid": "version-badge",
|
|
@@ -4422,16 +4440,16 @@ function Pr(e) {
|
|
|
4422
4440
|
]
|
|
4423
4441
|
});
|
|
4424
4442
|
}
|
|
4425
|
-
function
|
|
4443
|
+
function Ir(e) {
|
|
4426
4444
|
let t = new Date(e);
|
|
4427
4445
|
return isNaN(t.getTime()) ? e : t.toISOString().slice(0, 10);
|
|
4428
4446
|
}
|
|
4429
4447
|
//#endregion
|
|
4430
4448
|
//#region src/components/file-widgets/FileList.tsx
|
|
4431
|
-
function
|
|
4449
|
+
function Lr(e) {
|
|
4432
4450
|
return e ? (e.split("/")[1] ?? e).toUpperCase().slice(0, 6) : "";
|
|
4433
4451
|
}
|
|
4434
|
-
function
|
|
4452
|
+
function Rr(e) {
|
|
4435
4453
|
let { field: t, fieldName: n, value: r, onChange: o, mode: s, disabled: c } = e, l = y(r), [u, d] = R([]), { register: f, unregister: m, isDraft: h } = g(), _ = L(l);
|
|
4436
4454
|
_.current = l;
|
|
4437
4455
|
let b = L(null), S = L(/* @__PURE__ */ new Set()), w = L([]);
|
|
@@ -4551,7 +4569,7 @@ function Lr(e) {
|
|
|
4551
4569
|
children: [
|
|
4552
4570
|
/* @__PURE__ */ V("span", {
|
|
4553
4571
|
className: "flex-none rounded-sm border border-border bg-surface-3 px-1.5 py-0.5 text-[10px] text-muted-foreground",
|
|
4554
|
-
children:
|
|
4572
|
+
children: Lr(e.content_type)
|
|
4555
4573
|
}),
|
|
4556
4574
|
/* @__PURE__ */ V("button", {
|
|
4557
4575
|
type: "button",
|
|
@@ -4636,16 +4654,16 @@ function Lr(e) {
|
|
|
4636
4654
|
}
|
|
4637
4655
|
//#endregion
|
|
4638
4656
|
//#region src/components/file-widgets/LabeledSlots.tsx
|
|
4639
|
-
function
|
|
4657
|
+
function zr(e) {
|
|
4640
4658
|
return !e || Array.isArray(e) || typeof e != "object" ? {} : e;
|
|
4641
4659
|
}
|
|
4642
|
-
function
|
|
4660
|
+
function Br(e) {
|
|
4643
4661
|
return e.split("_").filter(Boolean).map((e) => e.slice(0, 1).toUpperCase() + e.slice(1)).join(" ");
|
|
4644
4662
|
}
|
|
4645
|
-
function
|
|
4663
|
+
function Vr(e, t) {
|
|
4646
4664
|
return t?.content_type?.startsWith("image/") ? !0 : (e?.accepts ?? []).some((e) => e === "image/*" || e.startsWith("image/"));
|
|
4647
4665
|
}
|
|
4648
|
-
function
|
|
4666
|
+
function Hr(e, t, n, r) {
|
|
4649
4667
|
return {
|
|
4650
4668
|
...e,
|
|
4651
4669
|
name: `${e.name}.${t}`,
|
|
@@ -4655,14 +4673,14 @@ function Vr(e, t, n, r) {
|
|
|
4655
4673
|
slots: void 0,
|
|
4656
4674
|
display: {
|
|
4657
4675
|
...e.display ?? { widget: "document_card" },
|
|
4658
|
-
widget:
|
|
4676
|
+
widget: Vr(n, r) ? "square_image" : "document_card",
|
|
4659
4677
|
aspect_ratio: n?.aspect_ratio ?? e.display?.aspect_ratio,
|
|
4660
|
-
placeholder: e.display?.placeholder ??
|
|
4678
|
+
placeholder: e.display?.placeholder ?? Br(t)
|
|
4661
4679
|
}
|
|
4662
4680
|
};
|
|
4663
4681
|
}
|
|
4664
|
-
function
|
|
4665
|
-
let { field: t, fieldName: n, entityCode: r, value: i, onChange: a, mode: o, disabled: s } = e, c = Object.entries(t.slots ?? {}), l =
|
|
4682
|
+
function Ur(e) {
|
|
4683
|
+
let { field: t, fieldName: n, entityCode: r, value: i, onChange: a, mode: o, disabled: s } = e, c = Object.entries(t.slots ?? {}), l = zr(i);
|
|
4666
4684
|
return c.length === 0 ? /* @__PURE__ */ V("span", {
|
|
4667
4685
|
className: "text-sm text-muted-foreground",
|
|
4668
4686
|
children: "No slots configured"
|
|
@@ -4672,7 +4690,7 @@ function Hr(e) {
|
|
|
4672
4690
|
gap: 12
|
|
4673
4691
|
},
|
|
4674
4692
|
children: c.map(([e, i]) => {
|
|
4675
|
-
let c = l[e] ?? null, u =
|
|
4693
|
+
let c = l[e] ?? null, u = Hr(t, e, i, c), d = u.display?.widget ?? "document_card", f = pr(d);
|
|
4676
4694
|
return f ? /* @__PURE__ */ H("div", {
|
|
4677
4695
|
style: {
|
|
4678
4696
|
display: "grid",
|
|
@@ -4684,7 +4702,7 @@ function Hr(e) {
|
|
|
4684
4702
|
fontWeight: 600,
|
|
4685
4703
|
color: "var(--text-2)"
|
|
4686
4704
|
},
|
|
4687
|
-
children:
|
|
4705
|
+
children: Br(e)
|
|
4688
4706
|
}), /* @__PURE__ */ V(f, {
|
|
4689
4707
|
field: u,
|
|
4690
4708
|
fieldName: e,
|
|
@@ -4712,7 +4730,7 @@ function Hr(e) {
|
|
|
4712
4730
|
fontWeight: 600,
|
|
4713
4731
|
color: "var(--text-2)"
|
|
4714
4732
|
},
|
|
4715
|
-
children:
|
|
4733
|
+
children: Br(e)
|
|
4716
4734
|
}), /* @__PURE__ */ V("span", {
|
|
4717
4735
|
className: "text-sm text-muted-foreground",
|
|
4718
4736
|
children: `Unknown file widget: ${d}`
|
|
@@ -4723,43 +4741,43 @@ function Hr(e) {
|
|
|
4723
4741
|
}
|
|
4724
4742
|
//#endregion
|
|
4725
4743
|
//#region src/components/file-widgets/builtins.ts
|
|
4726
|
-
var
|
|
4727
|
-
function
|
|
4728
|
-
|
|
4744
|
+
var Wr = !1;
|
|
4745
|
+
function Gr() {
|
|
4746
|
+
Wr ||= (fr("square_image", Or), fr("circle_image", kr), fr("wide_banner", Ar), fr("grid", Nr), fr("document_card", Fr), fr("file_list", Rr), fr("labeled_slots", Ur), !0);
|
|
4729
4747
|
}
|
|
4730
4748
|
//#endregion
|
|
4731
4749
|
//#region src/components/file-widgets/host.tsx
|
|
4732
|
-
|
|
4733
|
-
function
|
|
4750
|
+
Gr();
|
|
4751
|
+
function Kr(e, t) {
|
|
4734
4752
|
return e.files?.get(t);
|
|
4735
4753
|
}
|
|
4736
|
-
function
|
|
4754
|
+
function qr(e, t) {
|
|
4737
4755
|
return Object.prototype.hasOwnProperty.call(e, t) ? e[t] ?? null : e.$files?.[t] ?? null;
|
|
4738
4756
|
}
|
|
4739
|
-
function
|
|
4740
|
-
if (
|
|
4757
|
+
function Jr(e, t, n) {
|
|
4758
|
+
if (Kr(e, n)) return qr(t, n);
|
|
4741
4759
|
let r = e.fields.get(n);
|
|
4742
|
-
return r?.type === "rich_text" && r.files?.mode === "rich_text_inline" ? k(t[n],
|
|
4760
|
+
return r?.type === "rich_text" && r.files?.mode === "rich_text_inline" ? k(t[n], qr(t, n)) : t[n];
|
|
4743
4761
|
}
|
|
4744
|
-
function
|
|
4762
|
+
function Yr(e, t, n) {
|
|
4745
4763
|
let r = e.fields.get(t);
|
|
4746
4764
|
return r?.type === "rich_text" && r.files?.mode === "rich_text_inline" ? T(n) : n;
|
|
4747
4765
|
}
|
|
4748
|
-
function
|
|
4749
|
-
let r =
|
|
4766
|
+
function Xr(e, t, n) {
|
|
4767
|
+
let r = Kr(e, t);
|
|
4750
4768
|
if (r) return r.name || t;
|
|
4751
4769
|
let i = e.fields.get(t);
|
|
4752
|
-
return i ?
|
|
4770
|
+
return i ? $e(i, t, n) : t;
|
|
4753
4771
|
}
|
|
4754
|
-
function
|
|
4755
|
-
let { entity: t, entityCode: n, fieldName: r, record: i, mode: a, onChange: o, refs: s, disabled: c, surface: l, entities: u, screens: d, navigate: f, locale: p, fieldId: m, labelId: h } = e, g =
|
|
4772
|
+
function Zr(e) {
|
|
4773
|
+
let { entity: t, entityCode: n, fieldName: r, record: i, mode: a, onChange: o, refs: s, disabled: c, surface: l, entities: u, screens: d, navigate: f, locale: p, fieldId: m, labelId: h } = e, g = Kr(t, r);
|
|
4756
4774
|
if (g) {
|
|
4757
|
-
let e = g.display?.widget ?? "", t =
|
|
4775
|
+
let e = g.display?.widget ?? "", t = pr(e);
|
|
4758
4776
|
return t ? /* @__PURE__ */ V(t, {
|
|
4759
4777
|
field: g,
|
|
4760
4778
|
fieldName: r,
|
|
4761
4779
|
entityCode: n,
|
|
4762
|
-
value:
|
|
4780
|
+
value: qr(i, r),
|
|
4763
4781
|
mode: a,
|
|
4764
4782
|
onChange: o,
|
|
4765
4783
|
disabled: c,
|
|
@@ -4770,11 +4788,11 @@ function Xr(e) {
|
|
|
4770
4788
|
});
|
|
4771
4789
|
}
|
|
4772
4790
|
let _ = t.fields.get(r);
|
|
4773
|
-
return _ ?
|
|
4791
|
+
return _ ? Ga({
|
|
4774
4792
|
field: _,
|
|
4775
4793
|
entityCode: n,
|
|
4776
4794
|
fieldName: r,
|
|
4777
|
-
value:
|
|
4795
|
+
value: Jr(t, i, r),
|
|
4778
4796
|
mode: a,
|
|
4779
4797
|
onChange: o,
|
|
4780
4798
|
record: i,
|
|
@@ -4791,80 +4809,80 @@ function Xr(e) {
|
|
|
4791
4809
|
}
|
|
4792
4810
|
//#endregion
|
|
4793
4811
|
//#region src/components/file-widgets/payload.ts
|
|
4794
|
-
function
|
|
4812
|
+
function Qr(e) {
|
|
4795
4813
|
return !e || Array.isArray(e) ? null : e;
|
|
4796
4814
|
}
|
|
4797
|
-
function
|
|
4815
|
+
function $r(e) {
|
|
4798
4816
|
return Array.isArray(e) ? e : [];
|
|
4799
4817
|
}
|
|
4800
|
-
function
|
|
4818
|
+
function ei(e) {
|
|
4801
4819
|
return !e || Array.isArray(e) || typeof e != "object" ? {} : e;
|
|
4802
4820
|
}
|
|
4803
|
-
function
|
|
4804
|
-
return e.mode === "array" ?
|
|
4821
|
+
function ti(e, t) {
|
|
4822
|
+
return e.mode === "array" ? $r(t) : e.mode === "named_map" ? ei(t) : Qr(t);
|
|
4805
4823
|
}
|
|
4806
|
-
function
|
|
4824
|
+
function ni(e, t, n, r) {
|
|
4807
4825
|
let i = {
|
|
4808
4826
|
file_id: e.id,
|
|
4809
4827
|
filename: e.filename
|
|
4810
4828
|
};
|
|
4811
4829
|
return r && (i.slot = r), n && (i.position = t), e.metadata !== void 0 && (i.metadata = e.metadata), i;
|
|
4812
4830
|
}
|
|
4813
|
-
function
|
|
4831
|
+
function ri(e, t) {
|
|
4814
4832
|
if (e.mode === "array") {
|
|
4815
|
-
let e =
|
|
4816
|
-
return e.length === 0 ? { clear: !0 } : { set: e.map((e, t) =>
|
|
4833
|
+
let e = $r(t);
|
|
4834
|
+
return e.length === 0 ? { clear: !0 } : { set: e.map((e, t) => ni(e, t, !0)) };
|
|
4817
4835
|
}
|
|
4818
4836
|
if (e.mode === "named_map") {
|
|
4819
|
-
let e =
|
|
4837
|
+
let e = ei(t), n = Object.entries(e).filter(([, e]) => e != null).map(([e, t]) => ni(t, 0, !1, e));
|
|
4820
4838
|
return n.length === 0 ? { clear: !0 } : { set: n };
|
|
4821
4839
|
}
|
|
4822
|
-
let n =
|
|
4823
|
-
return n ? { set: [
|
|
4840
|
+
let n = Qr(t);
|
|
4841
|
+
return n ? { set: [ni(n, 0, !0)] } : { clear: !0 };
|
|
4824
4842
|
}
|
|
4825
|
-
function
|
|
4843
|
+
function ii(e) {
|
|
4826
4844
|
return JSON.stringify(e);
|
|
4827
4845
|
}
|
|
4828
|
-
function
|
|
4846
|
+
function ai(e) {
|
|
4829
4847
|
let { entity: t, formData: n, record: r, isNew: i } = e, a = {};
|
|
4830
4848
|
for (let e of t.files?.names() ?? []) {
|
|
4831
4849
|
if (!Object.prototype.hasOwnProperty.call(n, e)) continue;
|
|
4832
|
-
let o =
|
|
4850
|
+
let o = Kr(t, e);
|
|
4833
4851
|
if (!o) continue;
|
|
4834
|
-
let s =
|
|
4852
|
+
let s = ti(o, n[e]);
|
|
4835
4853
|
if (i) {
|
|
4836
|
-
if (o.mode === "array" ?
|
|
4837
|
-
a[e] =
|
|
4854
|
+
if (o.mode === "array" ? $r(s).length === 0 : o.mode === "named_map" ? Object.values(ei(s)).every((e) => e == null) : Qr(s) == null) continue;
|
|
4855
|
+
a[e] = ri(o, s);
|
|
4838
4856
|
continue;
|
|
4839
4857
|
}
|
|
4840
|
-
let c =
|
|
4841
|
-
|
|
4858
|
+
let c = ti(o, r ? qr(r, e) : null), l = ri(o, s), u = ri(o, c);
|
|
4859
|
+
ii(l) !== ii(u) && (a[e] = l);
|
|
4842
4860
|
}
|
|
4843
4861
|
let o = t.fields;
|
|
4844
4862
|
if (!o) return a;
|
|
4845
4863
|
for (let e of o.names()) {
|
|
4846
4864
|
let s = o.get(e)?.files;
|
|
4847
4865
|
if (!s || s.mode !== "rich_text_inline" || !Object.prototype.hasOwnProperty.call(n, e)) continue;
|
|
4848
|
-
let c =
|
|
4866
|
+
let c = si(s, n[e]);
|
|
4849
4867
|
if (i) {
|
|
4850
4868
|
if (c.clear) continue;
|
|
4851
4869
|
a[e] = c;
|
|
4852
4870
|
continue;
|
|
4853
4871
|
}
|
|
4854
|
-
let l =
|
|
4872
|
+
let l = si(s, r ? Jr({
|
|
4855
4873
|
...t,
|
|
4856
4874
|
fields: o
|
|
4857
4875
|
}, r, e) : null);
|
|
4858
|
-
|
|
4876
|
+
ii(c) !== ii(l) && (a[e] = c);
|
|
4859
4877
|
}
|
|
4860
4878
|
return a;
|
|
4861
4879
|
}
|
|
4862
|
-
function
|
|
4880
|
+
function oi(e) {
|
|
4863
4881
|
let t = [];
|
|
4864
4882
|
for (let n of Object.values(e)) for (let e of n.set ?? []) t.push(e.file_id);
|
|
4865
4883
|
return t;
|
|
4866
4884
|
}
|
|
4867
|
-
function
|
|
4885
|
+
function si(e, t) {
|
|
4868
4886
|
if (e.mode !== "rich_text_inline") return { clear: !0 };
|
|
4869
4887
|
let n = D(T(t));
|
|
4870
4888
|
return n.length === 0 ? { clear: !0 } : { set: n.map((e, t) => ({
|
|
@@ -4874,10 +4892,10 @@ function oi(e, t) {
|
|
|
4874
4892
|
}
|
|
4875
4893
|
//#endregion
|
|
4876
4894
|
//#region src/components/file-widgets/index.ts
|
|
4877
|
-
|
|
4895
|
+
Gr();
|
|
4878
4896
|
//#endregion
|
|
4879
4897
|
//#region src/components/fields/RichTextField.tsx
|
|
4880
|
-
function
|
|
4898
|
+
function ci(e) {
|
|
4881
4899
|
let { field: t, entityCode: n, fieldName: r, value: o, mode: s, onChange: c, record: l, compact: u, fieldId: d } = e, f = L(null), p = L(null), m = L(/* @__PURE__ */ new Map()), h = L(/* @__PURE__ */ new Set()), [_, v] = R(0), [y, b] = R(null), { register: S, unregister: C } = g(), T = l?.$files?.[r], A = I(() => k(o, T), [T, o]), j = A.markdown, M = t.files?.accepts, N = t.files?.max_size_bytes, P = (e, t = A.files) => {
|
|
4882
4900
|
let n = new Set(D(e)), r = [];
|
|
4883
4901
|
for (let e of h.current) n.has(e) || r.push(e);
|
|
@@ -4926,15 +4944,15 @@ function si(e) {
|
|
|
4926
4944
|
fieldCode: r
|
|
4927
4945
|
}), i = e.type.startsWith("image/") ? URL.createObjectURL(e) : void 0;
|
|
4928
4946
|
i && m.current.set(t.id, i);
|
|
4929
|
-
let c =
|
|
4947
|
+
let c = ui(t, i);
|
|
4930
4948
|
if (S(t.id, () => x(t.id)), h.current.add(t.id), o.length === 1) {
|
|
4931
|
-
let e =
|
|
4949
|
+
let e = li(s.markdown, w(c));
|
|
4932
4950
|
F(s, e, c), s = E({
|
|
4933
4951
|
markdown: `${s.markdown}${e}`,
|
|
4934
4952
|
files: s.files
|
|
4935
4953
|
}, c);
|
|
4936
4954
|
} else {
|
|
4937
|
-
let e =
|
|
4955
|
+
let e = li(s.markdown, w(c));
|
|
4938
4956
|
s = E({
|
|
4939
4957
|
markdown: `${s.markdown}${e}`,
|
|
4940
4958
|
files: s.files
|
|
@@ -4947,7 +4965,7 @@ function si(e) {
|
|
|
4947
4965
|
}
|
|
4948
4966
|
}
|
|
4949
4967
|
};
|
|
4950
|
-
return s === "display" ? j ? /* @__PURE__ */ V(
|
|
4968
|
+
return s === "display" ? j ? /* @__PURE__ */ V(an, {
|
|
4951
4969
|
content: j,
|
|
4952
4970
|
files: A.files
|
|
4953
4971
|
}) : /* @__PURE__ */ V("span", {
|
|
@@ -5062,7 +5080,7 @@ function si(e) {
|
|
|
5062
5080
|
marginBottom: 8
|
|
5063
5081
|
},
|
|
5064
5082
|
children: "Preview"
|
|
5065
|
-
}), j ? /* @__PURE__ */ V(
|
|
5083
|
+
}), j ? /* @__PURE__ */ V(an, {
|
|
5066
5084
|
content: j,
|
|
5067
5085
|
files: A.files
|
|
5068
5086
|
}) : /* @__PURE__ */ V("span", {
|
|
@@ -5076,10 +5094,10 @@ function si(e) {
|
|
|
5076
5094
|
]
|
|
5077
5095
|
});
|
|
5078
5096
|
}
|
|
5079
|
-
function
|
|
5097
|
+
function li(e, t) {
|
|
5080
5098
|
return e ? e.endsWith("\n\n") ? t : e.endsWith("\n") ? `\n${t}` : `\n\n${t}` : `${t}\n`;
|
|
5081
5099
|
}
|
|
5082
|
-
function
|
|
5100
|
+
function ui(e, t) {
|
|
5083
5101
|
return {
|
|
5084
5102
|
id: e.id,
|
|
5085
5103
|
filename: e.filename,
|
|
@@ -5094,7 +5112,7 @@ function li(e, t) {
|
|
|
5094
5112
|
}
|
|
5095
5113
|
//#endregion
|
|
5096
5114
|
//#region src/components/fields/cells/factories/text.ts
|
|
5097
|
-
var
|
|
5115
|
+
var di = () => (e) => {
|
|
5098
5116
|
if (e == null || e === "") return "—";
|
|
5099
5117
|
if (typeof e == "object") try {
|
|
5100
5118
|
return JSON.stringify(e);
|
|
@@ -5102,8 +5120,8 @@ var ui = () => (e) => {
|
|
|
5102
5120
|
return String(e);
|
|
5103
5121
|
}
|
|
5104
5122
|
return String(e);
|
|
5105
|
-
},
|
|
5106
|
-
let { field: t, fieldName: n, locale: r = "en" } = e, i =
|
|
5123
|
+
}, fi = (e) => {
|
|
5124
|
+
let { field: t, fieldName: n, locale: r = "en" } = e, i = pi(t, n, r);
|
|
5107
5125
|
return (e) => {
|
|
5108
5126
|
if (e == null) return "—";
|
|
5109
5127
|
let t = !!e;
|
|
@@ -5114,7 +5132,7 @@ var ui = () => (e) => {
|
|
|
5114
5132
|
});
|
|
5115
5133
|
};
|
|
5116
5134
|
};
|
|
5117
|
-
function
|
|
5135
|
+
function pi(e, t, n) {
|
|
5118
5136
|
if (e.display?.bool_labels) return {
|
|
5119
5137
|
trueLabel: Q(e.display.bool_labels.true, n) || "Yes",
|
|
5120
5138
|
falseLabel: Q(e.display.bool_labels.false, n) || "No"
|
|
@@ -5135,14 +5153,14 @@ function fi(e, t, n) {
|
|
|
5135
5153
|
};
|
|
5136
5154
|
}
|
|
5137
5155
|
if (t.startsWith("is_")) {
|
|
5138
|
-
let e =
|
|
5156
|
+
let e = mi(t.slice(3));
|
|
5139
5157
|
return {
|
|
5140
5158
|
trueLabel: e,
|
|
5141
5159
|
falseLabel: `Not ${e}`
|
|
5142
5160
|
};
|
|
5143
5161
|
}
|
|
5144
5162
|
if (t.startsWith("has_")) {
|
|
5145
|
-
let e =
|
|
5163
|
+
let e = mi(t.slice(4));
|
|
5146
5164
|
return {
|
|
5147
5165
|
trueLabel: e,
|
|
5148
5166
|
falseLabel: `No ${e}`
|
|
@@ -5153,12 +5171,12 @@ function fi(e, t, n) {
|
|
|
5153
5171
|
falseLabel: "No"
|
|
5154
5172
|
};
|
|
5155
5173
|
}
|
|
5156
|
-
function
|
|
5174
|
+
function mi(e) {
|
|
5157
5175
|
return e.split("_").map((e) => e && e[0].toUpperCase() + e.slice(1)).join(" ");
|
|
5158
5176
|
}
|
|
5159
5177
|
//#endregion
|
|
5160
5178
|
//#region src/components/fields/cells/factories/badge.tsx
|
|
5161
|
-
var
|
|
5179
|
+
var hi = new Set([
|
|
5162
5180
|
"indigo",
|
|
5163
5181
|
"emerald",
|
|
5164
5182
|
"amber",
|
|
@@ -5168,17 +5186,17 @@ var mi = new Set([
|
|
|
5168
5186
|
"slate",
|
|
5169
5187
|
"teal"
|
|
5170
5188
|
]);
|
|
5171
|
-
function
|
|
5172
|
-
return e &&
|
|
5189
|
+
function gi(e) {
|
|
5190
|
+
return e && hi.has(e) ? e : "slate";
|
|
5173
5191
|
}
|
|
5174
|
-
var
|
|
5192
|
+
var _i = (e) => {
|
|
5175
5193
|
let { field: t, locale: n = "en" } = e, r = /* @__PURE__ */ new Map();
|
|
5176
5194
|
if (t.values) for (let e of t.values) r.set(e.code, {
|
|
5177
|
-
tone:
|
|
5195
|
+
tone: gi(e.color),
|
|
5178
5196
|
label: Q(e.name, n) || e.code
|
|
5179
5197
|
});
|
|
5180
5198
|
if (t.display?.value_map) for (let [e, i] of Object.entries(t.display.value_map)) {
|
|
5181
|
-
let t = r.get(e), a = i.color ?
|
|
5199
|
+
let t = r.get(e), a = i.color ? gi(i.color) : t?.tone ?? "slate", o = (i.label ? Q(i.label, n) : "") || t?.label || e;
|
|
5182
5200
|
r.set(e, {
|
|
5183
5201
|
tone: a,
|
|
5184
5202
|
label: o
|
|
@@ -5193,7 +5211,7 @@ var gi = (e) => {
|
|
|
5193
5211
|
children: n?.label ?? t
|
|
5194
5212
|
});
|
|
5195
5213
|
};
|
|
5196
|
-
},
|
|
5214
|
+
}, vi = new Set([
|
|
5197
5215
|
"indigo",
|
|
5198
5216
|
"emerald",
|
|
5199
5217
|
"amber",
|
|
@@ -5203,13 +5221,13 @@ var gi = (e) => {
|
|
|
5203
5221
|
"slate",
|
|
5204
5222
|
"teal"
|
|
5205
5223
|
]);
|
|
5206
|
-
function
|
|
5207
|
-
return e &&
|
|
5224
|
+
function yi(e) {
|
|
5225
|
+
return e && vi.has(e) ? e : "slate";
|
|
5208
5226
|
}
|
|
5209
|
-
var
|
|
5227
|
+
var bi = (e) => {
|
|
5210
5228
|
let { entity: t, locale: n = "en" } = e, r = /* @__PURE__ */ new Map();
|
|
5211
5229
|
if (t?.status_groups) for (let e of Object.values(t.status_groups)) for (let t of e.statuses) r.set(t.code, {
|
|
5212
|
-
tone:
|
|
5230
|
+
tone: yi(t.color),
|
|
5213
5231
|
label: Q(t.name, n) || t.code
|
|
5214
5232
|
});
|
|
5215
5233
|
return (e) => {
|
|
@@ -5221,7 +5239,7 @@ var yi = (e) => {
|
|
|
5221
5239
|
children: n?.label ?? t
|
|
5222
5240
|
});
|
|
5223
5241
|
};
|
|
5224
|
-
},
|
|
5242
|
+
}, xi = new Set([
|
|
5225
5243
|
"indigo",
|
|
5226
5244
|
"emerald",
|
|
5227
5245
|
"amber",
|
|
@@ -5231,14 +5249,14 @@ var yi = (e) => {
|
|
|
5231
5249
|
"slate",
|
|
5232
5250
|
"teal"
|
|
5233
5251
|
]);
|
|
5234
|
-
function
|
|
5235
|
-
return e &&
|
|
5252
|
+
function Si(e) {
|
|
5253
|
+
return e && xi.has(e) ? e : null;
|
|
5236
5254
|
}
|
|
5237
|
-
var
|
|
5255
|
+
var Ci = (e) => {
|
|
5238
5256
|
let { field: t, locale: n = "en" } = e, r = /* @__PURE__ */ new Map();
|
|
5239
5257
|
if (t.display?.value_map) for (let [e, i] of Object.entries(t.display.value_map)) r.set(e, {
|
|
5240
5258
|
label: i.label && Q(i.label, n) || e,
|
|
5241
|
-
tone:
|
|
5259
|
+
tone: Si(i.color)
|
|
5242
5260
|
});
|
|
5243
5261
|
return (e) => !Array.isArray(e) || e.length === 0 ? "—" : /* @__PURE__ */ V("span", {
|
|
5244
5262
|
style: {
|
|
@@ -5255,23 +5273,23 @@ var Si = (e) => {
|
|
|
5255
5273
|
}, `${n}-${t}`) : /* @__PURE__ */ V(_e, { children: i?.label ?? n }, `${n}-${t}`);
|
|
5256
5274
|
})
|
|
5257
5275
|
});
|
|
5258
|
-
},
|
|
5276
|
+
}, wi = () => (e) => {
|
|
5259
5277
|
if (e == null || e === "") return "—";
|
|
5260
|
-
let { text: t, absolute: n } =
|
|
5278
|
+
let { text: t, absolute: n } = jn(typeof e == "string" ? e : String(e));
|
|
5261
5279
|
return /* @__PURE__ */ V("span", {
|
|
5262
5280
|
title: n,
|
|
5263
5281
|
children: t
|
|
5264
5282
|
});
|
|
5265
|
-
},
|
|
5283
|
+
}, Ti = () => (e) => e == null || e === "" ? "—" : An(typeof e == "string" ? e : String(e)), Ei = 60 * 1e3, Di = 300 * 1e3, Oi = () => (e) => {
|
|
5266
5284
|
if (e == null || e === "") return "—";
|
|
5267
5285
|
let t = typeof e == "string" ? e : String(e), n = new Date(t);
|
|
5268
5286
|
if (isNaN(n.getTime())) return t;
|
|
5269
|
-
let r =
|
|
5287
|
+
let r = An(t), i = Date.now() - n.getTime();
|
|
5270
5288
|
if (i <= 0) return /* @__PURE__ */ H("span", {
|
|
5271
5289
|
title: r,
|
|
5272
5290
|
children: ["in ", ne(n, /* @__PURE__ */ new Date(), { addSuffix: !1 })]
|
|
5273
5291
|
});
|
|
5274
|
-
if (i <=
|
|
5292
|
+
if (i <= Ei) return /* @__PURE__ */ V("span", {
|
|
5275
5293
|
title: r,
|
|
5276
5294
|
children: /* @__PURE__ */ V(X, {
|
|
5277
5295
|
tone: "slate",
|
|
@@ -5283,13 +5301,13 @@ var Si = (e) => {
|
|
|
5283
5301
|
return /* @__PURE__ */ V("span", {
|
|
5284
5302
|
title: r,
|
|
5285
5303
|
children: /* @__PURE__ */ H(X, {
|
|
5286
|
-
tone: i <=
|
|
5304
|
+
tone: i <= Di ? "amber" : "rose",
|
|
5287
5305
|
size: "xs",
|
|
5288
5306
|
children: ["overdue ", a]
|
|
5289
5307
|
})
|
|
5290
5308
|
});
|
|
5291
|
-
},
|
|
5292
|
-
let { field: t, locale: n = "en" } = e, r = t.display?.currency || "USD", i = t.display?.currency_field, a =
|
|
5309
|
+
}, ki = (e) => {
|
|
5310
|
+
let { field: t, locale: n = "en" } = e, r = t.display?.currency || "USD", i = t.display?.currency_field, a = Ai(t.display?.currency_display), o = ji(typeof t.scale == "number" ? t.scale : 2, 0, 6), s = /* @__PURE__ */ new Map();
|
|
5293
5311
|
return (e, t = {}) => {
|
|
5294
5312
|
if (e == null || e === "") return "—";
|
|
5295
5313
|
let c = typeof e == "number" ? e : Number(e);
|
|
@@ -5304,7 +5322,7 @@ var Si = (e) => {
|
|
|
5304
5322
|
}), s.set(d, f)), f.format(c);
|
|
5305
5323
|
};
|
|
5306
5324
|
};
|
|
5307
|
-
function
|
|
5325
|
+
function Ai(e) {
|
|
5308
5326
|
switch (e) {
|
|
5309
5327
|
case "narrow_symbol": return "narrowSymbol";
|
|
5310
5328
|
case "code":
|
|
@@ -5313,18 +5331,18 @@ function ki(e) {
|
|
|
5313
5331
|
default: return "symbol";
|
|
5314
5332
|
}
|
|
5315
5333
|
}
|
|
5316
|
-
function
|
|
5334
|
+
function ji(e, t, n) {
|
|
5317
5335
|
return e < t ? t : e > n ? n : e;
|
|
5318
5336
|
}
|
|
5319
5337
|
//#endregion
|
|
5320
5338
|
//#region src/components/fields/cells/factories/refLink.tsx
|
|
5321
|
-
var
|
|
5339
|
+
var Mi = (e) => {
|
|
5322
5340
|
let { field: t, entities: n, screens: r, refs: i, navigate: a, surface: o } = e, s = t.ref?.entity, c = s ? n?.[s] : void 0, l = typeof i == "function" ? i : () => i, u = o === "detail", d = c?.display?.icon, f = t.display?.ref_display_field ?? t.ref?.display?.field ?? c?.display?.display_field, p = c?.detail_screen, m = (p ? r?.[p] : void 0)?.route, h = (e) => (t) => {
|
|
5323
|
-
t.stopPropagation(),
|
|
5341
|
+
t.stopPropagation(), !en(t) && (t.preventDefault(), a?.(e));
|
|
5324
5342
|
};
|
|
5325
5343
|
return (e, t) => {
|
|
5326
5344
|
if (e == null || e === "") return "—";
|
|
5327
|
-
let n = String(e), r =
|
|
5345
|
+
let n = String(e), r = Ni(n, s, l(), f), i = m ? m.replace(":id", encodeURIComponent(n)) : void 0;
|
|
5328
5346
|
if (u) {
|
|
5329
5347
|
let e = /* @__PURE__ */ H(B, { children: [d && /* @__PURE__ */ V("span", {
|
|
5330
5348
|
style: {
|
|
@@ -5332,7 +5350,7 @@ var ji = (e) => {
|
|
|
5332
5350
|
display: "flex",
|
|
5333
5351
|
flexShrink: 0
|
|
5334
5352
|
},
|
|
5335
|
-
children: /* @__PURE__ */ V(
|
|
5353
|
+
children: /* @__PURE__ */ V(tn, {
|
|
5336
5354
|
name: d,
|
|
5337
5355
|
size: 13
|
|
5338
5356
|
})
|
|
@@ -5382,29 +5400,29 @@ var ji = (e) => {
|
|
|
5382
5400
|
}) : r;
|
|
5383
5401
|
};
|
|
5384
5402
|
};
|
|
5385
|
-
function
|
|
5403
|
+
function Ni(e, t, n, r) {
|
|
5386
5404
|
let i = t && n ? n[t]?.[e] : void 0;
|
|
5387
|
-
return i ?
|
|
5405
|
+
return i ? Ye(i, r, e) : e;
|
|
5388
5406
|
}
|
|
5389
5407
|
//#endregion
|
|
5390
5408
|
//#region src/components/fields/cells/factories/url-helpers.ts
|
|
5391
|
-
var
|
|
5392
|
-
function Fi(e) {
|
|
5393
|
-
return /^[a-z]{2,3}$/i.test(e) || Pi.test(e);
|
|
5394
|
-
}
|
|
5409
|
+
var Pi = /^(https?|ftps?|ssh|mailto|tel):/i, Fi = /^(info|name|tech|site|cloud|online|store|shop|blog|space|world|link|live|page|zone|life|team|work|host|land|news|wiki|mobi|coop|aero|asia)$/i;
|
|
5395
5410
|
function Ii(e) {
|
|
5411
|
+
return /^[a-z]{2,3}$/i.test(e) || Fi.test(e);
|
|
5412
|
+
}
|
|
5413
|
+
function Li(e) {
|
|
5396
5414
|
if (!e.includes(".")) return !1;
|
|
5397
5415
|
let t = e.split(".");
|
|
5398
5416
|
if (t.length < 3) return !0;
|
|
5399
5417
|
let n = t[0].toLowerCase();
|
|
5400
|
-
return /^(com|org|net|edu|gov)$/.test(n) ? !1 : /^(io|app|dev)$/.test(n) ?
|
|
5418
|
+
return /^(com|org|net|edu|gov)$/.test(n) ? !1 : /^(io|app|dev)$/.test(n) ? Ii(t[t.length - 1]) : !0;
|
|
5401
5419
|
}
|
|
5402
|
-
function
|
|
5403
|
-
if (
|
|
5420
|
+
function Ri(e) {
|
|
5421
|
+
if (Pi.test(e)) return e;
|
|
5404
5422
|
let t = e.match(/^([a-z][a-z0-9+.-]*):/i);
|
|
5405
5423
|
if (t) {
|
|
5406
5424
|
let n = t[1], r = e.slice(t[0].length);
|
|
5407
|
-
if (/^\d+([/?#]|$)/.test(r) &&
|
|
5425
|
+
if (/^\d+([/?#]|$)/.test(r) && Li(n)) {
|
|
5408
5426
|
let t = parseInt(r, 10);
|
|
5409
5427
|
if (t >= 1 && t <= 65535) return `https://${e}`;
|
|
5410
5428
|
}
|
|
@@ -5412,14 +5430,14 @@ function Li(e) {
|
|
|
5412
5430
|
}
|
|
5413
5431
|
return `https://${e}`;
|
|
5414
5432
|
}
|
|
5415
|
-
function
|
|
5433
|
+
function zi(e) {
|
|
5416
5434
|
try {
|
|
5417
5435
|
return new URL(e).hostname.replace(/^www\./i, "") || null;
|
|
5418
5436
|
} catch {
|
|
5419
5437
|
return null;
|
|
5420
5438
|
}
|
|
5421
5439
|
}
|
|
5422
|
-
function
|
|
5440
|
+
function Bi(e, t) {
|
|
5423
5441
|
if (t !== "linkedin.com") return null;
|
|
5424
5442
|
try {
|
|
5425
5443
|
let t = new URL(e).pathname.match(/^\/(in|company|school)\/([^/]+)/i);
|
|
@@ -5427,7 +5445,7 @@ function zi(e, t) {
|
|
|
5427
5445
|
} catch {}
|
|
5428
5446
|
return null;
|
|
5429
5447
|
}
|
|
5430
|
-
function
|
|
5448
|
+
function Vi(e) {
|
|
5431
5449
|
try {
|
|
5432
5450
|
return new URL(e), !0;
|
|
5433
5451
|
} catch {
|
|
@@ -5436,7 +5454,7 @@ function Bi(e) {
|
|
|
5436
5454
|
}
|
|
5437
5455
|
//#endregion
|
|
5438
5456
|
//#region src/components/fields/cells/factories/host-icons.tsx
|
|
5439
|
-
function
|
|
5457
|
+
function Hi(e, t = "0 0 24 24") {
|
|
5440
5458
|
return (n) => /* @__PURE__ */ V("svg", {
|
|
5441
5459
|
width: 16,
|
|
5442
5460
|
height: 16,
|
|
@@ -5452,11 +5470,11 @@ function Vi(e, t = "0 0 24 24") {
|
|
|
5452
5470
|
children: e
|
|
5453
5471
|
});
|
|
5454
5472
|
}
|
|
5455
|
-
var
|
|
5473
|
+
var Ui = Hi(/* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("circle", {
|
|
5456
5474
|
cx: "12",
|
|
5457
5475
|
cy: "12",
|
|
5458
5476
|
r: "9"
|
|
5459
|
-
}), /* @__PURE__ */ V("path", { d: "M3 12h18M12 3c3 3 3 15 0 18-3-3-3-15 0-18" })] })),
|
|
5477
|
+
}), /* @__PURE__ */ V("path", { d: "M3 12h18M12 3c3 3 3 15 0 18-3-3-3-15 0-18" })] })), Wi = (e) => /* @__PURE__ */ V("svg", {
|
|
5460
5478
|
width: 16,
|
|
5461
5479
|
height: 16,
|
|
5462
5480
|
viewBox: "0 0 24 24",
|
|
@@ -5465,7 +5483,7 @@ var Hi = Vi(/* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("circle", {
|
|
|
5465
5483
|
style: { flexShrink: 0 },
|
|
5466
5484
|
...e,
|
|
5467
5485
|
children: /* @__PURE__ */ V("path", { d: "M20.45 20.45h-3.55v-5.57c0-1.33-.02-3.04-1.85-3.04-1.85 0-2.13 1.45-2.13 2.94v5.67H9.36V9h3.41v1.56h.05c.48-.9 1.64-1.85 3.37-1.85 3.6 0 4.27 2.37 4.27 5.46v6.28zM5.34 7.43a2.06 2.06 0 1 1 0-4.12 2.06 2.06 0 0 1 0 4.12zM7.12 20.45H3.56V9h3.56v11.45zM22.22 0H1.77C.79 0 0 .77 0 1.72v20.56C0 23.23.79 24 1.77 24h20.45c.98 0 1.78-.77 1.78-1.72V1.72C24 .77 23.2 0 22.22 0z" })
|
|
5468
|
-
}),
|
|
5486
|
+
}), Gi = (e) => /* @__PURE__ */ V("svg", {
|
|
5469
5487
|
width: 16,
|
|
5470
5488
|
height: 16,
|
|
5471
5489
|
viewBox: "0 0 24 24",
|
|
@@ -5474,7 +5492,7 @@ var Hi = Vi(/* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("circle", {
|
|
|
5474
5492
|
style: { flexShrink: 0 },
|
|
5475
5493
|
...e,
|
|
5476
5494
|
children: /* @__PURE__ */ V("path", { d: "M12 .5a11.5 11.5 0 0 0-3.64 22.41c.58.1.79-.25.79-.56 0-.27-.01-1-.02-1.96-3.21.7-3.89-1.55-3.89-1.55-.52-1.34-1.28-1.7-1.28-1.7-1.05-.72.08-.7.08-.7 1.16.08 1.77 1.2 1.77 1.2 1.03 1.77 2.71 1.26 3.37.96.1-.75.4-1.26.73-1.55-2.56-.29-5.26-1.28-5.26-5.71 0-1.26.45-2.3 1.19-3.11-.12-.29-.52-1.46.11-3.05 0 0 .97-.31 3.18 1.19a11.05 11.05 0 0 1 5.79 0c2.21-1.5 3.18-1.19 3.18-1.19.63 1.59.23 2.76.11 3.05.74.81 1.19 1.85 1.19 3.11 0 4.44-2.71 5.42-5.29 5.7.41.36.78 1.07.78 2.16 0 1.56-.01 2.81-.01 3.19 0 .31.21.68.8.56A11.5 11.5 0 0 0 12 .5z" })
|
|
5477
|
-
}),
|
|
5495
|
+
}), Ki = (e) => /* @__PURE__ */ V("svg", {
|
|
5478
5496
|
width: 16,
|
|
5479
5497
|
height: 16,
|
|
5480
5498
|
viewBox: "0 0 24 24",
|
|
@@ -5483,7 +5501,7 @@ var Hi = Vi(/* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("circle", {
|
|
|
5483
5501
|
style: { flexShrink: 0 },
|
|
5484
5502
|
...e,
|
|
5485
5503
|
children: /* @__PURE__ */ V("path", { d: "M18.244 2H21.5l-7.62 8.71L23 22h-7.05l-5.52-7.21L4.07 22H.81l8.18-9.34L1 2h7.22l5 6.59L18.244 2zm-2.47 18h1.95L7.32 4h-2.1l10.55 16z" })
|
|
5486
|
-
}),
|
|
5504
|
+
}), qi = (e) => /* @__PURE__ */ V("svg", {
|
|
5487
5505
|
width: 16,
|
|
5488
5506
|
height: 16,
|
|
5489
5507
|
viewBox: "0 0 24 24",
|
|
@@ -5492,7 +5510,7 @@ var Hi = Vi(/* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("circle", {
|
|
|
5492
5510
|
style: { flexShrink: 0 },
|
|
5493
5511
|
...e,
|
|
5494
5512
|
children: /* @__PURE__ */ V("path", { d: "M23.5 6.2a3 3 0 0 0-2.1-2.1C19.5 3.6 12 3.6 12 3.6s-7.5 0-9.4.5A3 3 0 0 0 .5 6.2C0 8.1 0 12 0 12s0 3.9.5 5.8a3 3 0 0 0 2.1 2.1c1.9.5 9.4.5 9.4.5s7.5 0 9.4-.5a3 3 0 0 0 2.1-2.1c.5-1.9.5-5.8.5-5.8s0-3.9-.5-5.8zM9.6 15.6V8.4l6.2 3.6-6.2 3.6z" })
|
|
5495
|
-
}),
|
|
5513
|
+
}), Ji = (e) => /* @__PURE__ */ V("svg", {
|
|
5496
5514
|
width: 16,
|
|
5497
5515
|
height: 16,
|
|
5498
5516
|
viewBox: "0 0 24 24",
|
|
@@ -5501,7 +5519,7 @@ var Hi = Vi(/* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("circle", {
|
|
|
5501
5519
|
style: { flexShrink: 0 },
|
|
5502
5520
|
...e,
|
|
5503
5521
|
children: /* @__PURE__ */ V("path", { d: "M24 5.45v13.1A1.45 1.45 0 0 1 22.55 20H19.5V9.27L12 14.7 4.5 9.27V20H1.45A1.45 1.45 0 0 1 0 18.55V5.45A1.45 1.45 0 0 1 1.45 4h.5l10.05 7.27L22.05 4h.5A1.45 1.45 0 0 1 24 5.45z" })
|
|
5504
|
-
}),
|
|
5522
|
+
}), Yi = (e) => /* @__PURE__ */ H("svg", {
|
|
5505
5523
|
width: 16,
|
|
5506
5524
|
height: 16,
|
|
5507
5525
|
viewBox: "0 0 24 24",
|
|
@@ -5526,7 +5544,7 @@ var Hi = Vi(/* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("circle", {
|
|
|
5526
5544
|
d: "M15.17 18.96a2.52 2.52 0 1 1-2.52 2.52v-2.52h2.52zm0-1.27a2.52 2.52 0 1 1 0-5.04h6.31a2.52 2.52 0 1 1 0 5.04h-6.31z"
|
|
5527
5545
|
})
|
|
5528
5546
|
]
|
|
5529
|
-
}),
|
|
5547
|
+
}), Xi = (e) => /* @__PURE__ */ V("svg", {
|
|
5530
5548
|
width: 16,
|
|
5531
5549
|
height: 16,
|
|
5532
5550
|
viewBox: "0 0 24 24",
|
|
@@ -5535,39 +5553,39 @@ var Hi = Vi(/* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V("circle", {
|
|
|
5535
5553
|
style: { flexShrink: 0 },
|
|
5536
5554
|
...e,
|
|
5537
5555
|
children: /* @__PURE__ */ V("path", { d: "M4.46 3.83 14.94 3a3.7 3.7 0 0 1 2.5.62l3 2.16a1.4 1.4 0 0 1 .56 1.31v13.06a1.7 1.7 0 0 1-1.66 1.7l-12.5.78a2.4 2.4 0 0 1-1.85-.62L2.5 19.7a1.7 1.7 0 0 1-.5-1.2V5.16c0-.74.6-1.27 1.46-1.33l1-.01zm.46 1.86c-.31 0-.46.16-.46.47v12.25c0 .31.16.47.46.47l11.62-.7c.31 0 .46-.16.46-.47V6c0-.32-.16-.47-.46-.47L4.92 5.7zm5.57 2.32c.16 0 .31.16.31.31v.46l3.7.23c.31 0 .46.16.46.47v8.32c0 .31-.16.47-.46.47l-3.7.23c-.31 0-.46-.16-.46-.47V8.78c0-.16.15-.32.15-.46l-.04-.31z" })
|
|
5538
|
-
}),
|
|
5539
|
-
"linkedin.com":
|
|
5540
|
-
"github.com":
|
|
5541
|
-
"x.com":
|
|
5542
|
-
"twitter.com":
|
|
5543
|
-
"youtube.com":
|
|
5544
|
-
"youtu.be":
|
|
5545
|
-
"gmail.com":
|
|
5546
|
-
"mail.google.com":
|
|
5547
|
-
"slack.com":
|
|
5548
|
-
"notion.so":
|
|
5549
|
-
"notion.com":
|
|
5556
|
+
}), Zi = {
|
|
5557
|
+
"linkedin.com": Wi,
|
|
5558
|
+
"github.com": Gi,
|
|
5559
|
+
"x.com": Ki,
|
|
5560
|
+
"twitter.com": Ki,
|
|
5561
|
+
"youtube.com": qi,
|
|
5562
|
+
"youtu.be": qi,
|
|
5563
|
+
"gmail.com": Ji,
|
|
5564
|
+
"mail.google.com": Ji,
|
|
5565
|
+
"slack.com": Yi,
|
|
5566
|
+
"notion.so": Xi,
|
|
5567
|
+
"notion.com": Xi
|
|
5550
5568
|
};
|
|
5551
|
-
function
|
|
5569
|
+
function Qi(e, t) {
|
|
5552
5570
|
return !e || t === "none" ? null : t === "google" ? `https://www.google.com/s2/favicons?domain=${encodeURIComponent(e)}&sz=32` : `https://${e}/favicon.ico`;
|
|
5553
5571
|
}
|
|
5554
|
-
var
|
|
5572
|
+
var $i = {
|
|
5555
5573
|
width: 16,
|
|
5556
5574
|
height: 16,
|
|
5557
5575
|
flexShrink: 0,
|
|
5558
5576
|
objectFit: "contain"
|
|
5559
5577
|
};
|
|
5560
|
-
function
|
|
5561
|
-
let t =
|
|
5578
|
+
function ea({ domain: e }) {
|
|
5579
|
+
let t = Qt((e) => e.faviconSource), n = e ? e.toLowerCase() : "", r = n ? Zi[n] : void 0;
|
|
5562
5580
|
if (r) return /* @__PURE__ */ V(r, {});
|
|
5563
|
-
let i =
|
|
5564
|
-
return i ? /* @__PURE__ */ V(
|
|
5581
|
+
let i = Qi(n, t);
|
|
5582
|
+
return i ? /* @__PURE__ */ V(ta, { src: i }) : /* @__PURE__ */ V(Ui, {});
|
|
5565
5583
|
}
|
|
5566
|
-
function
|
|
5584
|
+
function ta({ src: e }) {
|
|
5567
5585
|
let [t, n] = R(!1);
|
|
5568
5586
|
return P(() => {
|
|
5569
5587
|
n(!1);
|
|
5570
|
-
}, [e]), t ? /* @__PURE__ */ V(
|
|
5588
|
+
}, [e]), t ? /* @__PURE__ */ V(Ui, {}) : /* @__PURE__ */ V("img", {
|
|
5571
5589
|
src: e,
|
|
5572
5590
|
alt: "",
|
|
5573
5591
|
width: 16,
|
|
@@ -5575,7 +5593,7 @@ function ea({ src: e }) {
|
|
|
5575
5593
|
loading: "lazy",
|
|
5576
5594
|
decoding: "async",
|
|
5577
5595
|
referrerPolicy: "no-referrer",
|
|
5578
|
-
style:
|
|
5596
|
+
style: $i,
|
|
5579
5597
|
onError: () => n(!0)
|
|
5580
5598
|
});
|
|
5581
5599
|
}
|
|
@@ -5585,72 +5603,72 @@ var $ = /* @__PURE__ */ V("span", {
|
|
|
5585
5603
|
color: "var(--text-4)"
|
|
5586
5604
|
},
|
|
5587
5605
|
children: "—"
|
|
5588
|
-
}),
|
|
5606
|
+
}), na = {
|
|
5589
5607
|
display: "inline-flex",
|
|
5590
5608
|
alignItems: "center",
|
|
5591
5609
|
gap: 4,
|
|
5592
5610
|
fontSize: 12.5,
|
|
5593
5611
|
color: "var(--accent)",
|
|
5594
5612
|
textDecoration: "none"
|
|
5595
|
-
},
|
|
5613
|
+
}, ra = { fontSize: 12.5 }, ia = () => (e) => {
|
|
5596
5614
|
let t = e == null ? "" : String(e);
|
|
5597
5615
|
if (!t) return $;
|
|
5598
|
-
let n =
|
|
5599
|
-
if (n == null || !
|
|
5600
|
-
style:
|
|
5616
|
+
let n = Ri(t);
|
|
5617
|
+
if (n == null || !Vi(n)) return /* @__PURE__ */ V("span", {
|
|
5618
|
+
style: ra,
|
|
5601
5619
|
children: t
|
|
5602
5620
|
});
|
|
5603
|
-
let r =
|
|
5621
|
+
let r = zi(n), i = Bi(n, r ?? "") ?? r ?? t;
|
|
5604
5622
|
return /* @__PURE__ */ H("a", {
|
|
5605
5623
|
href: n,
|
|
5606
5624
|
target: "_blank",
|
|
5607
5625
|
rel: "noopener noreferrer",
|
|
5608
5626
|
title: t,
|
|
5609
5627
|
className: "mono",
|
|
5610
|
-
style:
|
|
5628
|
+
style: na,
|
|
5611
5629
|
children: [
|
|
5612
|
-
/* @__PURE__ */ V(
|
|
5630
|
+
/* @__PURE__ */ V(ea, { domain: r }),
|
|
5613
5631
|
i,
|
|
5614
5632
|
/* @__PURE__ */ V(q.external, { size: 11 })
|
|
5615
5633
|
]
|
|
5616
5634
|
});
|
|
5617
|
-
},
|
|
5635
|
+
}, aa = {
|
|
5618
5636
|
fontSize: 12.5,
|
|
5619
5637
|
color: "var(--accent)",
|
|
5620
5638
|
textDecoration: "none"
|
|
5621
|
-
},
|
|
5639
|
+
}, oa = () => (e) => {
|
|
5622
5640
|
let t = e == null ? "" : String(e);
|
|
5623
5641
|
return t ? /* @__PURE__ */ V("a", {
|
|
5624
5642
|
href: `mailto:${t}`,
|
|
5625
5643
|
className: "mono",
|
|
5626
|
-
style:
|
|
5644
|
+
style: aa,
|
|
5627
5645
|
children: t
|
|
5628
5646
|
}) : $;
|
|
5629
|
-
},
|
|
5647
|
+
}, sa = {
|
|
5630
5648
|
fontSize: 12.5,
|
|
5631
5649
|
color: "var(--accent)",
|
|
5632
5650
|
textDecoration: "none"
|
|
5633
|
-
},
|
|
5651
|
+
}, ca = { fontSize: 12.5 }, la = /^[+()\-.\s\d]+$/, ua = () => (e) => {
|
|
5634
5652
|
let t = e == null ? "" : String(e);
|
|
5635
5653
|
if (!t) return $;
|
|
5636
5654
|
let n = t.trim();
|
|
5637
|
-
return
|
|
5655
|
+
return la.test(n) ? /* @__PURE__ */ V("a", {
|
|
5638
5656
|
href: `tel:${n.replace(/\s+/g, "")}`,
|
|
5639
5657
|
className: "mono",
|
|
5640
|
-
style:
|
|
5658
|
+
style: sa,
|
|
5641
5659
|
children: t
|
|
5642
5660
|
}) : /* @__PURE__ */ V("span", {
|
|
5643
|
-
style:
|
|
5661
|
+
style: ca,
|
|
5644
5662
|
children: t
|
|
5645
5663
|
});
|
|
5646
|
-
},
|
|
5664
|
+
}, da = {
|
|
5647
5665
|
fontSize: 12.5,
|
|
5648
5666
|
fontVariantNumeric: "tabular-nums"
|
|
5649
|
-
},
|
|
5667
|
+
}, fa = {
|
|
5650
5668
|
color: "var(--text-3)",
|
|
5651
5669
|
marginLeft: 4
|
|
5652
|
-
},
|
|
5653
|
-
function
|
|
5670
|
+
}, pa = { fontSize: 12.5 };
|
|
5671
|
+
function ma(e, t) {
|
|
5654
5672
|
let n = e.trim();
|
|
5655
5673
|
if (n === "" || n === "-") return n;
|
|
5656
5674
|
let r = n.startsWith("-"), [i, a] = (r ? n.slice(1) : n).split("."), o;
|
|
@@ -5662,45 +5680,45 @@ function pa(e, t) {
|
|
|
5662
5680
|
let s = r ? `-${o}` : o;
|
|
5663
5681
|
return a !== void 0 && (s += `.${a}`), s;
|
|
5664
5682
|
}
|
|
5665
|
-
var
|
|
5683
|
+
var ha = (e) => {
|
|
5666
5684
|
let { field: t, fieldName: n, locale: r = "en" } = e, i = new Intl.NumberFormat(r), a = t.type === "decimal", o = t.unit ? t.unit.display || t.unit.storage : void 0;
|
|
5667
5685
|
return (e, t) => {
|
|
5668
5686
|
if (e == null) return $;
|
|
5669
5687
|
let r = t.$units?.[n] || (o && !o.startsWith("$") ? o : void 0), s;
|
|
5670
|
-
if (a && typeof e == "string") s =
|
|
5688
|
+
if (a && typeof e == "string") s = ma(e, i);
|
|
5671
5689
|
else {
|
|
5672
5690
|
let t = typeof e == "number" ? e : Number(e);
|
|
5673
5691
|
s = Number.isFinite(t) ? i.format(t) : null;
|
|
5674
5692
|
}
|
|
5675
5693
|
return s == null ? /* @__PURE__ */ V("span", {
|
|
5676
|
-
style:
|
|
5694
|
+
style: pa,
|
|
5677
5695
|
children: "—"
|
|
5678
5696
|
}) : /* @__PURE__ */ H("span", {
|
|
5679
5697
|
className: "num",
|
|
5680
|
-
style:
|
|
5698
|
+
style: da,
|
|
5681
5699
|
children: [s, r && /* @__PURE__ */ V("span", {
|
|
5682
|
-
style:
|
|
5700
|
+
style: fa,
|
|
5683
5701
|
children: r
|
|
5684
5702
|
})]
|
|
5685
5703
|
});
|
|
5686
5704
|
};
|
|
5687
|
-
},
|
|
5705
|
+
}, ga = { fontSize: 12.5 }, _a = () => (e) => e == null || e === "" ? $ : /* @__PURE__ */ V("code", {
|
|
5688
5706
|
className: "mono",
|
|
5689
|
-
style:
|
|
5707
|
+
style: ga,
|
|
5690
5708
|
children: String(e)
|
|
5691
|
-
}),
|
|
5709
|
+
}), va = {
|
|
5692
5710
|
display: "inline-flex",
|
|
5693
5711
|
alignItems: "center",
|
|
5694
5712
|
gap: 4,
|
|
5695
5713
|
fontSize: 12.5,
|
|
5696
5714
|
color: "var(--accent)",
|
|
5697
5715
|
textDecoration: "none"
|
|
5698
|
-
},
|
|
5716
|
+
}, ya = { fontSize: 12.5 }, ba = () => (e) => {
|
|
5699
5717
|
let t = e == null ? "" : String(e);
|
|
5700
5718
|
if (!t) return $;
|
|
5701
|
-
let n =
|
|
5702
|
-
return n == null || !
|
|
5703
|
-
style:
|
|
5719
|
+
let n = Ri(t);
|
|
5720
|
+
return n == null || !Vi(n) ? /* @__PURE__ */ V("span", {
|
|
5721
|
+
style: ya,
|
|
5704
5722
|
children: t
|
|
5705
5723
|
}) : /* @__PURE__ */ H("a", {
|
|
5706
5724
|
href: n,
|
|
@@ -5708,21 +5726,21 @@ var ma = (e) => {
|
|
|
5708
5726
|
rel: "noopener noreferrer",
|
|
5709
5727
|
title: t,
|
|
5710
5728
|
className: "mono",
|
|
5711
|
-
style:
|
|
5729
|
+
style: va,
|
|
5712
5730
|
children: [t, /* @__PURE__ */ V(q.external, { size: 11 })]
|
|
5713
5731
|
});
|
|
5714
|
-
},
|
|
5715
|
-
function
|
|
5716
|
-
return Math.max(1, Math.min(typeof e == "number" && Number.isFinite(e) ? Math.floor(e) :
|
|
5732
|
+
}, xa = 400, Sa = 2e3;
|
|
5733
|
+
function Ca(e) {
|
|
5734
|
+
return Math.max(1, Math.min(typeof e == "number" && Number.isFinite(e) ? Math.floor(e) : xa, Sa));
|
|
5717
5735
|
}
|
|
5718
|
-
function
|
|
5736
|
+
function wa(e, t) {
|
|
5719
5737
|
return e.length <= t ? e : `${e.slice(0, t)}...`;
|
|
5720
5738
|
}
|
|
5721
|
-
function
|
|
5739
|
+
function Ta(e, t, n, r = 0) {
|
|
5722
5740
|
if (e == null || e === "") return "";
|
|
5723
|
-
if (typeof e == "string") return
|
|
5741
|
+
if (typeof e == "string") return wa(e, t);
|
|
5724
5742
|
if (typeof e == "number" || typeof e == "boolean") return String(e);
|
|
5725
|
-
if (typeof e != "object") return
|
|
5743
|
+
if (typeof e != "object") return wa(String(e), t);
|
|
5726
5744
|
if (n.has(e)) return "[Circular]";
|
|
5727
5745
|
if (r >= 3) return Array.isArray(e) ? "[...]" : "{...}";
|
|
5728
5746
|
n.add(e);
|
|
@@ -5733,30 +5751,30 @@ function wa(e, t, n, r = 0) {
|
|
|
5733
5751
|
a.push(a.length > 1 ? ",..." : "...");
|
|
5734
5752
|
break;
|
|
5735
5753
|
}
|
|
5736
|
-
let f =
|
|
5754
|
+
let f = Ta(c, d, n, r + 1);
|
|
5737
5755
|
if (a.push(u, f), a.join("").length >= t) {
|
|
5738
5756
|
a.push(",...");
|
|
5739
5757
|
break;
|
|
5740
5758
|
}
|
|
5741
5759
|
}
|
|
5742
|
-
return a.push(i), n.delete(e),
|
|
5760
|
+
return a.push(i), n.delete(e), wa(a.join(""), t);
|
|
5743
5761
|
}
|
|
5744
|
-
function
|
|
5745
|
-
return
|
|
5762
|
+
function Ea(e, t) {
|
|
5763
|
+
return Ta(e, t, /* @__PURE__ */ new WeakSet());
|
|
5746
5764
|
}
|
|
5747
|
-
var
|
|
5748
|
-
let t = e.surface ?? "detail", n =
|
|
5765
|
+
var Da = (e) => {
|
|
5766
|
+
let t = e.surface ?? "detail", n = Ca(e.field.display?.list_preview?.max_chars);
|
|
5749
5767
|
return (r) => {
|
|
5750
|
-
if (
|
|
5768
|
+
if (Jn(r)) return $;
|
|
5751
5769
|
if (t === "list") {
|
|
5752
|
-
let e =
|
|
5770
|
+
let e = Ea(r, n);
|
|
5753
5771
|
return /* @__PURE__ */ V("span", {
|
|
5754
5772
|
className: "font-mono text-xs text-muted-foreground",
|
|
5755
5773
|
title: e,
|
|
5756
5774
|
children: e
|
|
5757
5775
|
});
|
|
5758
5776
|
}
|
|
5759
|
-
return /* @__PURE__ */ V(
|
|
5777
|
+
return /* @__PURE__ */ V(Yn, {
|
|
5760
5778
|
field: e.field,
|
|
5761
5779
|
fieldName: e.fieldName,
|
|
5762
5780
|
value: r,
|
|
@@ -5764,7 +5782,7 @@ var Ea = (e) => {
|
|
|
5764
5782
|
locale: e.locale
|
|
5765
5783
|
});
|
|
5766
5784
|
};
|
|
5767
|
-
},
|
|
5785
|
+
}, Oa = [
|
|
5768
5786
|
{
|
|
5769
5787
|
pattern: /```[^\n]*\n?([\s\S]*?)```/g,
|
|
5770
5788
|
replacement: "$1"
|
|
@@ -5827,13 +5845,13 @@ var Ea = (e) => {
|
|
|
5827
5845
|
replacement: ""
|
|
5828
5846
|
}
|
|
5829
5847
|
];
|
|
5830
|
-
function
|
|
5848
|
+
function ka(e) {
|
|
5831
5849
|
if (!e) return {
|
|
5832
5850
|
text: "",
|
|
5833
5851
|
isPlain: !0
|
|
5834
5852
|
};
|
|
5835
5853
|
let t = e, n = !1;
|
|
5836
|
-
for (let e of
|
|
5854
|
+
for (let e of Oa) {
|
|
5837
5855
|
let r = t.replace(e.pattern, e.replacement);
|
|
5838
5856
|
r !== t && e.structural !== !1 && (n = !0), t = r;
|
|
5839
5857
|
}
|
|
@@ -5844,123 +5862,123 @@ function Oa(e) {
|
|
|
5844
5862
|
}
|
|
5845
5863
|
//#endregion
|
|
5846
5864
|
//#region src/components/fields/cells/factories/markdown.tsx
|
|
5847
|
-
function
|
|
5848
|
-
return /* @__PURE__ */ V(
|
|
5865
|
+
function Aa(e) {
|
|
5866
|
+
return /* @__PURE__ */ V(an, { content: e });
|
|
5849
5867
|
}
|
|
5850
|
-
var
|
|
5868
|
+
var ja = (e) => {
|
|
5851
5869
|
let t = e.surface === "list";
|
|
5852
5870
|
return (e) => {
|
|
5853
5871
|
let n = e == null ? "" : String(e);
|
|
5854
5872
|
if (!n) return $;
|
|
5855
|
-
if (!t) return
|
|
5856
|
-
let { text: r, isPlain: i } =
|
|
5873
|
+
if (!t) return Aa(n);
|
|
5874
|
+
let { text: r, isPlain: i } = ka(n);
|
|
5857
5875
|
return i ? /* @__PURE__ */ V("span", {
|
|
5858
5876
|
title: r,
|
|
5859
5877
|
children: r
|
|
5860
5878
|
}) : /* @__PURE__ */ V(ge, {
|
|
5861
|
-
content:
|
|
5879
|
+
content: Aa(n),
|
|
5862
5880
|
children: /* @__PURE__ */ V("span", {
|
|
5863
5881
|
title: r,
|
|
5864
5882
|
children: r
|
|
5865
5883
|
})
|
|
5866
5884
|
});
|
|
5867
5885
|
};
|
|
5868
|
-
},
|
|
5886
|
+
}, Ma = "[SET]", Na = {
|
|
5869
5887
|
fontSize: 12.5,
|
|
5870
5888
|
color: "var(--text-3)"
|
|
5871
|
-
},
|
|
5889
|
+
}, Pa = {
|
|
5872
5890
|
fontSize: 12.5,
|
|
5873
5891
|
color: "var(--text-4)",
|
|
5874
5892
|
fontStyle: "italic"
|
|
5875
|
-
},
|
|
5893
|
+
}, Fa = () => (e) => e === Ma || typeof e == "string" && e !== "" ? /* @__PURE__ */ V("span", {
|
|
5876
5894
|
className: "mono",
|
|
5877
|
-
style: Ma,
|
|
5878
|
-
children: ja
|
|
5879
|
-
}) : /* @__PURE__ */ V("span", {
|
|
5880
5895
|
style: Na,
|
|
5896
|
+
children: Ma
|
|
5897
|
+
}) : /* @__PURE__ */ V("span", {
|
|
5898
|
+
style: Pa,
|
|
5881
5899
|
children: "Not set"
|
|
5882
5900
|
});
|
|
5883
5901
|
//#endregion
|
|
5884
5902
|
//#region src/components/fields/cells/factories/richTextPreview.tsx
|
|
5885
|
-
function
|
|
5886
|
-
return /* @__PURE__ */ V(
|
|
5903
|
+
function Ia(e, t) {
|
|
5904
|
+
return /* @__PURE__ */ V(an, {
|
|
5887
5905
|
content: e,
|
|
5888
5906
|
files: t
|
|
5889
5907
|
});
|
|
5890
5908
|
}
|
|
5891
|
-
var
|
|
5909
|
+
var La = (e) => {
|
|
5892
5910
|
let { fieldName: t } = e, n = e.surface === "list";
|
|
5893
5911
|
return (e, r) => {
|
|
5894
5912
|
let i = r?.$files?.[t], a = k(e, i);
|
|
5895
5913
|
if (!a.markdown) return $;
|
|
5896
|
-
if (!n) return
|
|
5897
|
-
let { text: o, isPlain: s } =
|
|
5914
|
+
if (!n) return Ia(a.markdown, a.files);
|
|
5915
|
+
let { text: o, isPlain: s } = ka(a.markdown);
|
|
5898
5916
|
return s ? /* @__PURE__ */ V("span", {
|
|
5899
5917
|
title: o,
|
|
5900
5918
|
children: o
|
|
5901
5919
|
}) : /* @__PURE__ */ V(ge, {
|
|
5902
|
-
content:
|
|
5920
|
+
content: Ia(a.markdown, a.files),
|
|
5903
5921
|
children: /* @__PURE__ */ V("span", {
|
|
5904
5922
|
title: o,
|
|
5905
5923
|
children: o
|
|
5906
5924
|
})
|
|
5907
5925
|
});
|
|
5908
5926
|
};
|
|
5909
|
-
},
|
|
5927
|
+
}, Ra = { fontSize: 12.5 }, za = {
|
|
5910
5928
|
fontSize: 12.5,
|
|
5911
5929
|
whiteSpace: "pre-wrap",
|
|
5912
5930
|
margin: 0
|
|
5913
5931
|
};
|
|
5914
|
-
function
|
|
5932
|
+
function Ba(e) {
|
|
5915
5933
|
return e == null ? {} : typeof e == "object" && !Array.isArray(e) ? e : typeof e == "string" ? { en: e } : {};
|
|
5916
5934
|
}
|
|
5917
|
-
function
|
|
5935
|
+
function Va(e, t) {
|
|
5918
5936
|
if (t && typeof e[t] == "string" && e[t] !== "") return [t, e[t]];
|
|
5919
5937
|
for (let [t, n] of Object.entries(e)) if (typeof n == "string" && n !== "") return [t, n];
|
|
5920
5938
|
return null;
|
|
5921
5939
|
}
|
|
5922
5940
|
//#endregion
|
|
5923
5941
|
//#region src/components/fields/cells/registry.ts
|
|
5924
|
-
var
|
|
5925
|
-
text:
|
|
5926
|
-
bool_pill:
|
|
5927
|
-
badge:
|
|
5928
|
-
status_pill:
|
|
5929
|
-
tag_list:
|
|
5930
|
-
time_ago:
|
|
5931
|
-
timestamp_full:
|
|
5932
|
-
next_run:
|
|
5933
|
-
money:
|
|
5934
|
-
ref_link:
|
|
5935
|
-
url:
|
|
5936
|
-
email:
|
|
5937
|
-
phone:
|
|
5938
|
-
number:
|
|
5939
|
-
code:
|
|
5940
|
-
link:
|
|
5941
|
-
json:
|
|
5942
|
-
markdown:
|
|
5943
|
-
password_mask:
|
|
5944
|
-
rich_text_preview:
|
|
5942
|
+
var Ha = {
|
|
5943
|
+
text: di,
|
|
5944
|
+
bool_pill: fi,
|
|
5945
|
+
badge: _i,
|
|
5946
|
+
status_pill: bi,
|
|
5947
|
+
tag_list: Ci,
|
|
5948
|
+
time_ago: wi,
|
|
5949
|
+
timestamp_full: Ti,
|
|
5950
|
+
next_run: Oi,
|
|
5951
|
+
money: ki,
|
|
5952
|
+
ref_link: Mi,
|
|
5953
|
+
url: ia,
|
|
5954
|
+
email: oa,
|
|
5955
|
+
phone: ua,
|
|
5956
|
+
number: ha,
|
|
5957
|
+
code: _a,
|
|
5958
|
+
link: ba,
|
|
5959
|
+
json: Da,
|
|
5960
|
+
markdown: ja,
|
|
5961
|
+
password_mask: Fa,
|
|
5962
|
+
rich_text_preview: La,
|
|
5945
5963
|
multilang_inline: (e) => {
|
|
5946
5964
|
let { field: t, locale: n } = e, r = t.type === "multilang_text";
|
|
5947
5965
|
return (e) => {
|
|
5948
|
-
let t = Ba(
|
|
5966
|
+
let t = Va(Ba(e), n);
|
|
5949
5967
|
if (!t) return r ? /* @__PURE__ */ V("p", {
|
|
5950
|
-
style:
|
|
5968
|
+
style: za,
|
|
5951
5969
|
children: "—"
|
|
5952
5970
|
}) : /* @__PURE__ */ V("span", {
|
|
5953
|
-
style:
|
|
5971
|
+
style: Ra,
|
|
5954
5972
|
children: "—"
|
|
5955
5973
|
});
|
|
5956
5974
|
let [i, a] = t;
|
|
5957
5975
|
return r ? /* @__PURE__ */ V("p", {
|
|
5958
|
-
style:
|
|
5976
|
+
style: za,
|
|
5959
5977
|
lang: i,
|
|
5960
5978
|
dir: "auto",
|
|
5961
5979
|
children: a
|
|
5962
5980
|
}) : /* @__PURE__ */ V("span", {
|
|
5963
|
-
style:
|
|
5981
|
+
style: Ra,
|
|
5964
5982
|
lang: i,
|
|
5965
5983
|
dir: "auto",
|
|
5966
5984
|
children: a
|
|
@@ -5968,53 +5986,53 @@ var Va = {
|
|
|
5968
5986
|
};
|
|
5969
5987
|
}
|
|
5970
5988
|
};
|
|
5971
|
-
Object.keys(
|
|
5972
|
-
function
|
|
5973
|
-
let t = e.field.display?.widget ?? "text", n =
|
|
5989
|
+
Object.keys(Ha).sort();
|
|
5990
|
+
function Ua(e) {
|
|
5991
|
+
let t = e.field.display?.widget ?? "text", n = Ha[t];
|
|
5974
5992
|
if (!n) throw Error(`resolveCellRenderer: no factory registered for widget "${t}" (field "${e.fieldName}"). The engine must stamp a smart default at YAML-load time; an unknown widget here indicates an out-of-sync allow-list.`);
|
|
5975
5993
|
return n(e);
|
|
5976
5994
|
}
|
|
5977
5995
|
//#endregion
|
|
5978
5996
|
//#region src/components/fields/index.tsx
|
|
5979
|
-
var
|
|
5980
|
-
string:
|
|
5981
|
-
text:
|
|
5982
|
-
rich_text:
|
|
5983
|
-
int:
|
|
5984
|
-
float:
|
|
5985
|
-
decimal:
|
|
5986
|
-
bool:
|
|
5987
|
-
timestamp:
|
|
5988
|
-
date:
|
|
5989
|
-
time:
|
|
5990
|
-
enum:
|
|
5991
|
-
email:
|
|
5992
|
-
url:
|
|
5993
|
-
phone:
|
|
5994
|
-
uuid:
|
|
5995
|
-
bytes:
|
|
5996
|
-
ref:
|
|
5997
|
-
json:
|
|
5998
|
-
tags:
|
|
5999
|
-
string_array:
|
|
6000
|
-
int_array:
|
|
6001
|
-
uuid_array:
|
|
6002
|
-
multilang:
|
|
6003
|
-
multilang_text:
|
|
6004
|
-
structure:
|
|
6005
|
-
secret:
|
|
6006
|
-
password:
|
|
5997
|
+
var Wa = {
|
|
5998
|
+
string: Sn,
|
|
5999
|
+
text: Cn,
|
|
6000
|
+
rich_text: ci,
|
|
6001
|
+
int: Vn,
|
|
6002
|
+
float: Vn,
|
|
6003
|
+
decimal: Vn,
|
|
6004
|
+
bool: Rn,
|
|
6005
|
+
timestamp: Ln,
|
|
6006
|
+
date: Ln,
|
|
6007
|
+
time: Ln,
|
|
6008
|
+
enum: Tn,
|
|
6009
|
+
email: En,
|
|
6010
|
+
url: Dn,
|
|
6011
|
+
phone: On,
|
|
6012
|
+
uuid: Sn,
|
|
6013
|
+
bytes: Sn,
|
|
6014
|
+
ref: Gn,
|
|
6015
|
+
json: Yn,
|
|
6016
|
+
tags: Sn,
|
|
6017
|
+
string_array: cr,
|
|
6018
|
+
int_array: ur,
|
|
6019
|
+
uuid_array: cr,
|
|
6020
|
+
multilang: Zn,
|
|
6021
|
+
multilang_text: $n,
|
|
6022
|
+
structure: er,
|
|
6023
|
+
secret: ir,
|
|
6024
|
+
password: or
|
|
6007
6025
|
};
|
|
6008
|
-
for (let e of
|
|
6009
|
-
function
|
|
6010
|
-
if (e.field.type === "json" && e.field.structure) return /* @__PURE__ */ V(
|
|
6026
|
+
for (let e of bn) if (!Wa[e]) throw Error(`editRegistry: missing entry for FieldType "${e}". The TS union (types/fieldType.ts) and editRegistry must stay in sync with golang/internal/engine/types.go.`);
|
|
6027
|
+
function Ga(e) {
|
|
6028
|
+
if (e.field.type === "json" && e.field.structure) return /* @__PURE__ */ V(er, { ...e });
|
|
6011
6029
|
if (e.mode === "edit") {
|
|
6012
|
-
let t =
|
|
6030
|
+
let t = Wa[e.field.type];
|
|
6013
6031
|
if (!t) throw Error(`renderField: no edit-mode renderer for FieldType "${e.field.type}" (field "${e.fieldName}"). editRegistry must be total over FieldType; check types/fieldType.ts and components/fields/index.tsx.`);
|
|
6014
6032
|
return /* @__PURE__ */ V(t, { ...e });
|
|
6015
6033
|
}
|
|
6016
6034
|
if (!e.field.display?.widget) throw Error(`renderField: display mode requires a non-empty field.display.widget (field "${e.fieldName}", type "${e.field.type}"). The engine must stamp a smart default; an empty widget here means the field bypassed ResolveDefaultWidgets.`);
|
|
6017
|
-
return
|
|
6035
|
+
return Ua({
|
|
6018
6036
|
field: e.field,
|
|
6019
6037
|
fieldName: e.fieldName,
|
|
6020
6038
|
surface: e.surface ?? "detail",
|
|
@@ -6028,26 +6046,26 @@ function Wa(e) {
|
|
|
6028
6046
|
}
|
|
6029
6047
|
//#endregion
|
|
6030
6048
|
//#region src/hooks/useUserLocale.ts
|
|
6031
|
-
var
|
|
6032
|
-
function
|
|
6049
|
+
var Ka = "en";
|
|
6050
|
+
function qa() {
|
|
6033
6051
|
if (typeof navigator > "u") return;
|
|
6034
6052
|
let e = navigator.language;
|
|
6035
6053
|
if (e) return e.split("-")[0] || void 0;
|
|
6036
6054
|
}
|
|
6037
|
-
function
|
|
6038
|
-
let e =
|
|
6055
|
+
function Ja() {
|
|
6056
|
+
let e = jt((e) => e.user), { data: t } = Mt(), n = e?.language;
|
|
6039
6057
|
if (n && n.trim()) return n;
|
|
6040
6058
|
let r = t?.languages?.[0]?.code;
|
|
6041
|
-
return r && r.trim() ? r :
|
|
6059
|
+
return r && r.trim() ? r : qa() || Ka;
|
|
6042
6060
|
}
|
|
6043
6061
|
//#endregion
|
|
6044
6062
|
//#region src/components/primitives/dataTableStyles.ts
|
|
6045
|
-
var
|
|
6063
|
+
var Ya = {
|
|
6046
6064
|
width: "100%",
|
|
6047
6065
|
fontSize: 12.5,
|
|
6048
6066
|
borderCollapse: "separate",
|
|
6049
6067
|
borderSpacing: 0
|
|
6050
|
-
},
|
|
6068
|
+
}, Xa = {
|
|
6051
6069
|
height: 30,
|
|
6052
6070
|
padding: "0 12px",
|
|
6053
6071
|
textAlign: "left",
|
|
@@ -6055,13 +6073,13 @@ var Ja = {
|
|
|
6055
6073
|
fontSize: 11,
|
|
6056
6074
|
color: "var(--text-3)",
|
|
6057
6075
|
borderBottom: "1px solid var(--divider)"
|
|
6058
|
-
},
|
|
6076
|
+
}, Za = {
|
|
6059
6077
|
padding: "6px 12px",
|
|
6060
6078
|
borderBottom: "1px solid var(--divider)",
|
|
6061
6079
|
color: "var(--text-2)",
|
|
6062
6080
|
verticalAlign: "middle"
|
|
6063
6081
|
};
|
|
6064
6082
|
//#endregion
|
|
6065
|
-
export {
|
|
6083
|
+
export { Ot as $, q as $t, ln as A, Ue as At, an as B, we as Bt, Un as C, Qe as Ct, xn as D, He as Dt, kn as E, ke as Et, cn as F, We as Ft, Qt as G, ge as Gt, $t as H, Se as Ht, sn as I, Oe as It, At as J, se as Jt, Mt as K, le as Kt, yn as L, De as Lt, fn as M, Ve as Mt, vn as N, je as Nt, hn as O, Be as Ot, mn as P, Z as Pt, Dt as Q, J as Qt, pn as R, Ee as Rt, Wn as S, ct as St, An as T, Ie as Tt, en as U, ye as Ut, tn as V, Ce as Vt, qt as W, _e as Wt, xt as X, X as Xt, vt as Y, oe as Yt, kt as Z, Y as Zt, vr as _, it as _t, Ga as a, Ct as at, mr as b, at as bt, oi as c, ut as ct, Zr as d, rt as dt, ae as en, Tt as et, Xr as f, $e as ft, Or as g, Q as gt, kr as h, ft as ht, Ja as i, Et as it, dn as j, Fe as jt, _n as k, Ge as kt, Kr as l, dt as lt, Ar as m, nt as mt, Xa as n, yt as nt, Ua as o, qe as ot, Yr as p, Je as pt, jt as q, ce as qt, Ya as r, bt as rt, ai as s, lt as st, Za as t, St as tt, Jr as u, tt as ut, _r as v, st as vt, Hn as w, Ke as wt, fr as x, et as xt, pr as y, ot as yt, un as z, Te as zt };
|
|
6066
6084
|
|
|
6067
|
-
//# sourceMappingURL=dataTableStyles-
|
|
6085
|
+
//# sourceMappingURL=dataTableStyles-DctG2tMU.js.map
|