@declarion/react 0.65.1 → 0.66.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 (467) hide show
  1. package/dist-lib/api/access-expiry.js +32 -0
  2. package/dist-lib/api/agents.js +105 -0
  3. package/dist-lib/api/auth-redirect.js +30 -0
  4. package/dist-lib/api/auth.js +67 -0
  5. package/dist-lib/api/batch.js +34 -0
  6. package/dist-lib/api/client.js +241 -0
  7. package/dist-lib/api/data.js +122 -0
  8. package/dist-lib/api/entities.js +160 -0
  9. package/dist-lib/api/events.js +120 -0
  10. package/dist-lib/api/fileReferences.js +8 -0
  11. package/dist-lib/api/params.js +20 -0
  12. package/dist-lib/api/properties.js +25 -0
  13. package/dist-lib/api/request-bounds.js +28 -0
  14. package/dist-lib/api/schema.js +71 -0
  15. package/dist-lib/api/session-renewal.js +36 -0
  16. package/dist-lib/api/status.js +17 -0
  17. package/dist-lib/app.js +262 -0
  18. package/dist-lib/components/actions/ActionButton.js +116 -0
  19. package/dist-lib/{ActionDialog-C6EG-AmC.js → components/actions/ActionDialog.js} +63 -53
  20. package/dist-lib/{ActionResultDialog.impl-BATutW8J.js → components/actions/ActionResultDialog.impl.js} +53 -48
  21. package/dist-lib/components/actions/ActionResultDialog.js +12 -0
  22. package/dist-lib/components/actions/ActionRunner.js +274 -0
  23. package/dist-lib/components/actions/ObjectActionBar.js +127 -0
  24. package/dist-lib/components/actions/PropertyGridEditor.js +202 -0
  25. package/dist-lib/components/actions/ResponsiveActionBar.js +773 -0
  26. package/dist-lib/components/actions/RowActionsKebab.js +90 -0
  27. package/dist-lib/{AgentChatPanel.impl-D5y_qEex.js → components/agents/AgentChatPanel.impl.js} +314 -362
  28. package/dist-lib/components/agents/AgentChatPanel.js +12 -0
  29. package/dist-lib/components/agents/AgentConversationDrawer.js +59 -0
  30. package/dist-lib/components/agents/AgentElicitForm.js +152 -0
  31. package/dist-lib/components/agents/AgentOpenFollower.impl.js +7 -0
  32. package/dist-lib/components/agents/AgentOpenFollower.js +12 -0
  33. package/dist-lib/components/agents/AgentPicker.js +58 -0
  34. package/dist-lib/components/agents/transcript-runs.js +52 -0
  35. package/dist-lib/components/chrome/AssociationTabs.js +176 -0
  36. package/dist-lib/components/chrome/AuditMetaStrip.js +64 -0
  37. package/dist-lib/components/chrome/Breadcrumbs.js +67 -0
  38. package/dist-lib/components/chrome/HighlightsStrip.js +39 -0
  39. package/dist-lib/{PageHeader-DiwLe7CO.js → components/chrome/PageHeader.js} +19 -15
  40. package/dist-lib/{PageShell-BJz1MiTH.js → components/chrome/PageShell.js} +3 -3
  41. package/dist-lib/components/chrome/RecordHeader.js +119 -0
  42. package/dist-lib/{headerActionZone-bef-tZZ7.js → components/chrome/headerActionZone.js} +1 -1
  43. package/dist-lib/components/detail-layout/AssociatedBlock.js +1244 -0
  44. package/dist-lib/components/detail-layout/AssociatedToolbar.js +87 -0
  45. package/dist-lib/components/detail-layout/ChildrenBlock.js +80 -0
  46. package/dist-lib/components/detail-layout/ChildrenCards.js +156 -0
  47. package/dist-lib/components/detail-layout/ChildrenList.js +135 -0
  48. package/dist-lib/components/detail-layout/ChildrenTable.js +189 -0
  49. package/dist-lib/components/detail-layout/ChildrenTimeline.js +609 -0
  50. package/dist-lib/components/detail-layout/DetailAuditStrip.js +40 -0
  51. package/dist-lib/components/detail-layout/DetailHighlights.js +54 -0
  52. package/dist-lib/{DraggableChildrenTable-Dd5SeuF6.js → components/detail-layout/DraggableChildrenTable.js} +56 -53
  53. package/dist-lib/components/detail-layout/EditableChildrenTable.js +341 -0
  54. package/dist-lib/components/detail-layout/ErrorSummary.js +89 -0
  55. package/dist-lib/components/detail-layout/EvidenceBlock.js +66 -0
  56. package/dist-lib/{FieldRow-DedGIY9R.js → components/detail-layout/FieldRow.js} +8 -7
  57. package/dist-lib/components/detail-layout/FieldsBlock.js +74 -0
  58. package/dist-lib/components/detail-layout/LayoutColumn.js +16 -0
  59. package/dist-lib/components/detail-layout/LayoutRenderer.js +54 -0
  60. package/dist-lib/components/detail-layout/LayoutRow.js +83 -0
  61. package/dist-lib/components/detail-layout/LayoutTabs.js +195 -0
  62. package/dist-lib/components/detail-layout/PropertiesBlock.js +74 -0
  63. package/dist-lib/components/detail-layout/QuickAddForm.js +81 -0
  64. package/dist-lib/components/detail-layout/SectionBlock.js +48 -0
  65. package/dist-lib/components/detail-layout/StatusesBlock.js +18 -0
  66. package/dist-lib/components/detail-layout/TimelineComposer.js +205 -0
  67. package/dist-lib/components/detail-layout/blockMeta.js +27 -0
  68. package/dist-lib/components/detail-layout/useManualColumnResize.js +94 -0
  69. package/dist-lib/components/detail-layout/useQuickAdd.js +85 -0
  70. package/dist-lib/components/detail-layout/widgets/EntityScorecardWidget.js +295 -0
  71. package/dist-lib/components/detail-layout/widgets/JsonDiffWidget.js +107 -0
  72. package/dist-lib/components/detail-layout/widgets/MonacoJson.js +47 -0
  73. package/dist-lib/components/detail-layout/widgets/WidgetHost.js +36 -0
  74. package/dist-lib/components/detail-layout/widgets/builtins.js +10 -0
  75. package/dist-lib/components/detail-layout/widgets/canonicalizeJson.js +32 -0
  76. package/dist-lib/components/detail-layout/widgets/monacoBootstrap.js +16 -0
  77. package/dist-lib/components/detail-layout/widgets/registry.js +13 -0
  78. package/dist-lib/components/fields/BoolField.js +13 -0
  79. package/dist-lib/components/fields/EmailField.js +16 -0
  80. package/dist-lib/components/fields/EnumField.js +38 -0
  81. package/dist-lib/components/fields/FileReferenceField.js +60 -0
  82. package/dist-lib/components/fields/IntArrayField.js +83 -0
  83. package/dist-lib/components/fields/JsonField.js +51 -0
  84. package/dist-lib/components/fields/MultilangArrayField.js +56 -0
  85. package/dist-lib/components/fields/MultilangField.js +65 -0
  86. package/dist-lib/components/fields/MultilangTextField.js +65 -0
  87. package/dist-lib/components/fields/NumberField.js +64 -0
  88. package/dist-lib/components/fields/PasswordField.js +34 -0
  89. package/dist-lib/components/fields/PhoneField.js +84 -0
  90. package/dist-lib/components/fields/RefCombobox.js +112 -0
  91. package/dist-lib/components/fields/RefField.js +45 -0
  92. package/dist-lib/components/fields/RichTextField.js +225 -0
  93. package/dist-lib/components/fields/SecretField.js +34 -0
  94. package/dist-lib/components/fields/StringArrayField.js +165 -0
  95. package/dist-lib/components/fields/StringField.js +39 -0
  96. package/dist-lib/components/fields/StructureField.js +221 -0
  97. package/dist-lib/components/fields/TextField.js +76 -0
  98. package/dist-lib/components/fields/TimestampField.js +110 -0
  99. package/dist-lib/components/fields/UrlField.js +18 -0
  100. package/dist-lib/components/fields/cells/factories/badge.js +42 -0
  101. package/dist-lib/components/fields/cells/factories/boolPill.js +17 -0
  102. package/dist-lib/components/fields/cells/factories/code.js +11 -0
  103. package/dist-lib/components/fields/cells/factories/date.js +30 -0
  104. package/dist-lib/components/fields/cells/factories/email.js +26 -0
  105. package/dist-lib/components/fields/cells/factories/emptyCell.js +10 -0
  106. package/dist-lib/components/fields/cells/factories/fileReference.js +17 -0
  107. package/dist-lib/components/fields/cells/factories/host-icons.js +146 -0
  108. package/dist-lib/components/fields/cells/factories/json.js +61 -0
  109. package/dist-lib/components/fields/cells/factories/link.js +32 -0
  110. package/dist-lib/components/fields/cells/factories/markdown.js +31 -0
  111. package/dist-lib/components/fields/cells/factories/markdownPreview.js +81 -0
  112. package/dist-lib/components/fields/cells/factories/money.js +37 -0
  113. package/dist-lib/components/fields/cells/factories/multilangInline.js +35 -0
  114. package/dist-lib/components/fields/cells/factories/nextRun.js +46 -0
  115. package/dist-lib/components/fields/cells/factories/number.js +42 -0
  116. package/dist-lib/components/fields/cells/factories/passwordMask.js +23 -0
  117. package/dist-lib/components/fields/cells/factories/phone.js +35 -0
  118. package/dist-lib/components/fields/cells/factories/refLink.js +57 -0
  119. package/dist-lib/components/fields/cells/factories/richTextPreview.js +34 -0
  120. package/dist-lib/components/fields/cells/factories/statusPill.js +35 -0
  121. package/dist-lib/components/fields/cells/factories/tagList.js +44 -0
  122. package/dist-lib/components/fields/cells/factories/text.js +5 -0
  123. package/dist-lib/components/fields/cells/factories/timestamp.js +18 -0
  124. package/dist-lib/components/fields/cells/factories/url-helpers.js +49 -0
  125. package/dist-lib/components/fields/cells/factories/url.js +45 -0
  126. package/dist-lib/components/fields/cells/registry.js +58 -0
  127. package/dist-lib/components/fields/index.js +80 -0
  128. package/dist-lib/components/fields/langMap.js +6 -0
  129. package/dist-lib/components/fields/secretValue.js +7 -0
  130. package/dist-lib/components/file-widgets/CircleImage.js +11 -0
  131. package/dist-lib/components/file-widgets/DocumentCard.js +277 -0
  132. package/dist-lib/components/file-widgets/FileList.js +213 -0
  133. package/dist-lib/{Grid-XUHm5SDe.js → components/file-widgets/Grid.js} +45 -40
  134. package/dist-lib/components/file-widgets/GridLazy.js +15 -0
  135. package/dist-lib/components/file-widgets/ImageWidget.js +354 -0
  136. package/dist-lib/components/file-widgets/LabeledSlots.js +69 -0
  137. package/dist-lib/components/file-widgets/SquareImage.js +11 -0
  138. package/dist-lib/components/file-widgets/UnknownFileWidget.js +22 -0
  139. package/dist-lib/components/file-widgets/UploadFailureText.js +10 -0
  140. package/dist-lib/components/file-widgets/WideBanner.js +11 -0
  141. package/dist-lib/components/file-widgets/builtins.js +15 -0
  142. package/dist-lib/components/file-widgets/cropper.js +13 -0
  143. package/dist-lib/components/file-widgets/draft-scope.js +59 -0
  144. package/dist-lib/components/file-widgets/helpers.js +75 -0
  145. package/dist-lib/components/file-widgets/host.js +75 -0
  146. package/dist-lib/{payload-DioMoxMX.js → components/file-widgets/payload.js} +14 -14
  147. package/dist-lib/components/file-widgets/registry.js +13 -0
  148. package/dist-lib/components/file-widgets/upload.js +180 -0
  149. package/dist-lib/components/file-widgets/useEmbedFileSrc.js +45 -0
  150. package/dist-lib/components/file-widgets/value.js +12 -0
  151. package/dist-lib/components/filters/FilterChips.js +123 -0
  152. package/dist-lib/components/filters/FilterConditionValue.js +40 -0
  153. package/dist-lib/components/filters/FilterDrawer.js +670 -0
  154. package/dist-lib/components/filters/FilterOmittedNotice.js +14 -0
  155. package/dist-lib/components/filters/filter-op-label.js +8 -0
  156. package/dist-lib/{CommandPalette.impl-DRI5kxVY.js → components/layout/CommandPalette.impl.js} +62 -61
  157. package/dist-lib/components/layout/CommandPalette.js +12 -0
  158. package/dist-lib/{DirtyTabsCloseDialog.impl-FhAiOmEb.js → components/layout/DirtyTabsCloseDialog.impl.js} +16 -14
  159. package/dist-lib/components/layout/DirtyTabsCloseDialog.js +12 -0
  160. package/dist-lib/{ImpersonationBanner.impl--g0iYwcV.js → components/layout/ImpersonationBanner.impl.js} +4 -3
  161. package/dist-lib/components/layout/ImpersonationBanner.js +12 -0
  162. package/dist-lib/components/layout/ImpersonationFrame.js +29 -0
  163. package/dist-lib/{ImpersonationStartModal.impl-BFBN0YJe.js → components/layout/ImpersonationStartModal.impl.js} +9 -9
  164. package/dist-lib/components/layout/ImpersonationStartModal.js +12 -0
  165. package/dist-lib/components/layout/Layout.js +755 -0
  166. package/dist-lib/components/layout/Rail.js +149 -0
  167. package/dist-lib/components/layout/Sidebar.js +362 -0
  168. package/dist-lib/components/layout/TabStrip.js +321 -0
  169. package/dist-lib/components/layout/TenantChip.js +355 -0
  170. package/dist-lib/components/layout/TopBar.js +305 -0
  171. package/dist-lib/components/layout/tab-close.js +24 -0
  172. package/dist-lib/components/list/ColumnPicker.js +112 -0
  173. package/dist-lib/components/list/InlineEditCell.js +107 -0
  174. package/dist-lib/components/list/PeekFieldCell.js +143 -0
  175. package/dist-lib/components/list/QuickPeek.js +263 -0
  176. package/dist-lib/components/list/ViewSwitcher.js +156 -0
  177. package/dist-lib/components/list/peekDraftStore.js +14 -0
  178. package/dist-lib/{AdminCatalogPage.impl-B-7MLqa1.js → components/pages/AdminCatalogPage.impl.js} +53 -49
  179. package/dist-lib/components/pages/AdminCatalogPage.js +12 -0
  180. package/dist-lib/components/pages/DocumentsMenu.js +150 -0
  181. package/dist-lib/components/pages/ExportMenu.js +123 -0
  182. package/dist-lib/{NotFoundPage.impl-BoX11u-P.js → components/pages/NotFoundPage.impl.js} +6 -4
  183. package/dist-lib/components/pages/NotFoundPage.js +12 -0
  184. package/dist-lib/components/pages/RecordDocumentsPanel.js +230 -0
  185. package/dist-lib/components/pages/RecordNotesPanel.js +200 -0
  186. package/dist-lib/components/pages/RecordPanels.js +18 -0
  187. package/dist-lib/components/pages/SSOCallbackPage.impl.js +28 -0
  188. package/dist-lib/components/pages/SSOCallbackPage.js +12 -0
  189. package/dist-lib/components/pages/SmartDetailPage.impl.js +986 -0
  190. package/dist-lib/components/pages/SmartDetailPage.js +12 -0
  191. package/dist-lib/components/pages/SmartListPage.impl.js +708 -0
  192. package/dist-lib/components/pages/SmartListPage.js +12 -0
  193. package/dist-lib/components/pages/SmartRecordListPage.impl.js +818 -0
  194. package/dist-lib/components/pages/SmartRecordListPage.js +12 -0
  195. package/dist-lib/components/pages/auth/AuthShell.js +350 -0
  196. package/dist-lib/{Forgot.impl-6tL6SBlS.js → components/pages/auth/Forgot.impl.js} +13 -12
  197. package/dist-lib/components/pages/auth/Forgot.js +12 -0
  198. package/dist-lib/{Reset.impl-D0pjhS6d.js → components/pages/auth/Reset.impl.js} +17 -15
  199. package/dist-lib/components/pages/auth/Reset.js +12 -0
  200. package/dist-lib/components/pages/auth/SignIn.js +252 -0
  201. package/dist-lib/{SignUp.impl-CfEXrUeg.js → components/pages/auth/SignUp.impl.js} +31 -27
  202. package/dist-lib/components/pages/auth/SignUp.js +12 -0
  203. package/dist-lib/{TwoFA.impl-B2HtPduH.js → components/pages/auth/TwoFA.impl.js} +9 -8
  204. package/dist-lib/components/pages/auth/TwoFA.js +12 -0
  205. package/dist-lib/components/pages/auth/icons.js +56 -0
  206. package/dist-lib/components/pages/exportRequest.js +17 -0
  207. package/dist-lib/components/pages/list/DataCell.js +27 -0
  208. package/dist-lib/components/pages/list/DeleteViewDialog.js +22 -0
  209. package/dist-lib/{ListCardsBody-BEoYjSZ2.js → components/pages/list/ListCardRow.js} +47 -72
  210. package/dist-lib/components/pages/list/ListCardsBody.js +31 -0
  211. package/dist-lib/components/pages/list/ListFloatbar.js +130 -0
  212. package/dist-lib/components/pages/list/ListFooter.js +138 -0
  213. package/dist-lib/components/pages/list/ListHeader.js +120 -0
  214. package/dist-lib/components/pages/list/ListNoRows.js +72 -0
  215. package/dist-lib/components/pages/list/ListTable.js +191 -0
  216. package/dist-lib/components/pages/list/ListTableRow.js +37 -0
  217. package/dist-lib/components/pages/list/ListToolbar.js +261 -0
  218. package/dist-lib/components/pages/list/ListUrlBanner.js +45 -0
  219. package/dist-lib/components/pages/list/RowActionsCell.js +49 -0
  220. package/dist-lib/components/pages/list/RowContextMenu.js +55 -0
  221. package/dist-lib/components/pages/list/SaveViewDialog.js +111 -0
  222. package/dist-lib/{SortHeaderMenu-Co5PvhTA.js → components/pages/list/SortHeaderMenu.js} +18 -17
  223. package/dist-lib/{cardProjection-Cxlogzh8.js → components/pages/list/cardProjection.js} +3 -3
  224. package/dist-lib/components/pages/list/column-sizing.js +17 -0
  225. package/dist-lib/components/pages/list/columns.js +168 -0
  226. package/dist-lib/components/pages/list/filter-meta.js +84 -0
  227. package/dist-lib/components/pages/list/page-size.js +11 -0
  228. package/dist-lib/components/pages/list/sortable-header.js +18 -0
  229. package/dist-lib/components/pages/list/table-features.js +11 -0
  230. package/dist-lib/components/pages/list/use-filter-value-labels.js +115 -0
  231. package/dist-lib/components/pages/list/useActiveView.js +98 -0
  232. package/dist-lib/components/pages/list/useHeaderReorder.js +93 -0
  233. package/dist-lib/components/pages/list/useListColumnLayout.js +56 -0
  234. package/dist-lib/components/pages/list/useListFilterPresentation.js +34 -0
  235. package/dist-lib/components/pages/list/useListQuery.js +101 -0
  236. package/dist-lib/components/pages/list/useListRowInteraction.js +120 -0
  237. package/dist-lib/components/pages/list/useListSelection.js +53 -0
  238. package/dist-lib/components/pages/list/useListSort.js +44 -0
  239. package/dist-lib/components/pages/list/useListViews.js +148 -0
  240. package/dist-lib/components/pages/list/useRowMenu.js +106 -0
  241. package/dist-lib/components/pages/list/visible-filters.js +19 -0
  242. package/dist-lib/{Preferences.impl-Ct5xwZtT.js → components/pages/profile/Preferences.impl.js} +34 -31
  243. package/dist-lib/components/pages/profile/Preferences.js +12 -0
  244. package/dist-lib/components/pages/profile/Profile.impl.js +437 -0
  245. package/dist-lib/components/pages/profile/Profile.js +12 -0
  246. package/dist-lib/{TenantParamsPage.impl-BGpdmEZg.js → components/pages/tenant-params/TenantParamsPage.impl.js} +45 -40
  247. package/dist-lib/components/pages/tenant-params/TenantParamsPage.js +12 -0
  248. package/dist-lib/components/params/ParamsBlock.js +119 -0
  249. package/dist-lib/{param-editors-TYYU7HKK.js → components/params/param-editors.js} +32 -28
  250. package/dist-lib/components/primitives/Avatar.js +33 -0
  251. package/dist-lib/components/primitives/BoolToggle.js +35 -0
  252. package/dist-lib/components/primitives/BrandGlyph.js +38 -0
  253. package/dist-lib/components/primitives/BrandLogo.js +20 -0
  254. package/dist-lib/components/primitives/Btn.js +67 -0
  255. package/dist-lib/{Check-DAfMbQIw.js → components/primitives/Check.js} +2 -2
  256. package/dist-lib/components/primitives/Chip.js +44 -0
  257. package/dist-lib/components/primitives/ClassifiedFieldLocked.js +15 -0
  258. package/dist-lib/components/primitives/Dropdown.js +85 -0
  259. package/dist-lib/components/primitives/Fields.js +751 -0
  260. package/dist-lib/components/primitives/HoverCard.js +115 -0
  261. package/dist-lib/components/primitives/IconBtn.js +37 -0
  262. package/dist-lib/{Icons-lt-7lhYR.js → components/primitives/Icons.js} +1 -1
  263. package/dist-lib/{Kbd-CNttVu0z.js → components/primitives/Kbd.js} +2 -2
  264. package/dist-lib/components/primitives/MenuItem.js +57 -0
  265. package/dist-lib/{Pill-D-wsfRhx.js → components/primitives/Pill.js} +1 -1
  266. package/dist-lib/{RecordIdBadge-wbigZaFc.js → components/primitives/RecordIdBadge.js} +5 -5
  267. package/dist-lib/components/primitives/RowField.js +47 -0
  268. package/dist-lib/{SectionCard-BYHoHWJc.js → components/primitives/SectionCard.js} +10 -10
  269. package/dist-lib/components/primitives/Spinner.js +31 -0
  270. package/dist-lib/components/primitives/StatTile.js +108 -0
  271. package/dist-lib/components/primitives/Tooltip.js +115 -0
  272. package/dist-lib/{dataTableStyles-vwD1mVOP.js → components/primitives/dataTableStyles.js} +1 -1
  273. package/dist-lib/components/shared/BlankScreen.js +13 -0
  274. package/dist-lib/{ChangePasswordDialog.impl-5hDc0wpE.js → components/shared/ChangePasswordDialog.impl.js} +27 -22
  275. package/dist-lib/{ChangePasswordDialog-C_T_3pjl.js → components/shared/ChangePasswordDialog.js} +2 -2
  276. package/dist-lib/components/shared/ConfirmDialog.js +129 -0
  277. package/dist-lib/components/shared/ConnectionNotice.js +12 -0
  278. package/dist-lib/components/shared/CopyButton.js +25 -0
  279. package/dist-lib/components/shared/DynamicIcon.js +73 -0
  280. package/dist-lib/components/shared/EmptyState.js +56 -0
  281. package/dist-lib/components/shared/ErrorBoundary.js +96 -0
  282. package/dist-lib/components/shared/LoadingSkeleton.js +117 -0
  283. package/dist-lib/components/shared/LucideIcon.js +43 -0
  284. package/dist-lib/components/shared/Markdown.js +15 -0
  285. package/dist-lib/{MarkdownRenderer-sK2TRZS-.js → components/shared/MarkdownRenderer.js} +10 -9
  286. package/dist-lib/components/shared/RefreshControl.js +42 -0
  287. package/dist-lib/components/shared/StatusGroupsDisplay.js +123 -0
  288. package/dist-lib/components/shared/StatusStepper.js +70 -0
  289. package/dist-lib/components/shared/toast/DeclarionToast.js +308 -0
  290. package/dist-lib/components/shared/useOwnRefresh.js +19 -0
  291. package/dist-lib/declarion-react.css +1 -1
  292. package/dist-lib/embed/EmbedAuthBootstrap.js +71 -0
  293. package/dist-lib/embed/EmbedContext.js +38 -0
  294. package/dist-lib/embed/EmbedDirtyReporter.js +17 -0
  295. package/dist-lib/embed/EmbedHistoryTracker.js +17 -0
  296. package/dist-lib/embed/EmbedLocationReporter.js +26 -0
  297. package/dist-lib/embed/EmbedResizeReporter.js +25 -0
  298. package/dist-lib/embed/EmbedUnsavedGuard.js +23 -0
  299. package/dist-lib/embed/embed-dirty.js +21 -0
  300. package/dist-lib/embed/embed-history.js +17 -0
  301. package/dist-lib/embed/embed-nav-guard.js +13 -0
  302. package/dist-lib/embed/file-src.js +60 -0
  303. package/dist-lib/embed/handshake.js +37 -0
  304. package/dist-lib/embed/params.js +45 -0
  305. package/dist-lib/embed/protocol.js +26 -0
  306. package/dist-lib/embed/screen-location.js +44 -0
  307. package/dist-lib/embed/theme.js +11 -0
  308. package/dist-lib/embed/token.js +54 -0
  309. package/dist-lib/embed/useEmbedNavigate.js +65 -0
  310. package/dist-lib/embed/useGlobalLinkInterceptor.js +63 -0
  311. package/dist-lib/hooks/useActionData.js +58 -0
  312. package/dist-lib/hooks/useAgentConversation.js +311 -0
  313. package/dist-lib/hooks/useAggregate.js +18 -0
  314. package/dist-lib/hooks/useAllEntityData.js +53 -0
  315. package/dist-lib/hooks/useAssociatedData.js +37 -0
  316. package/dist-lib/hooks/useAuth.js +56 -0
  317. package/dist-lib/hooks/useBranding.js +18 -0
  318. package/dist-lib/hooks/useBrandingChrome.js +58 -0
  319. package/dist-lib/hooks/useChildrenData.js +33 -0
  320. package/dist-lib/hooks/useColumns.js +44 -0
  321. package/dist-lib/hooks/useConnectionNotice.js +35 -0
  322. package/dist-lib/{useCurrentLocation-Bq1T72AW.js → hooks/useCurrentLocation.js} +2 -2
  323. package/dist-lib/hooks/useCurrentScreen.js +20 -0
  324. package/dist-lib/hooks/useCursorEntityData.js +77 -0
  325. package/dist-lib/hooks/useDebounce.js +11 -0
  326. package/dist-lib/hooks/useEntity.js +8 -0
  327. package/dist-lib/hooks/useEntityData.js +64 -0
  328. package/dist-lib/hooks/useFileReferenceJSON.js +29 -0
  329. package/dist-lib/hooks/useFilters.js +28 -0
  330. package/dist-lib/hooks/useFollowAgentOpen.js +84 -0
  331. package/dist-lib/hooks/useImpersonation.js +40 -0
  332. package/dist-lib/hooks/useIntentPrefetch.js +43 -0
  333. package/dist-lib/hooks/useJsonSnapshot.js +8 -0
  334. package/dist-lib/hooks/useLanguage.js +21 -0
  335. package/dist-lib/hooks/useLiveObject.js +17 -0
  336. package/dist-lib/hooks/useLongPress.js +49 -0
  337. package/dist-lib/hooks/useMutations.js +70 -0
  338. package/dist-lib/{useObject-B45F96rC.js → hooks/useObject.js} +2 -2
  339. package/dist-lib/hooks/useObjectStatus.js +20 -0
  340. package/dist-lib/hooks/usePageState.js +18 -0
  341. package/dist-lib/hooks/usePageStateRuntime.js +46 -0
  342. package/dist-lib/hooks/usePageStateTtl.js +10 -0
  343. package/dist-lib/hooks/useParams.js +123 -0
  344. package/dist-lib/hooks/useProperties.js +32 -0
  345. package/dist-lib/hooks/useRealtimeThresholds.js +31 -0
  346. package/dist-lib/hooks/useRegisterScreenTab.js +28 -0
  347. package/dist-lib/hooks/useResponsiveMode.js +84 -0
  348. package/dist-lib/hooks/useSSE.js +307 -0
  349. package/dist-lib/hooks/useSchema.js +73 -0
  350. package/dist-lib/hooks/useScreen.js +8 -0
  351. package/dist-lib/hooks/useScreenBack.js +60 -0
  352. package/dist-lib/hooks/useScreenTab.js +11 -0
  353. package/dist-lib/hooks/useTabNavigate.js +82 -0
  354. package/dist-lib/hooks/useTabSearchMirror.js +19 -0
  355. package/dist-lib/{useTabTitle-KrzEo118.js → hooks/useTabTitle.js} +9 -7
  356. package/dist-lib/hooks/useText.js +15 -0
  357. package/dist-lib/hooks/useTimelineData.js +44 -0
  358. package/dist-lib/hooks/useUnsavedInput.js +18 -0
  359. package/dist-lib/hooks/useVersionWatcher.js +62 -0
  360. package/dist-lib/hooks/useViews.js +88 -0
  361. package/dist-lib/hooks/useWindowConversation.js +11 -0
  362. package/dist-lib/icons.js +5 -3
  363. package/dist-lib/index.d.ts +42 -20
  364. package/dist-lib/index.js +131 -3926
  365. package/dist-lib/lib/action-dispatch.js +7 -0
  366. package/dist-lib/lib/actions.js +279 -0
  367. package/dist-lib/lib/anchor.js +41 -0
  368. package/dist-lib/lib/brand-tokens.js +95 -0
  369. package/dist-lib/lib/branding.js +25 -0
  370. package/dist-lib/lib/canonical-url.js +17 -0
  371. package/dist-lib/lib/capabilityPrefetch.js +57 -0
  372. package/dist-lib/lib/child-config.js +111 -0
  373. package/dist-lib/lib/children-validation.js +52 -0
  374. package/dist-lib/lib/decimal-text.js +15 -0
  375. package/dist-lib/lib/display-value.js +19 -0
  376. package/dist-lib/lib/document-templates.js +6 -0
  377. package/dist-lib/lib/download.js +41 -0
  378. package/dist-lib/lib/evidence-verdict.js +23 -0
  379. package/dist-lib/lib/failure.js +9 -0
  380. package/dist-lib/lib/field-classification.js +58 -0
  381. package/dist-lib/lib/field-regions.js +13 -0
  382. package/dist-lib/lib/filter-evaluator.js +98 -0
  383. package/dist-lib/lib/filters.js +118 -0
  384. package/dist-lib/lib/format-count.js +24 -0
  385. package/dist-lib/lib/html-state.js +9 -0
  386. package/dist-lib/lib/language.js +52 -0
  387. package/dist-lib/lib/longPressGesture.js +34 -0
  388. package/dist-lib/lib/mass-edit.js +65 -0
  389. package/dist-lib/{page-inset-D_kkVwwN.js → lib/page-inset.js} +1 -1
  390. package/dist-lib/lib/phone.js +28 -0
  391. package/dist-lib/lib/query-retry.js +7 -0
  392. package/dist-lib/lib/quick-add.js +23 -0
  393. package/dist-lib/lib/realtime-query-keys.js +23 -0
  394. package/dist-lib/lib/realtime-reconcile.js +148 -0
  395. package/dist-lib/lib/realtime-resync.js +192 -0
  396. package/dist-lib/lib/record-documents-key.js +4 -0
  397. package/dist-lib/lib/ref-choices.js +6 -0
  398. package/dist-lib/lib/refetch-when-idle.js +25 -0
  399. package/dist-lib/lib/rich-text.js +46 -0
  400. package/dist-lib/lib/rowClickGesture.js +10 -0
  401. package/dist-lib/lib/safe-url.js +34 -0
  402. package/dist-lib/lib/schema-routing.js +51 -0
  403. package/dist-lib/{screen-back-BtbEp5sO.js → lib/screen-back.js} +2 -2
  404. package/dist-lib/lib/scroll-restoration.js +156 -0
  405. package/dist-lib/lib/size-value.js +22 -0
  406. package/dist-lib/lib/sort.js +59 -0
  407. package/dist-lib/lib/timestamp.js +97 -0
  408. package/dist-lib/lib/toast.js +78 -0
  409. package/dist-lib/lib/ui-actions.js +81 -0
  410. package/dist-lib/{utils-D_QDpB8_.js → lib/utils.js} +1 -1
  411. package/dist-lib/lib/variants.js +63 -0
  412. package/dist-lib/lib/versionTracker.js +102 -0
  413. package/dist-lib/lib/viewport-category.js +12 -0
  414. package/dist-lib/{window-election-CHIvIZwx.js → lib/window-election.js} +1 -1
  415. package/dist-lib/stores/auth.js +84 -0
  416. package/dist-lib/stores/icon-registry.js +24 -0
  417. package/dist-lib/stores/list-layout.js +178 -0
  418. package/dist-lib/{page-state-eA6J_KIR.js → stores/page-state.js} +1 -1
  419. package/dist-lib/stores/preferences.js +126 -0
  420. package/dist-lib/stores/realtime.js +115 -0
  421. package/dist-lib/stores/screen-registry.js +10 -0
  422. package/dist-lib/stores/tabs.js +220 -0
  423. package/dist-lib/test/seed-schema.js +8 -0
  424. package/dist-lib/testing.d.ts +1 -1
  425. package/dist-lib/testing.js +80 -76
  426. package/dist-lib/types/api.js +48 -0
  427. package/dist-lib/types/fieldType.js +4 -0
  428. package/dist-lib/types/ordmap.js +50 -0
  429. package/dist-lib/types/schema.js +173 -0
  430. package/dist-lib/{useResponsiveMode-DIR1bZfo.d.ts → useResponsiveMode-DmrpMbZX.d.ts} +44 -16
  431. package/package.json +13 -12
  432. package/dist-lib/ActionRunner-DdBFhqGe.js +0 -1440
  433. package/dist-lib/AgentOpenFollower.impl-BAs_wGEZ.js +0 -81
  434. package/dist-lib/AssociatedBlock-BOoPLOjw.js +0 -1515
  435. package/dist-lib/AuthShell-C8aVwHS7.js +0 -361
  436. package/dist-lib/BlankScreen-DVc7fh8C.js +0 -61
  437. package/dist-lib/CopyButton-DRIT_f0k.js +0 -119
  438. package/dist-lib/DynamicIcon-DuBSz6TZ.js +0 -133
  439. package/dist-lib/FilterChips-Cv1tlXyo.js +0 -1031
  440. package/dist-lib/LayoutRenderer-d-tXYPze.js +0 -3239
  441. package/dist-lib/MenuItem-CfkVXPvC.js +0 -140
  442. package/dist-lib/MonacoJson-BG3S3GHX.js +0 -60
  443. package/dist-lib/Profile.impl-Cypk27ah.js +0 -527
  444. package/dist-lib/PropertyGridEditor-XrP6TZ5s.js +0 -4378
  445. package/dist-lib/RecordHeader-BfQ0_4wq.js +0 -217
  446. package/dist-lib/RefreshControl-CRdWPoF5.js +0 -195
  447. package/dist-lib/SSOCallbackPage.impl-Cfi2pQ59.js +0 -31
  448. package/dist-lib/SmartDetailPage.impl-BiIX0n7K.js +0 -1609
  449. package/dist-lib/SmartListPage.impl-Cu83Gv_G.js +0 -2818
  450. package/dist-lib/SmartRecordListPage.impl-DR6lq7HA.js +0 -795
  451. package/dist-lib/format-count-lyB4CPen.js +0 -943
  452. package/dist-lib/peekDraftStore-CaimrOhW.js +0 -200
  453. package/dist-lib/registry-CGe5kCXN.js +0 -119
  454. package/dist-lib/use-filter-value-labels-D3YDgUzg.js +0 -413
  455. package/dist-lib/useAgentConversation-rru-7hnF.js +0 -612
  456. package/dist-lib/useBranding-zcxEic2k.js +0 -41
  457. package/dist-lib/useBrandingChrome-bxaR3G1R.js +0 -170
  458. package/dist-lib/useCurrentScreen-BZOHBGQZ.js +0 -2522
  459. package/dist-lib/useImpersonation-DBIRRR70.js +0 -35
  460. package/dist-lib/useOwnRefresh-DJjaje52.js +0 -435
  461. package/dist-lib/useParams-BFLJi4n3.js +0 -133
  462. package/dist-lib/useProperties-B7opZ-iy.js +0 -81
  463. package/dist-lib/useScreenBack-DENlz844.js +0 -71
  464. package/dist-lib/useTabNavigate-CUqOmcMj.js +0 -78
  465. package/dist-lib/value-BuQVYx52.js +0 -194
  466. package/dist-lib/variants-vUtfBbE6.js +0 -1961
  467. /package/dist-lib/{JsonEditor-Dz1PQHC8.js → components/fields/JsonEditor.js} +0 -0
@@ -1,795 +0,0 @@
1
- import { Ft as e, Pt as t, g as n, in as r, on as i, sn as a, wn as o, wt as s, xt as c, yn as l } from "./useCurrentScreen-BZOHBGQZ.js";
2
- import { t as u } from "./Icons-lt-7lhYR.js";
3
- import { n as d, r as f } from "./CopyButton-DRIT_f0k.js";
4
- import { A as p, Q as m, X as ee, _ as te, h } from "./PropertyGridEditor-XrP6TZ5s.js";
5
- import { t as ne } from "./useScreenBack-DENlz844.js";
6
- import { t as re } from "./page-inset-D_kkVwwN.js";
7
- import { g } from "./ActionRunner-DdBFhqGe.js";
8
- import { c as ie, n as _ } from "./useOwnRefresh-DJjaje52.js";
9
- import { n as v } from "./useObject-B45F96rC.js";
10
- import { f as y, g as b, h as x, p as S, u as ae } from "./variants-vUtfBbE6.js";
11
- import { n as oe, t as C } from "./payload-DioMoxMX.js";
12
- import { n as w, r as T } from "./useProperties-B7opZ-iy.js";
13
- import { _ as se, a as ce, g as E, m as D, n as O, o as k, t as A, u as j } from "./FilterChips-Cv1tlXyo.js";
14
- import { t as le } from "./LayoutRenderer-d-tXYPze.js";
15
- import { n as M, t as ue } from "./cardProjection-Cxlogzh8.js";
16
- import { a as de, i as fe, o as pe, r as me, t as he } from "./use-filter-value-labels-D3YDgUzg.js";
17
- import { useCallback as N, useEffect as P, useMemo as F, useRef as I, useState as L } from "react";
18
- import { Fragment as R, jsx as z, jsxs as B } from "react/jsx-runtime";
19
- import { useSearchParams as ge } from "react-router";
20
- //#region src/components/pages/SmartRecordListPage.impl.tsx
21
- var _e = 200, ve = "items:";
22
- function V({ screenCode: t }) {
23
- let r = s(), i = s("errors"), [a, l] = ge(), { data: m, refetch: te } = e(), h = c(), [ie, _] = L(!1), v = m?.screens[t], y = v?.entity ? m?.entities[v.entity] : void 0, b = v?.entity;
24
- k(v, y, a.toString()), ce(v?.route);
25
- let x = ne(), S = a.get("selected") ?? null, ae = a.get("search") ?? "", oe = p(ae, 300), C = a.get("sort") ?? n(y, v?.sort_default) ?? "", w = F(() => D(a), [a]), { visibleFilterState: T, filterFieldMeta: le, allFilterFieldMeta: ve, filterFieldName: V } = pe(v, y, m?.entities, w.filters), U = T.filters, W = N((e) => {
26
- l((t) => {
27
- let n = new URLSearchParams(t);
28
- return se(e, n), n;
29
- }, { replace: !0 });
30
- }, [l]), G = F(() => v?.columns ?? y?.fields.names().filter((e) => !y.fields.get(e)?.primary && !y.fields.get(e)?.auto && y.fields.get(e)?.display?.is_listable !== !1).slice(0, 4) ?? [], [v?.columns, y]), K = F(() => {
31
- let e = v?.responsive?.[h.category]?.presentation;
32
- return h.category === "phone" ? "drilldown" : e === "split" || e === "drilldown" || e === "stacked" ? e : "split";
33
- }, [v?.responsive, h.category]), q = F(() => {
34
- let e = v?.responsive?.[h.category];
35
- return e?.list?.presentation === "table" || e?.list?.presentation === "cards" ? e.list.presentation : e?.presentation === "table" || e?.presentation === "cards" ? e.presentation : h.category === "phone" ? "cards" : "table";
36
- }, [v?.responsive, h.category]), be = v?.responsive?.[h.category]?.layout?.related_records, xe = F(() => ue({
37
- entity: y,
38
- screen: v
39
- }), [y, v]), Se = F(() => M({
40
- entity: y,
41
- screen: v,
42
- presentation: q,
43
- visibleColumns: G,
44
- card: xe,
45
- sort: C
46
- }), [
47
- y,
48
- v,
49
- q,
50
- G,
51
- xe,
52
- C
53
- ]), J = fe({
54
- entity: y,
55
- entityCode: b,
56
- screen: v,
57
- screenCode: t,
58
- page: 1,
59
- perPage: _e,
60
- sortForRequest: g(C),
61
- debouncedSearch: oe,
62
- filters: U,
63
- includeDeleted: !1,
64
- expand: Se.expandFields,
65
- select: Se.selectFields,
66
- isHeld: !y,
67
- retryHeld: () => {
68
- te();
69
- },
70
- runCountQuery: !1,
71
- urlKey: `${b ?? ""}|${a.toString()}`
72
- }), Ce = J.rows, we = J.refs, Te = J.isLoading, { labelFor: Ee, refs: De } = he(ve, U, we, m?.entities), Oe = F(() => y?.fields.names().find((e) => y.fields.get(e)?.primary) ?? "id", [y]), ke = N((e, t) => {
73
- l((t) => {
74
- let n = new URLSearchParams(t);
75
- return e ? n.set("selected", e) : n.delete("selected"), n;
76
- }, { replace: t?.replace ?? !0 });
77
- }, [l]), Ae = N((e) => {
78
- l((t) => {
79
- let n = new URLSearchParams(t);
80
- return e ? n.set("search", e) : n.delete("search"), n;
81
- }, { replace: !0 });
82
- }, [l]), Y = (v?.list_resizable ?? !1) && K === "split" && h.category !== "phone" && !h.touch, X = I(null), [Z, Q] = L(null), je = I(!1), $ = v?.list_width;
83
- P(() => {
84
- Y && $?.endsWith("%") && Q(null);
85
- }, [
86
- Y,
87
- $,
88
- h.width,
89
- h.height
90
- ]), P(() => {
91
- if (!Y || Z !== null) return;
92
- let e = X.current;
93
- if (e) {
94
- if ($ && $.endsWith("%")) {
95
- let t = parseFloat($) / 100;
96
- Q(Math.round(e.getBoundingClientRect().width * t));
97
- } else Q($ && parseInt($, 10) || 320);
98
- }
99
- }, [
100
- Y,
101
- $,
102
- Z,
103
- y
104
- ]);
105
- let Me = I(null);
106
- P(() => () => {
107
- Me.current?.();
108
- }, []);
109
- let Ne = N((e) => {
110
- e.preventDefault(), je.current = !0;
111
- let t = e.clientX, n = Z ?? 320, r = (e) => {
112
- if (!je.current) return;
113
- let r = (X.current?.getBoundingClientRect().width ?? window.innerWidth) - 300, i = Math.max(200, Math.min(r, n + e.clientX - t));
114
- Q(i);
115
- }, i = () => {
116
- je.current = !1, document.removeEventListener("mousemove", r), document.removeEventListener("mouseup", i), document.body.style.cursor = "", document.body.style.userSelect = "", Me.current = null;
117
- };
118
- document.body.style.cursor = "col-resize", document.body.style.userSelect = "none", document.addEventListener("mousemove", r), document.addEventListener("mouseup", i), Me.current = i;
119
- }, [Z]);
120
- if (!m || !v || !y) return null;
121
- let Pe = j(U), Fe = K === "split" || K === "stacked" || !S, Ie = K === "split" || K === "stacked" || !!S, Le = K !== "split" && S ? () => ke(null, { replace: !0 }) : void 0, Re = K === "split" ? Y && Z !== null ? Z : v.list_width ?? "320px" : "100%";
122
- return /* @__PURE__ */ B("div", {
123
- ref: X,
124
- "data-record-list-presentation": K,
125
- style: {
126
- display: "flex",
127
- flexDirection: K === "stacked" ? "column" : "row",
128
- height: "100%",
129
- minWidth: 0,
130
- overflow: "hidden"
131
- },
132
- children: [
133
- Fe && /* @__PURE__ */ B("div", {
134
- "data-testid": "record-list-panel",
135
- style: {
136
- flex: K === "split" ? "none" : "1 1 auto",
137
- display: "flex",
138
- flexDirection: "column",
139
- overflow: "hidden",
140
- borderRight: K === "split" && !Y ? "1px solid var(--divider)" : "none",
141
- borderBottom: K === "stacked" ? "1px solid var(--divider)" : "none",
142
- width: Re,
143
- minWidth: 0,
144
- height: K === "stacked" ? "50%" : "100%"
145
- },
146
- children: [/* @__PURE__ */ B("div", {
147
- style: {
148
- paddingTop: 12,
149
- paddingBottom: 12,
150
- ...re(12),
151
- display: "flex",
152
- flexDirection: "column",
153
- gap: 8,
154
- borderBottom: "1px solid var(--divider)"
155
- },
156
- children: [
157
- x.hasOriginBack && /* @__PURE__ */ B("div", {
158
- style: {
159
- display: "flex",
160
- alignItems: "center",
161
- gap: 8
162
- },
163
- children: [/* @__PURE__ */ z(d, {
164
- icon: /* @__PURE__ */ z(u.back, { size: 14 }),
165
- title: r("list.header.back", "Back"),
166
- onClick: x.goBack
167
- }), /* @__PURE__ */ z("span", {
168
- style: {
169
- fontSize: 12.5,
170
- fontWeight: 600,
171
- color: "var(--text)"
172
- },
173
- children: r(v.display?.name) || r(y.display.name_plural)
174
- })]
175
- }),
176
- /* @__PURE__ */ z(ee, {
177
- value: ae,
178
- onChange: Ae,
179
- placeholder: r("list.toolbar.search_placeholder", "Search {name}…", { name: r(y.display.name_plural) }),
180
- prefix: /* @__PURE__ */ z(u.search, { size: 13 })
181
- }),
182
- w.error && /* @__PURE__ */ B("div", {
183
- role: "alert",
184
- "data-testid": "record-list-filter-url-error",
185
- style: {
186
- padding: "7px 9px",
187
- border: "1px solid var(--danger)",
188
- borderRadius: 6,
189
- color: "var(--danger)",
190
- fontSize: 11.5
191
- },
192
- children: [
193
- i(w.errorCode ?? "", w.error),
194
- " ",
195
- r("list.filters.invalid_suffix", "Showing this list without URL filters.")
196
- ]
197
- }),
198
- /* @__PURE__ */ B(f, {
199
- size: "xs",
200
- icon: /* @__PURE__ */ z(u.filter, { size: 12 }),
201
- onClick: () => _(!0),
202
- children: [r("filter.drawer.title", "Filters"), Pe > 0 ? ` (${Pe})` : ""]
203
- }),
204
- T.omitted && /* @__PURE__ */ z(de, {}),
205
- /* @__PURE__ */ z(A, {
206
- filters: U,
207
- resolveValue: Ee,
208
- fieldLabel: V,
209
- onRemoveAtPath: (e) => W(E(U, e)),
210
- onClearAll: () => W([]),
211
- onChipClick: () => _(!0)
212
- }),
213
- /* @__PURE__ */ z("div", {
214
- style: {
215
- display: "flex",
216
- alignItems: "center",
217
- justifyContent: "space-between",
218
- fontSize: 11,
219
- color: "var(--text-3)"
220
- },
221
- children: /* @__PURE__ */ z("span", { children: Te ? r("list.records.loading", "Loading…") : J.isError ? i("list.rows_unreadable", "The records could not be loaded.") : r("list.records.count", "{count} {name}", {
222
- count: Ce.length,
223
- name: r(y.display.name_plural)
224
- }) })
225
- })
226
- ]
227
- }), /* @__PURE__ */ z("div", {
228
- style: {
229
- flex: 1,
230
- overflowY: "auto",
231
- padding: q === "cards" ? 10 : 0,
232
- display: q === "cards" ? "flex" : "block",
233
- flexDirection: "column",
234
- gap: q === "cards" ? 10 : void 0
235
- },
236
- children: Te ? /* @__PURE__ */ z("div", {
237
- style: {
238
- padding: 12,
239
- display: "flex",
240
- flexDirection: "column",
241
- gap: 6
242
- },
243
- children: Array.from({ length: 8 }).map((e, t) => /* @__PURE__ */ z("div", { style: {
244
- height: 48,
245
- borderRadius: 6,
246
- background: "var(--surface-3)"
247
- } }, t))
248
- }) : J.isError ? /* @__PURE__ */ B("div", {
249
- role: "alert",
250
- style: {
251
- padding: 16,
252
- color: "var(--text-2)"
253
- },
254
- children: [me(r, i, y, J.error), /* @__PURE__ */ z(f, {
255
- size: "xs",
256
- onClick: () => {
257
- J.retry();
258
- },
259
- children: r("list.rows.retry", "Retry")
260
- })]
261
- }) : Ce.length === 0 ? /* @__PURE__ */ z("div", {
262
- style: {
263
- padding: 28,
264
- textAlign: "center",
265
- fontSize: 12.5,
266
- color: "var(--text-3)"
267
- },
268
- children: r("list.records.none", "No records found")
269
- }) : /* @__PURE__ */ B(R, { children: [Ce.map((e) => {
270
- let t = o(e[Oe]);
271
- return /* @__PURE__ */ z(H, {
272
- record: e,
273
- entity: y,
274
- columns: G,
275
- card: xe,
276
- presentation: q,
277
- refs: we,
278
- isSelected: t === S,
279
- onClick: () => ke(t, { replace: K === "split" })
280
- }, t);
281
- }), J.isCursor && J.hasMorePages && /* @__PURE__ */ z("button", {
282
- type: "button",
283
- "data-testid": "record-list-load-more",
284
- onClick: J.fetchNextPage,
285
- disabled: J.isFetchingNextPage,
286
- style: {
287
- width: "100%",
288
- padding: "8px 12px",
289
- fontSize: 12,
290
- background: "transparent",
291
- border: "none",
292
- borderTop: "1px solid var(--divider)",
293
- color: "var(--text-2)",
294
- cursor: J.isFetchingNextPage ? "default" : "pointer"
295
- },
296
- children: J.isFetchingNextPage ? r("list.records.loading", "Loading…") : r("list.footer.load_more", "Load more")
297
- })] })
298
- })]
299
- }),
300
- Y && /* @__PURE__ */ z("div", {
301
- "data-testid": "record-list-resize-handle",
302
- onMouseDown: Ne,
303
- style: {
304
- flex: "none",
305
- width: 1,
306
- cursor: "col-resize",
307
- background: "var(--divider)",
308
- transition: "background-color .12s"
309
- },
310
- onMouseEnter: (e) => e.currentTarget.style.background = "var(--border-strong)",
311
- onMouseLeave: (e) => e.currentTarget.style.background = "var(--divider)"
312
- }),
313
- Ie && /* @__PURE__ */ B("div", {
314
- "data-testid": "record-detail-panel",
315
- style: {
316
- flex: 1,
317
- display: "flex",
318
- flexDirection: "column",
319
- minWidth: 0,
320
- overflow: "hidden",
321
- height: K === "stacked" ? "50%" : "100%"
322
- },
323
- children: [!Fe && T.omitted && /* @__PURE__ */ z(de, { className: "p-4" }), /* @__PURE__ */ z("div", {
324
- style: {
325
- flex: 1,
326
- minHeight: 0
327
- },
328
- children: S ? /* @__PURE__ */ z(ye, {
329
- entityCode: b,
330
- recordId: S,
331
- items: v.items,
332
- schema: m,
333
- entity: y,
334
- onBackToList: Le,
335
- onOpenFilters: Fe ? void 0 : () => _(!0),
336
- relatedRecordsPresentation: be
337
- }, S) : /* @__PURE__ */ z("div", {
338
- style: {
339
- display: "flex",
340
- alignItems: "center",
341
- justifyContent: "center",
342
- height: "100%",
343
- color: "var(--text-3)"
344
- },
345
- children: /* @__PURE__ */ z("p", {
346
- style: { fontSize: 12.5 },
347
- children: r("list.detail.select_prompt", "Select a {name} to view details", { name: r(y.display.name) })
348
- })
349
- })
350
- })]
351
- }),
352
- /* @__PURE__ */ z(O, {
353
- open: ie,
354
- onClose: () => _(!1),
355
- filters: U,
356
- onApply: W,
357
- availableFields: le,
358
- allFields: ve,
359
- fieldLabel: V,
360
- resolveValue: Ee,
361
- defaultFilters: v.default_filters,
362
- refs: De
363
- })
364
- ]
365
- });
366
- }
367
- function H({ record: e, entity: t, columns: n, card: r, presentation: i, refs: a, isSelected: o, onClick: c }) {
368
- let l = s();
369
- if (i === "cards") {
370
- let n = r.badgeFields.filter((n) => x(t, e, n)), i = r.bodyFields.filter((n) => x(t, e, n)), s = r.metaFields.filter((n) => x(t, e, n));
371
- return /* @__PURE__ */ B("button", {
372
- type: "button",
373
- "data-testid": "record-list-card",
374
- "aria-current": o ? "true" : void 0,
375
- onClick: c,
376
- style: {
377
- width: "100%",
378
- textAlign: "left",
379
- padding: 12,
380
- border: "1px solid var(--border)",
381
- borderRadius: 8,
382
- background: o ? "var(--row-selected-bg)" : "var(--surface)",
383
- color: "var(--text)",
384
- cursor: "pointer",
385
- display: "flex",
386
- flexDirection: "column",
387
- gap: 8,
388
- boxShadow: o ? "inset 3px 0 0 var(--accent)" : "none"
389
- },
390
- children: [
391
- /* @__PURE__ */ z(U, {
392
- entity: t,
393
- record: e,
394
- field: r.titleField,
395
- refs: a
396
- }),
397
- r.subtitleField && /* @__PURE__ */ z("div", {
398
- style: {
399
- fontSize: 12,
400
- color: "var(--text-3)",
401
- overflowWrap: "anywhere"
402
- },
403
- children: S({
404
- entity: t,
405
- fieldName: r.subtitleField,
406
- record: e,
407
- mode: "display",
408
- refs: a,
409
- t: l
410
- })
411
- }),
412
- n.length > 0 && /* @__PURE__ */ z("div", {
413
- style: {
414
- display: "flex",
415
- flexWrap: "wrap",
416
- gap: 6
417
- },
418
- children: n.map((n) => /* @__PURE__ */ z("span", {
419
- style: {
420
- border: "1px solid var(--border)",
421
- borderRadius: 999,
422
- padding: "2px 7px",
423
- fontSize: 11,
424
- color: "var(--text-2)",
425
- maxWidth: "100%",
426
- overflowWrap: "anywhere"
427
- },
428
- children: S({
429
- entity: t,
430
- fieldName: n,
431
- record: e,
432
- mode: "display",
433
- refs: a,
434
- t: l
435
- })
436
- }, n))
437
- }),
438
- i.length > 0 && /* @__PURE__ */ z("dl", {
439
- style: {
440
- display: "grid",
441
- gridTemplateColumns: "minmax(72px, max-content) minmax(0, 1fr)",
442
- gap: "5px 10px",
443
- margin: 0
444
- },
445
- children: i.map((n) => /* @__PURE__ */ z(W, {
446
- entity: t,
447
- record: e,
448
- fieldName: n,
449
- refs: a
450
- }, n))
451
- }),
452
- s.length > 0 && /* @__PURE__ */ z("div", {
453
- style: {
454
- display: "flex",
455
- flexWrap: "wrap",
456
- gap: 8,
457
- fontSize: 11,
458
- color: "var(--text-3)"
459
- },
460
- children: s.map((n) => /* @__PURE__ */ z("span", {
461
- style: {
462
- minWidth: 0,
463
- overflowWrap: "anywhere"
464
- },
465
- children: S({
466
- entity: t,
467
- fieldName: n,
468
- record: e,
469
- mode: "display",
470
- refs: a,
471
- t: l
472
- })
473
- }, n))
474
- })
475
- ]
476
- });
477
- }
478
- let u = n[0], d = n[1], f = n.slice(2, 4);
479
- return /* @__PURE__ */ B("button", {
480
- onClick: c,
481
- style: {
482
- width: "100%",
483
- textAlign: "left",
484
- padding: "10px 12px",
485
- borderBottom: "1px solid var(--divider)",
486
- background: o ? "var(--row-selected-bg)" : "transparent",
487
- borderLeft: o ? "2px solid var(--accent)" : "2px solid transparent",
488
- cursor: "pointer",
489
- transition: "background-color .12s",
490
- display: "flex",
491
- flexDirection: "column",
492
- gap: 2,
493
- border: "1px solid transparent",
494
- borderBottomColor: "var(--divider)"
495
- },
496
- onMouseEnter: (e) => {
497
- o || (e.currentTarget.style.background = "var(--surface-3)");
498
- },
499
- onMouseLeave: (e) => {
500
- o || (e.currentTarget.style.background = "transparent");
501
- },
502
- children: [u && /* @__PURE__ */ z("div", {
503
- style: {
504
- fontSize: 12.5,
505
- fontWeight: 500,
506
- overflow: "hidden",
507
- textOverflow: "ellipsis",
508
- whiteSpace: "nowrap",
509
- color: "var(--text)"
510
- },
511
- children: S({
512
- entity: t,
513
- fieldName: u,
514
- record: e,
515
- mode: "display",
516
- refs: a,
517
- t: l
518
- })
519
- }), /* @__PURE__ */ B("div", {
520
- style: {
521
- display: "flex",
522
- alignItems: "center",
523
- gap: 6
524
- },
525
- children: [d && /* @__PURE__ */ z("div", {
526
- style: {
527
- fontSize: 11,
528
- color: "var(--text-3)",
529
- flex: 1,
530
- overflow: "hidden",
531
- textOverflow: "ellipsis",
532
- whiteSpace: "nowrap"
533
- },
534
- children: S({
535
- entity: t,
536
- fieldName: d,
537
- record: e,
538
- mode: "display",
539
- refs: a,
540
- t: l
541
- })
542
- }), /* @__PURE__ */ z("div", {
543
- style: {
544
- display: "flex",
545
- alignItems: "center",
546
- gap: 4,
547
- flexShrink: 0
548
- },
549
- children: f.map((n) => y(t, e, n) == null ? null : /* @__PURE__ */ z("div", {
550
- style: { fontSize: 11 },
551
- children: S({
552
- entity: t,
553
- fieldName: n,
554
- record: e,
555
- mode: "display",
556
- refs: a,
557
- t: l
558
- })
559
- }, n))
560
- })]
561
- })]
562
- });
563
- }
564
- function U({ entity: e, record: t, field: n, refs: r }) {
565
- let i = s(), o = a(i, t, e), c = n ? S({
566
- entity: e,
567
- fieldName: n,
568
- record: t,
569
- mode: "display",
570
- refs: r,
571
- t: i
572
- }) : o;
573
- return /* @__PURE__ */ z("div", {
574
- style: {
575
- fontSize: 13.5,
576
- fontWeight: 600,
577
- color: "var(--text)",
578
- overflowWrap: "anywhere"
579
- },
580
- children: c || i(e.display.name)
581
- });
582
- }
583
- function W({ entity: e, record: t, fieldName: n, refs: r }) {
584
- let a = s(), o = y(e, t, n);
585
- if (o == null || o === "") return null;
586
- let c = e.fields.get(n);
587
- return c ? /* @__PURE__ */ B(R, { children: [/* @__PURE__ */ z("dt", {
588
- style: {
589
- color: "var(--text-3)",
590
- fontSize: 11.5,
591
- minWidth: 0,
592
- overflowWrap: "anywhere"
593
- },
594
- children: i(a, c, n)
595
- }), /* @__PURE__ */ z("dd", {
596
- style: {
597
- margin: 0,
598
- color: "var(--text)",
599
- fontSize: 12,
600
- minWidth: 0,
601
- overflowWrap: "anywhere"
602
- },
603
- children: S({
604
- entity: e,
605
- fieldName: n,
606
- record: t,
607
- mode: "display",
608
- refs: r,
609
- t: a
610
- })
611
- })] }) : null;
612
- }
613
- function ye({ entityCode: e, recordId: t, items: n, schema: r, entity: i, onBackToList: a, onOpenFilters: o, relatedRecordsPresentation: s }) {
614
- return /* @__PURE__ */ z(h, { children: /* @__PURE__ */ z(G, {
615
- entityCode: e,
616
- recordId: t,
617
- items: n,
618
- schema: r,
619
- entity: i,
620
- onBackToList: a,
621
- onOpenFilters: o,
622
- relatedRecordsPresentation: s
623
- }) });
624
- }
625
- function G({ entityCode: e, recordId: n, items: i, schema: c, entity: p, onBackToList: ee, onOpenFilters: h, relatedRecordsPresentation: ne }) {
626
- let g = s(), x = r(p, "update"), S = F(() => n ? l(p, n) : void 0, [n, p]), { data: se, isLoading: ce } = v(e, S), E = ie(e), D = te(), [O, k] = L(!1), [A, j] = L({}), M = se?.data, ue = M?.$statuses, de = M?.$properties, fe = T(e, n), pe = w(e, n), me = F(() => {
627
- let e = /* @__PURE__ */ new Set();
628
- for (let [t, n] of p.fields) !n.auto && !n.primary && e.add(t);
629
- for (let [t] of p.files ?? []) e.add(t);
630
- return e;
631
- }, [p]), he = N(() => {
632
- if (M) {
633
- let e = {};
634
- me.forEach((t) => {
635
- let n = y(p, M, t);
636
- e[t] = ae(p, t) ? n ?? null : n ?? "";
637
- }), j(e);
638
- }
639
- k(!0);
640
- }, [
641
- M,
642
- me,
643
- p
644
- ]), P = N(async () => {
645
- await D.flushAllDrafts(), k(!1), j({});
646
- }, [D]), I = N(() => {
647
- let e = {}, t = C({
648
- entity: p,
649
- formData: A,
650
- record: M,
651
- isNew: !1
652
- }), r = oe(t);
653
- for (let [t, n] of Object.entries(A)) p.files?.has(t) || (e[t] = b(p, t, n));
654
- Object.keys(t).length > 0 && (e.$files = t), Object.keys(e).length === 0 ? (k(!1), j({})) : E.mutate({
655
- pkValues: n,
656
- data: e
657
- }, { onSuccess: () => {
658
- r.forEach((e) => D.markCommitted(e)), k(!1), j({});
659
- } });
660
- }, [
661
- D,
662
- E,
663
- n,
664
- p,
665
- A,
666
- M
667
- ]), ge = N((e, t) => {
668
- j((n) => ({
669
- ...n,
670
- [e]: t
671
- }));
672
- }, []);
673
- if (ce) return /* @__PURE__ */ z(_, {});
674
- if (!M) return null;
675
- let _e = a(g, M, p), V = p.display?.display_field, H = _e ? void 0 : V ? M[V] : M[p.fields.names()[0]], U = _e || (H != null && typeof H != "object" ? o(H) : g(p.display.name)), W = M?.$refs, ye = {
676
- schema: c,
677
- entity: p,
678
- entityCode: e,
679
- recordId: n,
680
- record: O ? {
681
- ...M,
682
- ...A
683
- } : M,
684
- isNew: !1,
685
- mode: O ? "edit" : "display",
686
- onFieldChange: O ? ge : void 0,
687
- refs: W,
688
- objectProperties: de ?? void 0,
689
- onSetProperty: x ? (e, t) => pe.mutate({
690
- propertyCode: e,
691
- value: t
692
- }) : void 0,
693
- isPropertyPending: pe.isPending,
694
- objectStatuses: ue ?? void 0,
695
- onSetStatus: x ? (e, t) => fe.mutate({
696
- groupCode: e,
697
- statusCode: t
698
- }) : void 0,
699
- isStatusPending: fe.isPending,
700
- relatedRecordsPresentation: ne
701
- };
702
- return /* @__PURE__ */ B("div", {
703
- style: {
704
- display: "flex",
705
- flexDirection: "column",
706
- height: "100%"
707
- },
708
- children: [/* @__PURE__ */ B("div", {
709
- style: {
710
- display: "flex",
711
- alignItems: "center",
712
- justifyContent: "space-between",
713
- paddingTop: 10,
714
- paddingBottom: 10,
715
- ...re(16),
716
- borderBottom: "1px solid var(--divider)",
717
- position: "sticky",
718
- top: 0,
719
- background: "var(--surface)",
720
- zIndex: 10
721
- },
722
- children: [/* @__PURE__ */ z("h2", {
723
- style: {
724
- margin: 0,
725
- fontSize: 13,
726
- fontWeight: 600,
727
- overflow: "hidden",
728
- textOverflow: "ellipsis",
729
- whiteSpace: "nowrap",
730
- color: "var(--text)"
731
- },
732
- children: U
733
- }), /* @__PURE__ */ B("div", {
734
- style: {
735
- display: "flex",
736
- alignItems: "center",
737
- gap: 6
738
- },
739
- children: [
740
- ee && /* @__PURE__ */ z(d, {
741
- icon: /* @__PURE__ */ z(u.back, { size: 14 }),
742
- title: g("list.detail.back_to_list", "Back to list"),
743
- onClick: ee
744
- }),
745
- h && /* @__PURE__ */ z(d, {
746
- icon: /* @__PURE__ */ z(u.filter, { size: 14 }),
747
- title: g("filter.drawer.title", "Filters"),
748
- onClick: h
749
- }),
750
- x && (O ? /* @__PURE__ */ B(R, { children: [/* @__PURE__ */ z(f, {
751
- size: "xs",
752
- icon: /* @__PURE__ */ z(u.x, { size: 12 }),
753
- onClick: P,
754
- children: g("dialog.cancel", "Cancel")
755
- }), /* @__PURE__ */ z(f, {
756
- kind: "primary",
757
- size: "xs",
758
- icon: E.isPending ? /* @__PURE__ */ z(m, { size: 12 }) : /* @__PURE__ */ z(u.save, { size: 12 }),
759
- onClick: I,
760
- disabled: E.isPending,
761
- children: E.isPending ? g("dialog.saving", "Saving…") : g("dialog.save", "Save")
762
- })] }) : /* @__PURE__ */ z(f, {
763
- size: "xs",
764
- icon: /* @__PURE__ */ z(u.edit, { size: 12 }),
765
- onClick: he,
766
- children: g("list.record.edit", "Edit")
767
- }))
768
- ]
769
- })]
770
- }), /* @__PURE__ */ z("div", {
771
- style: {
772
- flex: 1,
773
- overflowY: "auto",
774
- paddingTop: 16,
775
- paddingBottom: 16,
776
- ...re(16),
777
- display: "flex",
778
- flexDirection: "column",
779
- gap: 12
780
- },
781
- children: i && i.length > 0 ? /* @__PURE__ */ z(le, {
782
- nodes: i,
783
- ctx: ye
784
- }) : /* @__PURE__ */ z("p", {
785
- style: {
786
- fontSize: 12.5,
787
- color: "var(--text-3)"
788
- },
789
- children: t(g("list.detail.no_layout", "No layout configured. Add {key} to the screen definition."), { key: /* @__PURE__ */ z("code", { children: ve }) })
790
- })
791
- })]
792
- });
793
- }
794
- //#endregion
795
- export { V as SmartRecordListPage };