@declarion/react 0.66.1 → 0.81.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.
Files changed (66) hide show
  1. package/README.md +1 -1
  2. package/dist-lib/api/auth.js +24 -14
  3. package/dist-lib/app.js +28 -23
  4. package/dist-lib/components/chrome/AssociationTabs.js +35 -38
  5. package/dist-lib/components/chrome/HighlightsStrip.js +2 -1
  6. package/dist-lib/components/chrome/RecordHeader.js +33 -38
  7. package/dist-lib/components/detail-layout/AssociatedBlock.js +10 -21
  8. package/dist-lib/components/detail-layout/ChildrenBlock.js +1 -8
  9. package/dist-lib/components/detail-layout/ChildrenCards.js +1 -8
  10. package/dist-lib/components/detail-layout/ChildrenList.js +1 -8
  11. package/dist-lib/components/detail-layout/ChildrenTable.js +1 -8
  12. package/dist-lib/components/detail-layout/ChildrenTimeline.js +1 -8
  13. package/dist-lib/components/detail-layout/DetailAuditStrip.js +33 -29
  14. package/dist-lib/components/detail-layout/DetailHighlights.js +7 -2
  15. package/dist-lib/components/detail-layout/FieldsBlock.js +12 -9
  16. package/dist-lib/components/detail-layout/LayoutRenderer.js +10 -10
  17. package/dist-lib/components/detail-layout/LayoutTabs.js +49 -48
  18. package/dist-lib/components/detail-layout/SectionBlock.js +20 -28
  19. package/dist-lib/components/detail-layout/visibility.js +28 -0
  20. package/dist-lib/components/fields/IntArrayField.js +37 -33
  21. package/dist-lib/components/fields/NumberField.js +28 -55
  22. package/dist-lib/components/fields/RichTextField.js +1 -1
  23. package/dist-lib/components/fields/TimestampField.js +50 -89
  24. package/dist-lib/components/fields/cells/factories/date.js +13 -14
  25. package/dist-lib/components/fields/cells/factories/money.js +1 -1
  26. package/dist-lib/components/fields/cells/factories/number.js +4 -4
  27. package/dist-lib/components/file-widgets/DocumentCard.js +1 -1
  28. package/dist-lib/components/file-widgets/Grid.js +153 -152
  29. package/dist-lib/components/file-widgets/ImageWidget.js +90 -91
  30. package/dist-lib/components/file-widgets/LabeledSlots.js +1 -0
  31. package/dist-lib/components/file-widgets/helpers.js +15 -19
  32. package/dist-lib/components/file-widgets/host.js +33 -32
  33. package/dist-lib/components/file-widgets/upload.js +10 -6
  34. package/dist-lib/components/layout/Layout.js +125 -123
  35. package/dist-lib/components/pages/NoScreensPage.impl.js +14 -0
  36. package/dist-lib/components/pages/NoScreensPage.js +12 -0
  37. package/dist-lib/components/pages/SmartDetailPage.impl.js +451 -451
  38. package/dist-lib/components/pages/auth/AuthShell.js +62 -61
  39. package/dist-lib/components/pages/auth/CodeInput.js +63 -0
  40. package/dist-lib/components/pages/auth/SignIn.js +12 -4
  41. package/dist-lib/components/pages/auth/SignUp.impl.js +80 -103
  42. package/dist-lib/components/pages/auth/SignUpCode.js +122 -0
  43. package/dist-lib/components/pages/auth/TwoFA.impl.js +9 -55
  44. package/dist-lib/components/pages/list/cardProjection.js +135 -122
  45. package/dist-lib/components/pages/list/columns.js +58 -43
  46. package/dist-lib/components/pages/profile/Profile.impl.js +87 -104
  47. package/dist-lib/components/pages/tenant-params/TenantParamsPage.impl.js +1 -1
  48. package/dist-lib/components/params/ParamsBlock.js +6 -17
  49. package/dist-lib/components/params/param-editors.js +14 -10
  50. package/dist-lib/components/primitives/Fields.js +314 -236
  51. package/dist-lib/components/shared/MarkdownRenderer.js +44 -43
  52. package/dist-lib/declarion-react.css +1 -1
  53. package/dist-lib/hooks/useActiveTabFollowsRoute.js +49 -0
  54. package/dist-lib/hooks/useAuth.js +44 -37
  55. package/dist-lib/hooks/useDocumentTitle.js +20 -0
  56. package/dist-lib/hooks/useFollowAgentOpen.js +1 -0
  57. package/dist-lib/hooks/useTabTitle.js +1 -1
  58. package/dist-lib/index.d.ts +21 -7
  59. package/dist-lib/lib/date-text.js +57 -0
  60. package/dist-lib/lib/number-text.js +9 -0
  61. package/dist-lib/lib/timestamp.js +29 -29
  62. package/dist-lib/stores/tabs.js +7 -5
  63. package/dist-lib/testing.d.ts +1 -1
  64. package/dist-lib/testing.js +1 -0
  65. package/dist-lib/{useResponsiveMode-DmrpMbZX.d.ts → useResponsiveMode-D3SKz5z4.d.ts} +20 -9
  66. package/package.json +11 -11
@@ -56,45 +56,58 @@ var n = 4, r = 2, i = 2, a = [
56
56
  ]);
57
57
  function f(e) {
58
58
  let { entity: t, screen: n, savedViewColumns: r } = e, i = n?.card;
59
- if (i) return _(t, i, "screen_card");
60
- if (t?.card) return _(t, t.card, "entity_card");
61
- let a = b(t, n, r);
62
- return v(t, a.columns, a.source);
59
+ if (i) return v(t, i, "screen_card");
60
+ if (t?.card) return v(t, t.card, "entity_card");
61
+ let a = x(t, n, r);
62
+ return y(t, a.columns, a.source);
63
63
  }
64
64
  function p(e) {
65
- let { entity: t, screen: n, presentation: r, visibleColumns: i, card: a, rowActions: o, toolbarActions: s, bulkActions: c, sort: l, includeDetailHandoff: u = !0, screens: d } = e, f = new X(), p = r === "cards" ? a.renderFields : S(t, i, { explicit: !0 }), g = r === "cards" ? h(t, n) : [];
66
- for (let e of p) f.addField(e, "render"), K(t, e, f, "render");
67
- for (let e of g) p.includes(e) || (f.addField(e, "variant"), K(t, e, f, "variant"));
68
- let _ = N(t, f), v = R(t, [
65
+ let { entity: t, screen: n, presentation: r, visibleColumns: i, card: a, rowActions: o, toolbarActions: s, bulkActions: c, sort: l, includeDetailHandoff: u = !0, screens: d } = e, f = new Z(), p = r === "cards" ? a.renderFields : C(t, i, { explicit: !0 }), _ = r === "cards" ? g(t, n) : [];
66
+ for (let e of p) f.addField(e, "render"), q(t, e, f, "render");
67
+ for (let e of _) p.includes(e) || (f.addField(e, "variant"), q(t, e, f, "variant"));
68
+ let v = P(t, f), y = z(t, [
69
69
  o,
70
70
  s,
71
71
  c
72
- ], f), y = m(t, n, f), b = z(t, l, f), x = B(t, n, d, f);
73
- if (u) for (let e of _) f.addField(e, "detail_handoff");
74
- let C = new Y();
75
- for (let e of _) C.add(e);
76
- for (let e of v) C.add(e);
77
- for (let e of y) C.add(e);
78
- for (let e of g) C.add(e);
79
- for (let e of b) C.add(e);
80
- for (let e of x) C.add(e);
81
- let w = new Y();
82
- for (let e of p) G(t, e, w, f);
83
- for (let e of C.values()) G(t, e, w, f);
84
- let T = w.values(), E = q(f);
72
+ ], f), b = h(t, n, f), x = B(t, l, f), S = V(t, n, d, f), w = m(t, [
73
+ p,
74
+ _,
75
+ S
76
+ ], f);
77
+ if (u) for (let e of v) f.addField(e, "detail_handoff");
78
+ let T = new X();
79
+ for (let e of v) T.add(e);
80
+ for (let e of y) T.add(e);
81
+ for (let e of b) T.add(e);
82
+ for (let e of _) T.add(e);
83
+ for (let e of x) T.add(e);
84
+ for (let e of S) T.add(e);
85
+ for (let e of w) T.add(e);
86
+ let E = new X();
87
+ for (let e of p) K(t, e, E, f);
88
+ for (let e of T.values()) K(t, e, E, f);
89
+ let D = E.values(), O = J(f);
85
90
  return {
86
91
  renderFields: p,
87
- dependencyFields: C.values().filter((e) => !p.includes(e)),
88
- conditionFields: v,
89
- identityFields: _,
90
- sortFields: b,
91
- selectFields: T.length > 0 ? T : void 0,
92
- expandFields: E.length > 0 ? E : void 0,
92
+ dependencyFields: T.values().filter((e) => !p.includes(e)),
93
+ conditionFields: y,
94
+ identityFields: v,
95
+ sortFields: x,
96
+ selectFields: D.length > 0 ? D : void 0,
97
+ expandFields: O.length > 0 ? O : void 0,
93
98
  reasons: f.snapshot()
94
99
  };
95
100
  }
96
101
  function m(e, t, n) {
97
- let r = new Y(), i = (t) => {
102
+ let r = new X();
103
+ for (let i of t.flat()) {
104
+ let t = Y(e, i), a = t.kind === "field" ? t.field.display?.currency_field : void 0;
105
+ a && (r.add(a), n.addField(a, "currency"));
106
+ }
107
+ return r.values();
108
+ }
109
+ function h(e, t, n) {
110
+ let r = new X(), i = (t) => {
98
111
  for (let n of t) n.and ? i(n.and) : n.or ? i(n.or) : n.field && e?.fields.has(n.field) && r.add(n.field);
99
112
  };
100
113
  for (let t of e?.variants?.items() ?? []) t.when && i(t.when);
@@ -102,8 +115,8 @@ function m(e, t, n) {
102
115
  for (let e of r.values()) n.addField(e, "variant");
103
116
  return r.values();
104
117
  }
105
- function h(e, t, n) {
106
- let r = new Y();
118
+ function g(e, t, n) {
119
+ let r = new X();
107
120
  for (let i of f({
108
121
  entity: e,
109
122
  screen: t,
@@ -120,22 +133,22 @@ function h(e, t, n) {
120
133
  }
121
134
  return r.values();
122
135
  }
123
- function g(e, t, n) {
136
+ function _(e, t, n) {
124
137
  if (!e || t?.on_row_click !== "peek" || t.quick_peek?.enabled === !1) return [];
125
138
  let r = t.quick_peek?.fields;
126
- if (r && r.length > 0) return S(e, r, { explicit: !0 });
139
+ if (r && r.length > 0) return C(e, r, { explicit: !0 });
127
140
  let i = t.quick_peek?.sections;
128
141
  if (i && i.length > 0) {
129
- let r = Object.values(n ?? {}).find((e) => e.type === "detail" && e.entity === t.entity), a = new Y();
130
- V(r?.items, new Set(i.map(String)), a);
131
- let o = S(e, a.values(), { explicit: !0 });
142
+ let r = Object.values(n ?? {}).find((e) => e.type === "detail" && e.entity === t.entity), a = new X();
143
+ H(r?.items, new Set(i.map(String)), a);
144
+ let o = C(e, a.values(), { explicit: !0 });
132
145
  if (o.length > 0) return o;
133
146
  }
134
- return W(e);
147
+ return G(e);
135
148
  }
136
- function _(e, t, r) {
137
- let i = t.max_body_fields ?? n, a = C(e, t.title_field, { explicit: !0 }), o = C(e, t.subtitle_field, { explicit: !0 }), s = S(e, t.badge_fields ?? [], { explicit: !0 }), c = S(e, t.fields ?? [], { explicit: !0 }), l = S(e, t.meta_fields ?? [], { explicit: !0 });
138
- return y({
149
+ function v(e, t, r) {
150
+ let i = t.max_body_fields ?? n, a = w(e, t.title_field, { explicit: !0 }), o = w(e, t.subtitle_field, { explicit: !0 }), s = C(e, t.badge_fields ?? [], { explicit: !0 }), c = C(e, t.fields ?? [], { explicit: !0 }), l = C(e, t.meta_fields ?? [], { explicit: !0 });
151
+ return b({
139
152
  source: r,
140
153
  explicit: !0,
141
154
  titleField: a,
@@ -148,29 +161,29 @@ function _(e, t, r) {
148
161
  maxBodyFields: i
149
162
  });
150
163
  }
151
- function v(e, t, a) {
152
- let o = S(e, t, { explicit: !1 }), s = n, c = C(e, e?.display?.display_field, { explicit: !1 }), l = c ?? w(e, o, {
164
+ function y(e, t, a) {
165
+ let o = C(e, t, { explicit: !1 }), s = n, c = w(e, e?.display?.display_field, { explicit: !1 }), l = c ?? T(e, o, {
153
166
  allowLong: !1,
154
167
  allowAuto: !1
155
- }), u = c !== void 0, d = l ? /* @__PURE__ */ new Set([l]) : void 0, f = o.find((t) => !d?.has(t) && E(e, t)), p = new Set([l, f].filter((e) => !!e)), m = O(e, o).filter((e) => !p.has(e)).slice(0, r);
168
+ }), u = c !== void 0, d = l ? /* @__PURE__ */ new Set([l]) : void 0, f = o.find((t) => !d?.has(t) && D(e, t)), p = new Set([l, f].filter((e) => !!e)), m = k(e, o).filter((e) => !p.has(e)).slice(0, r);
156
169
  for (let e of m) p.add(e);
157
- let h = o.filter((t) => !p.has(t) && k(e, t)).slice(0, i);
170
+ let h = o.filter((t) => !p.has(t) && A(e, t)).slice(0, i);
158
171
  for (let e of h) p.add(e);
159
- return y({
172
+ return b({
160
173
  source: a,
161
174
  explicit: !1,
162
175
  titleField: l,
163
176
  titleUsesDisplay: u,
164
177
  subtitleField: f,
165
178
  badgeFields: m,
166
- bodyFields: o.filter((t) => !p.has(t) && T(e, t)).slice(0, s),
179
+ bodyFields: o.filter((t) => !p.has(t) && E(e, t)).slice(0, s),
167
180
  metaFields: h,
168
181
  hideEmptyFields: !0,
169
182
  maxBodyFields: s
170
183
  });
171
184
  }
172
- function y(e) {
173
- let t = new Y(), n = [], r = (r, i) => {
185
+ function b(e) {
186
+ let t = new X(), n = [], r = (r, i) => {
174
187
  r && !t.has(r) && (t.add(r), n.push({
175
188
  field: r,
176
189
  bucket: i,
@@ -197,7 +210,7 @@ function y(e) {
197
210
  sourcePrecedence: a
198
211
  };
199
212
  }
200
- function b(e, t, n) {
213
+ function x(e, t, n) {
201
214
  return n && n.length > 0 ? {
202
215
  source: "saved_view_columns",
203
216
  columns: n
@@ -209,10 +222,10 @@ function b(e, t, n) {
209
222
  columns: t.columns
210
223
  } : {
211
224
  source: "entity_inference",
212
- columns: x(e)
225
+ columns: S(e)
213
226
  };
214
227
  }
215
- function x(e) {
228
+ function S(e) {
216
229
  if (!e) return [];
217
230
  let t = [];
218
231
  e.display.display_field && t.push(e.display.display_field);
@@ -222,15 +235,15 @@ function x(e) {
222
235
  if (e.evidence_covered && t.push("$evidence"), e.files) for (let [n] of e.files) t.push(n);
223
236
  return t;
224
237
  }
225
- function S(e, t, n) {
226
- let r = new Y();
238
+ function C(e, t, n) {
239
+ let r = new X();
227
240
  for (let i of t) {
228
- let t = C(e, i, n);
241
+ let t = w(e, i, n);
229
242
  t && r.add(t);
230
243
  }
231
244
  return r.values();
232
245
  }
233
- function C(e, t, n) {
246
+ function w(e, t, n) {
234
247
  if (!t || o.has(t)) return;
235
248
  if (!e) return t.startsWith("$") ? void 0 : t;
236
249
  if (t.startsWith("$status.")) {
@@ -246,59 +259,59 @@ function C(e, t, n) {
246
259
  let r = e.fields.get(t), i = e.files?.get(t);
247
260
  if ((r || i) && (n.explicit || !(r && r.display?.is_listable === !1) && !(i && i.display?.is_listable === !1))) return t;
248
261
  }
249
- function w(e, t, n) {
250
- return t.find((t) => n.exclude?.has(t) || !n.allowAuto && j(e, t) || !n.allowLong && M(e, t) ? !1 : A(e, t));
251
- }
252
- function T(e, t) {
253
- return !(!A(e, t) || j(e, t) || M(e, t));
262
+ function T(e, t, n) {
263
+ return t.find((t) => n.exclude?.has(t) || !n.allowAuto && M(e, t) || !n.allowLong && N(e, t) ? !1 : j(e, t));
254
264
  }
255
265
  function E(e, t) {
256
- if (j(e, t)) return !1;
257
- let n = J(e, t);
258
- return n.kind === "field" && u.has(n.field.type);
266
+ return !(!j(e, t) || M(e, t) || N(e, t));
259
267
  }
260
268
  function D(e, t) {
269
+ if (M(e, t)) return !1;
270
+ let n = Y(e, t);
271
+ return n.kind === "field" && u.has(n.field.type);
272
+ }
273
+ function O(e, t) {
261
274
  if (t.startsWith("$status.") || t.startsWith("$property.") || t === "$evidence") return !0;
262
- let n = J(e, t);
275
+ let n = Y(e, t);
263
276
  return n.kind === "field" && c.has(n.field.type);
264
277
  }
265
- function O(e, t) {
266
- let n = new Y();
278
+ function k(e, t) {
279
+ let n = new X();
267
280
  for (let e of t) (e.startsWith("$status.") || e.startsWith("$property.") || e === "$evidence") && n.add(e);
268
- for (let r of t) D(e, r) && n.add(r);
281
+ for (let r of t) O(e, r) && n.add(r);
269
282
  return n.values();
270
283
  }
271
- function k(e, t) {
272
- if (j(e, t)) return !1;
273
- let n = J(e, t);
274
- return n.kind === "field" && l.has(n.field.type);
275
- }
276
284
  function A(e, t) {
277
- return J(e, t).kind !== "missing";
285
+ if (M(e, t)) return !1;
286
+ let n = Y(e, t);
287
+ return n.kind === "field" && l.has(n.field.type);
278
288
  }
279
289
  function j(e, t) {
280
- let n = J(e, t);
281
- return n.kind === "field" && (n.field.primary === !0 || n.field.auto === !0);
290
+ return Y(e, t).kind !== "missing";
282
291
  }
283
292
  function M(e, t) {
284
- let n = J(e, t);
293
+ let n = Y(e, t);
294
+ return n.kind === "field" && (n.field.primary === !0 || n.field.auto === !0);
295
+ }
296
+ function N(e, t) {
297
+ let n = Y(e, t);
285
298
  return n.kind === "file" ? n.file.mode !== "single" : n.kind === "field" && s.has(n.field.type);
286
299
  }
287
- function N(t, n) {
300
+ function P(t, n) {
288
301
  if (!t) return [];
289
- let r = new Y();
302
+ let r = new X();
290
303
  for (let i of e(t)) r.add(i), n.addField(i, "identity");
291
- let i = C(t, t.display.display_field, { explicit: !0 });
292
- i && (r.add(i), n.addField(i, "display"), K(t, i, n, "display"));
293
- for (let e of P(t.display.display_template)) {
294
- let i = C(t, e, { explicit: !0 });
295
- i && (r.add(i), n.addField(i, "display_template"), K(t, i, n, "display_template"));
304
+ let i = w(t, t.display.display_field, { explicit: !0 });
305
+ i && (r.add(i), n.addField(i, "display"), q(t, i, n, "display"));
306
+ for (let e of F(t.display.display_template)) {
307
+ let i = w(t, e, { explicit: !0 });
308
+ i && (r.add(i), n.addField(i, "display_template"), q(t, i, n, "display_template"));
296
309
  }
297
310
  return r.values();
298
311
  }
299
- function P(e) {
312
+ function F(e) {
300
313
  if (!e) return [];
301
- let t = new Y(), n = 0;
314
+ let t = new X(), n = 0;
302
315
  for (; n < e.length;) {
303
316
  let r = e.indexOf("${", n);
304
317
  if (r < 0) break;
@@ -306,14 +319,14 @@ function P(e) {
306
319
  n = r + 2;
307
320
  continue;
308
321
  }
309
- let i = F(e, r + 2);
322
+ let i = I(e, r + 2);
310
323
  if (i < 0) break;
311
- for (let n of I(e.slice(r + 2, i))) t.add(n);
324
+ for (let n of L(e.slice(r + 2, i))) t.add(n);
312
325
  n = i + 1;
313
326
  }
314
327
  return t.values();
315
328
  }
316
- function F(e, t) {
329
+ function I(e, t) {
317
330
  let n = 0;
318
331
  for (let r = t; r < e.length; r += 1) {
319
332
  let t = e[r];
@@ -325,69 +338,69 @@ function F(e, t) {
325
338
  }
326
339
  return -1;
327
340
  }
328
- function I(e) {
329
- let t = new Y(), n = 0;
341
+ function L(e) {
342
+ let t = new X(), n = 0;
330
343
  for (; n < e.length;) {
331
344
  let r = e.indexOf("row.", n);
332
345
  if (r < 0) break;
333
- if (r > 0 && L(e.charCodeAt(r - 1))) {
346
+ if (r > 0 && R(e.charCodeAt(r - 1))) {
334
347
  n = r + 4;
335
348
  continue;
336
349
  }
337
350
  let i = r + 4, a = i;
338
- for (; a < e.length && L(e.charCodeAt(a));) a += 1;
351
+ for (; a < e.length && R(e.charCodeAt(a));) a += 1;
339
352
  a > i && t.add(e.slice(i, a)), n = a;
340
353
  }
341
354
  return t.values();
342
355
  }
343
- function L(e) {
356
+ function R(e) {
344
357
  return e >= 48 && e <= 57 || e >= 65 && e <= 90 || e >= 97 && e <= 122 || e === 95;
345
358
  }
346
- function R(e, t, n) {
347
- let r = new Y();
359
+ function z(e, t, n) {
360
+ let r = new X();
348
361
  for (let i of t) for (let t of i ?? []) for (let i of [
349
362
  ...t.action.visible_if ?? [],
350
363
  ...t.action.enabled_if ?? [],
351
364
  ...t.action.conditions ?? []
352
365
  ]) {
353
- let t = C(e, i.field, { explicit: !0 });
354
- t && (r.add(t), n.addField(t, "condition"), K(e, t, n, "condition"));
366
+ let t = w(e, i.field, { explicit: !0 });
367
+ t && (r.add(t), n.addField(t, "condition"), q(e, t, n, "condition"));
355
368
  }
356
369
  return r.values();
357
370
  }
358
- function z(e, n, r) {
359
- let i = typeof n == "string" ? t(n) : n ?? [], a = new Y();
371
+ function B(e, n, r) {
372
+ let i = typeof n == "string" ? t(n) : n ?? [], a = new X();
360
373
  for (let t of i) {
361
- let n = C(e, t.field, { explicit: !0 });
362
- n && (a.add(n), r.addField(n, "sort"), K(e, n, r, "sort"));
374
+ let n = w(e, t.field, { explicit: !0 });
375
+ n && (a.add(n), r.addField(n, "sort"), q(e, n, r, "sort"));
363
376
  }
364
377
  return a.values();
365
378
  }
366
- function B(e, t, n, r) {
367
- let i = new Y(), a = t?.variants?.items() ?? [];
368
- if (a.length === 0 || a.some((e) => e.quick_peek === void 0)) for (let r of g(e, t, n)) i.add(r);
379
+ function V(e, t, n, r) {
380
+ let i = new X(), a = t?.variants?.items() ?? [];
381
+ if (a.length === 0 || a.some((e) => e.quick_peek === void 0)) for (let r of _(e, t, n)) i.add(r);
369
382
  for (let r of a) {
370
383
  if (r.quick_peek === void 0) continue;
371
384
  let a = {
372
385
  ...t,
373
386
  quick_peek: r.quick_peek
374
387
  };
375
- for (let t of g(e, a, n)) i.add(t);
388
+ for (let t of _(e, a, n)) i.add(t);
376
389
  }
377
- for (let t of i.values()) r.addField(t, "quick_peek"), K(e, t, r, "quick_peek");
390
+ for (let t of i.values()) r.addField(t, "quick_peek"), q(e, t, r, "quick_peek");
378
391
  return i.values();
379
392
  }
380
- function V(e, t, n) {
393
+ function H(e, t, n) {
381
394
  if (Array.isArray(e)) {
382
395
  for (let r of e) if (r && typeof r == "object") {
383
396
  if ("section" in r) {
384
- let e = r.section, i = U(e?.name);
385
- i && t.has(i) && H(e?.items, n);
386
- } else "fields" in r && H([r], n);
397
+ let e = r.section, i = W(e?.name);
398
+ i && t.has(i) && U(e?.items, n);
399
+ } else "fields" in r && U([r], n);
387
400
  }
388
401
  }
389
402
  }
390
- function H(e, t) {
403
+ function U(e, t) {
391
404
  if (Array.isArray(e)) {
392
405
  for (let n of e) if (n && typeof n == "object") {
393
406
  if ("fields" in n) {
@@ -400,11 +413,11 @@ function H(e, t) {
400
413
  }
401
414
  }
402
415
  }
403
- "section" in n && H(n.section?.items, t);
416
+ "section" in n && U(n.section?.items, t);
404
417
  }
405
418
  }
406
419
  }
407
- function U(e) {
420
+ function W(e) {
408
421
  if (typeof e == "string") return e;
409
422
  if (e && typeof e == "object") {
410
423
  let t = Object.values(e).find((e) => typeof e == "string");
@@ -412,7 +425,7 @@ function U(e) {
412
425
  }
413
426
  return "";
414
427
  }
415
- function W(e) {
428
+ function G(e) {
416
429
  let t = [];
417
430
  for (let [n, r] of e.fields) {
418
431
  if (r.primary || r.auto || r.ref || r.array || r.structure || r.display?.is_listable === !1) continue;
@@ -421,12 +434,12 @@ function W(e) {
421
434
  }
422
435
  return t;
423
436
  }
424
- function G(e, t, n, r) {
437
+ function K(e, t, n, r) {
425
438
  if (!t || t.startsWith("$")) return;
426
- let i = J(e, t);
439
+ let i = Y(e, t);
427
440
  i.kind !== "missing" && (n.add(t), i.kind === "file" && r.addField(t, "file_metadata"));
428
441
  }
429
- function K(e, t, n, r) {
442
+ function q(e, t, n, r) {
430
443
  if (t.startsWith("$status.")) {
431
444
  n.addExpand("statuses", "status_expand"), r !== "status_expand" && n.addExpand("statuses", r), r !== "status_expand" && n.addField(t, r);
432
445
  return;
@@ -441,14 +454,14 @@ function K(e, t, n, r) {
441
454
  n.addExpand("evidence", "evidence_expand"), r !== "evidence_expand" && n.addExpand("evidence", r), r !== "evidence_expand" && n.addField(t, r);
442
455
  return;
443
456
  }
444
- let i = J(e, t);
457
+ let i = Y(e, t);
445
458
  i.kind === "field" && i.field.type === "ref" && (n.addExpand("refs", "ref_expand"), r !== "ref_expand" && n.addExpand("refs", r));
446
459
  }
447
- function q(e) {
460
+ function J(e) {
448
461
  let t = e.snapshot().expand, n = [];
449
462
  return t.refs && n.push("refs"), t.statuses && n.push("statuses"), t.properties && n.push("properties"), t.evidence && n.push("evidence"), n;
450
463
  }
451
- function J(e, t) {
464
+ function Y(e, t) {
452
465
  if (!e) return { kind: t.startsWith("$") ? "synthetic" : "missing" };
453
466
  if (t.startsWith("$status.")) return e.status_groups?.[t.slice(8)] ? { kind: "synthetic" } : { kind: "missing" };
454
467
  if (t.startsWith("$property.")) return e.properties?.[t.slice(10)] ? { kind: "synthetic" } : { kind: "missing" };
@@ -464,7 +477,7 @@ function J(e, t) {
464
477
  file: r
465
478
  } : { kind: "missing" };
466
479
  }
467
- var Y = class {
480
+ var X = class {
468
481
  #e = [];
469
482
  #t = /* @__PURE__ */ new Set();
470
483
  add(e) {
@@ -476,7 +489,7 @@ var Y = class {
476
489
  values() {
477
490
  return [...this.#e];
478
491
  }
479
- }, X = class {
492
+ }, Z = class {
480
493
  #e = /* @__PURE__ */ new Map();
481
494
  #t = /* @__PURE__ */ new Map();
482
495
  addField(e, t) {
@@ -497,4 +510,4 @@ var Y = class {
497
510
  }
498
511
  };
499
512
  //#endregion
500
- export { P as extractDisplayTemplateFields, f as resolveCard, p as resolveListProjection, g as resolveQuickPeekFieldNames, h as resolveVariantRenderFields };
513
+ export { F as extractDisplayTemplateFields, f as resolveCard, p as resolveListProjection, _ as resolveQuickPeekFieldNames, g as resolveVariantRenderFields };
@@ -27,11 +27,26 @@ function g(e) {
27
27
  maxSize: Math.max(s, e)
28
28
  };
29
29
  }
30
- function _(n) {
31
- let { visibleCols: a, entity: s, screen: _, schema: v, entityCode: y, rowActions: b, hasBatchActions: x, hasExplicitRowActions: S, canUpdate: C, canDelete: w, peekEnabled: T, hasDetailTarget: E, t: D, tabNavigate: O, refsRef: k, rowSelectionKey: A, setPeekRow: j } = n;
30
+ var _ = 150, v = {
31
+ date: 104,
32
+ time: 84,
33
+ bool: 80,
34
+ int: 90,
35
+ float: 100,
36
+ decimal: 130,
37
+ enum: 130,
38
+ uuid: 110,
39
+ text: 240
40
+ }, y = 7, b = 40;
41
+ function x(e) {
42
+ let t = Math.max(0, ...e.map((e) => e.length));
43
+ return Math.max(140, t * y + b);
44
+ }
45
+ function S(n) {
46
+ let { visibleCols: a, entity: s, screen: y, schema: b, entityCode: S, rowActions: C, hasBatchActions: w, hasExplicitRowActions: T, canUpdate: E, canDelete: D, peekEnabled: O, hasDetailTarget: k, t: A, tabNavigate: j, refsRef: M, rowSelectionKey: N, setPeekRow: P } = n;
32
47
  if (a.length === 0 || !s) return [];
33
- let M = [];
34
- x && M.push({
48
+ let F = [];
49
+ w && F.push({
35
50
  id: "_select",
36
51
  enableResizing: !1,
37
52
  header: ({ table: e }) => m(i, {
@@ -49,12 +64,12 @@ function _(n) {
49
64
  if (n.startsWith("$status.")) {
50
65
  let e = n.slice(8), t = s.status_groups?.[e];
51
66
  if (!t) continue;
52
- let i = new Map(t.statuses.map((e) => [e.code, e]));
53
- M.push({
67
+ let i = new Map(t.statuses.map((e) => [e.code, e])), a = x(t.statuses.map((e) => A(e.name) || e.code));
68
+ F.push({
54
69
  id: n,
55
- header: D(t.name) || e,
56
- size: 140,
57
- ...g(140),
70
+ header: A(t.name) || e,
71
+ size: a,
72
+ ...g(a),
58
73
  cell: ({ row: t }) => {
59
74
  let n = t.original.$statuses?.find((t) => t.group_code === e);
60
75
  if (!n) return m("span", { className: "text-sm text-muted-foreground" }, "-");
@@ -62,7 +77,7 @@ function _(n) {
62
77
  return m(r, {
63
78
  tone: a?.color ?? "slate",
64
79
  size: "xs"
65
- }, D(a?.name) || n.status_code);
80
+ }, A(a?.name) || n.status_code);
66
81
  }
67
82
  });
68
83
  continue;
@@ -70,9 +85,9 @@ function _(n) {
70
85
  if (n.startsWith("$property.")) {
71
86
  let t = n.slice(10), r = s.properties?.[t];
72
87
  if (!r) continue;
73
- M.push({
88
+ F.push({
74
89
  id: n,
75
- header: () => h(D, D(r.name) || t, s, t, D(r.description) || void 0),
90
+ header: () => h(A, A(r.name) || t, s, t, A(r.description) || void 0),
76
91
  size: 150,
77
92
  ...g(150),
78
93
  enableSorting: !1,
@@ -84,9 +99,9 @@ function _(n) {
84
99
  continue;
85
100
  }
86
101
  if (n === "$evidence") {
87
- M.push({
102
+ F.push({
88
103
  id: n,
89
- header: D("list.columns.evidence", "Evidence"),
104
+ header: A("list.columns.evidence", "Evidence"),
90
105
  size: 140,
91
106
  ...g(140),
92
107
  enableSorting: !1,
@@ -96,73 +111,73 @@ function _(n) {
96
111
  tone: f(t),
97
112
  size: "xs",
98
113
  dot: !0
99
- }, d(D, t));
114
+ }, d(A, t));
100
115
  }
101
116
  });
102
117
  continue;
103
118
  }
104
119
  if (s.files?.get(n)) {
105
- M.push({
120
+ F.push({
106
121
  id: n,
107
122
  accessorFn: (e) => e.$files?.[n] ?? null,
108
- header: () => h(D, l(D, s, n, v?.entities), s, n),
123
+ header: () => h(A, l(A, s, n, b?.entities), s, n),
109
124
  size: 150,
110
125
  ...g(150),
111
126
  cell: ({ row: e }) => c({
112
127
  entity: s,
113
- entityCode: y,
128
+ entityCode: S,
114
129
  fieldName: n,
115
130
  record: e.original,
116
131
  mode: "display",
117
132
  surface: "list",
118
- refs: k.current,
119
- t: D
133
+ refs: M.current,
134
+ t: A
120
135
  })
121
136
  });
122
137
  continue;
123
138
  }
124
139
  let i = s.fields.get(n);
125
140
  if (!i) continue;
126
- let a = t(D, i, n, v?.entities), p = i.display?.width, _ = u({
141
+ let a = t(A, i, n, b?.entities), p = i.display?.width ?? v[i.type] ?? _, y = u({
127
142
  field: i,
128
143
  fieldName: n,
129
144
  surface: "list",
130
145
  entity: s,
131
- entityCode: y,
132
- entities: v?.entities,
133
- screens: v?.screens,
134
- refs: () => k.current,
135
- t: D
146
+ entityCode: S,
147
+ entities: b?.entities,
148
+ screens: b?.screens,
149
+ refs: () => M.current,
150
+ t: A
136
151
  });
137
- M.push({
152
+ F.push({
138
153
  id: n,
139
154
  accessorKey: n,
140
- header: () => h(D, a, s, n, D(i.display?.description) || void 0),
155
+ header: () => h(A, a, s, n, A(i.display?.description) || void 0),
141
156
  enableSorting: i.type !== "json" && o(s, n),
142
- size: p ?? 150,
143
- ...g(p ?? 150),
144
- cell: ({ getValue: e, row: t }) => _(e(), t.original)
157
+ size: p,
158
+ ...g(p),
159
+ cell: ({ getValue: e, row: t }) => y(e(), t.original)
145
160
  });
146
161
  }
147
- return (!S && C || !S && w || b.length > 0) && M.push({
162
+ return (!T && E || !T && D || C.length > 0) && F.push({
148
163
  id: "_actions",
149
164
  enableResizing: !1,
150
165
  header: "",
151
166
  size: 40,
152
167
  cell: ({ row: e }) => m(p, {
153
168
  row: e.original,
154
- rowId: A(s, e.original),
155
- screen: _,
156
- fullScreen: _,
169
+ rowId: N(s, e.original),
170
+ screen: y,
171
+ fullScreen: y,
157
172
  entity: s,
158
- entityCode: y,
159
- rowActions: b,
160
- tabNavigate: O,
161
- peekAllowed: T,
162
- hasDetailTarget: E,
163
- onPeek: j
173
+ entityCode: S,
174
+ rowActions: C,
175
+ tabNavigate: j,
176
+ peekAllowed: O,
177
+ hasDetailTarget: k,
178
+ onPeek: P
164
179
  })
165
- }), M;
180
+ }), F;
166
181
  }
167
182
  //#endregion
168
- export { _ as buildListColumns };
183
+ export { S as buildListColumns };