@declarion/react 0.54.0 → 0.56.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 (175) hide show
  1. package/dist-lib/{DraggableChildrenTable-CPoUY99R.js → DraggableChildrenTable-BV5sb8Uo.js} +32 -32
  2. package/dist-lib/{Grid--QAEby8k.js → Grid-DWgUPuZ3.js} +45 -45
  3. package/dist-lib/{JsonEditor-DoNmyrYd.js → JsonEditor-Dz1PQHC8.js} +2 -2
  4. package/dist-lib/{LayoutRenderer-BxZ7Nd9b.js → LayoutRenderer-C9AH9cXf.js} +716 -714
  5. package/dist-lib/{ListCardsBody-BPV4GPrv.js → ListCardsBody-DXcDg536.js} +29 -29
  6. package/dist-lib/{MarkdownRenderer-CIKuh_0i.js → MarkdownRenderer-CcSFc2N3.js} +1 -1
  7. package/dist-lib/{RefreshControl-DMLkZP3R.js → RefreshControl-CNtN8zSl.js} +41 -41
  8. package/dist-lib/{SmartDetailPage.impl-SnNu6Ug-.js → SmartDetailPage.impl-lskCd-WG.js} +492 -492
  9. package/dist-lib/{SmartListPage.impl-C73pR7Iw.js → SmartListPage.impl-CrGbdzyK.js} +744 -743
  10. package/dist-lib/{SmartRecordListPage.impl-rJjQZe1V.js → SmartRecordListPage.impl-Bkl9aZJ8.js} +129 -129
  11. package/dist-lib/{SortHeaderMenu-DQ_KrkWk.js → SortHeaderMenu-SYSAaqQJ.js} +1 -1
  12. package/dist-lib/{action-dispatch-DsuUS7ae.js → action-dispatch-CR4ajBtT.js} +179 -179
  13. package/dist-lib/api/auth.d.ts +1 -1
  14. package/dist-lib/api/batch.d.ts +1 -1
  15. package/dist-lib/api/data.d.ts +3 -3
  16. package/dist-lib/api/entities.d.ts +1 -1
  17. package/dist-lib/api/events.d.ts +13 -4
  18. package/dist-lib/api/params.d.ts +1 -1
  19. package/dist-lib/api/properties.d.ts +1 -1
  20. package/dist-lib/api/schema.d.ts +1 -1
  21. package/dist-lib/api/status.d.ts +1 -1
  22. package/dist-lib/{cardProjection-BadzqyeQ.js → cardProjection-CW5RIMko.js} +24 -24
  23. package/dist-lib/components/actions/ActionButton.d.ts +1 -1
  24. package/dist-lib/components/actions/ActionDialog.d.ts +1 -1
  25. package/dist-lib/components/actions/ActionRunner.d.ts +1 -1
  26. package/dist-lib/components/actions/ObjectActionBar.d.ts +3 -3
  27. package/dist-lib/components/actions/PropertyGridEditor.d.ts +2 -2
  28. package/dist-lib/components/actions/ResponsiveActionBar.d.ts +2 -2
  29. package/dist-lib/components/actions/RowActionsKebab.d.ts +1 -1
  30. package/dist-lib/components/agents/AgentConversationDrawer.d.ts +1 -1
  31. package/dist-lib/components/agents/AgentPicker.d.ts +1 -1
  32. package/dist-lib/components/agents/transcript-runs.d.ts +1 -1
  33. package/dist-lib/components/chrome/AssociationTabs.d.ts +1 -1
  34. package/dist-lib/components/chrome/Breadcrumbs.d.ts +1 -1
  35. package/dist-lib/components/detail-layout/AssociatedBlock.d.ts +1 -1
  36. package/dist-lib/components/detail-layout/AssociatedToolbar.d.ts +1 -1
  37. package/dist-lib/components/detail-layout/ChildrenBlock.d.ts +2 -2
  38. package/dist-lib/components/detail-layout/DetailAuditStrip.d.ts +2 -2
  39. package/dist-lib/components/detail-layout/DetailHighlights.d.ts +3 -3
  40. package/dist-lib/components/detail-layout/DraggableChildrenTable.d.ts +3 -3
  41. package/dist-lib/components/detail-layout/EditableChildrenTable.d.ts +3 -3
  42. package/dist-lib/components/detail-layout/EvidenceBlock.d.ts +1 -1
  43. package/dist-lib/components/detail-layout/FieldsBlock.d.ts +1 -1
  44. package/dist-lib/components/detail-layout/LayoutColumn.d.ts +1 -1
  45. package/dist-lib/components/detail-layout/LayoutRenderer.d.ts +3 -3
  46. package/dist-lib/components/detail-layout/LayoutRow.d.ts +1 -1
  47. package/dist-lib/components/detail-layout/LayoutTabs.d.ts +1 -1
  48. package/dist-lib/components/detail-layout/PropertiesBlock.d.ts +1 -1
  49. package/dist-lib/components/detail-layout/QuickAddForm.d.ts +2 -2
  50. package/dist-lib/components/detail-layout/SectionBlock.d.ts +1 -1
  51. package/dist-lib/components/detail-layout/StatusesBlock.d.ts +1 -1
  52. package/dist-lib/components/detail-layout/TimelineComposer.d.ts +2 -2
  53. package/dist-lib/components/detail-layout/blockMeta.d.ts +1 -1
  54. package/dist-lib/components/detail-layout/useQuickAdd.d.ts +2 -2
  55. package/dist-lib/components/detail-layout/widgets/WidgetHost.d.ts +1 -1
  56. package/dist-lib/components/fields/RefCombobox.d.ts +2 -2
  57. package/dist-lib/components/fields/cells/factories/host-icons.d.ts +1 -1
  58. package/dist-lib/components/fields/cells/registry.d.ts +2 -2
  59. package/dist-lib/components/fields/index.d.ts +3 -3
  60. package/dist-lib/components/file-widgets/helpers.d.ts +1 -1
  61. package/dist-lib/components/file-widgets/host.d.ts +3 -3
  62. package/dist-lib/components/file-widgets/payload.d.ts +2 -2
  63. package/dist-lib/components/file-widgets/types.d.ts +1 -1
  64. package/dist-lib/components/file-widgets/useEmbedFileSrc.d.ts +1 -1
  65. package/dist-lib/components/filters/FilterChips.d.ts +1 -1
  66. package/dist-lib/components/filters/FilterDrawer.d.ts +3 -3
  67. package/dist-lib/components/layout/CommandPalette.d.ts +2 -2
  68. package/dist-lib/components/layout/Layout.d.ts +3 -3
  69. package/dist-lib/components/layout/Rail.d.ts +2 -2
  70. package/dist-lib/components/layout/Sidebar.d.ts +1 -1
  71. package/dist-lib/components/layout/TabStrip.d.ts +1 -1
  72. package/dist-lib/components/layout/TenantChip.d.ts +1 -1
  73. package/dist-lib/components/layout/TopBar.d.ts +1 -1
  74. package/dist-lib/components/layout/tab-close.d.ts +1 -1
  75. package/dist-lib/components/list/InlineEditCell.d.ts +1 -1
  76. package/dist-lib/components/list/PeekFieldCell.d.ts +2 -2
  77. package/dist-lib/components/list/QuickPeek.d.ts +3 -3
  78. package/dist-lib/components/list/ViewSwitcher.d.ts +1 -1
  79. package/dist-lib/components/pages/DocumentsMenu.d.ts +1 -1
  80. package/dist-lib/components/pages/ExportMenu.d.ts +1 -1
  81. package/dist-lib/components/pages/RecordDocumentsPanel.d.ts +1 -1
  82. package/dist-lib/components/pages/auth/AuthShell.d.ts +1 -1
  83. package/dist-lib/components/pages/exportRequest.d.ts +1 -1
  84. package/dist-lib/components/pages/list/ListCardRow.d.ts +3 -3
  85. package/dist-lib/components/pages/list/ListCardsBody.d.ts +3 -3
  86. package/dist-lib/components/pages/list/ListFloatbar.d.ts +3 -3
  87. package/dist-lib/components/pages/list/ListHeader.d.ts +3 -3
  88. package/dist-lib/components/pages/list/ListNoRows.d.ts +1 -1
  89. package/dist-lib/components/pages/list/ListTable.d.ts +2 -2
  90. package/dist-lib/components/pages/list/ListTableRow.d.ts +1 -1
  91. package/dist-lib/components/pages/list/ListToolbar.d.ts +7 -5
  92. package/dist-lib/components/pages/list/RowActionsCell.d.ts +1 -1
  93. package/dist-lib/components/pages/list/RowContextMenu.d.ts +1 -1
  94. package/dist-lib/components/pages/list/SortHeaderMenu.d.ts +1 -1
  95. package/dist-lib/components/pages/list/cardProjection.d.ts +2 -2
  96. package/dist-lib/components/pages/list/columns.d.ts +3 -3
  97. package/dist-lib/components/pages/list/filter-meta.d.ts +2 -2
  98. package/dist-lib/components/pages/list/sortable-header.d.ts +1 -1
  99. package/dist-lib/components/pages/list/table-features.d.ts +1 -1
  100. package/dist-lib/components/pages/list/use-filter-value-labels.d.ts +4 -4
  101. package/dist-lib/components/pages/list/useListColumnLayout.d.ts +1 -1
  102. package/dist-lib/components/pages/list/useListQuery.d.ts +4 -8
  103. package/dist-lib/components/pages/list/useListRowInteraction.d.ts +4 -4
  104. package/dist-lib/components/pages/list/useListSelection.d.ts +2 -2
  105. package/dist-lib/components/pages/list/useListSort.d.ts +1 -1
  106. package/dist-lib/components/pages/list/useListViews.d.ts +3 -3
  107. package/dist-lib/components/pages/list/useRowMenu.d.ts +3 -3
  108. package/dist-lib/components/pages/tenant-params/TenantParamsPage.d.ts +1 -1
  109. package/dist-lib/components/params/param-editors.d.ts +1 -1
  110. package/dist-lib/components/primitives/ClassifiedFieldLocked.d.ts +1 -1
  111. package/dist-lib/components/shared/MarkdownRenderer.d.ts +1 -1
  112. package/dist-lib/components/shared/StatusGroupsDisplay.d.ts +2 -2
  113. package/dist-lib/embed/screen-location.d.ts +1 -1
  114. package/dist-lib/{field-classification-sMkkAEg9.js → field-classification-D6xQYn-h.js} +271 -400
  115. package/dist-lib/{format-count-B5SLlNOb.js → format-count-Dobmi-Ji.js} +238 -238
  116. package/dist-lib/hooks/useAgentConversation.d.ts +1 -1
  117. package/dist-lib/hooks/useAllEntityData.d.ts +1 -1
  118. package/dist-lib/hooks/useAssociatedData.d.ts +1 -1
  119. package/dist-lib/hooks/useBranding.d.ts +4 -4
  120. package/dist-lib/hooks/useBrandingChrome.d.ts +2 -2
  121. package/dist-lib/hooks/useChildrenData.d.ts +1 -1
  122. package/dist-lib/hooks/useCurrentScreen.d.ts +1 -1
  123. package/dist-lib/hooks/useCursorEntityData.d.ts +5 -5
  124. package/dist-lib/hooks/useEntity.d.ts +1 -1
  125. package/dist-lib/hooks/useEntityData.d.ts +8 -1
  126. package/dist-lib/hooks/useFilters.d.ts +1 -1
  127. package/dist-lib/hooks/useImpersonation.d.ts +1 -1
  128. package/dist-lib/hooks/useLiveObject.d.ts +2 -2
  129. package/dist-lib/hooks/useMutations.d.ts +3 -3
  130. package/dist-lib/hooks/useObject.d.ts +1 -1
  131. package/dist-lib/hooks/useParams.d.ts +2 -2
  132. package/dist-lib/hooks/useRealtimeThresholds.d.ts +1 -0
  133. package/dist-lib/hooks/useRegisterScreenTab.d.ts +1 -1
  134. package/dist-lib/hooks/useResponsiveMode.d.ts +1 -1
  135. package/dist-lib/hooks/useSSE.d.ts +1 -2
  136. package/dist-lib/hooks/useScreen.d.ts +1 -1
  137. package/dist-lib/hooks/useTimelineData.d.ts +2 -2
  138. package/dist-lib/hooks/useViews.d.ts +1 -1
  139. package/dist-lib/index.js +811 -811
  140. package/dist-lib/lib/action-dispatch.d.ts +2 -2
  141. package/dist-lib/lib/actions.d.ts +1 -1
  142. package/dist-lib/lib/brand-tokens.d.ts +1 -1
  143. package/dist-lib/lib/branding.d.ts +1 -1
  144. package/dist-lib/lib/child-config.d.ts +1 -1
  145. package/dist-lib/lib/children-validation.d.ts +2 -2
  146. package/dist-lib/lib/document-templates.d.ts +1 -1
  147. package/dist-lib/lib/evidence-verdict.d.ts +1 -1
  148. package/dist-lib/lib/mass-edit.d.ts +1 -1
  149. package/dist-lib/lib/messages.d.ts +2 -2
  150. package/dist-lib/lib/realtime-query-keys.d.ts +22 -0
  151. package/dist-lib/lib/realtime-reconcile.d.ts +1 -10
  152. package/dist-lib/lib/realtime-resync.d.ts +23 -0
  153. package/dist-lib/lib/rich-text.d.ts +1 -1
  154. package/dist-lib/lib/schema-routing.d.ts +1 -1
  155. package/dist-lib/lib/screen-back.d.ts +1 -1
  156. package/dist-lib/lib/size-value.d.ts +1 -1
  157. package/dist-lib/lib/toast.d.ts +2 -2
  158. package/dist-lib/lib/ui-actions.d.ts +1 -1
  159. package/dist-lib/lib/variants.d.ts +1 -1
  160. package/dist-lib/{peekDraftStore-CbHFwz_F.js → peekDraftStore-5wQ7lq_V.js} +17 -17
  161. package/dist-lib/{registry-D0RhCnEL.js → registry-CjgUaF7C.js} +511 -511
  162. package/dist-lib/stores/auth.d.ts +1 -1
  163. package/dist-lib/stores/preferences.d.ts +1 -1
  164. package/dist-lib/stores/realtime.d.ts +86 -19
  165. package/dist-lib/testing.d.ts +4 -4
  166. package/dist-lib/testing.js +40 -40
  167. package/dist-lib/types/api.d.ts +1 -1
  168. package/dist-lib/types/schema.d.ts +2 -2
  169. package/dist-lib/{useCurrentScreen-DVTXCj_K.js → useCurrentScreen-CzwzQpoW.js} +2476 -1967
  170. package/dist-lib/useListQuery-D7Hr5WM1.js +96 -0
  171. package/dist-lib/{useProperties-BcIz-MyO.js → useProperties-CqtCzFCr.js} +25 -25
  172. package/dist-lib/{useTabSearchMirror-UYCsopxP.js → useTabSearchMirror-C39U85cg.js} +13 -13
  173. package/dist-lib/{value-CQzGOI0F.js → value-Bo8C8WMU.js} +4 -4
  174. package/package.json +10 -10
  175. package/dist-lib/useListQuery-C2nq58YV.js +0 -90
@@ -1,4 +1,4 @@
1
- import type { CheckSetupResponse, LoginResponse, AuthUser, Tenant, SSOProvider } from "../types/api";
1
+ import type { CheckSetupResponse, LoginResponse, AuthUser, Tenant, SSOProvider } from "../types/api.d.ts";
2
2
  export declare function checkSetup(): Promise<CheckSetupResponse>;
3
3
  export declare function login(email: string, password: string, remember?: boolean): Promise<LoginResponse>;
4
4
  export declare function signup(email: string, password: string, displayName: string): Promise<LoginResponse>;
@@ -1,4 +1,4 @@
1
- import type { ApiErrorBody } from "../types/api";
1
+ import type { ApiErrorBody } from "../types/api.d.ts";
2
2
  export interface BatchOp {
3
3
  action: string;
4
4
  params?: Record<string, unknown> | null;
@@ -1,6 +1,6 @@
1
- import type { ApiErrorBody, ListParams, ListResponse, DataResponse } from "../types/api";
2
- import type { PkValues } from "../types/schema";
3
- import type { ExportRequest } from "../components/pages/exportRequest";
1
+ import type { ApiErrorBody, ListParams, ListResponse, DataResponse } from "../types/api.d.ts";
2
+ import type { PkValues } from "../types/schema.d.ts";
3
+ import type { ExportRequest } from "../components/pages/exportRequest.d.ts";
4
4
  export declare function listEntities(entity: string, params?: ListParams, options?: {
5
5
  signal?: AbortSignal;
6
6
  }): Promise<ListResponse>;
@@ -1,4 +1,4 @@
1
- import type { Refs, V2ListParams, V2Meta, V2StatusInstance, V2PropertyInstance, EnrichedRow } from "../types/api";
1
+ import type { Refs, V2ListParams, V2Meta, V2StatusInstance, V2PropertyInstance, EnrichedRow } from "../types/api.d.ts";
2
2
  /** Helper methods injected onto enriched rows. */
3
3
  export interface RowHelpers {
4
4
  $status(groupCode: string): V2StatusInstance | undefined;
@@ -29,15 +29,19 @@ export type SSEEvent = {
29
29
  } | {
30
30
  type: "replay_complete";
31
31
  seq?: number;
32
+ } | {
33
+ type: "snapshot_complete";
34
+ known: boolean;
35
+ asOf?: number;
36
+ } | {
37
+ type: "realtime_streaming";
38
+ eventID?: string;
39
+ degraded: string[];
32
40
  } | {
33
41
  type: "realtime_degraded";
34
42
  eventID?: string;
35
43
  entity: string;
36
44
  degradedSeq?: number;
37
- } | {
38
- type: "realtime_restored";
39
- eventID?: string;
40
- restoredSeq?: number;
41
45
  } | {
42
46
  type: "cache_reset";
43
47
  eventID?: string;
@@ -78,5 +82,10 @@ export interface StreamEventsOptions {
78
82
  * header, so a sent cookie would bypass the scoped embed token.
79
83
  */
80
84
  credentials?: RequestCredentials;
85
+ /**
86
+ * Called for every chunk read from the stream, heartbeat comments included:
87
+ * what proves the connection is still alive on a tenant with nothing to say.
88
+ */
89
+ onActivity?: () => void;
81
90
  }
82
91
  export declare function streamEvents(options?: StreamEventsOptions): AsyncGenerator<SSEEvent>;
@@ -1,4 +1,4 @@
1
- import type { ParamLookup, PublicParamsResponse, ResolvedParam } from "../types/api";
1
+ import type { ParamLookup, PublicParamsResponse, ResolvedParam } from "../types/api.d.ts";
2
2
  /**
3
3
  * Fetches the full pre-login envelope from /api/params/public:
4
4
  * {parameters, accents, meta}. Used by AuthShell to theme
@@ -1,3 +1,3 @@
1
- import type { PropertyValue } from "../types/api";
1
+ import type { PropertyValue } from "../types/api.d.ts";
2
2
  export declare function setObjectProperty(entity: string, id: string, propertyCode: string, value: unknown): Promise<PropertyValue>;
3
3
  export declare function deleteObjectProperty(entity: string, id: string, propertyCode: string): Promise<void>;
@@ -1,2 +1,2 @@
1
- import type { Schema } from "../types/schema";
1
+ import type { Schema } from "../types/schema.d.ts";
2
2
  export declare function fetchSchema(): Promise<Schema>;
@@ -1,2 +1,2 @@
1
- import type { StatusInfo } from "../types/api";
1
+ import type { StatusInfo } from "../types/api.d.ts";
2
2
  export declare function setObjectStatus(entity: string, id: string, groupCode: string, statusCode: string, note?: string): Promise<StatusInfo>;
@@ -1,5 +1,5 @@
1
- import { Xn as e, f as t, gt as n, ht as r } from "./useCurrentScreen-DVTXCj_K.js";
2
- import { d as i, f as a, u as o } from "./action-dispatch-DsuUS7ae.js";
1
+ import { h as e, mt as t, pt as n, tr as r } from "./useCurrentScreen-CzwzQpoW.js";
2
+ import { d as i, f as a, u as o } from "./action-dispatch-CR4ajBtT.js";
3
3
  import { Fragment as s, jsx as c, jsxs as l } from "react/jsx-runtime";
4
4
  //#region src/components/file-widgets/payload.ts
5
5
  function u(e) {
@@ -75,9 +75,9 @@ function v(e) {
75
75
  for (let n of Object.values(e)) for (let e of n.set ?? []) t.push(e.file_id);
76
76
  return t;
77
77
  }
78
- function y(e, t) {
78
+ function y(e, r) {
79
79
  if (e.mode !== "rich_text_inline") return { clear: !0 };
80
- let i = r(n(t));
80
+ let i = n(t(r));
81
81
  return i.length === 0 ? { clear: !0 } : { set: i.map((e, t) => ({
82
82
  file_id: e,
83
83
  position: t
@@ -363,7 +363,7 @@ function N(e, t, n) {
363
363
  }
364
364
  function P(e) {
365
365
  let t = new $(), n = [], r = (r, i) => {
366
- !r || t.has(r) || (t.add(r), n.push({
366
+ r && !t.has(r) && (t.add(r), n.push({
367
367
  field: r,
368
368
  bucket: i,
369
369
  explicit: e.explicit
@@ -436,7 +436,7 @@ function L(e, t, n) {
436
436
  if (t === "$evidence") return e.evidence_covered ? t : void 0;
437
437
  if (t.startsWith("$")) return;
438
438
  let r = e.fields.get(t), i = e.files?.get(t);
439
- if (!(!r && !i) && (n.explicit || !(r && r.display?.is_listable === !1) && !(i && i.display?.is_listable === !1))) return t;
439
+ if ((r || i) && (n.explicit || !(r && r.display?.is_listable === !1) && !(i && i.display?.is_listable === !1))) return t;
440
440
  }
441
441
  function R(e, t, n) {
442
442
  return t.find((t) => n.exclude?.has(t) || !n.allowAuto && G(e, t) || !n.allowLong && K(e, t) ? !1 : W(e, t));
@@ -474,17 +474,17 @@ function K(e, t) {
474
474
  let n = Q(e, t);
475
475
  return n.kind === "file" ? n.file.mode !== "single" : n.kind === "field" && re.has(n.field.type);
476
476
  }
477
- function se(t, n) {
478
- if (!t) return [];
479
- let r = new $();
480
- for (let i of e(t)) r.add(i), n.addField(i, "identity");
481
- let i = L(t, t.display.display_field, { explicit: !0 });
482
- i && (r.add(i), n.addField(i, "display"), Z(t, i, n, "display"));
483
- for (let e of ce(t.display.display_template)) {
484
- let i = L(t, e, { explicit: !0 });
485
- i && (r.add(i), n.addField(i, "display_template"), Z(t, i, n, "display_template"));
477
+ function se(e, t) {
478
+ if (!e) return [];
479
+ let n = new $();
480
+ for (let i of r(e)) n.add(i), t.addField(i, "identity");
481
+ let i = L(e, e.display.display_field, { explicit: !0 });
482
+ i && (n.add(i), t.addField(i, "display"), Z(e, i, t, "display"));
483
+ for (let r of ce(e.display.display_template)) {
484
+ let i = L(e, r, { explicit: !0 });
485
+ i && (n.add(i), t.addField(i, "display_template"), Z(e, i, t, "display_template"));
486
486
  }
487
- return r.values();
487
+ return n.values();
488
488
  }
489
489
  function ce(e) {
490
490
  if (!e) return [];
@@ -548,11 +548,11 @@ function de(e, t, n) {
548
548
  }
549
549
  return r.values();
550
550
  }
551
- function fe(e, n, r) {
552
- let i = typeof n == "string" ? t(n) : n ?? [], a = new $();
553
- for (let t of i) {
554
- let n = L(e, t.field, { explicit: !0 });
555
- n && (a.add(n), r.addField(n, "sort"), Z(e, n, r, "sort"));
551
+ function fe(t, n, r) {
552
+ let i = typeof n == "string" ? e(n) : n ?? [], a = new $();
553
+ for (let e of i) {
554
+ let n = L(t, e.field, { explicit: !0 });
555
+ n && (a.add(n), r.addField(n, "sort"), Z(t, n, r, "sort"));
556
556
  }
557
557
  return a.values();
558
558
  }
@@ -572,7 +572,7 @@ function pe(e, t, n, r) {
572
572
  }
573
573
  function me(e, t, n) {
574
574
  if (Array.isArray(e)) {
575
- for (let r of e) if (!(!r || typeof r != "object")) {
575
+ for (let r of e) if (r && typeof r == "object") {
576
576
  if ("section" in r) {
577
577
  let e = r.section, i = Y(e?.name);
578
578
  i && t.has(i) && J(e?.items, n);
@@ -584,7 +584,7 @@ function me(e, t, n) {
584
584
  }
585
585
  function J(e, t) {
586
586
  if (Array.isArray(e)) {
587
- for (let n of e) if (!(!n || typeof n != "object")) {
587
+ for (let n of e) if (n && typeof n == "object") {
588
588
  if ("fields" in n) {
589
589
  let e = n.fields;
590
590
  if (Array.isArray(e)) {
@@ -612,7 +612,7 @@ function he(e) {
612
612
  for (let [n, r] of e.fields) {
613
613
  if (r.primary || r.auto || r.ref || r.array || r.structure || r.display?.is_listable === !1) continue;
614
614
  let e = (r.type || "").toLowerCase(), i = !!(r.enum || r.values);
615
- if (!(!ae.has(e) && !i) && (t.push(n), t.length >= 8)) break;
615
+ if ((ae.has(e) || i) && (t.push(n), t.length >= 8)) break;
616
616
  }
617
617
  return t;
618
618
  }
@@ -1,4 +1,4 @@
1
- import type { Action } from "../../types/schema";
1
+ import type { Action } from "../../types/schema.d.ts";
2
2
  interface ActionButtonProps {
3
3
  actionCode: string;
4
4
  action: Action;
@@ -1,4 +1,4 @@
1
- import type { Action } from "../../types/schema";
1
+ import type { Action } from "../../types/schema.d.ts";
2
2
  interface ActionDialogProps {
3
3
  open: boolean;
4
4
  onOpenChange: (open: boolean) => void;
@@ -1,5 +1,5 @@
1
1
  import { type ReactNode } from "react";
2
- import { type Action } from "../../types/schema";
2
+ import { type Action } from "../../types/schema.d.ts";
3
3
  export interface RunActionOptions {
4
4
  /** Full YAML action when available; drives destructive/long_running/resolved_params. */
5
5
  action?: Action;
@@ -1,7 +1,7 @@
1
1
  import { type ReactNode } from "react";
2
- import { type ResolvedActionLayoutNode } from "../../lib/actions";
3
- import { type Action } from "../../types/schema";
4
- import { type WidgetContext } from "./ResponsiveActionBar";
2
+ import { type ResolvedActionLayoutNode } from "../../lib/actions.d.ts";
3
+ import { type Action } from "../../types/schema.d.ts";
4
+ import { type WidgetContext } from "./ResponsiveActionBar.d.ts";
5
5
  export type ObjectActionBarSlot = "detail" | "detail_toolbar" | "list_row" | "quick_peek";
6
6
  export type ObjectActionSelection = {
7
7
  include: string[];
@@ -1,5 +1,5 @@
1
- import type { Entity } from "../../types/schema";
2
- import type { MassEditTarget } from "../../lib/mass-edit";
1
+ import type { Entity } from "../../types/schema.d.ts";
2
+ import type { MassEditTarget } from "../../lib/mass-edit.d.ts";
3
3
  /** Raw patch shape: field codes + optional $statuses / $properties subresource arrays. */
4
4
  export type PatchMap = Record<string, unknown>;
5
5
  interface PropertyGridEditorProps {
@@ -23,8 +23,8 @@
23
23
  * Renders as a single kebab "⋮" dropdown. No inline measurement.
24
24
  * Destructive items land at the bottom of the dropdown with a separator.
25
25
  */
26
- import type { Action, Entity, Screen } from "../../types/schema";
27
- import type { ResolvedActionLayoutNode, ResolvedActionLeaf } from "../../lib/actions";
26
+ import type { Action, Entity, Screen } from "../../types/schema.d.ts";
27
+ import type { ResolvedActionLayoutNode, ResolvedActionLeaf } from "../../lib/actions.d.ts";
28
28
  /**
29
29
  * Action-trigger callback. Returns a promise when the caller dispatches an
30
30
  * awaitable action (direct-run via ActionRunner); the bar awaits it so the
@@ -1,4 +1,4 @@
1
- import { type Action, type Entity } from "../../types/schema";
1
+ import { type Action, type Entity } from "../../types/schema.d.ts";
2
2
  interface RowActionsKebabProps {
3
3
  actions: Array<{
4
4
  code: string;
@@ -1,4 +1,4 @@
1
- import type { AgentConversation } from "../../api/agents";
1
+ import type { AgentConversation } from "../../api/agents.d.ts";
2
2
  export interface AgentConversationDrawerProps {
3
3
  open: boolean;
4
4
  onClose: () => void;
@@ -1,4 +1,4 @@
1
- import type { AvailableAgent } from "../../api/agents";
1
+ import type { AvailableAgent } from "../../api/agents.d.ts";
2
2
  export interface AgentPickerProps {
3
3
  agents: AvailableAgent[];
4
4
  selectedId?: string;
@@ -1,4 +1,4 @@
1
- import type { AgentMessage, AgentToolInvocation } from "../../api/agents";
1
+ import type { AgentMessage, AgentToolInvocation } from "../../api/agents.d.ts";
2
2
  export type TranscriptItem = {
3
3
  kind: "message";
4
4
  message: AgentMessage;
@@ -1,4 +1,4 @@
1
- import type { AssociationDef, Schema } from "../../types/schema";
1
+ import type { AssociationDef, Schema } from "../../types/schema.d.ts";
2
2
  interface AssociationTabsProps {
3
3
  entityCode: string;
4
4
  recordId: string;
@@ -1,4 +1,4 @@
1
- import { type IconName } from "../primitives";
1
+ import { type IconName } from "../primitives/index.d.ts";
2
2
  export interface Crumb {
3
3
  label: string;
4
4
  icon?: IconName | (string & {});
@@ -1,4 +1,4 @@
1
- import type { LayoutNode, Entity, Action } from "../../types/schema";
1
+ import type { LayoutNode, Entity, Action } from "../../types/schema.d.ts";
2
2
  import type { LayoutContext } from "./LayoutRenderer";
3
3
  interface AssociatedBlockProps {
4
4
  node: LayoutNode;
@@ -1,4 +1,4 @@
1
- import type { Entity } from "../../types/schema";
1
+ import type { Entity } from "../../types/schema.d.ts";
2
2
  interface AssociatedToolbarProps {
3
3
  entity: Entity;
4
4
  searchable?: boolean;
@@ -1,6 +1,6 @@
1
1
  import type { ReactNode } from "react";
2
- import type { LayoutNode, Schema } from "../../types/schema";
3
- import { type ResolvedChildConfig } from "../../lib/child-config";
2
+ import type { LayoutNode, Schema } from "../../types/schema.d.ts";
3
+ import { type ResolvedChildConfig } from "../../lib/child-config.d.ts";
4
4
  import type { LayoutContext } from "./LayoutRenderer";
5
5
  interface ChildrenBlockProps {
6
6
  node: LayoutNode;
@@ -1,5 +1,5 @@
1
- import type { Entity, Schema, Screen } from "../../types/schema";
2
- import type { Refs } from "../fields";
1
+ import type { Entity, Schema, Screen } from "../../types/schema.d.ts";
2
+ import type { Refs } from "../fields/index.d.ts";
3
3
  interface DetailAuditStripProps {
4
4
  screen: Screen;
5
5
  entity: Entity;
@@ -1,6 +1,6 @@
1
- import type { Entity, Schema, Screen } from "../../types/schema";
2
- import type { StatusInfo } from "../../types/api";
3
- import type { Refs } from "../fields";
1
+ import type { Entity, Schema, Screen } from "../../types/schema.d.ts";
2
+ import type { StatusInfo } from "../../types/api.d.ts";
3
+ import type { Refs } from "../fields/index.d.ts";
4
4
  interface DetailHighlightsProps {
5
5
  screen: Screen;
6
6
  entity: Entity;
@@ -1,7 +1,7 @@
1
- import type { Entity, Schema } from "../../types/schema";
2
- import type { Refs } from "../fields";
1
+ import type { Entity, Schema } from "../../types/schema.d.ts";
2
+ import type { Refs } from "../fields/index.d.ts";
3
3
  import type { PendingChildRow } from "./LayoutRenderer";
4
- import type { ResolvedChildConfig } from "../../lib/child-config";
4
+ import type { ResolvedChildConfig } from "../../lib/child-config.d.ts";
5
5
  interface DraggableChildrenTableProps {
6
6
  config: ResolvedChildConfig;
7
7
  childEntity: Entity;
@@ -1,7 +1,7 @@
1
- import type { Entity, Schema } from "../../types/schema";
2
- import type { Refs } from "../fields";
1
+ import type { Entity, Schema } from "../../types/schema.d.ts";
2
+ import type { Refs } from "../fields/index.d.ts";
3
3
  import type { PendingChildRow } from "./LayoutRenderer";
4
- import type { ResolvedChildConfig } from "../../lib/child-config";
4
+ import type { ResolvedChildConfig } from "../../lib/child-config.d.ts";
5
5
  interface EditableChildrenTableProps {
6
6
  config: ResolvedChildConfig;
7
7
  childEntity: Entity;
@@ -1,4 +1,4 @@
1
- import type { EvidenceVerdict } from "../../types/api";
1
+ import type { EvidenceVerdict } from "../../types/api.d.ts";
2
2
  interface EvidenceBlockProps {
3
3
  evidence: EvidenceVerdict | undefined;
4
4
  }
@@ -1,4 +1,4 @@
1
- import type { LayoutField } from "../../types/schema";
1
+ import type { LayoutField } from "../../types/schema.d.ts";
2
2
  import type { LayoutContext } from "./LayoutRenderer";
3
3
  interface FieldsBlockProps {
4
4
  fields: LayoutField[];
@@ -1,4 +1,4 @@
1
- import type { ColumnConfig, LayoutNode } from "../../types/schema";
1
+ import type { ColumnConfig, LayoutNode } from "../../types/schema.d.ts";
2
2
  import { type LayoutContext } from "./LayoutRenderer";
3
3
  interface LayoutColumnProps {
4
4
  config: ColumnConfig;
@@ -1,6 +1,6 @@
1
- import type { Entity, LayoutNode, Schema } from "../../types/schema";
2
- import type { StatusInfo, PropertyValue } from "../../types/api";
3
- import type { Refs } from "../fields";
1
+ import type { Entity, LayoutNode, Schema } from "../../types/schema.d.ts";
2
+ import type { StatusInfo, PropertyValue } from "../../types/api.d.ts";
3
+ import type { Refs } from "../fields/index.d.ts";
4
4
  export interface PendingChildRow {
5
5
  _key: string;
6
6
  _deleted?: boolean;
@@ -1,4 +1,4 @@
1
- import type { RowConfig } from "../../types/schema";
1
+ import type { RowConfig } from "../../types/schema.d.ts";
2
2
  import { type LayoutContext } from "./LayoutRenderer";
3
3
  interface LayoutRowProps {
4
4
  config: RowConfig;
@@ -1,4 +1,4 @@
1
- import type { TabsConfig } from "../../types/schema";
1
+ import type { TabsConfig } from "../../types/schema.d.ts";
2
2
  import { type LayoutContext } from "./LayoutRenderer";
3
3
  interface LayoutTabsProps {
4
4
  config: TabsConfig;
@@ -1,4 +1,4 @@
1
- import type { LayoutNode } from "../../types/schema";
1
+ import type { LayoutNode } from "../../types/schema.d.ts";
2
2
  import type { LayoutContext } from "./LayoutRenderer";
3
3
  interface PropertiesBlockProps {
4
4
  node: LayoutNode;
@@ -1,5 +1,5 @@
1
- import type { ResolvedChildConfig } from "../../lib/child-config";
2
- import type { Schema } from "../../types/schema";
1
+ import type { ResolvedChildConfig } from "../../lib/child-config.d.ts";
2
+ import type { Schema } from "../../types/schema.d.ts";
3
3
  interface QuickAddFormProps {
4
4
  config: ResolvedChildConfig;
5
5
  parentEntity: string;
@@ -1,4 +1,4 @@
1
- import type { SectionNode } from "../../types/schema";
1
+ import type { SectionNode } from "../../types/schema.d.ts";
2
2
  import type { LayoutContext } from "./LayoutRenderer";
3
3
  interface SectionBlockProps {
4
4
  config: SectionNode;
@@ -1,4 +1,4 @@
1
- import type { LayoutNode } from "../../types/schema";
1
+ import type { LayoutNode } from "../../types/schema.d.ts";
2
2
  import type { LayoutContext } from "./LayoutRenderer";
3
3
  interface StatusesBlockProps {
4
4
  node: LayoutNode;
@@ -1,5 +1,5 @@
1
- import type { ResolvedChildConfig } from "../../lib/child-config";
2
- import type { Schema } from "../../types/schema";
1
+ import type { ResolvedChildConfig } from "../../lib/child-config.d.ts";
2
+ import type { Schema } from "../../types/schema.d.ts";
3
3
  interface TimelineComposerProps {
4
4
  config: ResolvedChildConfig;
5
5
  parentEntity: string;
@@ -1,4 +1,4 @@
1
- import type { LayoutNode } from "../../types/schema";
1
+ import type { LayoutNode } from "../../types/schema.d.ts";
2
2
  import type { LayoutContext } from "./LayoutRenderer";
3
3
  export declare function resolveBlockLabel(node: LayoutNode, ctx: LayoutContext): string;
4
4
  export declare function resolveBlockIcon(node: LayoutNode, ctx: LayoutContext): string | undefined;
@@ -1,6 +1,6 @@
1
1
  import { type FormEvent } from "react";
2
- import type { ResolvedChildConfig } from "../../lib/child-config";
3
- import type { Schema } from "../../types/schema";
2
+ import type { ResolvedChildConfig } from "../../lib/child-config.d.ts";
3
+ import type { Schema } from "../../types/schema.d.ts";
4
4
  export interface UseQuickAddResult {
5
5
  values: Record<string, unknown>;
6
6
  quickAdd: ResolvedChildConfig["quick_add"];
@@ -1,5 +1,5 @@
1
1
  import type { ReactNode } from "react";
2
- import type { WidgetNode } from "../../../types/schema";
2
+ import type { WidgetNode } from "../../../types/schema.d.ts";
3
3
  import type { LayoutContext } from "../LayoutRenderer";
4
4
  interface WidgetHostProps {
5
5
  config: WidgetNode;
@@ -1,5 +1,5 @@
1
- import type { RefConfig, FilterSpecialValue } from "../../types/schema";
2
- import type { Refs } from "../../types/api";
1
+ import type { RefConfig, FilterSpecialValue } from "../../types/schema.d.ts";
2
+ import type { Refs } from "../../types/api.d.ts";
3
3
  export interface RefComboboxProps {
4
4
  /** Structured ref configuration (entity, optional lookup field, display). */
5
5
  ref: RefConfig | undefined;
@@ -1,5 +1,5 @@
1
1
  import { type FC, type SVGProps } from "react";
2
- import type { FaviconSource } from "../../../../types/schema";
2
+ import type { FaviconSource } from "../../../../types/schema.d.ts";
3
3
  type IconFC = FC<SVGProps<SVGSVGElement>>;
4
4
  export interface HostIconProps {
5
5
  /** Canonical (after-www) hostname; pass null/empty to render the globe. */
@@ -1,6 +1,6 @@
1
1
  import type { ReactElement } from "react";
2
- import type { EntityField, Entity, Screen } from "../../../types/schema";
3
- import type { RowData, Refs } from "../../../types/api";
2
+ import type { EntityField, Entity, Screen } from "../../../types/schema.d.ts";
3
+ import type { RowData, Refs } from "../../../types/api.d.ts";
4
4
  export type { RowData, Refs };
5
5
  export type CellOutput = string | number | ReactElement;
6
6
  export type CellRenderer = (value: unknown, record: RowData) => CellOutput;
@@ -1,6 +1,6 @@
1
- import type { EntityField, Entity, Screen } from "../../types/schema";
2
- import { type FieldType } from "../../types/fieldType";
3
- import type { Refs } from "../../types/api";
1
+ import type { EntityField, Entity, Screen } from "../../types/schema.d.ts";
2
+ import { type FieldType } from "../../types/fieldType.d.ts";
3
+ import type { Refs } from "../../types/api.d.ts";
4
4
  export type { Refs };
5
5
  export interface FieldRendererProps {
6
6
  field: EntityField;
@@ -1,4 +1,4 @@
1
- import type { EmbedFileVariant } from "../../embed/file-src";
1
+ import type { EmbedFileVariant } from "../../embed/file-src.d.ts";
2
2
  import type { HydratedFile } from "./types";
3
3
  export interface FocalPoint {
4
4
  x: number;
@@ -1,7 +1,7 @@
1
1
  import type { ReactNode } from "react";
2
- import type { Entity, Screen } from "../../types/schema";
3
- import type { FileFieldDef, FileFieldValue } from "../../types/files";
4
- import type { Refs } from "../fields";
2
+ import type { Entity, Screen } from "../../types/schema.d.ts";
3
+ import type { FileFieldDef, FileFieldValue } from "../../types/files.d.ts";
4
+ import type { Refs } from "../fields/index.d.ts";
5
5
  export declare function getEntityFileField(entity: Pick<Entity, "files">, fieldName: string): FileFieldDef | undefined;
6
6
  export declare function getFileFieldValue(record: Record<string, unknown>, fieldName: string): FileFieldValue;
7
7
  export declare function getSchemaFieldValue(entity: Pick<Entity, "fields" | "files">, record: Record<string, unknown>, fieldName: string): unknown;
@@ -1,5 +1,5 @@
1
- import type { Entity } from "../../types/schema";
2
- import type { FileFieldDef, FileFieldValue } from "../../types/files";
1
+ import type { Entity } from "../../types/schema.d.ts";
2
+ import type { FileFieldDef, FileFieldValue } from "../../types/files.d.ts";
3
3
  export interface FileSetItem {
4
4
  file_id: string;
5
5
  filename?: string;
@@ -1,4 +1,4 @@
1
- import type { FileFieldDef, FileFieldDisplay, FileFieldMode, FileFieldValue, HydratedFile, UploadProgress, UploadedFile } from "../../types/files";
1
+ import type { FileFieldDef, FileFieldDisplay, FileFieldMode, FileFieldValue, HydratedFile, UploadProgress, UploadedFile } from "../../types/files.d.ts";
2
2
  export type { FileFieldDef, FileFieldDisplay, FileFieldMode, FileFieldValue, HydratedFile, UploadProgress, UploadedFile, };
3
3
  export interface FileWidgetProps {
4
4
  field: FileFieldDef;
@@ -1,4 +1,4 @@
1
- import { type EmbedFileVariant } from "../../embed/file-src";
1
+ import { type EmbedFileVariant } from "../../embed/file-src.d.ts";
2
2
  /**
3
3
  * Reactively resolve a file `src` for a native `<img>` element.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { type FilterNode, type FilterValueResolver } from "../../lib/filters";
1
+ import { type FilterNode, type FilterValueResolver } from "../../lib/filters.d.ts";
2
2
  interface FilterChipsProps {
3
3
  filters: FilterNode[];
4
4
  onRemove: (field: string) => void;
@@ -1,6 +1,6 @@
1
- import { type FilterNode, type FilterOp } from "../../lib/filters";
2
- import type { RefConfig, FilterSpecialValue } from "../../types/schema";
3
- import type { Refs } from "../../types/api";
1
+ import { type FilterNode, type FilterOp } from "../../lib/filters.d.ts";
2
+ import type { RefConfig, FilterSpecialValue } from "../../types/schema.d.ts";
3
+ import type { Refs } from "../../types/api.d.ts";
4
4
  export interface FilterFieldMeta {
5
5
  code: string;
6
6
  label: string;
@@ -1,5 +1,5 @@
1
- import type { TabCloseScope } from "../../stores/tabs";
2
- import { type NavNode, type Screen } from "../../types/schema";
1
+ import type { TabCloseScope } from "../../stores/tabs.d.ts";
2
+ import { type NavNode, type Screen } from "../../types/schema.d.ts";
3
3
  export type CommandActionType = "nav" | "new" | "open" | "ai" | "ai-panel" | "theme" | "tab-close";
4
4
  export interface CommandAction {
5
5
  type: CommandActionType;
@@ -1,5 +1,5 @@
1
- import { useTabStore } from "../../stores/tabs";
2
- import { type NavNode, type Screen } from "../../types/schema";
3
- import type { Crumb } from "../chrome/Breadcrumbs";
1
+ import { useTabStore } from "../../stores/tabs.d.ts";
2
+ import { type NavNode, type Screen } from "../../types/schema.d.ts";
3
+ import type { Crumb } from "../chrome/Breadcrumbs.d.ts";
4
4
  export declare function Layout(): import("react").JSX.Element | null;
5
5
  export declare function buildCrumbs(nodes: NavNode[], screens: Record<string, Screen>, pathname: string, tabs: ReturnType<typeof useTabStore.getState>["tabs"], activeTabId: string | null, topLevelNavigate: (to: string) => void): Crumb[];