@declarion/react 0.65.1 → 0.66.1

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,15 +1,19 @@
1
- import { Ft as e, Nt as t, wn as n, wt as r, xt as i } from "./useCurrentScreen-BZOHBGQZ.js";
2
- import { r as a } from "./CopyButton-DRIT_f0k.js";
3
- import { t as o } from "./Pill-D-wsfRhx.js";
4
- import { t as s } from "./DynamicIcon-DuBSz6TZ.js";
5
- import { t as c } from "./page-inset-D_kkVwwN.js";
1
+ import { coerceDisplayString as e } from "../../lib/display-value.js";
2
+ import { useSchema as t } from "../../hooks/useSchema.js";
3
+ import { pluralText as n } from "../../lib/language.js";
4
+ import { Btn as r } from "../primitives/Btn.js";
5
+ import { Pill as i } from "../primitives/Pill.js";
6
+ import { useText as a } from "../../hooks/useText.js";
7
+ import { useResponsiveMode as o } from "../../hooks/useResponsiveMode.js";
8
+ import { DynamicIcon as s } from "../shared/DynamicIcon.js";
9
+ import { pageInsetX as c } from "../../lib/page-inset.js";
6
10
  import { useMemo as l, useState as u } from "react";
7
11
  import { jsx as d, jsxs as f } from "react/jsx-runtime";
8
12
  //#region src/components/pages/AdminCatalogPage.impl.tsx
9
13
  var p = "string", m = "handler";
10
14
  function h() {
11
- let { data: t } = e(), n = r(), [o, s] = u("handlers"), l = i().isPhone;
12
- return t ? /* @__PURE__ */ f("div", {
15
+ let { data: e } = t(), n = a(), [i, s] = u("handlers"), l = o().isPhone;
16
+ return e ? /* @__PURE__ */ f("div", {
13
17
  style: {
14
18
  display: "flex",
15
19
  flexDirection: "column",
@@ -48,14 +52,14 @@ function h() {
48
52
  gap: 6,
49
53
  marginBottom: 14
50
54
  },
51
- children: [/* @__PURE__ */ d(a, {
52
- kind: o === "handlers" ? "primary" : "default",
53
- active: o === "handlers",
55
+ children: [/* @__PURE__ */ d(r, {
56
+ kind: i === "handlers" ? "primary" : "default",
57
+ active: i === "handlers",
54
58
  onClick: () => s("handlers"),
55
59
  children: n("catalog.tab.handlers", "Handlers")
56
- }), /* @__PURE__ */ d(a, {
57
- kind: o === "actions" ? "primary" : "default",
58
- active: o === "actions",
60
+ }), /* @__PURE__ */ d(r, {
61
+ kind: i === "actions" ? "primary" : "default",
62
+ active: i === "actions",
59
63
  onClick: () => s("actions"),
60
64
  children: n("catalog.tab.actions", "Actions")
61
65
  })]
@@ -71,12 +75,12 @@ function h() {
71
75
  paddingRight: 20
72
76
  }
73
77
  },
74
- children: [o === "handlers" && /* @__PURE__ */ d(g, { schema: t }), o === "actions" && /* @__PURE__ */ d(y, { schema: t })]
78
+ children: [i === "handlers" && /* @__PURE__ */ d(g, { schema: e }), i === "actions" && /* @__PURE__ */ d(y, { schema: e })]
75
79
  })]
76
80
  }) : null;
77
81
  }
78
82
  function g({ schema: e }) {
79
- let n = r(), i = l(() => {
83
+ let t = a(), r = l(() => {
80
84
  let t = [];
81
85
  if (e.handlers) for (let [n, r] of Object.entries(e.handlers)) t.push({
82
86
  code: n,
@@ -101,7 +105,7 @@ function g({ schema: e }) {
101
105
  color: "var(--text-3)",
102
106
  margin: 0
103
107
  },
104
- children: t(n, "catalog.handlers.count", i.length, {
108
+ children: n(t, "catalog.handlers.count", r.length, {
105
109
  one: "{count} handler registered (view-only — source of truth is code/YAML)",
106
110
  other: "{count} handlers registered (view-only — source of truth is code/YAML)"
107
111
  })
@@ -111,7 +115,7 @@ function g({ schema: e }) {
111
115
  flexDirection: "column",
112
116
  gap: 8
113
117
  },
114
- children: i.map(({ code: e, handler: t, entity: n }) => /* @__PURE__ */ d(_, {
118
+ children: r.map(({ code: e, handler: t, entity: n }) => /* @__PURE__ */ d(_, {
115
119
  code: e,
116
120
  handler: t,
117
121
  entity: n
@@ -120,11 +124,11 @@ function g({ schema: e }) {
120
124
  });
121
125
  }
122
126
  function _({ code: e, handler: t, entity: n }) {
123
- let a = r(), [c, l] = u(!1), p = i().isPhone, m = t.display?.name ? a(t.display.name) : e;
127
+ let r = a(), [c, l] = u(!1), p = o().isPhone, m = t.display?.name ? r(t.display.name) : e;
124
128
  return /* @__PURE__ */ f("div", {
125
129
  style: {
126
130
  border: "1px solid var(--border)",
127
- borderRadius: 8,
131
+ borderRadius: "var(--radius-md)",
128
132
  padding: 14,
129
133
  background: "var(--surface)"
130
134
  },
@@ -183,11 +187,11 @@ function _({ code: e, handler: t, entity: n }) {
183
187
  flexWrap: "wrap",
184
188
  justifyContent: p ? "flex-start" : "flex-end"
185
189
  },
186
- children: [/* @__PURE__ */ d(o, {
190
+ children: [/* @__PURE__ */ d(i, {
187
191
  tone: "slate",
188
192
  size: "xs",
189
193
  children: t.type
190
- }), n && /* @__PURE__ */ d(o, {
194
+ }), n && /* @__PURE__ */ d(i, {
191
195
  tone: "violet",
192
196
  size: "xs",
193
197
  children: n
@@ -209,7 +213,7 @@ function _({ code: e, handler: t, entity: n }) {
209
213
  textTransform: "uppercase",
210
214
  letterSpacing: "0.04em"
211
215
  },
212
- children: a("catalog.handler.parameters", "Parameters")
216
+ children: r("catalog.handler.parameters", "Parameters")
213
217
  }), /* @__PURE__ */ d("div", {
214
218
  style: {
215
219
  display: "flex",
@@ -227,8 +231,8 @@ function _({ code: e, handler: t, entity: n }) {
227
231
  })]
228
232
  });
229
233
  }
230
- function v({ code: e, param: t }) {
231
- let a = r(), s = t.display?.name ? a(t.display.name) : void 0, c = i().isPhone;
234
+ function v({ code: t, param: n }) {
235
+ let r = a(), s = n.display?.name ? r(n.display.name) : void 0, c = o().isPhone;
232
236
  return /* @__PURE__ */ f("div", {
233
237
  style: {
234
238
  display: "flex",
@@ -248,30 +252,30 @@ function v({ code: e, param: t }) {
248
252
  flexShrink: 0,
249
253
  overflowWrap: "anywhere"
250
254
  },
251
- children: e
255
+ children: t
252
256
  }),
253
- /* @__PURE__ */ d(o, {
257
+ /* @__PURE__ */ d(i, {
254
258
  tone: "slate",
255
259
  size: "xs",
256
- children: t.type || p
260
+ children: n.type || p
257
261
  }),
258
- t.required && /* @__PURE__ */ d(o, {
262
+ n.required && /* @__PURE__ */ d(i, {
259
263
  tone: "rose",
260
264
  size: "xs",
261
- children: a("catalog.param.required", "required")
265
+ children: r("catalog.param.required", "required")
262
266
  }),
263
- t.hidden && /* @__PURE__ */ d(o, {
267
+ n.hidden && /* @__PURE__ */ d(i, {
264
268
  tone: "slate",
265
269
  size: "xs",
266
- children: a("catalog.param.hidden", "hidden")
270
+ children: r("catalog.param.hidden", "hidden")
267
271
  }),
268
- t.default != null && /* @__PURE__ */ d("span", {
272
+ n.default != null && /* @__PURE__ */ d("span", {
269
273
  style: {
270
274
  fontSize: 11,
271
275
  color: "var(--text-3)",
272
276
  overflowWrap: "anywhere"
273
277
  },
274
- children: a("catalog.param.default", "default: {value}", { value: n(t.default) })
278
+ children: r("catalog.param.default", "default: {value}", { value: e(n.default) })
275
279
  }),
276
280
  s && /* @__PURE__ */ d("span", {
277
281
  style: {
@@ -285,7 +289,7 @@ function v({ code: e, param: t }) {
285
289
  });
286
290
  }
287
291
  function y({ schema: e }) {
288
- let n = r(), i = l(() => {
292
+ let t = a(), r = l(() => {
289
293
  let t = [];
290
294
  if (e.actions) for (let [n, r] of Object.entries(e.actions)) t.push({
291
295
  code: n,
@@ -297,14 +301,14 @@ function y({ schema: e }) {
297
301
  entity: n
298
302
  });
299
303
  return t.sort((e, t) => e.code.localeCompare(t.code));
300
- }, [e]), a = l(() => {
304
+ }, [e]), i = l(() => {
301
305
  let e = {};
302
- for (let t of i) {
306
+ for (let t of r) {
303
307
  let n = t.entity ?? "";
304
308
  e[n] || (e[n] = []), e[n].push(t);
305
309
  }
306
310
  return Object.entries(e).sort(([e], [t]) => e.localeCompare(t));
307
- }, [i]);
311
+ }, [r]);
308
312
  return /* @__PURE__ */ f("div", {
309
313
  style: {
310
314
  display: "flex",
@@ -317,25 +321,25 @@ function y({ schema: e }) {
317
321
  color: "var(--text-3)",
318
322
  margin: 0
319
323
  },
320
- children: t(n, "catalog.actions.count", i.length, {
324
+ children: n(t, "catalog.actions.count", r.length, {
321
325
  one: "{count} action defined (view-only — source of truth is code/YAML)",
322
326
  other: "{count} actions defined (view-only — source of truth is code/YAML)"
323
327
  })
324
- }), a.map(([e, t]) => /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("h3", {
328
+ }), i.map(([e, n]) => /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("h3", {
325
329
  style: {
326
330
  fontSize: 12.5,
327
331
  fontWeight: 600,
328
332
  margin: "0 0 8px 0",
329
333
  color: "var(--text)"
330
334
  },
331
- children: e || n("catalog.actions.global", "(global)")
335
+ children: e || t("catalog.actions.global", "(global)")
332
336
  }), /* @__PURE__ */ d("div", {
333
337
  style: {
334
338
  display: "flex",
335
339
  flexDirection: "column",
336
340
  gap: 6
337
341
  },
338
- children: t.map(({ code: e, action: t }) => /* @__PURE__ */ d(b, {
342
+ children: n.map(({ code: e, action: t }) => /* @__PURE__ */ d(b, {
339
343
  code: e,
340
344
  action: t
341
345
  }, e))
@@ -343,17 +347,17 @@ function y({ schema: e }) {
343
347
  });
344
348
  }
345
349
  function b({ code: e, action: t }) {
346
- let n = r()(t.display?.name), a = i().isPhone;
350
+ let n = a()(t.display?.name), r = o().isPhone;
347
351
  return /* @__PURE__ */ f("div", {
348
352
  style: {
349
353
  border: "1px solid var(--border)",
350
- borderRadius: 8,
354
+ borderRadius: "var(--radius-md)",
351
355
  padding: 12,
352
356
  display: "flex",
353
- flexDirection: a ? "column" : "row",
354
- alignItems: a ? "stretch" : "center",
357
+ flexDirection: r ? "column" : "row",
358
+ alignItems: r ? "stretch" : "center",
355
359
  justifyContent: "space-between",
356
- gap: a ? 10 : 12,
360
+ gap: r ? 10 : 12,
357
361
  background: "var(--surface)",
358
362
  minWidth: 0
359
363
  },
@@ -398,12 +402,12 @@ function b({ code: e, action: t }) {
398
402
  alignItems: "center",
399
403
  gap: 6,
400
404
  flexWrap: "wrap",
401
- justifyContent: a ? "flex-start" : "flex-end"
405
+ justifyContent: r ? "flex-start" : "flex-end"
402
406
  },
403
407
  children: [
404
408
  (() => {
405
409
  let e = t.handler ? "handler" : t.association ? "association" : t.widget ? "widget" : t.href ? "href" : null;
406
- return e ? /* @__PURE__ */ d(o, {
410
+ return e ? /* @__PURE__ */ d(i, {
407
411
  tone: "slate",
408
412
  size: "xs",
409
413
  children: e
@@ -427,7 +431,7 @@ function b({ code: e, action: t }) {
427
431
  display: "flex",
428
432
  gap: 4
429
433
  },
430
- children: t.visibility.map((e) => /* @__PURE__ */ d(o, {
434
+ children: t.visibility.map((e) => /* @__PURE__ */ d(i, {
431
435
  tone: "slate",
432
436
  size: "xs",
433
437
  children: e
@@ -0,0 +1,12 @@
1
+ import { Suspense as e, lazy as t } from "react";
2
+ import { jsx as n } from "react/jsx-runtime";
3
+ //#region src/components/pages/AdminCatalogPage.tsx
4
+ var r = t(() => import("./AdminCatalogPage.impl.js").then((e) => ({ default: e.AdminCatalogPage })));
5
+ function i() {
6
+ return /* @__PURE__ */ n(e, {
7
+ fallback: null,
8
+ children: /* @__PURE__ */ n(r, {})
9
+ });
10
+ }
11
+ //#endregion
12
+ export { i as AdminCatalogPage };
@@ -0,0 +1,150 @@
1
+ import { OrderedMap as e } from "../../types/ordmap.js";
2
+ import { Icon as t } from "../primitives/Icons.js";
3
+ import { Btn as n } from "../primitives/Btn.js";
4
+ import { Dropdown as r } from "../primitives/Dropdown.js";
5
+ import { useText as i } from "../../hooks/useText.js";
6
+ import { useResponsiveMode as a } from "../../hooks/useResponsiveMode.js";
7
+ import { MenuItem as o } from "../primitives/MenuItem.js";
8
+ import { executeAction as s } from "../../api/data.js";
9
+ import { failureTitle as c } from "../../lib/failure.js";
10
+ import { useActionRunner as l } from "../actions/ActionRunner.js";
11
+ import { buildListQuery as u } from "./exportRequest.js";
12
+ import { useMemo as d, useRef as f, useState as p } from "react";
13
+ import { useQuery as m } from "@tanstack/react-query";
14
+ import { Fragment as h, jsx as g, jsxs as _ } from "react/jsx-runtime";
15
+ //#region src/components/pages/DocumentsMenu.tsx
16
+ var v = "document-templates-available";
17
+ function y({ entityCode: e, scope: y, objectIds: C = [], viewState: w, selectedIds: T = [], capability: E, canManageTemplates: D = !1 }) {
18
+ let O = i(), k = i("errors"), { run: A } = l(), j = f(null), [M, N] = p(!1), P = y === "detail" ? !!E?.generate_one : !!E?.generate_many, F = D && !P, { data: I, isLoading: L, error: R } = m({
19
+ queryKey: [v, e],
20
+ queryFn: async () => (await s("document.templates.available", { entity: e })).result?.templates ?? [],
21
+ enabled: M || F,
22
+ staleTime: 6e4
23
+ }), z = L, B = d(() => (I ?? []).filter((e) => y === "detail" ? e.input_mode === "one" || e.input_mode === "global" : e.input_mode === "many" || e.input_mode === "global"), [y, I]), V = F && B.length > 0, H = P || V;
24
+ function U() {
25
+ N((e) => !e);
26
+ }
27
+ function W(e) {
28
+ if (e.input_mode === "global") return [{ kind: "global" }];
29
+ if (y === "detail") return e.input_mode === "one" && C.length === 1 ? [{
30
+ kind: "one",
31
+ objectIds: C
32
+ }] : [];
33
+ if (e.input_mode === "many") {
34
+ let e = [];
35
+ return w && e.push({
36
+ kind: "current_view",
37
+ query: u(w)
38
+ }), T.length > 0 && e.push({
39
+ kind: "selected",
40
+ objectIds: T
41
+ }), e;
42
+ }
43
+ return [];
44
+ }
45
+ function G(e, t, n) {
46
+ let r = b(e), i = O(e.name) || e.code;
47
+ N(!1), A({
48
+ action: r,
49
+ title: i,
50
+ execute: (r) => {
51
+ let i = {
52
+ template_code: e.code,
53
+ template_source: e.source,
54
+ output_format: n
55
+ };
56
+ return Object.keys(r).length > 0 && (i.params = r), "objectIds" in t && (i.object_ids = t.objectIds), "query" in t && (i.query = {
57
+ scope: "current_view",
58
+ query: t.query
59
+ }), s("document.generate", i);
60
+ }
61
+ });
62
+ }
63
+ let { isPhone: K } = a();
64
+ if (!H) return null;
65
+ let q = O("document.menu.generate", "Generate");
66
+ return /* @__PURE__ */ _(h, { children: [/* @__PURE__ */ g(n, {
67
+ ref: j,
68
+ kind: "ghost",
69
+ size: "sm",
70
+ icon: g(z ? t.loader : t.filePlus, { size: 12 }),
71
+ onClick: U,
72
+ disabled: z,
73
+ "aria-label": q,
74
+ title: q,
75
+ children: K ? null : q
76
+ }), /* @__PURE__ */ _(r, {
77
+ open: M,
78
+ anchor: j.current,
79
+ onClose: () => N(!1),
80
+ align: "end",
81
+ width: 300,
82
+ children: [
83
+ z && /* @__PURE__ */ g(o, {
84
+ disabled: !0,
85
+ icon: /* @__PURE__ */ g(t.loader, { size: 12 }),
86
+ children: O("document.menu.loading", "Loading templates...")
87
+ }),
88
+ R && /* @__PURE__ */ g(o, {
89
+ disabled: !0,
90
+ icon: /* @__PURE__ */ g(t.warning, { size: 12 }),
91
+ children: c(k, R)
92
+ }),
93
+ !z && !R && B.length === 0 && /* @__PURE__ */ g(o, {
94
+ disabled: !0,
95
+ icon: /* @__PURE__ */ g(t.file, { size: 12 }),
96
+ children: O("document.menu.empty", "No document templates")
97
+ }),
98
+ !z && !R && B.map((e) => {
99
+ let n = W(e);
100
+ return n.length === 0 ? null : x(e).flatMap((r) => n.map((n) => r.available ? /* @__PURE__ */ g(o, {
101
+ icon: /* @__PURE__ */ g(t.file, { size: 12 }),
102
+ onClick: () => G(e, n, r.format),
103
+ title: O(e.description),
104
+ children: S(O, e, n, r.format)
105
+ }, `${e.source}:${e.code}:${n.kind}:${r.format}`) : /* @__PURE__ */ _(o, {
106
+ disabled: !0,
107
+ icon: /* @__PURE__ */ g(t.file, { size: 12 }),
108
+ title: r.disabled_reason,
109
+ children: [
110
+ S(O, e, n, r.format),
111
+ " - ",
112
+ r.disabled_reason || O("document.not_available", "Unavailable")
113
+ ]
114
+ }, `${e.source}:${e.code}:${n.kind}:${r.format}:disabled`)));
115
+ })
116
+ ]
117
+ })] });
118
+ }
119
+ function b(t) {
120
+ let n = new e((t.params ?? []).map((e) => ({
121
+ ...e,
122
+ name: e.name ?? ""
123
+ })));
124
+ return {
125
+ handler: "document.generate",
126
+ display: {
127
+ name: t.name,
128
+ icon: "file",
129
+ description: t.description
130
+ },
131
+ resolved_params: n
132
+ };
133
+ }
134
+ function x(e) {
135
+ return e.outputs && e.outputs.length > 0 ? e.outputs : (e.allowed_outputs && e.allowed_outputs.length > 0 ? e.allowed_outputs : [e.output_format || "xlsx"]).map((e) => ({
136
+ format: e,
137
+ available: !0
138
+ }));
139
+ }
140
+ function S(e, t, n, r) {
141
+ let i = e(t.name) || t.code, a = r ? ` (${r.toUpperCase()})` : "";
142
+ switch (n.kind) {
143
+ case "one": return `${i}${a}`;
144
+ case "selected": return e("document.menu.selected_rows", "{name} - selected rows", { name: `${i}${a}` });
145
+ case "current_view": return e("document.menu.current_view", "{name} - current view", { name: `${i}${a}` });
146
+ case "global": return `${i}${a}`;
147
+ }
148
+ }
149
+ //#endregion
150
+ export { y as DocumentsMenu };
@@ -0,0 +1,123 @@
1
+ import { ApiError as e } from "../../types/api.js";
2
+ import { pluralText as t } from "../../lib/language.js";
3
+ import { Icon as n } from "../primitives/Icons.js";
4
+ import { Btn as r } from "../primitives/Btn.js";
5
+ import { Dropdown as i } from "../primitives/Dropdown.js";
6
+ import { useText as a } from "../../hooks/useText.js";
7
+ import { useResponsiveMode as o } from "../../hooks/useResponsiveMode.js";
8
+ import { MenuItem as s } from "../primitives/MenuItem.js";
9
+ import { exportEntities as c } from "../../api/data.js";
10
+ import { failureTitle as l } from "../../lib/failure.js";
11
+ import { buildExportRequest as u } from "./exportRequest.js";
12
+ import { useRef as d, useState as f } from "react";
13
+ import { Fragment as p, jsx as m, jsxs as h } from "react/jsx-runtime";
14
+ //#region src/components/pages/ExportMenu.tsx
15
+ function g(e) {
16
+ return !(e && e.enabled === !1);
17
+ }
18
+ function _(e, n) {
19
+ return n == null ? e("export.scope.current_view_all", "Current view (CSV) · all matching rows") : t(e, "export.scope.current_view", n, {
20
+ one: "Current view (CSV) · {total} row",
21
+ other: "Current view (CSV) · {total} rows"
22
+ }, { total: n.toLocaleString(e.language) });
23
+ }
24
+ function v(v) {
25
+ let x = a(), S = a("errors"), { isPhone: C } = o(), { entityCode: w, entity: T, screen: E, viewState: D, visibleColumns: O, selectedRowPKs: k, totalRows: A, pageRows: j, language: M, align: N = "end", variant: P = "toolbar", onBeforeOpen: F } = v, [I, L] = f(!1), [R, z] = f(!1), [B, V] = f(null), H = d(null), U = g(T.export), W = g(E?.export);
26
+ if (!U || !W) return null;
27
+ async function G(t) {
28
+ V(null), z(!0);
29
+ try {
30
+ let e = u(D, {
31
+ scope: t,
32
+ visibleColumns: O,
33
+ selectedRowPKs: t === "selected_rows" ? k : void 0,
34
+ language: M
35
+ }), { blob: n, filename: r } = await c(w, e);
36
+ b(n, r || `${w}-${y()}.csv`), L(!1);
37
+ } catch (t) {
38
+ V({
39
+ code: t instanceof e ? t.code : "",
40
+ message: l(S, t)
41
+ });
42
+ } finally {
43
+ z(!1);
44
+ }
45
+ }
46
+ if (P === "selection-menu-item") {
47
+ let e = R || k.length === 0;
48
+ return /* @__PURE__ */ m(s, {
49
+ icon: /* @__PURE__ */ m(n.download, { size: 12 }),
50
+ "data-testid": "export-selection-menu-item",
51
+ onClick: e ? void 0 : () => {
52
+ F?.(), G("selected_rows");
53
+ },
54
+ children: R ? x("export.menu.exporting", "Exporting…") : x("export.menu.selection", "Export selection (CSV)")
55
+ });
56
+ }
57
+ let K = k.length > 0, q = T.list_pagination === "cursor";
58
+ return /* @__PURE__ */ h(p, { children: [/* @__PURE__ */ m(r, {
59
+ ref: H,
60
+ kind: "ghost",
61
+ size: "sm",
62
+ icon: /* @__PURE__ */ m(n.download, { size: 12 }),
63
+ onClick: () => {
64
+ F?.(), L((e) => !e);
65
+ },
66
+ disabled: R,
67
+ "aria-label": x("export.menu.export", "Export"),
68
+ title: x("export.menu.export", "Export"),
69
+ children: C ? null : R ? x("export.menu.exporting", "Exporting…") : x("export.menu.export", "Export")
70
+ }), /* @__PURE__ */ h(i, {
71
+ open: I,
72
+ anchor: H.current,
73
+ onClose: () => L(!1),
74
+ align: N,
75
+ width: 260,
76
+ children: [
77
+ /* @__PURE__ */ m(s, {
78
+ icon: /* @__PURE__ */ m(n.download, { size: 12 }),
79
+ onClick: R ? void 0 : () => void G("current_view"),
80
+ children: _(x, A)
81
+ }),
82
+ K && /* @__PURE__ */ m(s, {
83
+ icon: /* @__PURE__ */ m(n.check, { size: 12 }),
84
+ onClick: R ? void 0 : () => void G("selected_rows"),
85
+ children: x("export.scope.selected_rows", "Selected rows (CSV) · {count}", { count: k.length })
86
+ }),
87
+ q ? /* @__PURE__ */ m(s, {
88
+ icon: /* @__PURE__ */ m(n.columns, { size: 12 }),
89
+ "data-testid": "export-current-page-disabled",
90
+ disabled: !0,
91
+ children: x("export.scope.current_page_unavailable_cursor", "Current page · n/a (infinite scroll)")
92
+ }) : /* @__PURE__ */ m(s, {
93
+ icon: /* @__PURE__ */ m(n.columns, { size: 12 }),
94
+ onClick: R ? void 0 : () => void G("current_page"),
95
+ children: j === void 0 ? x("export.scope.current_page_window", "Current page (CSV) · page window") : t(x, "export.scope.current_page", j, {
96
+ one: "Current page (CSV) · {count} row",
97
+ other: "Current page (CSV) · {count} rows"
98
+ })
99
+ }),
100
+ B && /* @__PURE__ */ m("div", {
101
+ role: "alert",
102
+ style: {
103
+ padding: "6px 10px",
104
+ marginTop: 4,
105
+ fontSize: 12,
106
+ color: "var(--destructive)",
107
+ borderTop: "1px solid var(--border)"
108
+ },
109
+ children: B.message
110
+ })
111
+ ]
112
+ })] });
113
+ }
114
+ function y() {
115
+ let e = /* @__PURE__ */ new Date(), t = (e) => String(e).padStart(2, "0");
116
+ return `${e.getUTCFullYear()}${t(e.getUTCMonth() + 1)}${t(e.getUTCDate())}-${t(e.getUTCHours())}${t(e.getUTCMinutes())}`;
117
+ }
118
+ function b(e, t) {
119
+ let n = URL.createObjectURL(e), r = document.createElement("a");
120
+ r.href = n, r.download = t, r.style.display = "none", document.body.appendChild(r), r.click(), document.body.removeChild(r), setTimeout(() => URL.revokeObjectURL(n), 0);
121
+ }
122
+ //#endregion
123
+ export { v as ExportMenu };
@@ -1,11 +1,13 @@
1
- import { G as e, W as t, Xt as n, wt as r } from "./useCurrentScreen-BZOHBGQZ.js";
2
- import { r as i } from "./CopyButton-DRIT_f0k.js";
1
+ import { useEmbed as e } from "../../embed/EmbedContext.js";
2
+ import { Btn as t } from "../primitives/Btn.js";
3
+ import { useText as n } from "../../hooks/useText.js";
4
+ import { useEmbedNavigate as r, useEmbedNavigationFailed as i } from "../../embed/useEmbedNavigate.js";
3
5
  import { useEffect as a } from "react";
4
6
  import { jsx as o, jsxs as s } from "react/jsx-runtime";
5
7
  import { useLocation as c } from "react-router";
6
8
  //#region src/components/pages/NotFoundPage.impl.tsx
7
9
  function l() {
8
- let l = n(), u = t(), d = c(), f = e(), p = r();
10
+ let l = e(), u = r(), d = c(), f = i(), p = n();
9
11
  return a(() => {
10
12
  l.enabled && f(d.pathname, "not_found");
11
13
  }, [
@@ -55,7 +57,7 @@ function l() {
55
57
  }),
56
58
  /* @__PURE__ */ o("div", {
57
59
  style: { marginTop: 24 },
58
- children: /* @__PURE__ */ o(i, {
60
+ children: /* @__PURE__ */ o(t, {
59
61
  onClick: () => u("/"),
60
62
  children: p("page.not_found.go_home", "Go home")
61
63
  })
@@ -0,0 +1,12 @@
1
+ import { Suspense as e, lazy as t } from "react";
2
+ import { jsx as n } from "react/jsx-runtime";
3
+ //#region src/components/pages/NotFoundPage.tsx
4
+ var r = t(() => import("./NotFoundPage.impl.js").then((e) => ({ default: e.NotFoundPage })));
5
+ function i() {
6
+ return /* @__PURE__ */ n(e, {
7
+ fallback: null,
8
+ children: /* @__PURE__ */ n(r, {})
9
+ });
10
+ }
11
+ //#endregion
12
+ export { i as NotFoundPage };