@coffer-org/web 3.0.0 → 3.1.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/assets/{ChatWidget-CnETJEZj.js → ChatWidget-C0FHyGQs.js} +1 -1
- package/dist/assets/{ExtendReasonInfo-DZyJKRHy.js → ExtendReasonInfo-B31k6BsF.js} +1 -1
- package/dist/assets/NewRecordView-mNprEZ0M.js +1 -0
- package/dist/assets/{PluginSettingsPage-BQm11aEY.js → PluginSettingsPage-BL5aCWl2.js} +1 -1
- package/dist/assets/{SettingsForm-xXNSptFG.js → SettingsForm-DTwZW55p.js} +1 -1
- package/dist/assets/Toolbar-CCy7c-VI.js +2 -0
- package/dist/assets/chrome-CAIO8mia.js +1 -0
- package/dist/assets/{data-size-B44emc58.js → data-size-D-gMRpFc.js} +1 -1
- package/dist/assets/{dispatch-B7QFSWwA.js → dispatch-Z_UJ7sOs.js} +1 -1
- package/dist/assets/{extend-CbEbk8Xz.js → extend-GfHImqfk.js} +1 -1
- package/dist/assets/{field-frame-lE36ax7A.js → field-frame-89mXkY0h.js} +1 -1
- package/dist/assets/{fields-BvFhu2Zp.js → fields-DA2uwuWg.js} +1 -1
- package/dist/assets/index-IYmIwBta.js +36 -0
- package/dist/assets/index-uwd-zQkM.css +2 -0
- package/dist/assets/shared-DyLDZh8A.js +1 -0
- package/dist/assets/shelf-CbIOYmgm.js +1 -0
- package/dist/assets/showcase-DpT_hVOy.js +1 -0
- package/dist/assets/src-1MSAycRt.js +1 -0
- package/dist/assets/{src-o6G2rx51.js → src-B8jSrOBs.js} +1 -1
- package/dist/assets/{src-DQEWf3tk.js → src-BR6hbGmU.js} +1 -1
- package/dist/assets/{src-CK5LF8mh.js → src-BZuEf2j7.js} +1 -1
- package/dist/assets/{src-DLuKxde5.js → src-BpgLWVlc.js} +1 -1
- package/dist/assets/{src-P-7khzwl.js → src-C4Lw6UC7.js} +1 -1
- package/dist/assets/src-CvbH8j2P.js +1 -0
- package/dist/assets/src-CyzuwYGO.js +4 -0
- package/dist/assets/src-DBOfP_Or.js +4 -0
- package/dist/assets/{src-D1jciqQr.js → src-DFYZEu1M.js} +1 -1
- package/dist/assets/src-DJtarzEL.js +1 -0
- package/dist/assets/src-DOEz01aN.js +2 -0
- package/dist/assets/{src-BbXav__j.js → src-DZhdHqwF.js} +1 -1
- package/dist/assets/src-DjzEQC_y.js +1 -0
- package/dist/assets/src-Dl65oXdT.js +1 -0
- package/dist/assets/{src-CzSQMFWS.js → src-DmKtZ8vC.js} +3 -3
- package/dist/assets/{src-D_zsiKPr.js → src-DwFrbaFj.js} +1 -1
- package/dist/assets/{src-DkjooOXs.js → src-DyJctdPe.js} +1 -1
- package/dist/assets/src-DzHYG-f3.js +1 -0
- package/dist/assets/src-DzN1nufP.js +6 -0
- package/dist/assets/{src-R3C69mft.js → src-HtNjG36u.js} +1 -1
- package/dist/assets/src-MUOjunVs.js +1 -0
- package/dist/assets/{src-D20-HqBF.js → src-RuMLw9Df.js} +1 -1
- package/dist/assets/src-_uT5vgXn.js +1 -0
- package/dist/assets/src-bmJr-fWH.js +1 -0
- package/dist/assets/{ui-DoEY93ZQ.js → ui-CGAe_N45.js} +2 -2
- package/dist/assets/{ui-QxKP_mxS.js → ui-CKp0RWbv.js} +1 -1
- package/dist/assets/ui-t8nphras.js +2 -0
- package/dist/index.html +13 -14
- package/dist-vendor/web-sdk.js +128 -118
- package/package.json +2 -2
- package/dist/assets/NewRecordView-BAe2dw2Y.js +0 -1
- package/dist/assets/Toolbar-_Bg6b3gy.js +0 -2
- package/dist/assets/chrome-BfURuVBW.js +0 -1
- package/dist/assets/index-B674c0cW.js +0 -36
- package/dist/assets/index-CvgeFYKg.css +0 -2
- package/dist/assets/json-CkyL3W27.js +0 -1
- package/dist/assets/shared-vjdjsgQc.js +0 -1
- package/dist/assets/shelf-D-ifpKTJ.js +0 -1
- package/dist/assets/src-BIligwLb.js +0 -1
- package/dist/assets/src-BbGADHi4.js +0 -1
- package/dist/assets/src-BngIhzHR.js +0 -1
- package/dist/assets/src-BqCV9wTP.js +0 -1
- package/dist/assets/src-CO_C8dwk.js +0 -1
- package/dist/assets/src-CTwytbLw.js +0 -1
- package/dist/assets/src-Ck3rvFAP.js +0 -2
- package/dist/assets/src-DD4urQ_Z.js +0 -4
- package/dist/assets/src-DdRHCjFX.js +0 -1
- package/dist/assets/src-DfExcdwX.js +0 -1
- package/dist/assets/src-JijGLvg4.js +0 -1
- package/dist/assets/src-m6T7MzTC.js +0 -4
- package/dist/assets/src-wGc7N6NH.js +0 -1
- package/dist/assets/ui-Vp773Nr2.js +0 -2
package/dist-vendor/web-sdk.js
CHANGED
|
@@ -3667,7 +3667,8 @@ function Mo(e) {
|
|
|
3667
3667
|
hints: {
|
|
3668
3668
|
ext: r,
|
|
3669
3669
|
maxBytes: i,
|
|
3670
|
-
noEditControl: !0
|
|
3670
|
+
noEditControl: !0,
|
|
3671
|
+
...t.key ? { fileName: t.key } : {}
|
|
3671
3672
|
},
|
|
3672
3673
|
zod: K(a, n)
|
|
3673
3674
|
});
|
|
@@ -5022,7 +5023,15 @@ function Ts(e) {
|
|
|
5022
5023
|
}, t.multiple ?? !1));
|
|
5023
5024
|
}
|
|
5024
5025
|
function Es(e) {
|
|
5025
|
-
let t
|
|
5026
|
+
for (let [t, n] of Object.entries(e)) {
|
|
5027
|
+
if (t.startsWith("$")) throw Error(`[relation] filter key '${t}' is an operator — only flat equality is allowed here`);
|
|
5028
|
+
if (n === void 0 || typeof n == "object" && n) throw Error(`[relation] filter key '${t}' has a non-scalar value — only flat equality is allowed here`);
|
|
5029
|
+
}
|
|
5030
|
+
}
|
|
5031
|
+
function Ds(e) {
|
|
5032
|
+
let t = q(e), n = t.required ?? !1, r = t.multiple ?? !1;
|
|
5033
|
+
e.options.filter && Es(e.options.filter);
|
|
5034
|
+
let i;
|
|
5026
5035
|
return i = r ? R().superRefine((e, t) => {
|
|
5027
5036
|
let n = G(e);
|
|
5028
5037
|
(!Array.isArray(n) || !n.every((e) => Number.isInteger(e) && e > 0)) && t.addIssue({
|
|
@@ -5041,13 +5050,14 @@ function Es(e) {
|
|
|
5041
5050
|
},
|
|
5042
5051
|
relation: {
|
|
5043
5052
|
library: e.options.library,
|
|
5044
|
-
shelf: e.options.shelf
|
|
5053
|
+
shelf: e.options.shelf,
|
|
5054
|
+
...e.options.filter && { filter: e.options.filter }
|
|
5045
5055
|
},
|
|
5046
5056
|
...r && { json: !0 },
|
|
5047
5057
|
zod: K(i, n)
|
|
5048
5058
|
});
|
|
5049
5059
|
}
|
|
5050
|
-
function
|
|
5060
|
+
function Os(e) {
|
|
5051
5061
|
let t = q(e), n = t.required ?? !1, r = R().superRefine((e, t) => {
|
|
5052
5062
|
if (typeof e == "string") try {
|
|
5053
5063
|
JSON.parse(e);
|
|
@@ -5069,7 +5079,7 @@ function Ds(e) {
|
|
|
5069
5079
|
zod: K(r, n)
|
|
5070
5080
|
});
|
|
5071
5081
|
}
|
|
5072
|
-
function
|
|
5082
|
+
function ks(e) {
|
|
5073
5083
|
let t = q(e), n = t.required ?? !1, r = t.multiple ?? !1, i = t.slots && t.slots.length > 0 ? t.slots : [""], a = t.fields?.length ? t.fields : [Z({
|
|
5074
5084
|
key: "text",
|
|
5075
5085
|
label: "core.fields.text"
|
|
@@ -5124,14 +5134,14 @@ function Os(e) {
|
|
|
5124
5134
|
slots: i,
|
|
5125
5135
|
fields: a.map((e) => ({
|
|
5126
5136
|
key: e.key,
|
|
5127
|
-
...
|
|
5137
|
+
...oc(e.type)
|
|
5128
5138
|
}))
|
|
5129
5139
|
},
|
|
5130
5140
|
columns: l,
|
|
5131
5141
|
zod: K(d, n)
|
|
5132
5142
|
});
|
|
5133
5143
|
}
|
|
5134
|
-
function
|
|
5144
|
+
function As(e) {
|
|
5135
5145
|
let t = q(e), n = t.required ?? !1, r = t.config ?? {}, i = ao((t.options, t.options)), a = L().finite();
|
|
5136
5146
|
r.step === 1 && (a = a.int({ message: H("int") })), r.min != null && (a = a.min(r.min)), r.max != null && (a = a.max(r.max));
|
|
5137
5147
|
let o = z({
|
|
@@ -5180,7 +5190,7 @@ function ks(e) {
|
|
|
5180
5190
|
zod: K(s, n)
|
|
5181
5191
|
});
|
|
5182
5192
|
}
|
|
5183
|
-
function
|
|
5193
|
+
function js(e) {
|
|
5184
5194
|
let t = q(e), n = t.required ?? !1, r = ao(t.options), i = F(U()).refine((e) => r.some((t) => t.value === e), { message: H("measured_unit") });
|
|
5185
5195
|
return Y(t, {
|
|
5186
5196
|
kind: "unit",
|
|
@@ -5196,7 +5206,7 @@ function As(e) {
|
|
|
5196
5206
|
zod: K(i, n)
|
|
5197
5207
|
});
|
|
5198
5208
|
}
|
|
5199
|
-
function
|
|
5209
|
+
function Ms(e) {
|
|
5200
5210
|
let t = q(e), n = t.required ?? !1, r = t.config ?? {}, i = V(W());
|
|
5201
5211
|
return r.min != null && (i = i.min(r.min, { message: H("min", { min: r.min }) })), r.max != null && (i = i.max(r.max, { message: H("max", { max: r.max }) })), Y(t, {
|
|
5202
5212
|
kind: "amount",
|
|
@@ -5213,7 +5223,7 @@ function js(e) {
|
|
|
5213
5223
|
zod: K(i, n)
|
|
5214
5224
|
});
|
|
5215
5225
|
}
|
|
5216
|
-
function
|
|
5226
|
+
function Ns(e) {
|
|
5217
5227
|
let t = q(e), n = t.required ?? !1, r = t.config ?? {}, i = L().finite();
|
|
5218
5228
|
r.min != null && (i = i.min(r.min)), r.max != null && (i = i.max(r.max));
|
|
5219
5229
|
let a = z({
|
|
@@ -5251,7 +5261,7 @@ function Ms(e) {
|
|
|
5251
5261
|
zod: K(o, n)
|
|
5252
5262
|
});
|
|
5253
5263
|
}
|
|
5254
|
-
function
|
|
5264
|
+
function Ps(e) {
|
|
5255
5265
|
let t = q(e), n = t.required ?? !1, r = t.config ?? {}, i = z({
|
|
5256
5266
|
code: F(),
|
|
5257
5267
|
lang: F()
|
|
@@ -5283,7 +5293,7 @@ function Ns(e) {
|
|
|
5283
5293
|
zod: K(a, n)
|
|
5284
5294
|
});
|
|
5285
5295
|
}
|
|
5286
|
-
function
|
|
5296
|
+
function Fs(e) {
|
|
5287
5297
|
let t = q(e), n = t.required ?? !1, r = z({
|
|
5288
5298
|
lat: L().min(-90).max(90),
|
|
5289
5299
|
lng: L().min(-180).max(180),
|
|
@@ -5324,7 +5334,7 @@ function Ps(e) {
|
|
|
5324
5334
|
zod: K(i, n)
|
|
5325
5335
|
});
|
|
5326
5336
|
}
|
|
5327
|
-
function
|
|
5337
|
+
function Is(e) {
|
|
5328
5338
|
return {
|
|
5329
5339
|
...ns({
|
|
5330
5340
|
key: e.key,
|
|
@@ -5344,7 +5354,7 @@ function Fs(e) {
|
|
|
5344
5354
|
kind: "per-weekday"
|
|
5345
5355
|
};
|
|
5346
5356
|
}
|
|
5347
|
-
function
|
|
5357
|
+
function Ls(e) {
|
|
5348
5358
|
let t = q(e);
|
|
5349
5359
|
return Y(t, {
|
|
5350
5360
|
kind: "lookup",
|
|
@@ -5361,7 +5371,7 @@ function Is(e) {
|
|
|
5361
5371
|
zod: ga().optional()
|
|
5362
5372
|
});
|
|
5363
5373
|
}
|
|
5364
|
-
function
|
|
5374
|
+
function Rs(e) {
|
|
5365
5375
|
let t = q(e), n = t.config?.granularity ?? "day", r = t.required ?? !1, i = t.multiple ?? !1, a = (e, t) => n === "datetime" ? xs({
|
|
5366
5376
|
key: e,
|
|
5367
5377
|
label: t
|
|
@@ -5402,10 +5412,10 @@ function Ls(e) {
|
|
|
5402
5412
|
});
|
|
5403
5413
|
let d = n === "datetime" ? "datetime" : n === "day" ? "date" : "text", f = [{
|
|
5404
5414
|
key: "from",
|
|
5405
|
-
...
|
|
5415
|
+
...oc(o.type)
|
|
5406
5416
|
}, {
|
|
5407
5417
|
key: "until",
|
|
5408
|
-
...
|
|
5418
|
+
...oc(s.type)
|
|
5409
5419
|
}];
|
|
5410
5420
|
return Y(t, {
|
|
5411
5421
|
kind: "period",
|
|
@@ -5426,25 +5436,25 @@ function Ls(e) {
|
|
|
5426
5436
|
zod: K(u, r)
|
|
5427
5437
|
});
|
|
5428
5438
|
}
|
|
5429
|
-
var
|
|
5439
|
+
var zs = /* @__PURE__ */ new Set([
|
|
5430
5440
|
"name",
|
|
5431
5441
|
"mime",
|
|
5432
5442
|
"size"
|
|
5433
|
-
]),
|
|
5443
|
+
]), Bs = [
|
|
5434
5444
|
"url",
|
|
5435
5445
|
"src",
|
|
5436
5446
|
"href",
|
|
5437
5447
|
"link"
|
|
5438
5448
|
];
|
|
5439
|
-
function
|
|
5449
|
+
function Vs(e) {
|
|
5440
5450
|
if (typeof e != "object" || !e || Array.isArray(e)) return "file_structure";
|
|
5441
5451
|
let t = e;
|
|
5442
|
-
if (
|
|
5452
|
+
if (Bs.some((e) => e in t)) return "file_remote_url";
|
|
5443
5453
|
let n = t.name;
|
|
5444
5454
|
if (typeof n != "string" || n === "") return "file_structure";
|
|
5445
5455
|
if (n.includes("://") || n.startsWith("//")) return "file_remote_url";
|
|
5446
5456
|
if (/[\\/]/.test(n) || n.includes("..")) return "file_name";
|
|
5447
|
-
for (let e of Object.keys(t)) if (!
|
|
5457
|
+
for (let e of Object.keys(t)) if (!zs.has(e)) return "file_unknown_key";
|
|
5448
5458
|
return t.mime !== void 0 && typeof t.mime != "string" || t.size !== void 0 && typeof t.size != "number" ? "file_structure" : null;
|
|
5449
5459
|
}
|
|
5450
5460
|
function $(e, t) {
|
|
@@ -5460,7 +5470,7 @@ function $(e, t) {
|
|
|
5460
5470
|
}
|
|
5461
5471
|
let n = G(e), r = Array.isArray(n) ? n : [n];
|
|
5462
5472
|
for (let e of r) {
|
|
5463
|
-
let n =
|
|
5473
|
+
let n = Vs(e);
|
|
5464
5474
|
if (n) {
|
|
5465
5475
|
t.addIssue({
|
|
5466
5476
|
code: B.custom,
|
|
@@ -5481,34 +5491,34 @@ function $(e, t) {
|
|
|
5481
5491
|
zod: K(a, r)
|
|
5482
5492
|
});
|
|
5483
5493
|
}
|
|
5484
|
-
function
|
|
5494
|
+
function Hs(e) {
|
|
5485
5495
|
return $("file", e);
|
|
5486
5496
|
}
|
|
5487
|
-
function
|
|
5497
|
+
function Us(e) {
|
|
5488
5498
|
return $("document", e);
|
|
5489
5499
|
}
|
|
5490
|
-
function
|
|
5500
|
+
function Ws(e) {
|
|
5491
5501
|
return $("audio", e);
|
|
5492
5502
|
}
|
|
5493
|
-
function
|
|
5503
|
+
function Gs(e) {
|
|
5494
5504
|
return $("video", e);
|
|
5495
5505
|
}
|
|
5496
|
-
function
|
|
5506
|
+
function Ks(e) {
|
|
5497
5507
|
return $("image", e);
|
|
5498
5508
|
}
|
|
5499
|
-
function
|
|
5509
|
+
function qs(e) {
|
|
5500
5510
|
return $("media", e);
|
|
5501
5511
|
}
|
|
5502
|
-
function
|
|
5512
|
+
function Js(e) {
|
|
5503
5513
|
return $("avatar", e);
|
|
5504
5514
|
}
|
|
5505
|
-
function
|
|
5515
|
+
function Ys(e) {
|
|
5506
5516
|
return $("cover", e);
|
|
5507
5517
|
}
|
|
5508
|
-
function
|
|
5518
|
+
function Xs(e) {
|
|
5509
5519
|
return $("poster", e);
|
|
5510
5520
|
}
|
|
5511
|
-
function
|
|
5521
|
+
function Zs(e) {
|
|
5512
5522
|
let t = q(e), n = {
|
|
5513
5523
|
...t.option ?? Z({ label: "" }),
|
|
5514
5524
|
label: t.valueLabel ?? ""
|
|
@@ -5528,7 +5538,7 @@ function Xs(e) {
|
|
|
5528
5538
|
required: t.required
|
|
5529
5539
|
});
|
|
5530
5540
|
}
|
|
5531
|
-
function
|
|
5541
|
+
function Qs(e, t, n) {
|
|
5532
5542
|
let r = q(n), i = r.required ?? !1, a = r.config ?? {}, o = L().finite();
|
|
5533
5543
|
t && (o = o.int({ message: H("int") })), a.min != null && (o = o.min(a.min)), a.max != null && (o = o.max(a.max));
|
|
5534
5544
|
let s = z({
|
|
@@ -5578,13 +5588,13 @@ function Zs(e, t, n) {
|
|
|
5578
5588
|
zod: K(c, i)
|
|
5579
5589
|
});
|
|
5580
5590
|
}
|
|
5581
|
-
function Qs(e) {
|
|
5582
|
-
return Zs("numberRange", !0, e);
|
|
5583
|
-
}
|
|
5584
5591
|
function $s(e) {
|
|
5585
|
-
return
|
|
5592
|
+
return Qs("numberRange", !0, e);
|
|
5586
5593
|
}
|
|
5587
5594
|
function ec(e) {
|
|
5595
|
+
return Qs("realRange", !1, e);
|
|
5596
|
+
}
|
|
5597
|
+
function tc(e) {
|
|
5588
5598
|
let t = q(e), n = t.required ?? !1, r = t.multiple ?? !1, i = z({
|
|
5589
5599
|
url: F().min(1),
|
|
5590
5600
|
title: F().optional(),
|
|
@@ -5612,7 +5622,7 @@ function ec(e) {
|
|
|
5612
5622
|
zod: K(a, n)
|
|
5613
5623
|
});
|
|
5614
5624
|
}
|
|
5615
|
-
var
|
|
5625
|
+
var nc = {
|
|
5616
5626
|
string: Z,
|
|
5617
5627
|
text: Q,
|
|
5618
5628
|
i18n: hs,
|
|
@@ -5627,31 +5637,31 @@ var tc = {
|
|
|
5627
5637
|
boolean: Ss,
|
|
5628
5638
|
triState: Cs,
|
|
5629
5639
|
select: Ts,
|
|
5630
|
-
relation:
|
|
5631
|
-
json:
|
|
5632
|
-
check:
|
|
5633
|
-
measured:
|
|
5634
|
-
unit:
|
|
5635
|
-
amount:
|
|
5636
|
-
money:
|
|
5637
|
-
code:
|
|
5638
|
-
geo:
|
|
5639
|
-
lookup:
|
|
5640
|
-
perWeekday:
|
|
5641
|
-
period:
|
|
5642
|
-
file:
|
|
5643
|
-
document:
|
|
5644
|
-
audio:
|
|
5645
|
-
video:
|
|
5646
|
-
image:
|
|
5647
|
-
media:
|
|
5648
|
-
avatar:
|
|
5649
|
-
cover:
|
|
5650
|
-
poster:
|
|
5651
|
-
embed:
|
|
5652
|
-
keyValue:
|
|
5653
|
-
numberRange:
|
|
5654
|
-
realRange:
|
|
5640
|
+
relation: Ds,
|
|
5641
|
+
json: Os,
|
|
5642
|
+
check: ks,
|
|
5643
|
+
measured: As,
|
|
5644
|
+
unit: js,
|
|
5645
|
+
amount: Ms,
|
|
5646
|
+
money: Ns,
|
|
5647
|
+
code: Ps,
|
|
5648
|
+
geo: Fs,
|
|
5649
|
+
lookup: Ls,
|
|
5650
|
+
perWeekday: Is,
|
|
5651
|
+
period: Rs,
|
|
5652
|
+
file: Hs,
|
|
5653
|
+
document: Us,
|
|
5654
|
+
audio: Ws,
|
|
5655
|
+
video: Gs,
|
|
5656
|
+
image: Ks,
|
|
5657
|
+
media: qs,
|
|
5658
|
+
avatar: Js,
|
|
5659
|
+
cover: Ys,
|
|
5660
|
+
poster: Xs,
|
|
5661
|
+
embed: tc,
|
|
5662
|
+
keyValue: Zs,
|
|
5663
|
+
numberRange: $s,
|
|
5664
|
+
realRange: ec,
|
|
5655
5665
|
group: J,
|
|
5656
5666
|
row: Qo,
|
|
5657
5667
|
table: $o,
|
|
@@ -5663,19 +5673,19 @@ var tc = {
|
|
|
5663
5673
|
info: ss,
|
|
5664
5674
|
button: cs
|
|
5665
5675
|
};
|
|
5666
|
-
function
|
|
5667
|
-
for (let t of Object.keys(e)) if (t in
|
|
5676
|
+
function rc(e) {
|
|
5677
|
+
for (let t of Object.keys(e)) if (t in nc) throw Error(`[f] preset '${t}' overrides a primitive`);
|
|
5668
5678
|
return {
|
|
5669
|
-
...
|
|
5679
|
+
...nc,
|
|
5670
5680
|
...e
|
|
5671
5681
|
};
|
|
5672
5682
|
}
|
|
5673
|
-
var
|
|
5683
|
+
var ic, ac = () => ic ??= rc(Uo);
|
|
5674
5684
|
new Proxy({}, {
|
|
5675
|
-
get: (e, t) =>
|
|
5676
|
-
has: (e, t) => t in
|
|
5685
|
+
get: (e, t) => ac()[t],
|
|
5686
|
+
has: (e, t) => t in ac()
|
|
5677
5687
|
});
|
|
5678
|
-
function
|
|
5688
|
+
function oc(e) {
|
|
5679
5689
|
let { kind: t, label: n, required: r, prim: i, hints: a, options: o, relation: s, virtual: c, json: l, hidden: u, derived: d } = e;
|
|
5680
5690
|
return {
|
|
5681
5691
|
kind: t,
|
|
@@ -5693,8 +5703,8 @@ function ac(e) {
|
|
|
5693
5703
|
}
|
|
5694
5704
|
//#endregion
|
|
5695
5705
|
//#region ../web-sdk/src/registry.ts
|
|
5696
|
-
var
|
|
5697
|
-
function
|
|
5706
|
+
var sc = {};
|
|
5707
|
+
function cc(e) {
|
|
5698
5708
|
if (!e.kinds.length) throw Error("[render] renderer without kinds");
|
|
5699
5709
|
let t = {
|
|
5700
5710
|
kinds: e.kinds,
|
|
@@ -5705,14 +5715,14 @@ function sc(e) {
|
|
|
5705
5715
|
keys: e.keys
|
|
5706
5716
|
};
|
|
5707
5717
|
for (let n of e.kinds) {
|
|
5708
|
-
if (
|
|
5709
|
-
|
|
5718
|
+
if (sc[n]) throw Error(`[render] kind '${n}' already registered`);
|
|
5719
|
+
sc[n] = t;
|
|
5710
5720
|
}
|
|
5711
5721
|
}
|
|
5712
|
-
function cc(e) {
|
|
5713
|
-
return oc[e.kind];
|
|
5714
|
-
}
|
|
5715
5722
|
function lc(e) {
|
|
5723
|
+
return sc[e.kind];
|
|
5724
|
+
}
|
|
5725
|
+
function uc(e) {
|
|
5716
5726
|
if (Ko(e) || qo(e)) return e.type.kind;
|
|
5717
5727
|
if (Jo(e)) return e.kind ?? (rs(e) ? "collection" : is(e) ? "embedded" : "group");
|
|
5718
5728
|
if (Zo(e)) return "button";
|
|
@@ -5720,75 +5730,75 @@ function lc(e) {
|
|
|
5720
5730
|
if (Xo(e)) return "info";
|
|
5721
5731
|
throw Error("[render] unknown layout element");
|
|
5722
5732
|
}
|
|
5723
|
-
function
|
|
5724
|
-
let t =
|
|
5733
|
+
function dc(e) {
|
|
5734
|
+
let t = lc(e)?.layout;
|
|
5725
5735
|
return typeof t == "function" ? t(e) : t ?? "scalar";
|
|
5726
5736
|
}
|
|
5727
|
-
var
|
|
5728
|
-
function
|
|
5729
|
-
if (
|
|
5730
|
-
|
|
5737
|
+
var fc = (e) => e.hints.multi === !0 || e.hints.multiple === !0 ? "block" : "scalar", pc = {};
|
|
5738
|
+
function mc(e, t) {
|
|
5739
|
+
if (pc[e]) throw Error(`[template] '${e}' already registered`);
|
|
5740
|
+
pc[e] = t;
|
|
5731
5741
|
}
|
|
5732
|
-
function
|
|
5733
|
-
return
|
|
5742
|
+
function hc(e) {
|
|
5743
|
+
return pc[e];
|
|
5734
5744
|
}
|
|
5735
5745
|
//#endregion
|
|
5736
5746
|
//#region ../web-sdk/src/list-view.ts
|
|
5737
|
-
var
|
|
5738
|
-
function
|
|
5747
|
+
var gc = {};
|
|
5748
|
+
function _c(e) {
|
|
5739
5749
|
if (!e.kind) throw Error("[list-view] view without kind");
|
|
5740
|
-
if (
|
|
5741
|
-
|
|
5750
|
+
if (gc[e.kind]) throw Error(`[list-view] kind '${e.kind}' already registered`);
|
|
5751
|
+
gc[e.kind] = e;
|
|
5742
5752
|
}
|
|
5743
|
-
function
|
|
5744
|
-
return
|
|
5753
|
+
function vc(e) {
|
|
5754
|
+
return gc[e];
|
|
5745
5755
|
}
|
|
5746
5756
|
//#endregion
|
|
5747
5757
|
//#region ../web-sdk/src/plugin-ui.ts
|
|
5748
|
-
function
|
|
5758
|
+
function yc(e) {
|
|
5749
5759
|
return e;
|
|
5750
5760
|
}
|
|
5751
|
-
var
|
|
5752
|
-
function
|
|
5761
|
+
var bc = /* @__PURE__ */ new Map(), xc = /* @__PURE__ */ new Map(), Sc = /* @__PURE__ */ new Map();
|
|
5762
|
+
function Cc(e) {
|
|
5753
5763
|
for (let t of e.slots ?? []) {
|
|
5754
|
-
let e =
|
|
5755
|
-
e || (e = /* @__PURE__ */ new Map(),
|
|
5764
|
+
let e = bc.get(t.slot);
|
|
5765
|
+
e || (e = /* @__PURE__ */ new Map(), bc.set(t.slot, e)), e.set(t.id, t);
|
|
5756
5766
|
}
|
|
5757
|
-
for (let t of e.routes ?? [])
|
|
5758
|
-
for (let t of e.nav ?? [])
|
|
5759
|
-
}
|
|
5760
|
-
function Cc(e) {
|
|
5761
|
-
return (t, n) => (t.order ?? 0) - (n.order ?? 0) || e(t).localeCompare(e(n));
|
|
5767
|
+
for (let t of e.routes ?? []) xc.set(t.path, t);
|
|
5768
|
+
for (let t of e.nav ?? []) Sc.set(t.to, t);
|
|
5762
5769
|
}
|
|
5763
5770
|
function wc(e) {
|
|
5764
|
-
return
|
|
5771
|
+
return (t, n) => (t.order ?? 0) - (n.order ?? 0) || e(t).localeCompare(e(n));
|
|
5765
5772
|
}
|
|
5766
|
-
function Tc() {
|
|
5767
|
-
return [...bc.values()];
|
|
5773
|
+
function Tc(e) {
|
|
5774
|
+
return [...bc.get(e)?.values() ?? []].sort(wc((e) => e.id));
|
|
5768
5775
|
}
|
|
5769
5776
|
function Ec() {
|
|
5770
|
-
return [...xc.values()]
|
|
5777
|
+
return [...xc.values()];
|
|
5771
5778
|
}
|
|
5772
5779
|
function Dc() {
|
|
5773
|
-
|
|
5780
|
+
return [...Sc.values()].sort(wc((e) => e.to));
|
|
5781
|
+
}
|
|
5782
|
+
function Oc() {
|
|
5783
|
+
bc.clear(), xc.clear(), Sc.clear();
|
|
5774
5784
|
}
|
|
5775
5785
|
//#endregion
|
|
5776
5786
|
//#region ../web-sdk/src/site-links.ts
|
|
5777
|
-
var
|
|
5778
|
-
function
|
|
5779
|
-
Oc = [...e];
|
|
5780
|
-
}
|
|
5781
|
-
function jc() {
|
|
5782
|
-
return [...Oc];
|
|
5783
|
-
}
|
|
5784
|
-
function Mc(e) {
|
|
5787
|
+
var kc = [], Ac = [];
|
|
5788
|
+
function jc(e) {
|
|
5785
5789
|
kc = [...e];
|
|
5786
5790
|
}
|
|
5787
|
-
function
|
|
5791
|
+
function Mc() {
|
|
5788
5792
|
return [...kc];
|
|
5789
5793
|
}
|
|
5794
|
+
function Nc(e) {
|
|
5795
|
+
Ac = [...e];
|
|
5796
|
+
}
|
|
5790
5797
|
function Pc() {
|
|
5791
|
-
|
|
5798
|
+
return [...Ac];
|
|
5799
|
+
}
|
|
5800
|
+
function Fc() {
|
|
5801
|
+
kc = [], Ac = [];
|
|
5792
5802
|
}
|
|
5793
5803
|
//#endregion
|
|
5794
|
-
export {
|
|
5804
|
+
export { Cc as applyAppUI, yc as definePluginUI, uc as elementKind, dc as fieldLayout, Dc as getPluginNav, Ec as getPluginRoutes, Mc as getSiteLinks, Pc as getSiteShelves, Tc as getSlotEntries, gc as listViewRegistry, fc as multiBlock, _c as registerListView, cc as registerRenderer, jc as registerSiteLinks, Nc as registerSiteShelves, mc as registerTemplate, sc as rendererRegistry, Oc as resetAppUI, Fc as resetSiteLinks, vc as resolveListView, lc as resolveRenderer, hc as resolveTemplate };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coffer-org/web",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"engines": {
|
|
6
6
|
"node": ">=24"
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"prepack": "npm run build"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@coffer-org/core": "3.
|
|
22
|
+
"@coffer-org/core": "3.1.0",
|
|
23
23
|
"dompurify": "^3.2.5",
|
|
24
24
|
"marked": "^15.0.0",
|
|
25
25
|
"micromark": "^4.0.2",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{a as r,l as i,t as a,u as o}from"./react-vendor-BskHO5hY.js";import{n as s,t as c}from"./ExtendReasonInfo-DZyJKRHy.js";import{t as l}from"./Icon-Dydn049Z.js";import{b as u,f as d,l as f,m as p,n as m,o as h,r as g,s as _,t as v,u as y}from"./Toolbar-_Bg6b3gy.js";import{S as b,f as x,g as S,m as C}from"./fields-BvFhu2Zp.js";import{_ as w,n as T,o as E,s as D,t as O,v as k}from"./shelf-D-ifpKTJ.js";import{t as A}from"./button-DaYjtbcx.js";import{t as j}from"./json-CkyL3W27.js";import{j as M,s as N}from"./api-DsJ6cAbe.js";import{n as P}from"./dispatch-B7QFSWwA.js";var F=e(t(),1),I=a(),L=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/fields-form.tsx`;function R({shelf:e,record:t,onSubmit:r,onCancel:i,submitLabel:a,busy:o,children:s,hiddenFields:c,onValuesChange:l,errorSink:u,extraValidate:d}){let{t:p}=n(),h=f(p),v=!!t,y=(0,F.useMemo)(()=>D(e.fields),[e]),{values:x,errors:S,setErrors:C,setTouched:w,bridge:E}=m({fm:y,mode:v?`edit`:`create`,recordCtx:{library:e.library,shelf:e.shelf,recordId:t?String(t.id):null},initial:()=>B(e,t),hiddenFields:c}),[k,j]=(0,F.useState)(),[M,N]=(0,F.useState)(!1);(0,F.useEffect)(()=>{l?.(x)},[x,l]),(0,F.useEffect)(()=>{u?.({setErrors:C,setTouched:w})},[u,C,w]);async function P(t){t.preventDefault(),j(void 0);let n=Object.keys(y),i={};for(let e of n)e in x&&(i[e]=x[e]);let a=V(i),o=(v?T(e):O(e)).safeParse(a),s={};if(!o.success)for(let e of o.error.issues){let t=String(e.path[0]??``);if(!n.includes(t)||s[t])continue;let{code:r,params:i}=b(e.message);s[t]=h(r,i)}if(Object.assign(s,d?.(x)??{}),Object.keys(s).length){C(s),w(new Set(Object.keys(s)));return}N(!0);let c=await r(a);N(!1),c&&j(c)}return(0,I.jsxDEV)(`form`,{onSubmit:P,noValidate:!0,className:`flex flex-col gap-5 min-w-0`,children:[(0,I.jsxDEV)(_.Provider,{value:e=>S[e.join(`.`)],children:(0,I.jsxDEV)(g,{items:e.fields,ctx:{bridge:E}},void 0,!1,{fileName:L,lineNumber:117,columnNumber:9},this)},void 0,!1,{fileName:L,lineNumber:116,columnNumber:7},this),s,k&&(0,I.jsxDEV)(`p`,{className:`text-sm text-danger`,children:k},void 0,!1,{fileName:L,lineNumber:120,columnNumber:21},this),(0,I.jsxDEV)(`div`,{className:`flex gap-3 pt-2 border-t border-border`,children:[(0,I.jsxDEV)(A,{type:`submit`,disabled:o||M,size:`lg`,className:`flex-1`,children:a??p(`actions.save`)},void 0,!1,{fileName:L,lineNumber:122,columnNumber:9},this),i&&(0,I.jsxDEV)(A,{type:`button`,variant:`secondary`,size:`lg`,onClick:i,className:`flex-1`,children:p(`actions.cancel`)},void 0,!1,{fileName:L,lineNumber:126,columnNumber:11},this)]},void 0,!0,{fileName:L,lineNumber:121,columnNumber:7},this)]},void 0,!0,{fileName:L,lineNumber:115,columnNumber:5},this)}var z=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/form.tsx`;function B(e,t){let n={};n.name=t?.name==null?``:String(t.name);for(let[r,i]of E(e.fields))if(!i.virtual)if(t){let e=t[r];e==null?n[r]=i.prim!==`checkbox`&&``:i.prim===`checkbox`?n[r]=e===1||e===!0||e===`1`:C(i)?n[r]=e===``?``:j(e,i.hints.multiple===!0?[]:{}):n[r]=e}else n[r]=i.prim===`checkbox`?!1:C(i)&&i.hints.multiple===!0?[]:``;for(let r of e.fields){if(!x(r)||!S(r))continue;let e=r.key;t?n[e]=t[e]??(r.multiple?[]:{}):n[e]=r.multiple?[]:{}}return n}function V(e){let t={};for(let[n,r]of Object.entries(e))r===``||r===void 0||Array.isArray(r)&&r.length===0||typeof r==`object`&&r&&!Array.isArray(r)&&Object.keys(r).length===0||(t[n]=r);return t}function H({ext:e,values:t,onChange:r,recordId:i,fieldLabel:a}){let{t:o}=n();return(0,I.jsxDEV)(`fieldset`,{className:`border border-accent/30 rounded-xl p-4 pt-2 flex flex-col min-w-0 gap-4`,children:[(0,I.jsxDEV)(`legend`,{className:`px-2 inline-flex items-center gap-1.5 text-sm font-semibold text-accent`,children:[(0,I.jsxDEV)(l,{name:e.icon,size:14,className:`shrink-0`},void 0,!1,{fileName:z,lineNumber:115,columnNumber:9},this),` `,o(e.label),(0,I.jsxDEV)(c,{ext:e,fieldLabel:a},void 0,!1,{fileName:z,lineNumber:116,columnNumber:9},this)]},void 0,!0,{fileName:z,lineNumber:114,columnNumber:7},this),(0,I.jsxDEV)(g,{items:e.fields,ctx:{renderField:(n,a)=>k(a.hidden,t)?null:(0,I.jsxDEV)(P,{mode:`create`,field:a,label:a.label?o(a.label):void 0,required:k(a.required,t),value:t[n]??``,recordCtx:{library:``,shelf:e.id,recordId:i},onChange:t=>r(e.id,n,t)},void 0,!1,{fileName:z,lineNumber:101,columnNumber:9},this)}},void 0,!1,{fileName:z,lineNumber:118,columnNumber:7},this)]},void 0,!0,{fileName:z,lineNumber:113,columnNumber:5},this)}function U(e,t,n){let[r]=(0,F.useState)(()=>{let n={};for(let r of e){let e=t?._extends?.[r.id];n[r.id]={};for(let[t,i]of E(r.fields)){let a=e?.[t];a==null?n[r.id][t]=i.prim===`checkbox`?!1:C(i)&&i.hints.multiple===!0?[]:``:i.prim===`checkbox`?n[r.id][t]=a===1||a===!0||a===`1`:C(i)?n[r.id][t]=a===``?``:j(a,i.hints.multiple===!0?[]:{}):n[r.id][t]=a}}return n}),[i,a]=(0,F.useState)(r),o=(0,F.useMemo)(()=>e.filter(e=>w(e.showWhen,n)),[e,n]);function s(e,t,n){a(r=>({...r,[e]:{...r[e],[t]:n}}))}function c(e){let t={};for(let n of o){let a=i[n.id]??{};if(e){let e=r[n.id]??{},i=Object.fromEntries(Object.entries(a).filter(([t,n])=>n!==e[t]));Object.keys(i).length>0&&(t[`_extend_${n.id}`]=i)}else{let e=Object.fromEntries(Object.entries(a).filter(([,e])=>e!==``&&e!==!1));t[`_extend_${n.id}`]=e}}return t}return{extValues:i,setExtValue:s,activeExts:o,buildExtendPatch:c}}function W({shelf:e,record:t,defaults:r,hiddenFields:i,onSuccess:a,onCancel:o}){let{t:s}=n(),c=f(s),l=!!t,u=(0,F.useMemo)(()=>D(e.fields),[e]),[p,m]=(0,F.useState)([]),[h,g]=(0,F.useState)(!1),[_,v]=(0,F.useState)(()=>B(e,t)),b=(0,F.useRef)(null),{extValues:x,setExtValue:S,activeExts:C,buildExtendPatch:w}=U((0,F.useMemo)(()=>d().filter(t=>t.attachTo.some(t=>t.library===e.library&&(!t.shelf||t.shelf===e.shelf))),[e]),t,_);function T(e){return l||String(e.name??``).trim()?{}:{name:s(`validation.required`)}}async function E(n){m([]),g(!0);let r={...n,...w()},i=String(t?.id??``),o=l?await M(e.library,e.shelf,i,r):await N(e.library,e.shelf,r);if(g(!1),o.ok){a(o.row);return}let s=o.issues??[],d={},f=[];for(let e of s)e.field&&u[e.field]?d[e.field]=c(e.code,e.params):f.push(e);let p=y(s,c);(Object.keys(d).length||Object.keys(p).length)&&(b.current?.setErrors(e=>({...e,...d,...p})),b.current?.setTouched(e=>new Set([...e,...Object.keys(d)]))),m(f)}return(0,I.jsxDEV)(`div`,{children:(0,I.jsxDEV)(R,{shelf:e,record:t,onSubmit:E,onCancel:o,submitLabel:s(h?`common.saving`:l?`actions.save`:`actions.create`),busy:h,hiddenFields:i,onValuesChange:v,errorSink:e=>{b.current=e},extraValidate:T,children:[C.map(e=>(0,I.jsxDEV)(H,{ext:e,values:x[e.id]??{},onChange:S,recordId:t?String(t.id):null,fieldLabel:e=>u[e]?.label?s(u[e].label):e},e.id,!1,{fileName:z,lineNumber:319,columnNumber:11},this)),p.length>0&&(0,I.jsxDEV)(`div`,{className:`bg-danger/10 border border-danger/30 rounded-xl p-3.5 text-sm`,children:[(0,I.jsxDEV)(`p`,{className:`font-semibold text-danger mb-2`,children:s(`form.serverRejected`)},void 0,!1,{fileName:z,lineNumber:331,columnNumber:13},this),(0,I.jsxDEV)(`ul`,{className:`space-y-1 text-text/80`,children:p.map((e,t)=>{let n=u[e.field],r=n?s(n.label):e.field,i=e.code===`pattern`&&e.params?.messageKey?s(String(e.params.messageKey)):s(`validation.${e.code}`,e.params);return(0,I.jsxDEV)(`li`,{className:`flex gap-1.5`,children:[r&&(0,I.jsxDEV)(`span`,{className:`text-muted font-medium`,children:[r,`:`]},void 0,!0,{fileName:z,lineNumber:342,columnNumber:31},this),i]},t,!0,{fileName:z,lineNumber:341,columnNumber:19},this)})},void 0,!1,{fileName:z,lineNumber:332,columnNumber:13},this)]},void 0,!0,{fileName:z,lineNumber:330,columnNumber:11},this)]},`${e.library}/${e.shelf}/${t?t.id:`new`}`,!0,{fileName:z,lineNumber:302,columnNumber:7},this)},void 0,!1,{fileName:z,lineNumber:294,columnNumber:5},this)}var G=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/record/NewRecordView.tsx`;function K(){let{t:e}=n(),{library:t,shelf:a}=o(),c=i(),l=p().flatMap(e=>e.shelves).find(e=>e.library===t&&e.shelf===a);return!l||l.standalone===!1?(0,I.jsxDEV)(`div`,{className:`p-6 text-muted`,children:e(`common.notFound`)},void 0,!1,{fileName:G,lineNumber:20,columnNumber:44},this):l.single?(0,I.jsxDEV)(r,{to:`/${t}/${a}`,replace:!0},void 0,!1,{fileName:G,lineNumber:25,columnNumber:24},this):(0,I.jsxDEV)(`div`,{className:`flex flex-col`,children:[(0,I.jsxDEV)(v,{children:(0,I.jsxDEV)(A,{variant:`ghost`,size:`sm`,className:`px-2`,onClick:()=>c(`/${t}/${a}`),children:[(0,I.jsxDEV)(u,{size:18},void 0,!1,{fileName:G,lineNumber:31,columnNumber:11},this),(0,I.jsxDEV)(`span`,{className:`text-sm`,children:e(l.label)},void 0,!1,{fileName:G,lineNumber:32,columnNumber:11},this)]},void 0,!0,{fileName:G,lineNumber:30,columnNumber:9},this)},void 0,!1,{fileName:G,lineNumber:29,columnNumber:7},this),(0,I.jsxDEV)(`div`,{className:`flex-1 min-w-0`,children:(0,I.jsxDEV)(`div`,{className:`max-w-2xl mx-auto px-6 py-6`,children:(0,I.jsxDEV)(h,{library:l.library,shelf:l.shelf,children:(0,I.jsxDEV)(W,{shelf:l,onSuccess:e=>{s(`${l.library}/${l.shelf}`),e?.id?c(`/${t}/${a}/${e.id}`):c(`/${t}/${a}`)},onCancel:()=>c(`/${t}/${a}`)},void 0,!1,{fileName:G,lineNumber:38,columnNumber:13},this)},void 0,!1,{fileName:G,lineNumber:37,columnNumber:11},this)},void 0,!1,{fileName:G,lineNumber:36,columnNumber:9},this)},void 0,!1,{fileName:G,lineNumber:35,columnNumber:7},this)]},void 0,!0,{fileName:G,lineNumber:28,columnNumber:5},this)}export{K as NewRecordView};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{t as r}from"./react-vendor-BskHO5hY.js";import{r as i}from"./x-CzSVfh-E.js";import{c as a,d as o,p as s,u as c}from"./chrome-BfURuVBW.js";import{T as l,d as u,f as d,g as f,h as p,l as m,n as h,o as g,p as _,s as v}from"./fields-BvFhu2Zp.js";import{o as y,v as b}from"./shelf-D-ifpKTJ.js";import{n as x,o as S,t as C}from"./src-R3C69mft.js";import{i as ee,n as te,r as ne}from"./field-frame-lE36ax7A.js";import{n as re}from"./extend-CbEbk8Xz.js";import{t as ie}from"./plugin-q1oOYqt7.js";import{f as w}from"./api-DsJ6cAbe.js";import{r as ae,t as T}from"./development-olQNibq5.js";import{_ as E,a as oe,b as D,g as se,h as ce,i as le,l as O,m as ue,n as de,p as fe,r as pe,t as me,v as k,y as A}from"./micromark-extension-gfm-BUw6_ZLT.js";var he=i(`arrow-left`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]),j=e(t(),1);function ge(e,t={}){let n=t.disabled??new Set,r=e.filter(e=>!n.has(e.id)),i=new Map;for(let e of r){for(let t of e.libraries??[])for(let n of t.shelves)i.set(`${n.library}/${n.shelf}`,e.id);for(let t of e.libraryShelves??[])i.set(`${t.library}/${t.shelf}`,e.id)}let a=(e,t)=>i.get(`${e}/${t}`);for(let e of r)for(let t of e.dependsOn)if(n.has(t))throw Error(`[plugin] '${e.id}' is enabled, but its dependency '${t}' is disabled`);let{order:o,libraries:s,shelves:c,extends_:l}=ie(r),u=new Map;for(let e of r)for(let t of e.fieldContribs??[]){let e=`${t.library}/${t.shelf}/${t.field}`,n=u.get(e)??{options:[],suggestions:[]};t.options&&n.options.push(...t.options),t.suggestions&&n.suggestions.push(...t.suggestions),u.set(e,n)}let d=(e,t)=>{if(t.options.length){let n=new Set((e.options??[]).map(e=>e.value));e.options=[...e.options??[],...t.options.filter(e=>!n.has(e.value))]}if(t.suggestions.length){let n=e.hints.suggestions??[],r=new Set(n);e.hints.suggestions=[...n,...t.suggestions.filter(e=>!r.has(e))]}},f=new Map;for(let e of r)for(let t of e.optionLists??[])f.set(t.name,t.options);let p=e=>f.get(e)??[];for(let e of c)for(let[t,n]of y(e.fields)){let r=u.get(`${e.library}/${e.shelf}/${t}`);r&&d(n,r)}for(let e of r)for(let[t,n]of e.settings?y(e.settings.fields):[]){let r=u.get(`_settings/${e.id}/${t}`);r&&(d(n,r),n.prim===`select`&&n.options?.length&&h(n,n.options.map(e=>e.value)))}let m=new Map;for(let e of c)for(let[t,n]of y(e.fields)){let r=n.hints.source,i=n.options??[],a=r?f.get(r)??[]:[],o=new Set(i.map(e=>e.value)),s=[...i,...a.filter(e=>!o.has(e.value))];n.prim===`select`&&s.length&&h(n,s.map(e=>e.value)),s.length&&(n.options=s,m.set(`${e.library}/${e.shelf}/${t}`,s))}return{order:o,libraries:s,shelves:c,extends_:l,getShelf:(e,t)=>c.find(n=>n.library===e&&n.shelf===t),getLibrary:e=>s.find(t=>t.meta.id===e),getExtendsFor:(e,t)=>l.filter(n=>re(n,e,t)),getFieldOptions:(e,t,n)=>m.get(`${e}/${t}/${n}`)??[],getOptionList:p,getShelfOwner:a}}var M=null;function _e(e){M=ge(e)}function N(){if(!M)throw Error(`[registry] not initialized — call initRegistry() in the boot loader`);return M}var ve=(e,t)=>N().getShelf(e,t),ye=(e,t)=>N().getExtendsFor(e,t),be=e=>N().getOptionList(e),xe=(e,t)=>N().getShelfOwner(e,t),Se=()=>N().libraries,Ce=()=>N().shelves,we=()=>N().extends_,P=()=>N().order,F=r(),I=(0,j.createContext)(()=>void 0),Te=()=>(0,j.useContext)(I),Ee=e=>e.join(`.`);function L(e){return(t,n)=>t===`pattern`&&n?.messageKey?e(String(n.messageKey)):e(`validation.${t}`,n)}function De(e,t){let n={};for(let r of e){let e=Ee(r.path?.length?r.path:[r.field]);n[e]||(n[e]=t(r.code,r.params))}return n}function Oe(e,t){let n={};for(let[r,i]of Object.entries(e))r===t||r.startsWith(t+`.`)||(n[r]=i);return n}var ke=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/computed-ctx.tsx`,Ae={settings:{},global:{}},R=(0,j.createContext)(Ae),je=()=>(0,j.useContext)(R);function Me(e,t){return{record:e.values??{},settings:t.settings,global:t.global,meta:{library:e.recordCtx.library,shelf:e.recordCtx.shelf}}}async function z(e){return P().find(t=>t.id===e)?.settings?.fields.length?w(`/api/plugins/${e}/settings`).catch(()=>({})):{}}function B({library:e,shelf:t,children:n}){let[r,i]=(0,j.useState)(Ae),a=xe(e,t);return(0,j.useEffect)(()=>{let e=!0;return Promise.all([a?z(a):Promise.resolve({}),z(`core`)]).then(([t,n])=>{e&&i({settings:t,global:n})}),()=>{e=!1}},[a]),(0,F.jsxDEV)(R.Provider,{value:r,children:n},void 0,!1,{fileName:ke,lineNumber:66,columnNumber:10},this)}var Ne={}.hasOwnProperty,Pe=/^(https?|ircs?|mailto|xmpp)$/i,Fe=/^https?$/i;function Ie(e){let t=e||{},n=!0,r={},i=[[]],a=[],o=[],s=se([{enter:{blockQuote:oe,codeFenced:me,codeFencedFenceInfo:h,codeFencedFenceMeta:h,codeIndented:ge,codeText:G,content:Oe,definition:F,definitionDestinationString:Te,definitionLabelString:h,definitionTitleString:h,emphasis:ze,htmlFlow:Re,htmlText:U,image:_e,label:h,link:N,listItemMarker:ne,listItemValue:te,listOrdered:C,listUnordered:ee,paragraph:de,reference:h,resource:xe,resourceDestinationString:Se,resourceTitleString:h,setextHeading:Ae,strong:W},exit:{atxHeading:je,atxHeadingSequence:ke,autolinkEmail:Be,autolinkProtocol:Q,blockQuote:le,characterEscapeValue:B,characterReferenceMarkerHexadecimal:X,characterReferenceMarkerNumeric:X,characterReferenceValue:Z,codeFenced:M,codeFencedFence:j,codeFencedFenceInfo:he,codeFencedFenceMeta:S,codeFlowValue:Le,codeIndented:M,codeText:K,codeTextData:B,data:B,definition:De,definitionDestinationString:Ee,definitionLabelString:I,definitionTitleString:L,emphasis:q,hardBreakEscape:V,hardBreakTrailing:V,htmlFlow:H,htmlFlowData:B,htmlText:H,htmlTextData:B,image:P,label:ye,labelText:ve,lineEnding:Ie,link:P,listOrdered:re,listUnordered:ie,paragraph:pe,reference:S,referenceString:be,resource:S,resourceDestinationString:Ce,resourceTitleString:we,setextHeading:z,setextHeadingLineSequence:Me,setextHeadingText:R,strong:J,thematicBreak:Y}},...t.htmlExtensions||[]]),c={definitions:r,tightStack:o},l={buffer:h,encode:x,getData:m,lineEndingIfNeeded:b,options:t,raw:v,resume:g,setData:p,tag:_},u=t.defaultLineEnding;return d;function d(e){let t=-1,n=0,r=[],a=[],o=[];for(;++t<e.length;)!u&&(e[t][1].type===k.lineEnding||e[t][1].type===k.lineEndingBlank)&&(u=e[t][2].sliceSerialize(e[t][1])),(e[t][1].type===k.listOrdered||e[t][1].type===k.listUnordered)&&(e[t][0]===`enter`?r.push(t):f(e.slice(r.pop(),t))),e[t][1].type===k.definition&&(e[t][0]===`enter`?(o=E(o,e.slice(n,t)),n=t):(a=E(a,e.slice(n,t+1)),n=t+1));a=E(a,o),a=E(a,e.slice(n)),t=-1;let c=a;for(s.enter.null&&s.enter.null.call(l);++t<e.length;){let e=s[c[t][0]],n=c[t][1].type,r=e[n];Ne.call(e,n)&&r&&r.call({sliceSerialize:c[t][2].sliceSerialize,...l},c[t][1])}return s.exit.null&&s.exit.null.call(l),i[0].join(``)}function f(e){let t=e.length,n=0,r=0,i=!1,a;for(;++n<t;){let t=e[n];if(t[1]._container)a=void 0,t[0]===`enter`?r++:r--;else switch(t[1].type){case k.listItemPrefix:t[0]===`exit`&&(a=!0);break;case k.linePrefix:break;case k.lineEndingBlank:t[0]===`enter`&&!r&&(a?a=void 0:i=!0);break;default:a=void 0}}e[0][1]._loose=i}function p(e,t){c[e]=t}function m(e){return c[e]}function h(){i.push([])}function g(){let e=i.pop();return T(e!==void 0,`Cannot resume w/o buffer`),e.join(``)}function _(e){n&&(p(`lastWasTag`,!0),i[i.length-1].push(e))}function v(e){p(`lastWasTag`),i[i.length-1].push(e)}function y(){v(u||`
|
|
2
|
-
`)}function b(){let e=i[i.length-1],t=e[e.length-1],n=t?t.charCodeAt(t.length-1):D.eof;n===D.lf||n===D.cr||n===D.eof||y()}function x(e){return m(`ignoreEncode`)?e:ue(e)}function S(){g()}function C(e){o.push(!e._loose),b(),_(`<ol`),p(`expectFirstItem`,!0)}function ee(e){o.push(!e._loose),b(),_(`<ul`),p(`expectFirstItem`,!0)}function te(e){if(m(`expectFirstItem`)){let t=Number.parseInt(this.sliceSerialize(e),A.numericBaseDecimal);t!==1&&_(` start="`+x(String(t))+`"`)}}function ne(){m(`expectFirstItem`)?_(`>`):w(),b(),_(`<li>`),p(`expectFirstItem`),p(`lastWasTag`)}function re(){w(),o.pop(),y(),_(`</ol>`)}function ie(){w(),o.pop(),y(),_(`</ul>`)}function w(){m(`lastWasTag`)&&!m(`slurpAllLineEndings`)&&b(),_(`</li>`),p(`slurpAllLineEndings`)}function oe(){o.push(!1),b(),_(`<blockquote>`)}function le(){o.pop(),b(),_(`</blockquote>`),p(`slurpAllLineEndings`)}function de(){o[o.length-1]||(b(),_(`<p>`)),p(`slurpAllLineEndings`)}function pe(){o[o.length-1]?p(`slurpAllLineEndings`,!0):_(`</p>`)}function me(){b(),_(`<pre><code`),p(`fencesCount`,0)}function he(){_(` class="language-`+g()+`"`)}function j(){let e=m(`fencesCount`)||0;e||(_(`>`),p(`slurpOneLineEnding`,!0)),p(`fencesCount`,e+1)}function ge(){b(),_(`<pre><code>`)}function M(){let e=m(`fencesCount`);e!==void 0&&e<2&&c.tightStack.length>0&&!m(`lastWasTag`)&&y(),m(`flowCodeSeenData`)&&b(),_(`</code></pre>`),e!==void 0&&e<2&&b(),p(`flowCodeSeenData`),p(`fencesCount`),p(`slurpOneLineEnding`)}function _e(){a.push({image:!0}),n=void 0}function N(){a.push({})}function ve(e){a[a.length-1].labelId=this.sliceSerialize(e)}function ye(){a[a.length-1].label=g()}function be(e){a[a.length-1].referenceId=this.sliceSerialize(e)}function xe(){h(),a[a.length-1].destination=``}function Se(){h(),p(`ignoreEncode`,!0)}function Ce(){a[a.length-1].destination=g(),p(`ignoreEncode`)}function we(){a[a.length-1].title=g()}function P(){let e=a.length-1,i=a[e],o=i.referenceId||i.labelId;T(o!==void 0,"media should have `referenceId` or `labelId`"),T(i.label!==void 0,"media should have `label`");let s=i.destination===void 0?r[fe(o)]:i;for(n=!0;e--;)if(a[e].image){n=void 0;break}i.image?(_(`<img src="`+O(s.destination,t.allowDangerousProtocol?void 0:Fe)+`" alt="`),v(i.label),_(`"`)):_(`<a href="`+O(s.destination,t.allowDangerousProtocol?void 0:Pe)+`"`),_(s.title?` title="`+s.title+`"`:``),i.image?_(` />`):(_(`>`),v(i.label),_(`</a>`)),a.pop()}function F(){h(),a.push({})}function I(e){g(),a[a.length-1].labelId=this.sliceSerialize(e)}function Te(){h(),p(`ignoreEncode`,!0)}function Ee(){a[a.length-1].destination=g(),p(`ignoreEncode`)}function L(){a[a.length-1].title=g()}function De(){let e=a[a.length-1];T(e.labelId!==void 0,"media should have `labelId`");let t=fe(e.labelId);g(),Ne.call(r,t)||(r[t]=a[a.length-1]),a.pop()}function Oe(){p(`slurpAllLineEndings`,!0)}function ke(e){m(`headingRank`)||(p(`headingRank`,this.sliceSerialize(e).length),b(),_(`<h`+m(`headingRank`)+`>`))}function Ae(){h(),p(`slurpAllLineEndings`)}function R(){p(`slurpAllLineEndings`,!0)}function je(){_(`</h`+m(`headingRank`)+`>`),p(`headingRank`)}function Me(e){p(`headingRank`,this.sliceSerialize(e).charCodeAt(0)===D.equalsTo?1:2)}function z(){let e=g();b(),_(`<h`+m(`headingRank`)+`>`),v(e),_(`</h`+m(`headingRank`)+`>`),p(`slurpAllLineEndings`),p(`headingRank`)}function B(e){v(x(this.sliceSerialize(e)))}function Ie(e){if(!m(`slurpAllLineEndings`)){if(m(`slurpOneLineEnding`)){p(`slurpOneLineEnding`);return}if(m(`inCodeText`)){v(` `);return}v(x(this.sliceSerialize(e)))}}function Le(e){v(x(this.sliceSerialize(e))),p(`flowCodeSeenData`,!0)}function V(){_(`<br />`)}function Re(){b(),U()}function H(){p(`ignoreEncode`)}function U(){t.allowDangerousHtml&&p(`ignoreEncode`,!0)}function ze(){_(`<em>`)}function W(){_(`<strong>`)}function G(){p(`inCodeText`,!0),_(`<code>`)}function K(){p(`inCodeText`),_(`</code>`)}function q(){_(`</em>`)}function J(){_(`</strong>`)}function Y(){b(),_(`<hr />`)}function X(e){p(`characterReferenceType`,e.type)}function Z(e){let t=this.sliceSerialize(e);v(x(m(`characterReferenceType`)?ce(t,m(`characterReferenceType`)===k.characterReferenceMarkerNumeric?A.numericBaseDecimal:A.numericBaseHexadecimal):ae(t))),p(`characterReferenceType`)}function Q(e){let n=this.sliceSerialize(e);_(`<a href="`+O(n,t.allowDangerousProtocol?void 0:Pe)+`">`),v(x(n)),_(`</a>`)}function Be(e){let t=this.sliceSerialize(e);_(`<a href="`+O(`mailto:`+t)+`">`),v(x(t)),_(`</a>`)}}function Le(e,t,n){return typeof t!=`string`&&(n=t,t=void 0),Ie(n)(le(oe(n).document().write(pe()(e,t,!0))))}var V=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/Markdown.tsx`;function Re(e){return Le(e,{allowDangerousHtml:!0,extensions:[me()],htmlExtensions:[de()]})}function H({value:e}){return(0,F.jsxDEV)(`div`,{className:`md-static`,dangerouslySetInnerHTML:{__html:Re(e)}},void 0,!1,{fileName:V,lineNumber:19,columnNumber:10},this)}var U=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/layout.tsx`;function ze({text:e}){return(0,F.jsxDEV)(H,{value:e},void 0,!1,{fileName:U,lineNumber:38,columnNumber:10},this)}function W(e,{bridge:t,t:n,computed:r}){if(u(e)){let r=e.key;if(t.isHidden(r))return null;let i=S({kind:C(e)});if(!i)return console.warn(`[LayoutRenderer] no renderer for kind '${C(e)}'`),null;let a=e.type,o=String(a.hints.unitFrom??``);if(o&&!o.includes(`:`)){let e=(t.values??{})[o];e!=null&&e!==``&&(a={...a,hints:{...a.hints,unitValue:String(e)}})}let s=a.derive,c=t.getValue(r);if(s)try{c=s.fn({record:t.values??{}})}catch(e){console.warn(`[derived] fn threw`,e),c=void 0}return{node:(0,F.jsxDEV)(`div`,{onBlur:e=>{te(e.relatedTarget)||t.touch(r)},children:(0,F.jsxDEV)(i.Page,{el:e,field:a,fieldKey:r,value:c,onChange:s?()=>{}:e=>t.setValue(r,e),error:t.error(r),mode:s?`view`:t.mode,label:a.label?n(a.label):void 0,required:t.requiredOf(r),recordCtx:t.recordCtx},void 0,!1,{fileName:U,lineNumber:117,columnNumber:9},this)},void 0,!1,{fileName:U,lineNumber:112,columnNumber:7},this),layout:x(a)}}if(p(e)){let i=S({kind:C(e)});if(!i)return console.warn(`[LayoutRenderer] no renderer for static kind '${C(e)}'`),null;let a=e.type,o=e.value;if(typeof e.value==`function`)try{o=e.value(Me(t,r))}catch(e){console.warn(`[computed] value function threw`,e),o=void 0}return{node:(0,F.jsxDEV)(i.Page,{el:e,field:a,value:o,mode:`view`,label:a.label?n(a.label):void 0,recordCtx:t.recordCtx},void 0,!1,{fileName:U,lineNumber:151,columnNumber:7},this),layout:x(a)}}if(m(e)||_(e))return null;if(v(e)){let n=S({kind:`button`});return n?{node:(0,F.jsxDEV)(n.Page,{el:e,value:void 0,mode:t.mode,recordCtx:t.recordCtx},void 0,!1,{fileName:U,lineNumber:174,columnNumber:18},this),layout:`scalar`}:null}return null}function G(e,t,n,r=`wrap`){let i=[],a=[],o=0,s=()=>{a.length&&(i.push({kind:`flow`,items:a,scroll:r===`scroll`}),a=[])};for(let r of e){if(n){if(m(r)){s(),i.push({kind:`divider`});continue}if(_(r)){s(),i.push({kind:`block`,node:(0,F.jsxDEV)(K,{textKey:r.text},void 0,!1,{fileName:U,lineNumber:208,columnNumber:41},this)});continue}if(g(r)){s();continue}if(u(r)||p(r)||v(r)){let e=W(r,n);if(e==null)continue;if(e.layout===`block`)s(),i.push({kind:`block`,node:e.node});else{let t=u(r)?r.key:`static-${o++}`;a.push({key:t,node:(0,F.jsxDEV)(j.Fragment,{children:e.node},t,!1,{fileName:U,lineNumber:225,columnNumber:19},this)})}continue}continue}if(u(r)){let e=t.renderField(r.key,r.type);if(e==null)continue;x(r.type)===`block`?(s(),i.push({kind:`block`,node:e})):a.push({key:r.key,node:(0,F.jsxDEV)(j.Fragment,{children:e},r.key,!1,{fileName:U,lineNumber:241,columnNumber:47},this)})}else m(r)?(s(),i.push({kind:`divider`})):_(r)?(s(),i.push({kind:`block`,node:(0,F.jsxDEV)(K,{textKey:r.text},void 0,!1,{fileName:U,lineNumber:247,columnNumber:39},this)})):g(r)&&s()}return s(),i}function K({textKey:e}){let{t}=n();return(0,F.jsxDEV)(ze,{text:t(e)},void 0,!1,{fileName:U,lineNumber:259,columnNumber:10},this)}function q(e){let t=[];for(let n of e)n.kind===`divider`&&(!t.length||t[t.length-1].kind===`divider`)||t.push(n);for(;t.length&&t[t.length-1].kind===`divider`;)t.pop();return t}function J({label:e,icon:t,labelAfter:n,children:r,rail:i=!0,tone:s=`group`}){let l=(0,F.jsxDEV)(`div`,{className:`flex flex-col min-w-0 ${o}`,children:r},void 0,!1,{fileName:U,lineNumber:311,columnNumber:16},this);return(0,F.jsxDEV)(`section`,{className:`flex flex-col min-w-0 ${o}`,children:[e&&(0,F.jsxDEV)(a,{label:e,icon:t,actions:n,tone:s},void 0,!1,{fileName:U,lineNumber:316,columnNumber:17},this),i&&e?(0,F.jsxDEV)(c,{children:l},void 0,!1,{fileName:U,lineNumber:317,columnNumber:24},this):l]},void 0,!0,{fileName:U,lineNumber:313,columnNumber:5},this)}function Y({group:e,children:t}){let{t:r}=n();return(0,F.jsxDEV)(J,{label:e.label?r(e.label):void 0,icon:s(e),children:t},void 0,!1,{fileName:U,lineNumber:330,columnNumber:5},this)}function X({group:e,children:t}){let{t:r}=n();return(0,F.jsxDEV)(`div`,{className:`flex flex-col gap-1 min-w-0`,children:[e.label&&(0,F.jsxDEV)(`span`,{className:`text-xs text-muted`,children:r(e.label)},void 0,!1,{fileName:U,lineNumber:341,columnNumber:23},this),t]},void 0,!0,{fileName:U,lineNumber:340,columnNumber:5},this)}function Z({group:e,renderCell:t}){let{t:r}=n(),i=[[]];for(let t of e.fields)g(t)?i.push([]):i[i.length-1].push(t);let a=Math.max(1,...i.map(e=>e.length)),o=!1,c=[];return i.forEach((e,n)=>{for(let r=0;r<a;r++){let i=e[r],a=i?t(i):null;a&&(o=!0),c.push((0,F.jsxDEV)(`div`,{className:`min-w-0`,children:a},`${n}-${r}`,!1,{fileName:U,lineNumber:377,columnNumber:9},this))}}),o?(0,F.jsxDEV)(ne.Provider,{value:!0,children:(0,F.jsxDEV)(J,{label:e.label?r(e.label):void 0,icon:s(e),children:(0,F.jsxDEV)(`div`,{className:`overflow-x-auto`,children:(0,F.jsxDEV)(`div`,{className:`grid gap-x-4 gap-y-2 items-start`,style:{gridTemplateColumns:`repeat(${a}, max-content)`},children:c},void 0,!1,{fileName:U,lineNumber:388,columnNumber:11},this)},void 0,!1,{fileName:U,lineNumber:387,columnNumber:9},this)},void 0,!1,{fileName:U,lineNumber:386,columnNumber:7},this)},void 0,!1,{fileName:U,lineNumber:385,columnNumber:5},this):null}function Q(e,t){return e.filter(e=>e.kind!==`divider`).length?e.map((e,n)=>{let r=`${t}-${n}`;switch(e.kind){case`flow`:return(0,F.jsxDEV)(ee,{items:e.items,scroll:e.scroll},r,!1,{fileName:U,lineNumber:408,columnNumber:16},this);case`block`:return(0,F.jsxDEV)(j.Fragment,{children:e.node},r,!1,{fileName:U,lineNumber:410,columnNumber:16},this);case`group`:return(0,F.jsxDEV)(j.Fragment,{children:e.node},r,!1,{fileName:U,lineNumber:412,columnNumber:16},this);case`divider`:return(0,F.jsxDEV)(`hr`,{className:`border-border`},r,!1,{fileName:U,lineNumber:414,columnNumber:16},this)}}):null}function Be({items:e,ctx:t}){let{t:r}=n(),i=je(),a=t.bridge?{bridge:t.bridge,t:r,computed:i}:void 0,s=[],c=[],l=()=>{c.length&&(s.push(...G(c,t,a)),c=[])};for(let n of e)if(d(n))if(l(),a)if(f(n)){let e=n.key,t=a.bridge.getValue(e);if(!a.bridge.isHidden(e)){let r=S({kind:C(n)});if(r){let i=(0,F.jsxDEV)(r.Page,{el:n,value:t,onChange:t=>a.bridge.setValue(e,t),error:a.bridge.error(e),mode:a.bridge.mode,recordCtx:a.bridge.recordCtx},void 0,!1,{fileName:U,lineNumber:453,columnNumber:17},this);s.push({kind:`group`,node:i})}else console.warn(`[LayoutRenderer] no renderer for storage group kind '${C(n)}'`)}}else if(n.display===`sheet`)s.push({kind:`group`,node:(0,F.jsxDEV)(Z,{group:n,renderCell:e=>d(e)?null:W(e,a)?.node??null},void 0,!1,{fileName:U,lineNumber:472,columnNumber:15},this)});else{let e=Q(q(G(n.fields,t,a,n.display===`scroll`?`scroll`:`wrap`)),`g`);if(e)if(n.display===`scroll`)s.push({kind:`group`,node:(0,F.jsxDEV)(X,{group:n,children:e},void 0,!1,{fileName:U,lineNumber:490,columnNumber:49},this)});else{let t=S({kind:`group`});t?s.push({kind:`group`,node:(0,F.jsxDEV)(t.Page,{el:n,value:void 0,mode:a.bridge.mode,recordCtx:a.bridge.recordCtx,children:e},void 0,!1,{fileName:U,lineNumber:497,columnNumber:21},this)}):s.push({kind:`group`,node:(0,F.jsxDEV)(Y,{group:n,children:e},void 0,!1,{fileName:U,lineNumber:508,columnNumber:51},this)})}}else if(f(n)){let e=t.renderGroup?.(n.key,n);e&&s.push({kind:`group`,node:e})}else if(n.display===`sheet`)s.push({kind:`group`,node:(0,F.jsxDEV)(Z,{group:n,renderCell:e=>u(e)?t.renderField(e.key,e.type):null},void 0,!1,{fileName:U,lineNumber:523,columnNumber:13},this)});else{let e=Q(q(G(n.fields,t,void 0,n.display===`scroll`?`scroll`:`wrap`)),`g`);e&&s.push({kind:`group`,node:n.display===`scroll`?(0,F.jsxDEV)(X,{group:n,children:e},void 0,!1,{fileName:U,lineNumber:541,columnNumber:17},this):(0,F.jsxDEV)(Y,{group:n,children:e},void 0,!1,{fileName:U,lineNumber:543,columnNumber:17},this)})}else c.push(n);l();let p=Q(q(s),`l`);return p==null?null:(0,F.jsxDEV)(`div`,{className:`@container flex flex-col min-w-0 ${o}`,children:p},void 0,!1,{fileName:U,lineNumber:557,columnNumber:10},this)}function Ve(e){let{fm:t,mode:r,recordCtx:i}=e,{t:a}=n(),o=L(a),[s]=(0,j.useState)(e.initial),[c,u]=(0,j.useState)(s),[d,f]=(0,j.useState)({}),[p,m]=(0,j.useState)(()=>new Set),h=(0,j.useMemo)(()=>new Set(e.hiddenFields??[]),[e.hiddenFields]);return{values:c,setValues:u,initial:s,errors:d,setErrors:f,touched:p,setTouched:m,bridge:(0,j.useMemo)(()=>({mode:r,recordCtx:i,values:c,getValue:e=>c[e],setValue:(e,n)=>{if(u(t=>({...t,[e]:n})),p.has(e)){let r=t[e],i=r?l(r,n):null;f(t=>{let n={...t};return i?n[e]=o(i.code,i.params):delete n[e],n})}},touch:e=>{m(t=>t.has(e)?t:new Set(t).add(e));let n=t[e],r=n?l(n,c[e]):null;f(t=>{let n={...t};return r?n[e]=o(r.code,r.params):delete n[e],n})},isHidden:e=>{let n=t[e];return!!n?.virtual||h.has(e)||b(n?.hidden,c)},requiredOf:e=>b(t[e]?.required,c),error:e=>d[e]}),[c,d,p,h,t,r,i,o])}}var $=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/components/Toolbar.tsx`;function He({children:e,actions:t}){return(0,F.jsxDEV)(`div`,{"data-toolbar":!0,className:`eink-solid sticky top-0 z-20 flex h-[52px] items-center justify-between gap-3 bg-bg/85 px-4 backdrop-blur md:px-6 border-b border-border2 shrink-0`,children:[(0,F.jsxDEV)(`div`,{className:`flex items-center gap-2.5 min-w-0`,children:e},void 0,!1,{fileName:$,lineNumber:13,columnNumber:7},this),t&&(0,F.jsxDEV)(`div`,{"data-toolbar-actions":!0,className:`flex items-center gap-2 shrink-0`,children:t},void 0,!1,{fileName:$,lineNumber:15,columnNumber:9},this)]},void 0,!0,{fileName:$,lineNumber:9,columnNumber:5},this)}export{ve as _,H as a,he as b,Oe as c,Te as d,we as f,P as g,be as h,J as i,L as l,Se as m,Ve as n,B as o,ye as p,Be as r,I as s,He as t,De as u,Ce as v,_e as y};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{t as r}from"./react-vendor-BskHO5hY.js";import{n as i,r as a,t as o}from"./x-CzSVfh-E.js";import{t as s}from"./Icon-Dydn049Z.js";import{n as c,o as l}from"./src-R3C69mft.js";import{t as u}from"./button-DaYjtbcx.js";var d=a(`pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),f=e(t(),1);function p(e,t){return l(e)?.box||(c(e)===`block`?`none`:t)}function m(e){switch(e){case`title`:return`flex items-center self-start w-full rounded-lg border border-transparent px-3 py-1 text-[28px] font-bold leading-tight`;case`textarea`:return`flex self-start min-h-20 w-full rounded-lg border border-transparent px-3 py-2 text-sm whitespace-pre-wrap`;case`none`:return``;default:return`flex w-full min-w-0 items-center self-start min-h-9 rounded-lg border border-transparent px-2 text-sm`}}var h=r(),g=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/chrome.tsx`,_=`gap-2`,v=`gap-6`;function y({children:e}){return(0,h.jsxDEV)(`div`,{className:`border-l-2 border-border pl-3 py-1`,children:e},void 0,!1,{fileName:g,lineNumber:41,columnNumber:10},this)}function b({label:e,required:t,actions:n,reserveAction:r}){return(0,h.jsxDEV)(`div`,{className:`flex items-center gap-2 mb-0.5 min-h-8 ${r?`pr-24`:``}`,children:[(0,h.jsxDEV)(`span`,{className:`min-w-0 text-[11px] font-medium text-muted`,children:[e,t&&(0,h.jsxDEV)(`span`,{className:`text-danger ml-0.5`,children:`*`},void 0,!1,{fileName:g,lineNumber:64,columnNumber:22},this)]},void 0,!0,{fileName:g,lineNumber:62,columnNumber:7},this),n&&(0,h.jsxDEV)(`div`,{className:`ml-auto flex shrink-0 items-center gap-1.5`,children:n},void 0,!1,{fileName:g,lineNumber:66,columnNumber:19},this)]},void 0,!0,{fileName:g,lineNumber:61,columnNumber:5},this)}var x=`flex items-center gap-2 font-semibold`;`${x}`;var S=`lucide:puzzle`;function C(e){return e.icon??(e.key!=null&&e.multiple===!0?`lucide:list`:`lucide:folder`)}function w({label:e,icon:t,actions:n,as:r=`h3`,tone:i=`group`}){let a=r,o=D(),c=i===`section`;return(0,h.jsxDEV)(a,{className:`${x} ${c?`text-[15px]`:`text-[13px]`} ${c||o===0?`text-accent`:`text-muted`}${r===`legend`?` px-1 w-full`:``}`,children:[t&&(c?(0,h.jsxDEV)(`span`,{className:`flex size-6 shrink-0 items-center justify-center rounded-md bg-accent/10 text-accent`,children:(0,h.jsxDEV)(s,{name:t,size:14},void 0,!1,{fileName:g,lineNumber:131,columnNumber:13},this)},void 0,!1,{fileName:g,lineNumber:130,columnNumber:11},this):(0,h.jsxDEV)(s,{name:t,size:14,className:`shrink-0`},void 0,!1,{fileName:g,lineNumber:135,columnNumber:11},this)),e,n&&(0,h.jsxDEV)(`span`,{className:`ml-auto flex shrink-0 items-center gap-1.5`,children:n},void 0,!1,{fileName:g,lineNumber:138,columnNumber:19},this)]},void 0,!0,{fileName:g,lineNumber:127,columnNumber:5},this)}var T=`opacity-0 transition-opacity group-hover/field:opacity-100 focus-visible:opacity-100 pointer-coarse:opacity-100`,E=(0,f.createContext)(0),D=()=>(0,f.useContext)(E);function O({depth:e,children:t}){return(0,h.jsxDEV)(E.Provider,{value:e,children:t},void 0,!1,{fileName:g,lineNumber:167,columnNumber:10},this)}function k(e){switch(e&3){case 0:return`group/group`;case 1:return`group/group2`;case 2:return`group/group3`;default:return`group/group4`}}var A=[`opacity-0 transition-opacity group-hover/group:opacity-100 focus-visible:opacity-100 pointer-coarse:opacity-100`,`opacity-0 transition-opacity group-hover/group2:opacity-100 focus-visible:opacity-100 pointer-coarse:opacity-100`,`opacity-0 transition-opacity group-hover/group3:opacity-100 focus-visible:opacity-100 pointer-coarse:opacity-100`,`opacity-0 transition-opacity group-hover/group4:opacity-100 focus-visible:opacity-100 pointer-coarse:opacity-100`];function j(e){return A[e&3]??A[0]}var M=`h-7 w-7 rounded-md border border-border bg-surface/80 text-muted hover:border-accent/60 hover:text-accent`,N=`h-7 w-7 rounded-md border border-accent/40 bg-accent/10 text-accent hover:border-accent hover:bg-accent/20 hover:text-accent`;function P({onEdit:e,variant:t=`inline`,scope:r=`field`}){let{t:i}=n(),a=D(),o=r===`group`?j(a):T;return(0,h.jsxDEV)(u,{type:`button`,variant:`outline`,size:`iconXs`,className:`${t===`overlay`?`absolute right-1 top-0 z-10`:``} ${M} ${o}`,onClick:e,title:i(`actions.edit`),children:(0,h.jsxDEV)(d,{size:13},void 0,!1,{fileName:g,lineNumber:233,columnNumber:7},this)},void 0,!1,{fileName:g,lineNumber:225,columnNumber:5},this)}function F({size:e,busy:t,disabled:r,onSave:a,onCancel:s}){let{t:c}=n(),l=e===`xs`?`iconXs`:`iconSm`,d=e===`xs`?13:14;return(0,h.jsxDEV)(h.Fragment,{children:[(0,h.jsxDEV)(u,{type:`button`,variant:`outline`,size:l,disabled:t||r,onClick:a,className:N,title:c(`actions.save`),children:(0,h.jsxDEV)(i,{size:d},void 0,!1,{fileName:g,lineNumber:271,columnNumber:9},this)},void 0,!1,{fileName:g,lineNumber:262,columnNumber:7},this),(0,h.jsxDEV)(u,{type:`button`,variant:`outline`,size:l,onClick:s,className:`h-7 w-7 rounded-md border border-border bg-surface/80 text-muted hover:border-danger hover:text-danger`,title:c(`actions.cancel`),children:(0,h.jsxDEV)(o,{size:d},void 0,!1,{fileName:g,lineNumber:281,columnNumber:9},this)},void 0,!1,{fileName:g,lineNumber:273,columnNumber:7},this)]},void 0,!0,{fileName:g,lineNumber:261,columnNumber:5},this)}var I=`min-h-9 px-2 border border-transparent`;function L({geom:e,field:t,children:n}){let r=p(t,e);return r===`none`?(0,h.jsxDEV)(h.Fragment,{children:n},void 0,!1,{fileName:g,lineNumber:299,columnNumber:30},this):(0,h.jsxDEV)(`div`,{className:m(r),children:n},void 0,!1,{fileName:g,lineNumber:300,columnNumber:10},this)}function R({error:e}){return e?(0,h.jsxDEV)(`p`,{className:`text-xs text-danger flex items-center gap-1 mt-0.5`,children:[(0,h.jsxDEV)(s,{name:`lucide:alert-triangle`,size:12,className:`shrink-0`},void 0,!1,{fileName:g,lineNumber:308,columnNumber:7},this),` `,e]},void 0,!0,{fileName:g,lineNumber:307,columnNumber:5},this):null}export{R as a,w as c,_ as d,F as f,d as g,D as h,L as i,v as l,k as m,I as n,b as o,C as p,P as r,O as s,S as t,y as u};
|