@declarion/react 0.38.5 → 0.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist-lib/{DraggableChildrenTable-DvJO6-m0.js → DraggableChildrenTable-Ctmn0liO.js} +27 -27
- package/dist-lib/{Grid-D2ArPFCz.js → Grid-BsIkTp3u.js} +42 -42
- package/dist-lib/{LayoutRenderer-C8DQ61Vo.js → LayoutRenderer-D4oTfZhV.js} +833 -731
- package/dist-lib/{MarkdownRenderer-CSuODN70.js → MarkdownRenderer-B-2CrtjU.js} +1 -1
- package/dist-lib/{RefreshControl-CHvOUn0o.js → RefreshControl-VQf34HKZ.js} +302 -220
- package/dist-lib/SmartDetailPage.impl-HMaLVDlV.js +1802 -0
- package/dist-lib/SmartRecordListPage.impl-Cxm7qvlZ.js +763 -0
- package/dist-lib/api/params.d.ts +12 -11
- package/dist-lib/components/columns/ColumnPicker.d.ts +11 -1
- package/dist-lib/components/detail-layout/EvidenceBlock.d.ts +6 -0
- package/dist-lib/components/detail-layout/useManualColumnResize.d.ts +25 -0
- package/dist-lib/components/list/QuickPeek.d.ts +11 -2
- package/dist-lib/components/pages/list/{ListBulkBar.d.ts → ListFloatbar.d.ts} +3 -3
- package/dist-lib/components/pages/list/RowActionsCell.d.ts +8 -10
- package/dist-lib/components/pages/list/RowContextMenu.d.ts +29 -0
- package/dist-lib/components/pages/list/SaveViewDialog.d.ts +5 -1
- package/dist-lib/components/pages/list/cardProjection.d.ts +1 -1
- package/dist-lib/components/pages/list/column-sizing.d.ts +15 -0
- package/dist-lib/components/pages/list/columns.d.ts +3 -0
- package/dist-lib/components/pages/list/useHeaderReorder.d.ts +26 -0
- package/dist-lib/components/pages/list/useRowMenu.d.ts +47 -0
- package/dist-lib/components/pages/profile/Profile.d.ts +3 -0
- package/dist-lib/components/pages/tenant-params/TenantParamsPage.d.ts +2 -0
- package/dist-lib/components/params/ParamsBlock.d.ts +25 -0
- package/dist-lib/components/params/param-editors.d.ts +28 -0
- package/dist-lib/components/primitives/Dropdown.d.ts +10 -1
- package/dist-lib/components/shared/ActionButton.d.ts +1 -7
- package/dist-lib/components/shared/ActionDialog.d.ts +2 -2
- package/dist-lib/components/shared/ResponsiveActionBar.d.ts +45 -23
- package/dist-lib/declarion-react.css +1 -1
- package/dist-lib/hooks/useParams.d.ts +45 -1
- package/dist-lib/index.d.ts +0 -2
- package/dist-lib/index.js +3561 -2570
- package/dist-lib/lib/actions.d.ts +44 -3
- package/dist-lib/lib/evidence-verdict.d.ts +11 -0
- package/dist-lib/lib/rowClickGesture.d.ts +14 -0
- package/dist-lib/registry-DFtAh6zc.js +4991 -0
- package/dist-lib/stores/list-layout.d.ts +86 -0
- package/dist-lib/testing.js +27 -27
- package/dist-lib/types/api.d.ts +29 -1
- package/dist-lib/types/schema.d.ts +12 -0
- package/dist-lib/{useCurrentScreen-DD3KdlMj.js → useCurrentScreen-mw8TfE8q.js} +596 -382
- package/dist-lib/{useProperties-CliP5qvg.js → useProperties-gMdnhdhO.js} +117 -117
- package/dist-lib/{value-CNy3_xCA.js → value-t9ETvWIJ.js} +4 -4
- package/package.json +1 -1
- package/dist-lib/SmartDetailPage.impl-Cl306lX3.js +0 -1768
- package/dist-lib/SmartRecordListPage.impl-j8bhyL4e.js +0 -763
- package/dist-lib/components/list/RowMenu.d.ts +0 -23
- package/dist-lib/components/shared/ActionConfirmDialog.d.ts +0 -10
- package/dist-lib/registry-C3hbFTDQ.js +0 -5400
|
@@ -161,54 +161,65 @@ function A({ children: e }) {
|
|
|
161
161
|
}
|
|
162
162
|
//#endregion
|
|
163
163
|
//#region src/components/primitives/Dropdown.tsx
|
|
164
|
-
function j({ open: e, onClose: t, anchor: n,
|
|
165
|
-
let
|
|
164
|
+
function j({ open: e, onClose: t, anchor: n, anchorPoint: r, children: i, align: a = "start", width: o, style: s }) {
|
|
165
|
+
let c = f(null), [d, m] = p(null), h = r?.x, g = r?.y;
|
|
166
166
|
if (u(() => {
|
|
167
|
-
if (!e || !n) return;
|
|
168
|
-
let t = n
|
|
169
|
-
|
|
167
|
+
if (!e || !n && h === void 0) return;
|
|
168
|
+
let t = n ? n.getBoundingClientRect() : {
|
|
169
|
+
top: g,
|
|
170
|
+
bottom: g,
|
|
171
|
+
left: h,
|
|
172
|
+
right: h
|
|
173
|
+
}, r = M(), i = c.current?.offsetHeight || 260, s = r - t.bottom < i + 12 && t.top > i + 12 ? "above" : "below", l = s === "below" ? t.bottom + 4 : t.top - 4 - i, u = typeof window < "u" ? window.innerWidth : 0, d = a === "end" ? t.right - (o || 200) : t.left;
|
|
174
|
+
u && (d = Math.max(8, Math.min(d, u - (o || 200) - 8))), m((e) => e && e.top === l && e.left === d && e.placement === s ? e : {
|
|
170
175
|
top: l,
|
|
171
|
-
left:
|
|
172
|
-
placement:
|
|
176
|
+
left: d,
|
|
177
|
+
placement: s
|
|
173
178
|
});
|
|
174
179
|
}, [
|
|
175
180
|
e,
|
|
176
181
|
n,
|
|
177
|
-
|
|
178
|
-
|
|
182
|
+
h,
|
|
183
|
+
g,
|
|
184
|
+
a,
|
|
185
|
+
o
|
|
179
186
|
]), l(() => {
|
|
180
187
|
if (!e) return;
|
|
181
188
|
let r = (e) => {
|
|
182
189
|
let r = e.target;
|
|
183
|
-
|
|
190
|
+
c.current && r && !c.current.contains(r) && (!n || !n.contains(r)) && t?.();
|
|
191
|
+
}, i = (e) => {
|
|
192
|
+
e.key === "Escape" && t?.();
|
|
193
|
+
};
|
|
194
|
+
return document.addEventListener("mousedown", r), document.addEventListener("keydown", i), () => {
|
|
195
|
+
document.removeEventListener("mousedown", r), document.removeEventListener("keydown", i);
|
|
184
196
|
};
|
|
185
|
-
return document.addEventListener("mousedown", r), () => document.removeEventListener("mousedown", r);
|
|
186
197
|
}, [
|
|
187
198
|
e,
|
|
188
199
|
n,
|
|
189
200
|
t
|
|
190
|
-
]), !e || !
|
|
191
|
-
let
|
|
201
|
+
]), !e || !d) return null;
|
|
202
|
+
let _ = d.placement === "below" ? `calc(var(--app-height) - ${d.top}px - 8px)` : `${Math.max(120, d.top - 8)}px`, v = N(s?.maxHeight), y = v ? `min(${_}, ${v})` : _;
|
|
192
203
|
return S(/* @__PURE__ */ b("div", {
|
|
193
|
-
ref:
|
|
204
|
+
ref: c,
|
|
194
205
|
style: {
|
|
195
206
|
position: "fixed",
|
|
196
|
-
top:
|
|
197
|
-
left:
|
|
207
|
+
top: d.top,
|
|
208
|
+
left: d.left,
|
|
198
209
|
zIndex: 200,
|
|
199
|
-
minWidth:
|
|
200
|
-
maxWidth: `calc(100vw - ${
|
|
210
|
+
minWidth: o || 200,
|
|
211
|
+
maxWidth: `calc(100vw - ${d.left}px - 8px)`,
|
|
201
212
|
background: "var(--surface)",
|
|
202
213
|
border: "1px solid var(--border)",
|
|
203
214
|
borderRadius: 8,
|
|
204
215
|
boxShadow: "var(--shadow-lg)",
|
|
205
216
|
padding: 4,
|
|
206
|
-
...
|
|
207
|
-
maxHeight:
|
|
208
|
-
overflowY:
|
|
217
|
+
...s,
|
|
218
|
+
maxHeight: y,
|
|
219
|
+
overflowY: s?.overflowY ?? "auto",
|
|
209
220
|
overscrollBehavior: "contain"
|
|
210
221
|
},
|
|
211
|
-
children:
|
|
222
|
+
children: i
|
|
212
223
|
}), document.body);
|
|
213
224
|
}
|
|
214
225
|
function M() {
|
|
@@ -221,19 +232,19 @@ function M() {
|
|
|
221
232
|
let t = window.visualViewport?.height;
|
|
222
233
|
return Number.isFinite(t) && t && t > 0 ? t : window.innerHeight;
|
|
223
234
|
}
|
|
224
|
-
function
|
|
235
|
+
function N(e) {
|
|
225
236
|
if (e != null) return typeof e == "number" ? `${e}px` : String(e);
|
|
226
237
|
}
|
|
227
238
|
//#endregion
|
|
228
239
|
//#region src/components/primitives/HoverCard.tsx
|
|
229
|
-
var
|
|
230
|
-
function
|
|
240
|
+
var ee = 400, te = 150, ne = 320, re = 240, ie = 4, ae = 4;
|
|
241
|
+
function oe({ content: e, children: t, width: n = ne, align: r = "center", style: i }) {
|
|
231
242
|
let a = f(null), o = f(null), c = f(null), u = f(null), [d, m] = p(!1), [h, g] = p(null), [_, v] = p(!1), C = s(() => {
|
|
232
243
|
let e = a.current;
|
|
233
244
|
if (!e) return;
|
|
234
|
-
let t = e.getBoundingClientRect(), i = typeof window < "u" ? window.visualViewport : void 0, s = i?.width ?? (typeof window < "u" ? window.innerWidth : 0), c = i?.height ?? (typeof window < "u" ? window.innerHeight : 0), l = i?.offsetLeft ?? 0, u = i?.offsetTop ?? 0, d = Math.min(n, Math.max(160, s -
|
|
245
|
+
let t = e.getBoundingClientRect(), i = typeof window < "u" ? window.visualViewport : void 0, s = i?.width ?? (typeof window < "u" ? window.innerWidth : 0), c = i?.height ?? (typeof window < "u" ? window.innerHeight : 0), l = i?.offsetLeft ?? 0, u = i?.offsetTop ?? 0, d = Math.min(n, Math.max(160, s - ie * 2)), f = o.current?.offsetHeight ?? re, p = u + c - t.bottom < f + ae * 2 && t.top > f + ae * 2 ? "above" : "below", m = p === "below" ? t.bottom + ae : t.top - ae - f, h;
|
|
235
246
|
h = r === "start" ? t.left : r === "end" ? t.right - d : t.left + t.width / 2 - d / 2;
|
|
236
|
-
let _ = l +
|
|
247
|
+
let _ = l + ie, v = l + s - ie;
|
|
237
248
|
h + d > v && (h = Math.max(_, t.right - d)), h < _ && (h = _), g((e) => e && e.top === m && e.left === h && e.width === d && e.placement === p ? e : {
|
|
238
249
|
top: m,
|
|
239
250
|
left: h,
|
|
@@ -252,7 +263,7 @@ function se({ content: e, children: t, width: n = re, align: r = "center", style
|
|
|
252
263
|
}, []), D = () => {
|
|
253
264
|
u.current !== null && (window.clearTimeout(u.current), u.current = null), !(d || c.current !== null) && (c.current = window.setTimeout(() => {
|
|
254
265
|
c.current = null, m(!0);
|
|
255
|
-
},
|
|
266
|
+
}, ee));
|
|
256
267
|
}, O = s(() => {
|
|
257
268
|
E(), m(!0);
|
|
258
269
|
}, [E]), k = s(() => {
|
|
@@ -260,7 +271,7 @@ function se({ content: e, children: t, width: n = re, align: r = "center", style
|
|
|
260
271
|
}, [E]), A = () => {
|
|
261
272
|
c.current !== null && (window.clearTimeout(c.current), c.current = null), u.current === null && (u.current = window.setTimeout(() => {
|
|
262
273
|
u.current = null, m(!1);
|
|
263
|
-
},
|
|
274
|
+
}, te));
|
|
264
275
|
};
|
|
265
276
|
l(() => () => {
|
|
266
277
|
E(), w.current &&= (w.current.disconnect(), null);
|
|
@@ -292,7 +303,7 @@ function se({ content: e, children: t, width: n = re, align: r = "center", style
|
|
|
292
303
|
top: h.top,
|
|
293
304
|
left: h.left,
|
|
294
305
|
width: h.width,
|
|
295
|
-
maxHeight:
|
|
306
|
+
maxHeight: re,
|
|
296
307
|
overflowY: "auto",
|
|
297
308
|
zIndex: 250,
|
|
298
309
|
background: "var(--surface)",
|
|
@@ -338,7 +349,7 @@ function se({ content: e, children: t, width: n = re, align: r = "center", style
|
|
|
338
349
|
}
|
|
339
350
|
//#endregion
|
|
340
351
|
//#region src/components/primitives/Chip.tsx
|
|
341
|
-
function
|
|
352
|
+
function se({ icon: e, children: n, onRemove: r, onClick: i }) {
|
|
342
353
|
return /* @__PURE__ */ x("span", {
|
|
343
354
|
onClick: i,
|
|
344
355
|
style: {
|
|
@@ -911,7 +922,7 @@ function Pe({ value: e = [], onChange: t }) {
|
|
|
911
922
|
padding: "4px 6px",
|
|
912
923
|
alignItems: "center"
|
|
913
924
|
},
|
|
914
|
-
children: [e.map((n, r) => /* @__PURE__ */ b(
|
|
925
|
+
children: [e.map((n, r) => /* @__PURE__ */ b(se, {
|
|
915
926
|
tone: "slate",
|
|
916
927
|
onRemove: () => t(e.filter((e, t) => t !== r)),
|
|
917
928
|
children: n
|
|
@@ -2764,7 +2775,7 @@ var Z = {
|
|
|
2764
2775
|
update: Gr,
|
|
2765
2776
|
dismiss: (e) => v.dismiss(e),
|
|
2766
2777
|
dismissAll: () => v.dismiss()
|
|
2767
|
-
}, Kr = o(() => import("./MarkdownRenderer-
|
|
2778
|
+
}, Kr = o(() => import("./MarkdownRenderer-B-2CrtjU.js").then((e) => ({ default: e.MarkdownRenderer })));
|
|
2768
2779
|
function qr() {
|
|
2769
2780
|
return /* @__PURE__ */ b("div", { className: "h-4 w-2/3 rounded bg-muted animate-pulse" });
|
|
2770
2781
|
}
|
|
@@ -3396,7 +3407,7 @@ function Ni({ ref: e, value: t, onChange: n, refs: r, displayFieldOverride: i, i
|
|
|
3396
3407
|
v,
|
|
3397
3408
|
g,
|
|
3398
3409
|
A
|
|
3399
|
-
]),
|
|
3410
|
+
]), N = d(() => {
|
|
3400
3411
|
let e = (u ?? []).map((e) => ({
|
|
3401
3412
|
value: e.code,
|
|
3402
3413
|
label: L(e.label) || e.code
|
|
@@ -3445,7 +3456,7 @@ function Ni({ ref: e, value: t, onChange: n, refs: r, displayFieldOverride: i, i
|
|
|
3445
3456
|
"aria-labelledby": o,
|
|
3446
3457
|
"aria-required": c || void 0,
|
|
3447
3458
|
value: E,
|
|
3448
|
-
options:
|
|
3459
|
+
options: N,
|
|
3449
3460
|
onChange: (e) => n(e || null),
|
|
3450
3461
|
onSearchChange: x,
|
|
3451
3462
|
placeholder: l
|
|
@@ -3903,7 +3914,7 @@ function Zi({ field: e, fieldName: n, value: r, mode: i, onChange: a, fieldId: o
|
|
|
3903
3914
|
flexWrap: "wrap",
|
|
3904
3915
|
gap: 4
|
|
3905
3916
|
},
|
|
3906
|
-
children: s.map((e, t) => /* @__PURE__ */ b(
|
|
3917
|
+
children: s.map((e, t) => /* @__PURE__ */ b(se, {
|
|
3907
3918
|
tone: "slate",
|
|
3908
3919
|
children: e
|
|
3909
3920
|
}, t))
|
|
@@ -3926,7 +3937,7 @@ function Zi({ field: e, fieldName: n, value: r, mode: i, onChange: a, fieldId: o
|
|
|
3926
3937
|
flexWrap: "wrap",
|
|
3927
3938
|
gap: 4
|
|
3928
3939
|
},
|
|
3929
|
-
children: s.map((e, t) => /* @__PURE__ */ b(
|
|
3940
|
+
children: s.map((e, t) => /* @__PURE__ */ b(se, {
|
|
3930
3941
|
tone: "slate",
|
|
3931
3942
|
onRemove: () => d(t),
|
|
3932
3943
|
children: e
|
|
@@ -3976,7 +3987,7 @@ function $i({ field: e, fieldName: n, value: r, mode: i, onChange: a, fieldId: o
|
|
|
3976
3987
|
flexWrap: "wrap",
|
|
3977
3988
|
gap: 4
|
|
3978
3989
|
},
|
|
3979
|
-
children: s.map((e, t) => /* @__PURE__ */ b(
|
|
3990
|
+
children: s.map((e, t) => /* @__PURE__ */ b(se, {
|
|
3980
3991
|
tone: "slate",
|
|
3981
3992
|
children: e
|
|
3982
3993
|
}, t))
|
|
@@ -4001,7 +4012,7 @@ function $i({ field: e, fieldName: n, value: r, mode: i, onChange: a, fieldId: o
|
|
|
4001
4012
|
flexWrap: "wrap",
|
|
4002
4013
|
gap: 4
|
|
4003
4014
|
},
|
|
4004
|
-
children: s.map((e, t) => /* @__PURE__ */ b(
|
|
4015
|
+
children: s.map((e, t) => /* @__PURE__ */ b(se, {
|
|
4005
4016
|
tone: "slate",
|
|
4006
4017
|
onRemove: () => d(t),
|
|
4007
4018
|
children: e
|
|
@@ -4294,14 +4305,14 @@ function Da(e) {
|
|
|
4294
4305
|
markdown: e,
|
|
4295
4306
|
files: t
|
|
4296
4307
|
});
|
|
4297
|
-
},
|
|
4308
|
+
}, N = (e, t, n) => {
|
|
4298
4309
|
let r = m.current, i = r?.selectionStart ?? e.markdown.length, a = r?.selectionEnd ?? e.markdown.length, o = `${e.markdown.slice(0, i)}${t}${e.markdown.slice(a)}`, s = n ? ra(e, n).files : e.files;
|
|
4299
4310
|
M(o, s), requestAnimationFrame(() => {
|
|
4300
4311
|
if (!r) return;
|
|
4301
4312
|
let e = i + t.length;
|
|
4302
4313
|
r.focus(), r.setSelectionRange(e, e);
|
|
4303
4314
|
});
|
|
4304
|
-
},
|
|
4315
|
+
}, ee = async (e) => {
|
|
4305
4316
|
if (!r || !n.files) return;
|
|
4306
4317
|
let t = Array.from(e);
|
|
4307
4318
|
if (t.length === 0) return;
|
|
@@ -4326,7 +4337,7 @@ function Da(e) {
|
|
|
4326
4337
|
let s = ka(n, o);
|
|
4327
4338
|
if (w(n.id, () => ya(n.id)), _.current.add(n.id), t.length === 1) {
|
|
4328
4339
|
let e = Oa(a.markdown, ca(s));
|
|
4329
|
-
|
|
4340
|
+
N(a, e, s), a = ra({
|
|
4330
4341
|
markdown: `${a.markdown}${e}`,
|
|
4331
4342
|
files: a.files
|
|
4332
4343
|
}, s);
|
|
@@ -4405,7 +4416,7 @@ function Da(e) {
|
|
|
4405
4416
|
accept: A?.join(","),
|
|
4406
4417
|
multiple: !0,
|
|
4407
4418
|
onChange: (e) => {
|
|
4408
|
-
e.target.files &&
|
|
4419
|
+
e.target.files && ee(e.target.files), e.target.value = "";
|
|
4409
4420
|
}
|
|
4410
4421
|
}),
|
|
4411
4422
|
/* @__PURE__ */ b("textarea", {
|
|
@@ -4417,11 +4428,11 @@ function Da(e) {
|
|
|
4417
4428
|
onChange: (e) => M(e.target.value),
|
|
4418
4429
|
onPaste: (e) => {
|
|
4419
4430
|
let t = Array.from(e.clipboardData.files ?? []).filter((e) => e.size > 0);
|
|
4420
|
-
t.length !== 0 && (e.preventDefault(),
|
|
4431
|
+
t.length !== 0 && (e.preventDefault(), ee(t));
|
|
4421
4432
|
},
|
|
4422
4433
|
onDrop: (e) => {
|
|
4423
4434
|
let t = Array.from(e.dataTransfer.files ?? []).filter((e) => e.size > 0);
|
|
4424
|
-
t.length !== 0 && (e.preventDefault(),
|
|
4435
|
+
t.length !== 0 && (e.preventDefault(), ee(t));
|
|
4425
4436
|
},
|
|
4426
4437
|
onDragOver: (e) => e.preventDefault(),
|
|
4427
4438
|
rows: 12,
|
|
@@ -4642,7 +4653,7 @@ var Ha = (e) => {
|
|
|
4642
4653
|
tone: i.tone,
|
|
4643
4654
|
size: "xs",
|
|
4644
4655
|
children: i.label
|
|
4645
|
-
}, `${n}-${t}`) : /* @__PURE__ */ b(
|
|
4656
|
+
}, `${n}-${t}`) : /* @__PURE__ */ b(se, { children: i?.label ?? n }, `${n}-${t}`);
|
|
4646
4657
|
})
|
|
4647
4658
|
});
|
|
4648
4659
|
}, Ua = () => (e) => {
|
|
@@ -5232,7 +5243,7 @@ var Zo = (e) => {
|
|
|
5232
5243
|
return i ? /* @__PURE__ */ b("span", {
|
|
5233
5244
|
title: r,
|
|
5234
5245
|
children: r
|
|
5235
|
-
}) : /* @__PURE__ */ b(
|
|
5246
|
+
}) : /* @__PURE__ */ b(oe, {
|
|
5236
5247
|
content: Xo(n),
|
|
5237
5248
|
children: /* @__PURE__ */ b("span", {
|
|
5238
5249
|
title: r,
|
|
@@ -5273,7 +5284,7 @@ var rs = (e) => {
|
|
|
5273
5284
|
return s ? /* @__PURE__ */ b("span", {
|
|
5274
5285
|
title: o,
|
|
5275
5286
|
children: o
|
|
5276
|
-
}) : /* @__PURE__ */ b(
|
|
5287
|
+
}) : /* @__PURE__ */ b(oe, {
|
|
5277
5288
|
content: ns(a.markdown, a.files),
|
|
5278
5289
|
children: /* @__PURE__ */ b("span", {
|
|
5279
5290
|
title: o,
|
|
@@ -5415,85 +5426,365 @@ function ms() {
|
|
|
5415
5426
|
return r && r.trim() ? r : ps() || fs;
|
|
5416
5427
|
}
|
|
5417
5428
|
//#endregion
|
|
5429
|
+
//#region src/lib/actions.ts
|
|
5430
|
+
var hs = {
|
|
5431
|
+
__create: "create",
|
|
5432
|
+
__edit: "update",
|
|
5433
|
+
__delete: "delete",
|
|
5434
|
+
__restore: "restore"
|
|
5435
|
+
}, gs = "__peek", _s = "__open";
|
|
5436
|
+
function vs(e) {
|
|
5437
|
+
return e === "__peek" || e === "__open";
|
|
5438
|
+
}
|
|
5439
|
+
function ys(e, t) {
|
|
5440
|
+
if (!e) return "";
|
|
5441
|
+
if (t) try {
|
|
5442
|
+
return $e(t, Xe(t, e));
|
|
5443
|
+
} catch {}
|
|
5444
|
+
let n = e.id;
|
|
5445
|
+
return typeof n == "string" ? n : n == null ? "" : I(n);
|
|
5446
|
+
}
|
|
5447
|
+
function bs(e, t) {
|
|
5448
|
+
if (!e || e.length === 0) return !0;
|
|
5449
|
+
for (let n of e) {
|
|
5450
|
+
if (n.status && n.status.length > 0) {
|
|
5451
|
+
let e = t.status;
|
|
5452
|
+
if (typeof e != "string" || !n.status.includes(e)) return !1;
|
|
5453
|
+
}
|
|
5454
|
+
if (n.field && !xs(n, t)) return !1;
|
|
5455
|
+
}
|
|
5456
|
+
return !0;
|
|
5457
|
+
}
|
|
5458
|
+
function xs(e, t) {
|
|
5459
|
+
let n = Ss(t, e.field), r = e.op || "eq";
|
|
5460
|
+
if (r === "in" || r === "not_in") {
|
|
5461
|
+
let t = Array.isArray(e.value) ? e.value : [e.value], i = I(n), a = t.some((e) => I(e) === i);
|
|
5462
|
+
return r === "in" ? a : !a;
|
|
5463
|
+
}
|
|
5464
|
+
return typeof e.value == "boolean" && r === "eq" ? ws(n) === e.value : typeof n == "number" && typeof e.value == "number" ? Ts(n, e.value, r) : Ts(I(n), I(e.value), r);
|
|
5465
|
+
}
|
|
5466
|
+
function Ss(e, t) {
|
|
5467
|
+
if (Object.prototype.hasOwnProperty.call(e, t)) return e[t];
|
|
5468
|
+
if (t.startsWith("$status.")) {
|
|
5469
|
+
let n = t.slice(8), r = e.$statuses;
|
|
5470
|
+
return Array.isArray(r) ? r.find((e) => !e || typeof e != "object" ? !1 : e.group_code === n)?.status_code : void 0;
|
|
5471
|
+
}
|
|
5472
|
+
if (t.startsWith("$property.")) {
|
|
5473
|
+
let n = t.slice(10), r = e.$properties;
|
|
5474
|
+
return Array.isArray(r) ? r.find((e) => !e || typeof e != "object" ? !1 : e.property_code === n)?.value : void 0;
|
|
5475
|
+
}
|
|
5476
|
+
}
|
|
5477
|
+
function Cs(e) {
|
|
5478
|
+
let t = null, n = (n, r) => {
|
|
5479
|
+
Object.prototype.hasOwnProperty.call(e, n) || (t === null && (t = { ...e }), t[n] = r);
|
|
5480
|
+
}, r = e.$statuses;
|
|
5481
|
+
if (Array.isArray(r)) for (let t of r) {
|
|
5482
|
+
if (!t || typeof t != "object") continue;
|
|
5483
|
+
let r = t.group_code;
|
|
5484
|
+
typeof r == "string" && n(`$status.${r}`, Ss(e, `$status.${r}`));
|
|
5485
|
+
}
|
|
5486
|
+
let i = e.$properties;
|
|
5487
|
+
if (Array.isArray(i)) for (let t of i) {
|
|
5488
|
+
if (!t || typeof t != "object") continue;
|
|
5489
|
+
let r = t.property_code;
|
|
5490
|
+
typeof r == "string" && n(`$property.${r}`, Ss(e, `$property.${r}`));
|
|
5491
|
+
}
|
|
5492
|
+
return t ?? e;
|
|
5493
|
+
}
|
|
5494
|
+
function ws(e) {
|
|
5495
|
+
return e == null ? !1 : typeof e == "boolean" ? e : typeof e == "string" ? e !== "" : typeof e != "number" || e !== 0;
|
|
5496
|
+
}
|
|
5497
|
+
function Ts(e, t, n) {
|
|
5498
|
+
switch (n) {
|
|
5499
|
+
case "eq": return e === t;
|
|
5500
|
+
case "ne": return e !== t;
|
|
5501
|
+
case "gt": return e > t;
|
|
5502
|
+
case "gte":
|
|
5503
|
+
case "ge": return e >= t;
|
|
5504
|
+
case "lt": return e < t;
|
|
5505
|
+
case "lte":
|
|
5506
|
+
case "le": return e <= t;
|
|
5507
|
+
default: return !1;
|
|
5508
|
+
}
|
|
5509
|
+
}
|
|
5510
|
+
function Es(e, t) {
|
|
5511
|
+
return e ? Object.entries(e).filter(([, e]) => e.visibility?.includes(t)).map(([e, t]) => ({
|
|
5512
|
+
code: e,
|
|
5513
|
+
action: t
|
|
5514
|
+
})) : [];
|
|
5515
|
+
}
|
|
5516
|
+
function Ds(e, t, n, r) {
|
|
5517
|
+
return !e && !r ? [] : t === void 0 ? Es(e, n) : t.map((t) => {
|
|
5518
|
+
let n = e?.[t] ?? r?.[t];
|
|
5519
|
+
return n ? {
|
|
5520
|
+
code: t,
|
|
5521
|
+
action: n
|
|
5522
|
+
} : null;
|
|
5523
|
+
}).filter((e) => e !== null);
|
|
5524
|
+
}
|
|
5525
|
+
function Os(e, t) {
|
|
5526
|
+
return e.filter(({ code: e }) => {
|
|
5527
|
+
let n = hs[e];
|
|
5528
|
+
return !n || Ye(t, n);
|
|
5529
|
+
});
|
|
5530
|
+
}
|
|
5531
|
+
var ks = {
|
|
5532
|
+
en: "This action cannot be undone.",
|
|
5533
|
+
ru: "Это действие нельзя отменить."
|
|
5534
|
+
};
|
|
5535
|
+
function As(e) {
|
|
5536
|
+
return !!e?.confirmation && Object.keys(e.confirmation).length > 0;
|
|
5537
|
+
}
|
|
5538
|
+
function js(e, t) {
|
|
5539
|
+
return As(e) ? L(e.confirmation, t) : e?.destructive ? L(ks, t) : null;
|
|
5540
|
+
}
|
|
5541
|
+
function Ms(e) {
|
|
5542
|
+
return As(e) || !!e?.destructive;
|
|
5543
|
+
}
|
|
5544
|
+
function Ns(e, t, n, r) {
|
|
5545
|
+
if (n && r) return r;
|
|
5546
|
+
let i = L(e?.display?.description);
|
|
5547
|
+
return i ? e?.display?.icon_only === !0 ? `${t} - ${i}` : i : t;
|
|
5548
|
+
}
|
|
5549
|
+
function Ps(e) {
|
|
5550
|
+
return !!e.association;
|
|
5551
|
+
}
|
|
5552
|
+
function Fs(e, t) {
|
|
5553
|
+
if (e) {
|
|
5554
|
+
for (let n of Object.values(e.screens)) if (n.entity === t && n.type === "list") {
|
|
5555
|
+
let r = e.entities[t];
|
|
5556
|
+
return {
|
|
5557
|
+
route: n.route,
|
|
5558
|
+
icon: n.display?.icon || r?.display?.icon || ""
|
|
5559
|
+
};
|
|
5560
|
+
}
|
|
5561
|
+
}
|
|
5562
|
+
}
|
|
5563
|
+
function Is(e, t, n, r, i) {
|
|
5564
|
+
let a = [];
|
|
5565
|
+
for (let o of e) {
|
|
5566
|
+
let e = Ls(o, t, n, r, i);
|
|
5567
|
+
e !== null && a.push(e);
|
|
5568
|
+
}
|
|
5569
|
+
return a;
|
|
5570
|
+
}
|
|
5571
|
+
function Ls(e, t, n, r, i) {
|
|
5572
|
+
return e.kind === "group" ? Rs(e, t, n, r, i) : zs(e, t, n, r, i);
|
|
5573
|
+
}
|
|
5574
|
+
function Rs(e, t, n, r, i) {
|
|
5575
|
+
let a = [];
|
|
5576
|
+
for (let o of e.items) {
|
|
5577
|
+
let e = Ls(o, t, n, r, i);
|
|
5578
|
+
e !== null && a.push(e);
|
|
5579
|
+
}
|
|
5580
|
+
return a.length === 0 ? null : {
|
|
5581
|
+
...e,
|
|
5582
|
+
items: a
|
|
5583
|
+
};
|
|
5584
|
+
}
|
|
5585
|
+
function zs(e, t, n, r, i) {
|
|
5586
|
+
let a = Hs(e.code, t, n);
|
|
5587
|
+
if (!a) return null;
|
|
5588
|
+
if (i.length > 0) {
|
|
5589
|
+
let t = Bs(a, i);
|
|
5590
|
+
return t.visible ? {
|
|
5591
|
+
...e,
|
|
5592
|
+
enabled: t.enabled,
|
|
5593
|
+
reason: t.reason
|
|
5594
|
+
} : null;
|
|
5595
|
+
}
|
|
5596
|
+
if (!bs(a.conditions, r) || !bs(Us(a.visible_if), r)) return null;
|
|
5597
|
+
let { enabled: o, reason: s } = Vs(a, r);
|
|
5598
|
+
return {
|
|
5599
|
+
...e,
|
|
5600
|
+
enabled: o,
|
|
5601
|
+
reason: s
|
|
5602
|
+
};
|
|
5603
|
+
}
|
|
5604
|
+
function Bs(e, t) {
|
|
5605
|
+
let n = Us(e.visible_if), r = Us(e.enabled_if), i = e.conditions, a = Ws(e.enabled_if_reason), o = 0, s = 0;
|
|
5606
|
+
for (let e of t) {
|
|
5607
|
+
let t = bs(n, e) && bs(i, e);
|
|
5608
|
+
t && o++;
|
|
5609
|
+
let a = bs(r, e);
|
|
5610
|
+
(!t || !a) && s++;
|
|
5611
|
+
}
|
|
5612
|
+
if (o === 0) return {
|
|
5613
|
+
visible: !1,
|
|
5614
|
+
enabled: !1,
|
|
5615
|
+
reason: null
|
|
5616
|
+
};
|
|
5617
|
+
if (s === 0) return {
|
|
5618
|
+
visible: !0,
|
|
5619
|
+
enabled: !0,
|
|
5620
|
+
reason: null
|
|
5621
|
+
};
|
|
5622
|
+
let c = `(${s} of ${t.length} rows fail)`;
|
|
5623
|
+
return {
|
|
5624
|
+
visible: !0,
|
|
5625
|
+
enabled: !1,
|
|
5626
|
+
reason: a ? `${a} ${c}` : c
|
|
5627
|
+
};
|
|
5628
|
+
}
|
|
5629
|
+
function Vs(e, t) {
|
|
5630
|
+
let n = Us(e.enabled_if);
|
|
5631
|
+
if (!n || n.length === 0) return {
|
|
5632
|
+
enabled: !0,
|
|
5633
|
+
reason: null
|
|
5634
|
+
};
|
|
5635
|
+
let r = Ws(e.enabled_if_reason);
|
|
5636
|
+
return bs(n, t) ? {
|
|
5637
|
+
enabled: !0,
|
|
5638
|
+
reason: null
|
|
5639
|
+
} : {
|
|
5640
|
+
enabled: !1,
|
|
5641
|
+
reason: r
|
|
5642
|
+
};
|
|
5643
|
+
}
|
|
5644
|
+
function Hs(e, t, n) {
|
|
5645
|
+
if (t && e in t) return t[e];
|
|
5646
|
+
if (n && e in n) return n[e];
|
|
5647
|
+
}
|
|
5648
|
+
function Us(e) {
|
|
5649
|
+
return e;
|
|
5650
|
+
}
|
|
5651
|
+
function Ws(e) {
|
|
5652
|
+
if (!e) return null;
|
|
5653
|
+
if (e.en) return e.en;
|
|
5654
|
+
let t = Object.values(e);
|
|
5655
|
+
return t.length > 0 ? t[0] : null;
|
|
5656
|
+
}
|
|
5657
|
+
function Gs(e, t, n, r, i) {
|
|
5658
|
+
let a = [];
|
|
5659
|
+
for (let o of e) {
|
|
5660
|
+
if (o.kind === "group") {
|
|
5661
|
+
let e = Gs(o.items, t, n, r, i);
|
|
5662
|
+
e.length > 0 && a.push({
|
|
5663
|
+
...o,
|
|
5664
|
+
items: e
|
|
5665
|
+
});
|
|
5666
|
+
continue;
|
|
5667
|
+
}
|
|
5668
|
+
let e = Hs(o.code, t, n);
|
|
5669
|
+
e && e.visibility?.includes(r) && (i?.bulkRequired !== void 0 && (i.bulkRequiredPredicate ? i.bulkRequiredPredicate(e) : !1) !== i.bulkRequired || i?.excludeIf && i.excludeIf(e) || a.push(o));
|
|
5670
|
+
}
|
|
5671
|
+
return a;
|
|
5672
|
+
}
|
|
5673
|
+
function Ks(e, t, n, r, i, a) {
|
|
5674
|
+
let o = e ?? t;
|
|
5675
|
+
return o ? Gs(o, n, r, i, a) : Xs(n, i);
|
|
5676
|
+
}
|
|
5677
|
+
function qs(e) {
|
|
5678
|
+
return e.requires_selection === void 0 ? Js(e) : e.requires_selection;
|
|
5679
|
+
}
|
|
5680
|
+
function Js(e) {
|
|
5681
|
+
return e.visibility?.includes("list_floatbar") ?? !1;
|
|
5682
|
+
}
|
|
5683
|
+
function Ys(e, t, n, r, i) {
|
|
5684
|
+
return e.map((e) => {
|
|
5685
|
+
if (e.kind === "group") return {
|
|
5686
|
+
...e,
|
|
5687
|
+
items: Ys(e.items, t, n, r, i)
|
|
5688
|
+
};
|
|
5689
|
+
let a = Hs(e.code, t, n);
|
|
5690
|
+
return a && r(a) ? {
|
|
5691
|
+
...e,
|
|
5692
|
+
enabled: !1,
|
|
5693
|
+
reason: i
|
|
5694
|
+
} : e;
|
|
5695
|
+
});
|
|
5696
|
+
}
|
|
5697
|
+
function Xs(e, t) {
|
|
5698
|
+
return e ? Object.entries(e).filter(([, e]) => e.visibility?.includes(t)).sort(([e, t], [n, r]) => {
|
|
5699
|
+
let i = t.position ?? 0, a = r.position ?? 0;
|
|
5700
|
+
return i === a ? e < n ? -1 : +(e > n) : i - a;
|
|
5701
|
+
}).map(([e]) => ({
|
|
5702
|
+
kind: "action",
|
|
5703
|
+
code: e,
|
|
5704
|
+
enabled: !0,
|
|
5705
|
+
reason: null
|
|
5706
|
+
})) : [];
|
|
5707
|
+
}
|
|
5708
|
+
//#endregion
|
|
5418
5709
|
//#region src/lib/field-regions.ts
|
|
5419
|
-
var
|
|
5420
|
-
function
|
|
5421
|
-
return
|
|
5422
|
-
|
|
5710
|
+
var Zs = /* @__PURE__ */ new Map();
|
|
5711
|
+
function Qs(e, t) {
|
|
5712
|
+
return Zs.set(e, t), () => {
|
|
5713
|
+
Zs.get(e) === t && Zs.delete(e);
|
|
5423
5714
|
};
|
|
5424
5715
|
}
|
|
5425
|
-
function
|
|
5426
|
-
return
|
|
5716
|
+
function $s(e) {
|
|
5717
|
+
return Zs.get(e);
|
|
5427
5718
|
}
|
|
5428
5719
|
//#endregion
|
|
5429
5720
|
//#region src/lib/ui-actions.ts
|
|
5430
|
-
var
|
|
5431
|
-
function
|
|
5432
|
-
let n = e.match(
|
|
5721
|
+
var ec = /\$\{\s*([^}]+?)\s*\}/g, tc = /^\s*\$\{\s*([^}]+?)\s*\}\s*$/, nc = Symbol("unresolved");
|
|
5722
|
+
function rc(e, t) {
|
|
5723
|
+
let n = e.match(tc);
|
|
5433
5724
|
if (n) {
|
|
5434
|
-
let r =
|
|
5435
|
-
return r ===
|
|
5725
|
+
let r = ic(n[1], t);
|
|
5726
|
+
return r === nc ? e : r;
|
|
5436
5727
|
}
|
|
5437
|
-
return e.replace(
|
|
5438
|
-
let r =
|
|
5439
|
-
return r ===
|
|
5728
|
+
return e.replace(ec, (e, n) => {
|
|
5729
|
+
let r = ic(n, t);
|
|
5730
|
+
return r === nc ? e : I(r);
|
|
5440
5731
|
});
|
|
5441
5732
|
}
|
|
5442
|
-
function
|
|
5733
|
+
function ic(e, t) {
|
|
5443
5734
|
if (e === "now") return di();
|
|
5444
5735
|
let [n, ...r] = e.split(".");
|
|
5445
|
-
if (n === "row") return !t.row || r.length === 0 ?
|
|
5736
|
+
if (n === "row") return !t.row || r.length === 0 ? nc : ac(t.row, r);
|
|
5446
5737
|
if (n === "field" && r.length >= 2) {
|
|
5447
|
-
let [e, t] = r, n =
|
|
5448
|
-
return n ? n.getField(t) :
|
|
5738
|
+
let [e, t] = r, n = $s(e);
|
|
5739
|
+
return n ? n.getField(t) : nc;
|
|
5449
5740
|
}
|
|
5450
|
-
return n === "params" ? !t.params || r.length === 0 ?
|
|
5741
|
+
return n === "params" ? !t.params || r.length === 0 ? nc : ac(t.params, r) : nc;
|
|
5451
5742
|
}
|
|
5452
|
-
function
|
|
5743
|
+
function ac(e, t) {
|
|
5453
5744
|
return t.reduce((e, t) => {
|
|
5454
5745
|
if (e && typeof e == "object") return e[t];
|
|
5455
5746
|
}, e);
|
|
5456
5747
|
}
|
|
5457
|
-
async function
|
|
5748
|
+
async function oc(e, t) {
|
|
5458
5749
|
for (let n of e) try {
|
|
5459
|
-
await
|
|
5750
|
+
await sc(n, t);
|
|
5460
5751
|
} catch (e) {
|
|
5461
5752
|
let t = e instanceof Error ? e.message : String(e);
|
|
5462
5753
|
Z.error(`ui_step failed: ${t}`);
|
|
5463
5754
|
return;
|
|
5464
5755
|
}
|
|
5465
5756
|
}
|
|
5466
|
-
async function
|
|
5757
|
+
async function sc(e, t) {
|
|
5467
5758
|
if (e.copy_to_clipboard != null) {
|
|
5468
|
-
let n =
|
|
5759
|
+
let n = lc(e.copy_to_clipboard, t);
|
|
5469
5760
|
await navigator.clipboard.writeText(n);
|
|
5470
5761
|
return;
|
|
5471
5762
|
}
|
|
5472
5763
|
if (e.set_field) {
|
|
5473
|
-
let { target: n, value: r } = e.set_field, { region: i, field: a } =
|
|
5764
|
+
let { target: n, value: r } = e.set_field, { region: i, field: a } = uc(n), o = $s(i);
|
|
5474
5765
|
if (!o) throw Error(`region "${i}" not registered`);
|
|
5475
|
-
o.setField(a,
|
|
5766
|
+
o.setField(a, cc(r, t));
|
|
5476
5767
|
return;
|
|
5477
5768
|
}
|
|
5478
5769
|
if (e.focus_field) {
|
|
5479
|
-
let { region: t, field: n } =
|
|
5770
|
+
let { region: t, field: n } = uc(e.focus_field), r = $s(t);
|
|
5480
5771
|
if (!r) throw Error(`region "${t}" not registered`);
|
|
5481
5772
|
r.focusField(n);
|
|
5482
5773
|
return;
|
|
5483
5774
|
}
|
|
5484
5775
|
if (e.show_toast) {
|
|
5485
|
-
let n =
|
|
5776
|
+
let n = lc(e.show_toast.message, t), r = e.show_toast.kind ?? "info";
|
|
5486
5777
|
r === "success" ? Z.success(n) : r === "error" ? Z.error(n) : Z.info(n);
|
|
5487
5778
|
return;
|
|
5488
5779
|
}
|
|
5489
5780
|
}
|
|
5490
|
-
function
|
|
5491
|
-
return typeof e == "string" ?
|
|
5781
|
+
function cc(e, t) {
|
|
5782
|
+
return typeof e == "string" ? rc(e, t) : e;
|
|
5492
5783
|
}
|
|
5493
|
-
function
|
|
5494
|
-
return I(
|
|
5784
|
+
function lc(e, t) {
|
|
5785
|
+
return I(rc(e, t));
|
|
5495
5786
|
}
|
|
5496
|
-
function
|
|
5787
|
+
function uc(e) {
|
|
5497
5788
|
let t = e.indexOf(".");
|
|
5498
5789
|
if (t <= 0) throw Error(`invalid path "${e}" (expected "region.field")`);
|
|
5499
5790
|
return {
|
|
@@ -5501,12 +5792,12 @@ function Os(e) {
|
|
|
5501
5792
|
field: e.slice(t + 1)
|
|
5502
5793
|
};
|
|
5503
5794
|
}
|
|
5504
|
-
function
|
|
5795
|
+
function dc(e) {
|
|
5505
5796
|
return !e.handler && !!e.ui_steps && e.ui_steps.length > 0;
|
|
5506
5797
|
}
|
|
5507
5798
|
//#endregion
|
|
5508
5799
|
//#region src/lib/mass-edit.ts
|
|
5509
|
-
function
|
|
5800
|
+
function fc(e) {
|
|
5510
5801
|
if (!e) return [];
|
|
5511
5802
|
let t = /* @__PURE__ */ new Set(), n = [];
|
|
5512
5803
|
for (let r of e.split(",")) {
|
|
@@ -5515,17 +5806,17 @@ function As(e) {
|
|
|
5515
5806
|
}
|
|
5516
5807
|
return n;
|
|
5517
5808
|
}
|
|
5518
|
-
function
|
|
5809
|
+
function pc(e, t) {
|
|
5519
5810
|
if (!e || !Ye(e, "update")) return [];
|
|
5520
|
-
let n = Array.isArray(t) ? t :
|
|
5811
|
+
let n = Array.isArray(t) ? t : fc(t), r = n.length > 0 ? new Set(n) : null, i = ot(e), a = new Set(z(e)), o = r ? n : mc(e, i, a), s = [];
|
|
5521
5812
|
for (let t of o) {
|
|
5522
5813
|
if (r && !r.has(t)) continue;
|
|
5523
|
-
let n =
|
|
5814
|
+
let n = hc(e, t, i, a);
|
|
5524
5815
|
n && s.push(n);
|
|
5525
5816
|
}
|
|
5526
5817
|
return s;
|
|
5527
5818
|
}
|
|
5528
|
-
function
|
|
5819
|
+
function mc(e, t, n) {
|
|
5529
5820
|
let r = [];
|
|
5530
5821
|
for (let [t, i] of e.fields) n.has(t) || i.auto || r.push(t);
|
|
5531
5822
|
if (!t) {
|
|
@@ -5534,7 +5825,7 @@ function Ms(e, t, n) {
|
|
|
5534
5825
|
}
|
|
5535
5826
|
return r;
|
|
5536
5827
|
}
|
|
5537
|
-
function
|
|
5828
|
+
function hc(e, t, n, r) {
|
|
5538
5829
|
if (t.startsWith("$status.")) {
|
|
5539
5830
|
if (n) return null;
|
|
5540
5831
|
let r = t.slice(8), i = e.status_groups?.[r];
|
|
@@ -5542,7 +5833,7 @@ function Ns(e, t, n, r) {
|
|
|
5542
5833
|
code: t,
|
|
5543
5834
|
bare: r,
|
|
5544
5835
|
kind: "status",
|
|
5545
|
-
label:
|
|
5836
|
+
label: gc(i.name, r),
|
|
5546
5837
|
statusGroup: i
|
|
5547
5838
|
} : null;
|
|
5548
5839
|
}
|
|
@@ -5553,7 +5844,7 @@ function Ns(e, t, n, r) {
|
|
|
5553
5844
|
code: t,
|
|
5554
5845
|
bare: r,
|
|
5555
5846
|
kind: "property",
|
|
5556
|
-
label:
|
|
5847
|
+
label: gc(i.name, r),
|
|
5557
5848
|
property: i
|
|
5558
5849
|
} : null;
|
|
5559
5850
|
}
|
|
@@ -5563,18 +5854,18 @@ function Ns(e, t, n, r) {
|
|
|
5563
5854
|
code: t,
|
|
5564
5855
|
bare: t,
|
|
5565
5856
|
kind: "field",
|
|
5566
|
-
label:
|
|
5857
|
+
label: gc(i.display?.name, t),
|
|
5567
5858
|
field: i
|
|
5568
5859
|
};
|
|
5569
5860
|
}
|
|
5570
|
-
function
|
|
5861
|
+
function gc(e, t) {
|
|
5571
5862
|
return e && L(e) || t;
|
|
5572
5863
|
}
|
|
5573
5864
|
//#endregion
|
|
5574
5865
|
//#region src/components/mass-edit/PropertyGridEditor.tsx
|
|
5575
|
-
var
|
|
5576
|
-
function
|
|
5577
|
-
let a = d(() =>
|
|
5866
|
+
var _c = Symbol.for("declarion.mass-edit.multiple");
|
|
5867
|
+
function vc({ entity: e, filterTargets: t, selectedRows: n, value: r, onChange: i }) {
|
|
5868
|
+
let a = d(() => pc(e, t), [e, t]), o = d(() => Object.keys(r).map((e) => {
|
|
5578
5869
|
let t = a.find((t) => t.code === e);
|
|
5579
5870
|
return t ? {
|
|
5580
5871
|
target: t,
|
|
@@ -5584,8 +5875,8 @@ function Is({ entity: e, filterTargets: t, selectedRows: n, value: r, onChange:
|
|
|
5584
5875
|
let e = new Set(o.map((e) => e.target.code));
|
|
5585
5876
|
return a.filter((t) => !e.has(t.code));
|
|
5586
5877
|
}, [o, a]), l = s((e) => {
|
|
5587
|
-
let t =
|
|
5588
|
-
a[e.code] = t ===
|
|
5878
|
+
let t = Cc(e, n), a = { ...r };
|
|
5879
|
+
a[e.code] = t === _c ? void 0 : t, i(a);
|
|
5589
5880
|
}, [
|
|
5590
5881
|
r,
|
|
5591
5882
|
n,
|
|
@@ -5613,12 +5904,12 @@ function Is({ entity: e, filterTargets: t, selectedRows: n, value: r, onChange:
|
|
|
5613
5904
|
},
|
|
5614
5905
|
children: "No targets selected. Add a field, status, or property to edit across all selected rows."
|
|
5615
5906
|
}),
|
|
5616
|
-
o.map((e) => /* @__PURE__ */ b(
|
|
5907
|
+
o.map((e) => /* @__PURE__ */ b(yc, {
|
|
5617
5908
|
row: e,
|
|
5618
5909
|
onChange: (t) => u(e.target.code, t),
|
|
5619
5910
|
onRemove: () => f(e.target.code)
|
|
5620
5911
|
}, e.target.code)),
|
|
5621
|
-
/* @__PURE__ */ b(
|
|
5912
|
+
/* @__PURE__ */ b(Sc, {
|
|
5622
5913
|
targets: c,
|
|
5623
5914
|
onPick: l
|
|
5624
5915
|
})
|
|
@@ -5631,7 +5922,7 @@ function Is({ entity: e, filterTargets: t, selectedRows: n, value: r, onChange:
|
|
|
5631
5922
|
children: "Entity schema unavailable. Mass edit requires an entity-bound action."
|
|
5632
5923
|
});
|
|
5633
5924
|
}
|
|
5634
|
-
function
|
|
5925
|
+
function yc({ row: e, onChange: n, onRemove: r }) {
|
|
5635
5926
|
let { target: i } = e;
|
|
5636
5927
|
return /* @__PURE__ */ x("div", {
|
|
5637
5928
|
"data-testid": "mass-edit-row",
|
|
@@ -5650,7 +5941,7 @@ function Ls({ row: e, onChange: n, onRemove: r }) {
|
|
|
5650
5941
|
title: i.code,
|
|
5651
5942
|
children: i.label
|
|
5652
5943
|
}),
|
|
5653
|
-
/* @__PURE__ */ b(
|
|
5944
|
+
/* @__PURE__ */ b(bc, {
|
|
5654
5945
|
row: e,
|
|
5655
5946
|
onChange: n
|
|
5656
5947
|
}),
|
|
@@ -5662,8 +5953,8 @@ function Ls({ row: e, onChange: n, onRemove: r }) {
|
|
|
5662
5953
|
]
|
|
5663
5954
|
});
|
|
5664
5955
|
}
|
|
5665
|
-
function
|
|
5666
|
-
let { target: n } = e, r = ms(), i = e.value ===
|
|
5956
|
+
function bc({ row: e, onChange: t }) {
|
|
5957
|
+
let { target: n } = e, r = ms(), i = e.value === _c, a = i ? "<multiple values>" : void 0, o = i ? "" : e.value;
|
|
5667
5958
|
if (n.kind === "status" && n.statusGroup) {
|
|
5668
5959
|
let e = n.statusGroup.statuses.map((e) => ({
|
|
5669
5960
|
value: e.code,
|
|
@@ -5679,7 +5970,7 @@ function Rs({ row: e, onChange: t }) {
|
|
|
5679
5970
|
})
|
|
5680
5971
|
});
|
|
5681
5972
|
}
|
|
5682
|
-
let s =
|
|
5973
|
+
let s = xc(n);
|
|
5683
5974
|
return /* @__PURE__ */ x("div", {
|
|
5684
5975
|
"data-testid": `value-${n.code}`,
|
|
5685
5976
|
style: { position: "relative" },
|
|
@@ -5702,7 +5993,7 @@ function Rs({ row: e, onChange: t }) {
|
|
|
5702
5993
|
})]
|
|
5703
5994
|
});
|
|
5704
5995
|
}
|
|
5705
|
-
function
|
|
5996
|
+
function xc(e) {
|
|
5706
5997
|
if (e.kind === "field" && e.field) return e.field;
|
|
5707
5998
|
if (e.kind === "property" && e.property) {
|
|
5708
5999
|
let t = e.property;
|
|
@@ -5717,7 +6008,7 @@ function zs(e) {
|
|
|
5717
6008
|
}
|
|
5718
6009
|
return { type: "string" };
|
|
5719
6010
|
}
|
|
5720
|
-
function
|
|
6011
|
+
function Sc({ targets: e, onPick: n }) {
|
|
5721
6012
|
let [r, i] = p(!1);
|
|
5722
6013
|
return e.length === 0 ? null : r ? /* @__PURE__ */ b("div", {
|
|
5723
6014
|
"data-testid": "mass-edit-target-picker",
|
|
@@ -5744,7 +6035,7 @@ function Bs({ targets: e, onPick: n }) {
|
|
|
5744
6035
|
children: [/* @__PURE__ */ b(t.plus, { size: 12 }), " Add target"]
|
|
5745
6036
|
});
|
|
5746
6037
|
}
|
|
5747
|
-
function
|
|
6038
|
+
function Cc(e, t) {
|
|
5748
6039
|
if (!t || t.length === 0 || e.kind !== "field") return;
|
|
5749
6040
|
let n, r = !1;
|
|
5750
6041
|
for (let i of t) {
|
|
@@ -5753,16 +6044,16 @@ function Vs(e, t) {
|
|
|
5753
6044
|
n = t, r = !0;
|
|
5754
6045
|
continue;
|
|
5755
6046
|
}
|
|
5756
|
-
if (n !== t) return
|
|
6047
|
+
if (n !== t) return _c;
|
|
5757
6048
|
}
|
|
5758
6049
|
return n;
|
|
5759
6050
|
}
|
|
5760
6051
|
//#endregion
|
|
5761
6052
|
//#region src/components/shared/ActionDialog.tsx
|
|
5762
|
-
var
|
|
5763
|
-
function
|
|
6053
|
+
var wc = /^\$row\.([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)*)$/;
|
|
6054
|
+
function Tc(e, t) {
|
|
5764
6055
|
if (typeof e != "string") return e ?? "";
|
|
5765
|
-
let n = e.match(
|
|
6056
|
+
let n = e.match(wc);
|
|
5766
6057
|
if (n) {
|
|
5767
6058
|
let r = n[1].split("."), i = t;
|
|
5768
6059
|
for (let e of r) {
|
|
@@ -5774,9 +6065,9 @@ function Us(e, t) {
|
|
|
5774
6065
|
}
|
|
5775
6066
|
return i === void 0 ? ((t == null || !(r[0] in t)) && typeof console < "u" && console.warn && console.warn(`ActionDialog: prefill template ${e} could not be resolved; row is missing field '${r[0]}'`), "") : i ?? "";
|
|
5776
6067
|
}
|
|
5777
|
-
return
|
|
6068
|
+
return rc(e, { row: t });
|
|
5778
6069
|
}
|
|
5779
|
-
function
|
|
6070
|
+
function Ec(e) {
|
|
5780
6071
|
return {
|
|
5781
6072
|
type: e.type ?? "string",
|
|
5782
6073
|
required: e.required,
|
|
@@ -5786,21 +6077,22 @@ function Ws(e) {
|
|
|
5786
6077
|
} : void 0,
|
|
5787
6078
|
enum: e.enum,
|
|
5788
6079
|
values: e.values,
|
|
6080
|
+
structure: e.structure,
|
|
5789
6081
|
ref: Ke(e.ref)
|
|
5790
6082
|
};
|
|
5791
6083
|
}
|
|
5792
|
-
function
|
|
6084
|
+
function Dc(e, t) {
|
|
5793
6085
|
if (!e.includes("${")) return e;
|
|
5794
|
-
let n =
|
|
6086
|
+
let n = rc(e, { params: t });
|
|
5795
6087
|
return n == null ? "" : I(n);
|
|
5796
6088
|
}
|
|
5797
|
-
var
|
|
5798
|
-
function
|
|
6089
|
+
var Oc = /\$\{\s*([^}]+?)\s*\}/g;
|
|
6090
|
+
function kc(e, t) {
|
|
5799
6091
|
let n = `params.${t}`;
|
|
5800
|
-
for (let t of e.matchAll(
|
|
6092
|
+
for (let t of e.matchAll(Oc)) if (t[1] === n) return !0;
|
|
5801
6093
|
return !1;
|
|
5802
6094
|
}
|
|
5803
|
-
function
|
|
6095
|
+
function Ac({ param: e, value: t, onChange: n, statusGroups: r }) {
|
|
5804
6096
|
let i = d(() => {
|
|
5805
6097
|
let t = r ? Object.entries(r) : [];
|
|
5806
6098
|
return [{
|
|
@@ -5818,12 +6110,12 @@ function Js({ param: e, value: t, onChange: n, statusGroups: r }) {
|
|
|
5818
6110
|
placeholder: "Select status group…"
|
|
5819
6111
|
});
|
|
5820
6112
|
}
|
|
5821
|
-
function
|
|
6113
|
+
function jc({ param: e, value: t, onChange: n, statusGroups: r, formData: i }) {
|
|
5822
6114
|
let a = d(() => {
|
|
5823
6115
|
if (!r) return [];
|
|
5824
6116
|
let t = e.filter?.status_group;
|
|
5825
6117
|
if (t) {
|
|
5826
|
-
let e =
|
|
6118
|
+
let e = Dc(t, i);
|
|
5827
6119
|
return e && r[e] ? r[e].statuses : [];
|
|
5828
6120
|
}
|
|
5829
6121
|
return Object.values(r).flatMap((e) => e.statuses);
|
|
@@ -5845,21 +6137,27 @@ function Ys({ param: e, value: t, onChange: n, statusGroups: r, formData: i }) {
|
|
|
5845
6137
|
placeholder: "Select status…"
|
|
5846
6138
|
});
|
|
5847
6139
|
}
|
|
5848
|
-
function
|
|
5849
|
-
let { data:
|
|
5850
|
-
|
|
5851
|
-
}, [
|
|
5852
|
-
|
|
5853
|
-
|
|
5854
|
-
|
|
5855
|
-
|
|
5856
|
-
|
|
6140
|
+
function Mc({ open: e, onOpenChange: n, action: r, actionName: i, onSubmit: a, isPending: o, row: c, bulkSelection: u }) {
|
|
6141
|
+
let { data: m } = Y(), h = ms(), g = r.resolved_params, _ = r.resolved_hidden_defaults ?? {}, v = !!r.destructive, S = js(r, h), C = s(() => {
|
|
6142
|
+
o || n(!1);
|
|
6143
|
+
}, [o, n]), w = f(null);
|
|
6144
|
+
l(() => {
|
|
6145
|
+
e && w.current?.focus();
|
|
6146
|
+
}, [e]);
|
|
6147
|
+
let T = d(() => g ? Array.from(g) : [], [g]), E = d(() => {
|
|
6148
|
+
if (!(!r.entity || !m)) return m.entities[r.entity]?.status_groups;
|
|
6149
|
+
}, [r.entity, m]), k = d(() => {
|
|
6150
|
+
if (!(!r.entity || !m)) return m.entities[r.entity];
|
|
6151
|
+
}, [r.entity, m]), A = d(() => {
|
|
6152
|
+
if (k) {
|
|
6153
|
+
for (let [e, t] of k.fields) if (t.primary) return e;
|
|
6154
|
+
return k.primary_key?.[0];
|
|
5857
6155
|
}
|
|
5858
|
-
}, [
|
|
5859
|
-
let e = { ...
|
|
5860
|
-
for (let [t, n] of
|
|
6156
|
+
}, [k]), [j, M] = p(s(() => {
|
|
6157
|
+
let e = { ..._ };
|
|
6158
|
+
for (let [t, n] of T) {
|
|
5861
6159
|
if (n.type === "id_array") {
|
|
5862
|
-
|
|
6160
|
+
u && A ? e[t] = u.map((e) => e[A]).filter((e) => e != null) : e[t] = [];
|
|
5863
6161
|
continue;
|
|
5864
6162
|
}
|
|
5865
6163
|
if (n.type === "entity_patch") {
|
|
@@ -5867,47 +6165,47 @@ function Xs({ open: e, onOpenChange: n, action: r, actionName: i, onSubmit: a, i
|
|
|
5867
6165
|
continue;
|
|
5868
6166
|
}
|
|
5869
6167
|
if (n.type === "bool") {
|
|
5870
|
-
let r =
|
|
6168
|
+
let r = Tc(n.default, c);
|
|
5871
6169
|
e[t] = r === !0 || r === "true";
|
|
5872
6170
|
continue;
|
|
5873
6171
|
}
|
|
5874
|
-
e[t] =
|
|
6172
|
+
e[t] = Tc(n.default, c);
|
|
5875
6173
|
}
|
|
5876
6174
|
return e;
|
|
5877
6175
|
}, [
|
|
5878
|
-
|
|
6176
|
+
T,
|
|
5879
6177
|
c,
|
|
5880
|
-
|
|
5881
|
-
|
|
5882
|
-
])),
|
|
5883
|
-
|
|
6178
|
+
u,
|
|
6179
|
+
A
|
|
6180
|
+
])), N = s((e, t) => {
|
|
6181
|
+
M((n) => {
|
|
5884
6182
|
let r = {
|
|
5885
6183
|
...n,
|
|
5886
6184
|
[e]: t
|
|
5887
6185
|
};
|
|
5888
|
-
if (!
|
|
5889
|
-
for (let [t, n] of
|
|
6186
|
+
if (!g) return r;
|
|
6187
|
+
for (let [t, n] of g) {
|
|
5890
6188
|
if (n.type !== "status") continue;
|
|
5891
6189
|
let i = n.filter?.status_group;
|
|
5892
|
-
i &&
|
|
6190
|
+
i && kc(i, e) && (r[t] = "");
|
|
5893
6191
|
}
|
|
5894
6192
|
return r;
|
|
5895
6193
|
});
|
|
5896
|
-
}, [
|
|
5897
|
-
let e = { ...
|
|
5898
|
-
for (let [t, n] of
|
|
5899
|
-
let r =
|
|
6194
|
+
}, [g]), ee = s(() => {
|
|
6195
|
+
let e = { ...j };
|
|
6196
|
+
for (let [t, n] of T) {
|
|
6197
|
+
let r = j[t], i = r == null || r === "";
|
|
5900
6198
|
if (n.required && i) return;
|
|
5901
6199
|
i && delete e[t];
|
|
5902
6200
|
}
|
|
5903
6201
|
a(e);
|
|
5904
6202
|
}, [
|
|
5905
|
-
|
|
5906
|
-
|
|
6203
|
+
j,
|
|
6204
|
+
T,
|
|
5907
6205
|
a
|
|
5908
6206
|
]);
|
|
5909
6207
|
return e ? /* @__PURE__ */ x(y, { children: [/* @__PURE__ */ b("div", {
|
|
5910
|
-
onClick:
|
|
6208
|
+
onClick: C,
|
|
5911
6209
|
style: {
|
|
5912
6210
|
position: "fixed",
|
|
5913
6211
|
inset: 0,
|
|
@@ -5917,9 +6215,15 @@ function Xs({ open: e, onOpenChange: n, action: r, actionName: i, onSubmit: a, i
|
|
|
5917
6215
|
}
|
|
5918
6216
|
}), /* @__PURE__ */ x("div", {
|
|
5919
6217
|
"data-testid": "action-dialog",
|
|
6218
|
+
ref: w,
|
|
5920
6219
|
role: "dialog",
|
|
5921
6220
|
"aria-modal": "true",
|
|
6221
|
+
"aria-busy": o,
|
|
5922
6222
|
"aria-label": i,
|
|
6223
|
+
tabIndex: -1,
|
|
6224
|
+
onKeyDown: (e) => {
|
|
6225
|
+
e.key === "Escape" && C();
|
|
6226
|
+
},
|
|
5923
6227
|
style: {
|
|
5924
6228
|
position: "fixed",
|
|
5925
6229
|
top: "50%",
|
|
@@ -5936,7 +6240,8 @@ function Xs({ open: e, onOpenChange: n, action: r, actionName: i, onSubmit: a, i
|
|
|
5936
6240
|
display: "flex",
|
|
5937
6241
|
flexDirection: "column",
|
|
5938
6242
|
boxSizing: "border-box",
|
|
5939
|
-
minWidth: 0
|
|
6243
|
+
minWidth: 0,
|
|
6244
|
+
outline: "none"
|
|
5940
6245
|
},
|
|
5941
6246
|
children: [
|
|
5942
6247
|
/* @__PURE__ */ x("div", {
|
|
@@ -5952,14 +6257,14 @@ function Xs({ open: e, onOpenChange: n, action: r, actionName: i, onSubmit: a, i
|
|
|
5952
6257
|
width: 28,
|
|
5953
6258
|
height: 28,
|
|
5954
6259
|
borderRadius: 7,
|
|
5955
|
-
background: "var(--accent-soft)",
|
|
5956
|
-
color: "var(--accent)",
|
|
6260
|
+
background: v ? "var(--danger-soft)" : "var(--accent-soft)",
|
|
6261
|
+
color: v ? "var(--danger)" : "var(--accent)",
|
|
5957
6262
|
display: "inline-flex",
|
|
5958
6263
|
alignItems: "center",
|
|
5959
6264
|
justifyContent: "center",
|
|
5960
6265
|
flexShrink: 0
|
|
5961
6266
|
},
|
|
5962
|
-
children:
|
|
6267
|
+
children: b(v ? t.trash : t.bolt, { size: 15 })
|
|
5963
6268
|
}),
|
|
5964
6269
|
/* @__PURE__ */ x("div", {
|
|
5965
6270
|
style: {
|
|
@@ -5979,16 +6284,16 @@ function Xs({ open: e, onOpenChange: n, action: r, actionName: i, onSubmit: a, i
|
|
|
5979
6284
|
color: "var(--text-3)",
|
|
5980
6285
|
marginTop: 2
|
|
5981
6286
|
},
|
|
5982
|
-
children: L(r.display?.description) || "Fill in the parameters below to execute this action."
|
|
6287
|
+
children: L(r.display?.description) || (T.length > 0 ? "Fill in the parameters below to execute this action." : "")
|
|
5983
6288
|
})]
|
|
5984
6289
|
}),
|
|
5985
6290
|
/* @__PURE__ */ b(O, {
|
|
5986
6291
|
icon: /* @__PURE__ */ b(t.x, { size: 14 }),
|
|
5987
|
-
onClick:
|
|
6292
|
+
onClick: C
|
|
5988
6293
|
})
|
|
5989
6294
|
]
|
|
5990
6295
|
}),
|
|
5991
|
-
/* @__PURE__ */
|
|
6296
|
+
/* @__PURE__ */ x("div", {
|
|
5992
6297
|
style: {
|
|
5993
6298
|
padding: "12px 18px 16px",
|
|
5994
6299
|
display: "flex",
|
|
@@ -5998,59 +6303,84 @@ function Xs({ open: e, onOpenChange: n, action: r, actionName: i, onSubmit: a, i
|
|
|
5998
6303
|
minWidth: 0,
|
|
5999
6304
|
minHeight: 0
|
|
6000
6305
|
},
|
|
6001
|
-
children:
|
|
6002
|
-
|
|
6003
|
-
|
|
6004
|
-
|
|
6005
|
-
|
|
6006
|
-
|
|
6007
|
-
|
|
6008
|
-
|
|
6009
|
-
|
|
6010
|
-
|
|
6011
|
-
|
|
6012
|
-
|
|
6306
|
+
children: [S && /* @__PURE__ */ b("div", {
|
|
6307
|
+
style: {
|
|
6308
|
+
fontSize: 12.5,
|
|
6309
|
+
lineHeight: 1.5,
|
|
6310
|
+
color: "var(--text-2)",
|
|
6311
|
+
background: v ? "var(--danger-soft)" : "var(--surface-2)",
|
|
6312
|
+
border: "1px solid var(--divider)",
|
|
6313
|
+
borderRadius: 8,
|
|
6314
|
+
padding: "10px 12px"
|
|
6315
|
+
},
|
|
6316
|
+
children: S
|
|
6317
|
+
}), /* @__PURE__ */ b("fieldset", {
|
|
6318
|
+
disabled: o,
|
|
6319
|
+
style: {
|
|
6320
|
+
border: 0,
|
|
6321
|
+
margin: 0,
|
|
6322
|
+
padding: 0,
|
|
6323
|
+
minInlineSize: 0,
|
|
6324
|
+
display: "flex",
|
|
6325
|
+
flexDirection: "column",
|
|
6326
|
+
gap: 12,
|
|
6327
|
+
pointerEvents: o ? "none" : void 0,
|
|
6328
|
+
opacity: o ? .6 : 1
|
|
6329
|
+
},
|
|
6330
|
+
children: T.map(([e, t]) => {
|
|
6331
|
+
let n = L(t.display?.name) || e;
|
|
6332
|
+
if (t.type === "id_array") return null;
|
|
6333
|
+
let r;
|
|
6334
|
+
if (t.type === "entity_patch") {
|
|
6335
|
+
let n = typeof t.filter?.targets == "string" ? t.filter.targets : void 0;
|
|
6336
|
+
r = /* @__PURE__ */ b(vc, {
|
|
6337
|
+
entity: k,
|
|
6338
|
+
filterTargets: n,
|
|
6339
|
+
selectedRows: u,
|
|
6340
|
+
value: j[e] ?? {},
|
|
6341
|
+
onChange: (t) => N(e, t)
|
|
6342
|
+
});
|
|
6343
|
+
} else r = t.type === "status_group" ? /* @__PURE__ */ b(Ac, {
|
|
6344
|
+
param: t,
|
|
6345
|
+
value: j[e],
|
|
6346
|
+
onChange: (t) => N(e, t),
|
|
6347
|
+
statusGroups: E,
|
|
6348
|
+
formData: j
|
|
6349
|
+
}) : t.type === "status" ? /* @__PURE__ */ b(jc, {
|
|
6350
|
+
param: t,
|
|
6351
|
+
value: j[e],
|
|
6352
|
+
onChange: (t) => N(e, t),
|
|
6353
|
+
statusGroups: E,
|
|
6354
|
+
formData: j
|
|
6355
|
+
}) : ds({
|
|
6356
|
+
field: Ec(t),
|
|
6357
|
+
fieldName: e,
|
|
6358
|
+
value: j[e],
|
|
6359
|
+
mode: "edit",
|
|
6360
|
+
onChange: (t) => N(e, t),
|
|
6361
|
+
locale: h
|
|
6013
6362
|
});
|
|
6014
|
-
|
|
6015
|
-
|
|
6016
|
-
|
|
6017
|
-
|
|
6018
|
-
|
|
6019
|
-
|
|
6020
|
-
|
|
6021
|
-
|
|
6022
|
-
|
|
6023
|
-
|
|
6024
|
-
|
|
6025
|
-
|
|
6026
|
-
|
|
6027
|
-
|
|
6028
|
-
|
|
6029
|
-
|
|
6030
|
-
|
|
6031
|
-
|
|
6032
|
-
|
|
6033
|
-
})
|
|
6034
|
-
|
|
6035
|
-
style: { minWidth: 0 },
|
|
6036
|
-
children: [
|
|
6037
|
-
/* @__PURE__ */ b(Ce, {
|
|
6038
|
-
required: t.required,
|
|
6039
|
-
children: n
|
|
6040
|
-
}),
|
|
6041
|
-
r,
|
|
6042
|
-
t.display?.description && /* @__PURE__ */ b("p", {
|
|
6043
|
-
style: {
|
|
6044
|
-
fontSize: 11,
|
|
6045
|
-
color: "var(--text-3)",
|
|
6046
|
-
marginTop: 4,
|
|
6047
|
-
marginBottom: 0
|
|
6048
|
-
},
|
|
6049
|
-
children: L(t.display.description)
|
|
6050
|
-
})
|
|
6051
|
-
]
|
|
6052
|
-
}, e);
|
|
6053
|
-
})
|
|
6363
|
+
return /* @__PURE__ */ x("div", {
|
|
6364
|
+
style: { minWidth: 0 },
|
|
6365
|
+
children: [
|
|
6366
|
+
/* @__PURE__ */ b(Ce, {
|
|
6367
|
+
required: t.required,
|
|
6368
|
+
children: n
|
|
6369
|
+
}),
|
|
6370
|
+
r,
|
|
6371
|
+
t.display?.description && /* @__PURE__ */ b("p", {
|
|
6372
|
+
style: {
|
|
6373
|
+
fontSize: 11,
|
|
6374
|
+
color: "var(--text-3)",
|
|
6375
|
+
marginTop: 4,
|
|
6376
|
+
marginBottom: 0
|
|
6377
|
+
},
|
|
6378
|
+
children: L(t.display.description)
|
|
6379
|
+
})
|
|
6380
|
+
]
|
|
6381
|
+
}, e);
|
|
6382
|
+
})
|
|
6383
|
+
})]
|
|
6054
6384
|
}),
|
|
6055
6385
|
/* @__PURE__ */ x("div", {
|
|
6056
6386
|
style: {
|
|
@@ -6067,16 +6397,17 @@ function Xs({ open: e, onOpenChange: n, action: r, actionName: i, onSubmit: a, i
|
|
|
6067
6397
|
children: [
|
|
6068
6398
|
/* @__PURE__ */ b("div", { style: { flex: 1 } }),
|
|
6069
6399
|
/* @__PURE__ */ b(D, {
|
|
6070
|
-
onClick:
|
|
6400
|
+
onClick: C,
|
|
6071
6401
|
disabled: o,
|
|
6072
6402
|
children: "Cancel"
|
|
6073
6403
|
}),
|
|
6074
6404
|
/* @__PURE__ */ b(D, {
|
|
6075
6405
|
kind: "primary",
|
|
6076
|
-
|
|
6077
|
-
|
|
6406
|
+
danger: v,
|
|
6407
|
+
icon: b(o ? Se : v ? t.trash : t.bolt, { size: 13 }),
|
|
6408
|
+
onClick: ee,
|
|
6078
6409
|
disabled: o,
|
|
6079
|
-
children: o ? "Executing…" : "Execute"
|
|
6410
|
+
children: o ? "Executing…" : T.length > 0 ? "Execute" : "Confirm"
|
|
6080
6411
|
})
|
|
6081
6412
|
]
|
|
6082
6413
|
})
|
|
@@ -6085,7 +6416,7 @@ function Xs({ open: e, onOpenChange: n, action: r, actionName: i, onSubmit: a, i
|
|
|
6085
6416
|
}
|
|
6086
6417
|
//#endregion
|
|
6087
6418
|
//#region src/components/shared/ActionResultDialog.tsx
|
|
6088
|
-
function
|
|
6419
|
+
function Nc({ open: e, onClose: n, display: r }) {
|
|
6089
6420
|
let i = f(null);
|
|
6090
6421
|
return l(() => {
|
|
6091
6422
|
e && i.current?.focus();
|
|
@@ -6180,7 +6511,7 @@ function Zs({ open: e, onClose: n, display: r }) {
|
|
|
6180
6511
|
gap: 12,
|
|
6181
6512
|
overflowY: "auto"
|
|
6182
6513
|
},
|
|
6183
|
-
children: r.fields.map((e, t) => /* @__PURE__ */ b(
|
|
6514
|
+
children: r.fields.map((e, t) => /* @__PURE__ */ b(Pc, { field: e }, t))
|
|
6184
6515
|
}),
|
|
6185
6516
|
/* @__PURE__ */ x("div", {
|
|
6186
6517
|
style: {
|
|
@@ -6203,7 +6534,7 @@ function Zs({ open: e, onClose: n, display: r }) {
|
|
|
6203
6534
|
]
|
|
6204
6535
|
})] }) : null;
|
|
6205
6536
|
}
|
|
6206
|
-
function
|
|
6537
|
+
function Pc({ field: e }) {
|
|
6207
6538
|
let n = e.href ?? e.download_url ?? e.value, r = e.type === "download", i = r || e.type === "link", a = n ? Zr(n) : void 0, [o, s] = p(!1), [c, l] = p(null);
|
|
6208
6539
|
async function u() {
|
|
6209
6540
|
if (a) {
|
|
@@ -6333,7 +6664,7 @@ function Qs({ field: e }) {
|
|
|
6333
6664
|
}
|
|
6334
6665
|
//#endregion
|
|
6335
6666
|
//#region src/components/shared/ActionRunner.tsx
|
|
6336
|
-
function
|
|
6667
|
+
function Fc(e) {
|
|
6337
6668
|
if (!e || typeof e != "object") return { kind: "success" };
|
|
6338
6669
|
let t = e, n = t.status, r = t.success?.length ?? 0, i = t.errors?.length ?? 0, a = t.skipped?.length ?? 0, o = t.errors?.[0]?.error;
|
|
6339
6670
|
if (n === "partial") {
|
|
@@ -6348,15 +6679,15 @@ function $s(e) {
|
|
|
6348
6679
|
detail: "No items matched"
|
|
6349
6680
|
} : n === "accepted" ? { kind: "accepted" } : { kind: "success" };
|
|
6350
6681
|
}
|
|
6351
|
-
function
|
|
6682
|
+
function Ic(e) {
|
|
6352
6683
|
if (!e || typeof e != "object") return null;
|
|
6353
6684
|
let t = e.result;
|
|
6354
6685
|
if (!t || typeof t != "object") return null;
|
|
6355
6686
|
let n = t.$display;
|
|
6356
6687
|
return !n || typeof n != "object" ? null : n;
|
|
6357
6688
|
}
|
|
6358
|
-
function
|
|
6359
|
-
let t =
|
|
6689
|
+
function Lc(e) {
|
|
6690
|
+
let t = Ic(e)?.fields;
|
|
6360
6691
|
if (!Array.isArray(t)) return null;
|
|
6361
6692
|
for (let e of t) {
|
|
6362
6693
|
if (e?.type !== "download") continue;
|
|
@@ -6368,12 +6699,12 @@ function tc(e) {
|
|
|
6368
6699
|
}
|
|
6369
6700
|
return null;
|
|
6370
6701
|
}
|
|
6371
|
-
function
|
|
6702
|
+
function Rc(e) {
|
|
6372
6703
|
if (!e || typeof e != "object") return;
|
|
6373
6704
|
let t = e.result;
|
|
6374
6705
|
!t || typeof t != "object" || "impersonation_session_id" in t && window.location.assign("/");
|
|
6375
6706
|
}
|
|
6376
|
-
function
|
|
6707
|
+
function zc(e) {
|
|
6377
6708
|
if (e instanceof $n) {
|
|
6378
6709
|
let t = e.response.errors ?? [];
|
|
6379
6710
|
if (t.length === 1) return {
|
|
@@ -6394,23 +6725,23 @@ function rc(e) {
|
|
|
6394
6725
|
detail: e instanceof Error ? e.message : String(e)
|
|
6395
6726
|
};
|
|
6396
6727
|
}
|
|
6397
|
-
var
|
|
6398
|
-
function
|
|
6399
|
-
let e = c(
|
|
6728
|
+
var Bc = i(null);
|
|
6729
|
+
function Vc() {
|
|
6730
|
+
let e = c(Bc);
|
|
6400
6731
|
if (!e) throw Error("useActionRunner must be used within <ActionRunnerProvider>");
|
|
6401
6732
|
return e;
|
|
6402
6733
|
}
|
|
6403
|
-
function
|
|
6734
|
+
function Hc(e) {
|
|
6404
6735
|
let t = {}, n = e.action?.resolved_hidden_defaults;
|
|
6405
6736
|
if (n) for (let [e, r] of Object.entries(n)) r !== void 0 && (t[e] = r);
|
|
6406
6737
|
return t;
|
|
6407
6738
|
}
|
|
6408
|
-
function
|
|
6739
|
+
function Uc({ children: e }) {
|
|
6409
6740
|
let t = Mr(), { data: n } = Y(), [r, i] = p(null), [a, o] = p(0), [c, l] = p(null), u = s((e) => {
|
|
6410
6741
|
if (e?.progress_screen) return n?.screens[e.progress_screen]?.route;
|
|
6411
6742
|
}, [n?.screens]), f = s((e, n, r, i, a) => {
|
|
6412
6743
|
let o = () => {
|
|
6413
|
-
let n =
|
|
6744
|
+
let n = Wc(a), i = u(r), o = n ? `Job ${n} queued` : "Running in background";
|
|
6414
6745
|
Z.success(`${e} started`, o, i ? { action: {
|
|
6415
6746
|
label: "View",
|
|
6416
6747
|
onClick: () => t(i)
|
|
@@ -6418,7 +6749,7 @@ function sc({ children: e }) {
|
|
|
6418
6749
|
};
|
|
6419
6750
|
switch (i.kind) {
|
|
6420
6751
|
case "success": {
|
|
6421
|
-
let t =
|
|
6752
|
+
let t = Lc(a), r = t ? { action: {
|
|
6422
6753
|
label: "Download",
|
|
6423
6754
|
onClick: () => {
|
|
6424
6755
|
ei(t.url, t.filename).catch((e) => {
|
|
@@ -6453,37 +6784,37 @@ function sc({ children: e }) {
|
|
|
6453
6784
|
}
|
|
6454
6785
|
if (t.kind !== "success" && t.kind !== "accepted") return;
|
|
6455
6786
|
e.onSuccess?.(n);
|
|
6456
|
-
let r =
|
|
6457
|
-
r && l(r),
|
|
6787
|
+
let r = Ic(n);
|
|
6788
|
+
r && l(r), Rc(n);
|
|
6458
6789
|
}, [m]), g = s((e) => {
|
|
6459
|
-
let t = e.action, n = e.
|
|
6460
|
-
return t?.resolved_params && t.resolved_params.length > 0 ? (i({
|
|
6461
|
-
id: Symbol(),
|
|
6462
|
-
opts: e,
|
|
6463
|
-
title: a,
|
|
6464
|
-
kind: "params",
|
|
6465
|
-
pending: !1
|
|
6466
|
-
}), Promise.resolve()) : n ? (i({
|
|
6467
|
-
id: Symbol(),
|
|
6468
|
-
opts: e,
|
|
6469
|
-
title: a,
|
|
6470
|
-
kind: "confirm",
|
|
6471
|
-
pending: !1
|
|
6472
|
-
}), Promise.resolve()) : (async (n) => {
|
|
6790
|
+
let t = e.action, n = e.longRunning ?? t?.long_running ?? !1, r = e.title || L(t?.display?.name) || "Action", a = async (i) => {
|
|
6473
6791
|
o((e) => e + 1);
|
|
6474
6792
|
try {
|
|
6475
|
-
let
|
|
6476
|
-
f(
|
|
6793
|
+
let a = await e.execute(i), o = Fc(a);
|
|
6794
|
+
f(r, n, t, o, a), h(e, o, a);
|
|
6477
6795
|
} catch (e) {
|
|
6478
|
-
f(
|
|
6796
|
+
f(r, n, t, zc(e));
|
|
6479
6797
|
} finally {
|
|
6480
6798
|
o((e) => Math.max(0, e - 1));
|
|
6481
6799
|
}
|
|
6482
|
-
}
|
|
6800
|
+
}, s = t ?? (e.destructive ? {
|
|
6801
|
+
display: {
|
|
6802
|
+
name: { en: r },
|
|
6803
|
+
icon: ""
|
|
6804
|
+
},
|
|
6805
|
+
destructive: !0
|
|
6806
|
+
} : void 0), c = !!(t?.resolved_params && t.resolved_params.length > 0), l = Ms(s);
|
|
6807
|
+
return s && (c || l) ? (i({
|
|
6808
|
+
id: Symbol(),
|
|
6809
|
+
opts: e,
|
|
6810
|
+
title: r,
|
|
6811
|
+
action: s,
|
|
6812
|
+
pending: !1
|
|
6813
|
+
}), Promise.resolve()) : a(Hc(e));
|
|
6483
6814
|
}, [f, h]), v = a > 0 || !!r?.pending, y = d(() => ({
|
|
6484
6815
|
run: g,
|
|
6485
6816
|
isRunning: v
|
|
6486
|
-
}), [g, v]), S = r?.
|
|
6817
|
+
}), [g, v]), S = r?.action, C = s(async (e) => {
|
|
6487
6818
|
if (!r) return;
|
|
6488
6819
|
let t = r.id, n = r, a = n.opts.action, s = n.opts.longRunning ?? a?.long_running ?? !1;
|
|
6489
6820
|
i((e) => e?.id === t ? {
|
|
@@ -6491,10 +6822,10 @@ function sc({ children: e }) {
|
|
|
6491
6822
|
pending: !0
|
|
6492
6823
|
} : e), o((e) => e + 1);
|
|
6493
6824
|
try {
|
|
6494
|
-
let r = await n.opts.execute(e), o =
|
|
6825
|
+
let r = await n.opts.execute(e), o = Fc(r);
|
|
6495
6826
|
f(n.title, s, a, o, r), h(n.opts, o, r), o.kind !== "partial" && i((e) => e?.id === t ? null : e);
|
|
6496
6827
|
} catch (e) {
|
|
6497
|
-
f(n.title, s, a,
|
|
6828
|
+
f(n.title, s, a, zc(e));
|
|
6498
6829
|
} finally {
|
|
6499
6830
|
o((e) => Math.max(0, e - 1)), i((e) => e?.id === t ? {
|
|
6500
6831
|
...e,
|
|
@@ -6506,16 +6837,16 @@ function sc({ children: e }) {
|
|
|
6506
6837
|
f,
|
|
6507
6838
|
h
|
|
6508
6839
|
]);
|
|
6509
|
-
return /* @__PURE__ */ x(
|
|
6840
|
+
return /* @__PURE__ */ x(Bc.Provider, {
|
|
6510
6841
|
value: y,
|
|
6511
6842
|
children: [
|
|
6512
6843
|
e,
|
|
6513
|
-
c && /* @__PURE__ */ b(
|
|
6844
|
+
c && /* @__PURE__ */ b(Nc, {
|
|
6514
6845
|
open: !0,
|
|
6515
6846
|
onClose: () => l(null),
|
|
6516
6847
|
display: c
|
|
6517
6848
|
}),
|
|
6518
|
-
r
|
|
6849
|
+
r && S && /* @__PURE__ */ b(Mc, {
|
|
6519
6850
|
open: !0,
|
|
6520
6851
|
onOpenChange: (e) => {
|
|
6521
6852
|
e || i(null);
|
|
@@ -6526,150 +6857,33 @@ function sc({ children: e }) {
|
|
|
6526
6857
|
isPending: r.pending,
|
|
6527
6858
|
bulkSelection: r.opts.bulkSelection,
|
|
6528
6859
|
row: r.opts.row
|
|
6529
|
-
}),
|
|
6530
|
-
r?.kind === "confirm" && /* @__PURE__ */ b(uc, {
|
|
6531
|
-
state: r,
|
|
6532
|
-
onClose: () => i(null),
|
|
6533
|
-
onExecute: async (e) => {
|
|
6534
|
-
let t = r.id, n = r, a = n.opts.action, s = n.opts.longRunning ?? a?.long_running ?? !1, c = !1;
|
|
6535
|
-
o((e) => e + 1);
|
|
6536
|
-
try {
|
|
6537
|
-
let t = await n.opts.execute(e), r = $s(t);
|
|
6538
|
-
f(n.title, s, a, r, t), h(n.opts, r, t), c = r.kind === "partial";
|
|
6539
|
-
} catch (e) {
|
|
6540
|
-
f(n.title, s, a, rc(e));
|
|
6541
|
-
} finally {
|
|
6542
|
-
o((e) => Math.max(0, e - 1)), c || i((e) => e?.id === t ? null : e);
|
|
6543
|
-
}
|
|
6544
|
-
}
|
|
6545
6860
|
})
|
|
6546
6861
|
]
|
|
6547
6862
|
});
|
|
6548
6863
|
}
|
|
6549
|
-
function
|
|
6550
|
-
return
|
|
6864
|
+
function Wc(e) {
|
|
6865
|
+
return Gc(e) ?? Gc(e?.result);
|
|
6551
6866
|
}
|
|
6552
|
-
function
|
|
6867
|
+
function Gc(e) {
|
|
6553
6868
|
if (!e || typeof e != "object") return;
|
|
6554
6869
|
let t = e, n = t.job_id ?? t.id;
|
|
6555
6870
|
return typeof n == "string" ? n : void 0;
|
|
6556
6871
|
}
|
|
6557
|
-
function uc({ state: e, onClose: n, onExecute: r }) {
|
|
6558
|
-
let { title: i, opts: a } = e, [o, s] = p(!1), c = a.action, l = a.destructive ?? c?.destructive ?? !1;
|
|
6559
|
-
return /* @__PURE__ */ x(y, { children: [/* @__PURE__ */ b("div", {
|
|
6560
|
-
onClick: n,
|
|
6561
|
-
style: {
|
|
6562
|
-
position: "fixed",
|
|
6563
|
-
inset: 0,
|
|
6564
|
-
background: "var(--scrim)",
|
|
6565
|
-
zIndex: 60,
|
|
6566
|
-
backdropFilter: "blur(2px)"
|
|
6567
|
-
}
|
|
6568
|
-
}), /* @__PURE__ */ x("div", {
|
|
6569
|
-
style: {
|
|
6570
|
-
position: "fixed",
|
|
6571
|
-
top: "50%",
|
|
6572
|
-
left: "50%",
|
|
6573
|
-
transform: "translate(-50%, -50%)",
|
|
6574
|
-
zIndex: 61,
|
|
6575
|
-
width: 460,
|
|
6576
|
-
background: "var(--surface)",
|
|
6577
|
-
borderRadius: 12,
|
|
6578
|
-
boxShadow: "var(--shadow-lg)",
|
|
6579
|
-
border: "1px solid var(--border)",
|
|
6580
|
-
overflow: "hidden"
|
|
6581
|
-
},
|
|
6582
|
-
children: [/* @__PURE__ */ x("div", {
|
|
6583
|
-
style: {
|
|
6584
|
-
padding: "14px 18px 0",
|
|
6585
|
-
display: "flex",
|
|
6586
|
-
alignItems: "center",
|
|
6587
|
-
gap: 10
|
|
6588
|
-
},
|
|
6589
|
-
children: [
|
|
6590
|
-
/* @__PURE__ */ b("span", {
|
|
6591
|
-
style: {
|
|
6592
|
-
width: 28,
|
|
6593
|
-
height: 28,
|
|
6594
|
-
borderRadius: 7,
|
|
6595
|
-
background: l ? "var(--danger-soft)" : "var(--accent-soft)",
|
|
6596
|
-
color: l ? "var(--danger)" : "var(--accent)",
|
|
6597
|
-
display: "inline-flex",
|
|
6598
|
-
alignItems: "center",
|
|
6599
|
-
justifyContent: "center"
|
|
6600
|
-
},
|
|
6601
|
-
children: b(l ? t.trash : t.bolt, { size: 15 })
|
|
6602
|
-
}),
|
|
6603
|
-
/* @__PURE__ */ x("div", {
|
|
6604
|
-
style: { flex: 1 },
|
|
6605
|
-
children: [/* @__PURE__ */ b("div", {
|
|
6606
|
-
style: {
|
|
6607
|
-
fontSize: 14,
|
|
6608
|
-
fontWeight: 600,
|
|
6609
|
-
color: "var(--text)"
|
|
6610
|
-
},
|
|
6611
|
-
children: i
|
|
6612
|
-
}), /* @__PURE__ */ b("div", {
|
|
6613
|
-
style: {
|
|
6614
|
-
fontSize: 11.5,
|
|
6615
|
-
color: "var(--text-3)"
|
|
6616
|
-
},
|
|
6617
|
-
children: "This cannot be undone. Confirm to proceed."
|
|
6618
|
-
})]
|
|
6619
|
-
}),
|
|
6620
|
-
/* @__PURE__ */ b(O, {
|
|
6621
|
-
icon: /* @__PURE__ */ b(t.x, { size: 14 }),
|
|
6622
|
-
onClick: n
|
|
6623
|
-
})
|
|
6624
|
-
]
|
|
6625
|
-
}), /* @__PURE__ */ x("div", {
|
|
6626
|
-
style: {
|
|
6627
|
-
padding: "10px 16px",
|
|
6628
|
-
borderTop: "1px solid var(--divider)",
|
|
6629
|
-
display: "flex",
|
|
6630
|
-
alignItems: "center",
|
|
6631
|
-
gap: 8,
|
|
6632
|
-
background: "var(--surface-2)"
|
|
6633
|
-
},
|
|
6634
|
-
children: [
|
|
6635
|
-
/* @__PURE__ */ b("div", { style: { flex: 1 } }),
|
|
6636
|
-
/* @__PURE__ */ b(D, {
|
|
6637
|
-
onClick: n,
|
|
6638
|
-
children: "Cancel"
|
|
6639
|
-
}),
|
|
6640
|
-
/* @__PURE__ */ b(D, {
|
|
6641
|
-
kind: "primary",
|
|
6642
|
-
danger: l,
|
|
6643
|
-
icon: b(o ? Se : t.bolt, { size: 13 }),
|
|
6644
|
-
onClick: async () => {
|
|
6645
|
-
s(!0);
|
|
6646
|
-
try {
|
|
6647
|
-
await r(oc(a));
|
|
6648
|
-
} finally {
|
|
6649
|
-
s(!1);
|
|
6650
|
-
}
|
|
6651
|
-
},
|
|
6652
|
-
children: o ? "Executing…" : "Confirm"
|
|
6653
|
-
})
|
|
6654
|
-
]
|
|
6655
|
-
})]
|
|
6656
|
-
})] });
|
|
6657
|
-
}
|
|
6658
6872
|
//#endregion
|
|
6659
6873
|
//#region src/hooks/useCurrentScreen.tsx
|
|
6660
|
-
var
|
|
6661
|
-
function
|
|
6874
|
+
var Kc = i(void 0);
|
|
6875
|
+
function qc({ code: e, children: t }) {
|
|
6662
6876
|
let { data: n } = Y(), r = d(() => ({
|
|
6663
6877
|
code: e,
|
|
6664
6878
|
screen: n?.screens[e]
|
|
6665
6879
|
}), [e, n]);
|
|
6666
|
-
return /* @__PURE__ */ b(
|
|
6880
|
+
return /* @__PURE__ */ b(Kc.Provider, {
|
|
6667
6881
|
value: r,
|
|
6668
6882
|
children: t
|
|
6669
6883
|
});
|
|
6670
6884
|
}
|
|
6671
|
-
function
|
|
6672
|
-
return c(
|
|
6885
|
+
function Jc() {
|
|
6886
|
+
return c(Kc);
|
|
6673
6887
|
}
|
|
6674
6888
|
//#endregion
|
|
6675
|
-
export {
|
|
6889
|
+
export { ri as $, pe as $n, zt as $t, ms as A, Je as An, Jn as At, ba as B, Ne as Bn, Pn as Bt, Fs as C, Ve as Cn, Kn as Ct, Ks as D, tt as Dn, rr as Dt, vs as E, Ze as En, Zn as Et, Ta as F, I as Fn, Nn as Ft, Ni as G, Te as Gn, G as Gt, sa as H, Ie as Hn, Mn as Ht, Q as I, ze as In, Vn as It, Di as J, Se as Jn, hn as Jt, ji as K, P as Kn, q as Kt, ya as L, ke as Ln, zn as Lt, ls as M, R as Mn, Un as Mt, wa as N, We as Nn, Hn as Nt, ys as O, $e as On, sr as Ot, Ea as P, et as Pn, An as Pt, di as Q, ve as Qn, Rt as Qt, Sa as R, Ce as Rn, Bn as Rt, Os as S, Ge as Sn, Qn as St, Ps as T, L as Tn, lr as Tt, oa as U, F as Un, Rn as Ut, na as V, Re as Vn, jn as Vt, ta as W, Pe as Wn, Fn as Wt, Oi as X, be as Xn, gn as Xt, ki as Y, xe as Yn, _n as Yt, pi as Z, ue as Zn, Ft as Zt, Is as _, it as _n, tr as _t, _c as a, Dt as an, k as ar, Mr as at, bs as b, Ye as bn, Xn as bt, pc as c, yt as cn, jr as ct, dc as d, B as dn, wr as dt, kt as en, ye as er, ei as et, Qs as f, ct as fn, Tr as ft, Ns as g, rt as gn, $n as gt, qs as h, Be as hn, mr as ht, Vc as i, Ct as in, A as ir, Z as it, ds as j, nt as jn, Y as jt, Cs as k, Qe as kn, or as kt, fc as l, ht as ln, kr as lt, gs as m, lt as mn, Cr as mt, Jc as n, wt as nn, oe as nr, Zr as nt, vc as o, _t as on, O as or, Pr as ot, _s as p, st as pn, Sr as pt, Ai as q, Le as qn, J as qt, Uc as r, St as rn, j as rr, Jr as rt, Cc as s, vt as sn, D as sr, Nr as st, qc as t, Ot as tn, se as tr, $r as tt, oc as u, mt as un, Er as ut, Xs as v, at as vn, qn as vt, Ds as w, z as wn, Gn as wt, Gs as x, Xe as xn, cr as xt, Ys as y, qe as yn, Yn as yt, ua as z, Fe as zn, Ln as zt };
|