@declarion/react 0.61.1 → 0.63.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 (487) hide show
  1. package/dist-lib/ActionDialog-uiuse5W8.js +374 -0
  2. package/dist-lib/ActionResultDialog.impl-BUBm9Ck3.js +273 -0
  3. package/dist-lib/ActionRunner-DAxgnKB3.js +1440 -0
  4. package/dist-lib/AdminCatalogPage.impl-BJGn7EvA.js +441 -0
  5. package/dist-lib/{AgentChatPanel.impl-rgkewyMl.js → AgentChatPanel.impl-8bw8J-xV.js} +358 -319
  6. package/dist-lib/AgentOpenFollower.impl-Cga1q7_e.js +81 -0
  7. package/dist-lib/AssociatedBlock-D6qDYmRO.js +1515 -0
  8. package/dist-lib/AuthShell-DdiughRT.js +361 -0
  9. package/dist-lib/ChangePasswordDialog-DFe7lVQg.js +12 -0
  10. package/dist-lib/ChangePasswordDialog.impl-DtSIaP-A.js +194 -0
  11. package/dist-lib/CommandPalette.impl-Db3AFA5w.js +383 -0
  12. package/dist-lib/CopyButton-C0iEvaT1.js +119 -0
  13. package/dist-lib/DirtyTabsCloseDialog.impl-DWaFaWKn.js +191 -0
  14. package/dist-lib/{DraggableChildrenTable-DruYOxKm.js → DraggableChildrenTable-Cy8uevS_.js} +45 -44
  15. package/dist-lib/DynamicIcon-DuBSz6TZ.js +133 -0
  16. package/dist-lib/FieldRow-BXBBFOZh.js +157 -0
  17. package/dist-lib/FilterChips-8fMDBXHp.js +1031 -0
  18. package/dist-lib/Forgot.impl-CmT5A__V.js +105 -0
  19. package/dist-lib/{Grid-Dsf3I0xG.js → Grid-Cg29k0jv.js} +98 -99
  20. package/dist-lib/Icons-Dzl-AkD_.d.ts +159 -0
  21. package/dist-lib/Icons-lt-7lhYR.js +151 -0
  22. package/dist-lib/ImpersonationBanner.impl-CBJJx6an.js +76 -0
  23. package/dist-lib/ImpersonationStartModal.impl-RaZcsJpG.js +158 -0
  24. package/dist-lib/Kbd-CNttVu0z.js +23 -0
  25. package/dist-lib/{LayoutRenderer-QN7Wp2W6.js → LayoutRenderer-DEHtYtzV.js} +965 -942
  26. package/dist-lib/{ListCardsBody-CNaZ0xwz.js → ListCardsBody-BAwFR3yO.js} +46 -52
  27. package/dist-lib/{MarkdownRenderer-BuO5hYJh.js → MarkdownRenderer-kNEMr6K_.js} +15 -16
  28. package/dist-lib/MenuItem-CfkVXPvC.js +140 -0
  29. package/dist-lib/NotFoundPage.impl-ZSBn4WWb.js +68 -0
  30. package/dist-lib/PageHeader-tw4pX3lI.js +71 -0
  31. package/dist-lib/PageShell-tI-mm0C5.js +47 -0
  32. package/dist-lib/Pill-D-wsfRhx.js +42 -0
  33. package/dist-lib/Preferences.impl-BG9XBZDf.js +162 -0
  34. package/dist-lib/Profile.impl-CbzSzxyG.js +527 -0
  35. package/dist-lib/PropertyGridEditor-BTjscqfz.js +4378 -0
  36. package/dist-lib/RecordHeader-Bv9nJXnG.js +217 -0
  37. package/dist-lib/RecordIdBadge-C3MgoZvt.js +25 -0
  38. package/dist-lib/RefreshControl-Ce-T_wSQ.js +195 -0
  39. package/dist-lib/Reset.impl-Cesyqt5p.js +168 -0
  40. package/dist-lib/SSOCallbackPage.impl-BC_W9nQA.js +31 -0
  41. package/dist-lib/SectionCard-VonaiLrx.js +150 -0
  42. package/dist-lib/SignUp.impl-C1KCQbfZ.js +212 -0
  43. package/dist-lib/SmartDetailPage.impl-8iOAMYQh.js +1609 -0
  44. package/dist-lib/SmartListPage.impl-Cc4Zwz5f.js +2818 -0
  45. package/dist-lib/SmartRecordListPage.impl-xTSohkqG.js +795 -0
  46. package/dist-lib/{SortHeaderMenu-BV-aQbPy.js → SortHeaderMenu-BKTrq0Wb.js} +23 -23
  47. package/dist-lib/TenantParamsPage.impl-DMuSs3eP.js +306 -0
  48. package/dist-lib/TwoFA.impl-BClZ3ndk.js +125 -0
  49. package/dist-lib/{cardProjection-BnmWukxk.js → cardProjection-Cr7fG6wJ.js} +134 -133
  50. package/dist-lib/declarion-react.css +1 -1
  51. package/dist-lib/format-count-CSEFw2ht.js +943 -0
  52. package/dist-lib/headerActionZone-bef-tZZ7.js +14 -0
  53. package/dist-lib/{stores/icon-registry.d.ts → icon-registry-CUT4eF63.d.ts} +14 -11
  54. package/dist-lib/icons.d.ts +20 -4
  55. package/dist-lib/icons.js +3 -2
  56. package/dist-lib/index.d.ts +2516 -150
  57. package/dist-lib/index.js +1588 -5117
  58. package/dist-lib/page-inset-D_kkVwwN.js +9 -0
  59. package/dist-lib/page-state-eA6J_KIR.js +124 -0
  60. package/dist-lib/param-editors-9yJr7xmN.js +201 -0
  61. package/dist-lib/payload-B2wODLAX.js +86 -0
  62. package/dist-lib/{peekDraftStore-Dk1Ha5u3.js → peekDraftStore-D4GRsRKW.js} +44 -43
  63. package/dist-lib/registry-BpzE8-h8.js +119 -0
  64. package/dist-lib/screen-back-Cs4kzeqD.js +44 -0
  65. package/dist-lib/testing.d.ts +53 -56
  66. package/dist-lib/testing.js +54 -55
  67. package/dist-lib/use-filter-value-labels-DuqvAIVG.js +413 -0
  68. package/dist-lib/{useAgentConversation-nT5UypJX.js → useAgentConversation-D210VDCQ.js} +158 -169
  69. package/dist-lib/useAuth-CR2YKKXb.js +49 -0
  70. package/dist-lib/useBranding-Ckp_AuJb.js +41 -0
  71. package/dist-lib/useBrandingChrome-bKTXXDLy.js +170 -0
  72. package/dist-lib/useCurrentLocation-BdngVeQv.js +22 -0
  73. package/dist-lib/useCurrentScreen--UovgvRj.js +2511 -0
  74. package/dist-lib/useImpersonation-DNV23Ks1.js +35 -0
  75. package/dist-lib/useObject-1OCeV34A.js +26 -0
  76. package/dist-lib/useOwnRefresh-DkOuM4yo.js +435 -0
  77. package/dist-lib/useParams-ei6w4I7w.js +133 -0
  78. package/dist-lib/useProperties-CbdhlhZd.js +81 -0
  79. package/dist-lib/useResponsiveMode-DIR1bZfo.d.ts +1786 -0
  80. package/dist-lib/useScreenBack-J861tbwn.js +71 -0
  81. package/dist-lib/useTabNavigate-BZiW4q3M.js +78 -0
  82. package/dist-lib/useTabTitle-CZZnWIQi.js +22 -0
  83. package/dist-lib/utils-D_QDpB8_.js +11 -0
  84. package/dist-lib/{value-Dwfyghtj.js → value-CDCeHgOv.js} +8 -22
  85. package/dist-lib/{action-dispatch-gWmOYjOP.js → variants-CbAwl3Mn.js} +734 -740
  86. package/dist-lib/vite/index.d.ts +42 -16
  87. package/dist-lib/window-election-CHIvIZwx.js +45 -0
  88. package/package.json +16 -23
  89. package/dist-lib/DetailAuditStrip-CSXZoy7v.js +0 -288
  90. package/dist-lib/DynamicIcon-DW5krHuX.js +0 -280
  91. package/dist-lib/RefreshControl-DO9rYcdq.js +0 -399
  92. package/dist-lib/SmartDetailPage.impl-DFIIx80b.js +0 -1565
  93. package/dist-lib/SmartListPage.impl-D694R32H.js +0 -3051
  94. package/dist-lib/SmartRecordListPage.impl-CB5cuQJV.js +0 -780
  95. package/dist-lib/api/agents.d.ts +0 -140
  96. package/dist-lib/api/auth-redirect.d.ts +0 -3
  97. package/dist-lib/api/auth.d.ts +0 -26
  98. package/dist-lib/api/batch.d.ts +0 -25
  99. package/dist-lib/api/client.d.ts +0 -51
  100. package/dist-lib/api/data.d.ts +0 -153
  101. package/dist-lib/api/entities.d.ts +0 -149
  102. package/dist-lib/api/events.d.ts +0 -91
  103. package/dist-lib/api/params.d.ts +0 -28
  104. package/dist-lib/api/properties.d.ts +0 -3
  105. package/dist-lib/api/schema.d.ts +0 -2
  106. package/dist-lib/api/status.d.ts +0 -2
  107. package/dist-lib/app.d.ts +0 -1
  108. package/dist-lib/components/actions/ActionButton.d.ts +0 -18
  109. package/dist-lib/components/actions/ActionDialog.d.ts +0 -20
  110. package/dist-lib/components/actions/ActionResultDialog.d.ts +0 -22
  111. package/dist-lib/components/actions/ActionRunner.d.ts +0 -62
  112. package/dist-lib/components/actions/ObjectActionBar.d.ts +0 -29
  113. package/dist-lib/components/actions/PropertyGridEditor.d.ts +0 -20
  114. package/dist-lib/components/actions/ResponsiveActionBar.d.ts +0 -259
  115. package/dist-lib/components/actions/RowActionsKebab.d.ts +0 -20
  116. package/dist-lib/components/agents/AgentChatPanel.d.ts +0 -3
  117. package/dist-lib/components/agents/AgentChatPanel.impl.d.ts +0 -14
  118. package/dist-lib/components/agents/AgentConversationDrawer.d.ts +0 -11
  119. package/dist-lib/components/agents/AgentElicitForm.d.ts +0 -27
  120. package/dist-lib/components/agents/AgentPicker.d.ts +0 -8
  121. package/dist-lib/components/agents/transcript-runs.d.ts +0 -29
  122. package/dist-lib/components/chrome/AssociationTabs.d.ts +0 -9
  123. package/dist-lib/components/chrome/AuditMetaStrip.d.ts +0 -11
  124. package/dist-lib/components/chrome/Breadcrumbs.d.ts +0 -14
  125. package/dist-lib/components/chrome/HighlightsStrip.d.ts +0 -10
  126. package/dist-lib/components/chrome/PageHeader.d.ts +0 -16
  127. package/dist-lib/components/chrome/PageShell.d.ts +0 -7
  128. package/dist-lib/components/chrome/RecordHeader.d.ts +0 -17
  129. package/dist-lib/components/chrome/headerActionZone.d.ts +0 -27
  130. package/dist-lib/components/detail-layout/AssociatedBlock.d.ts +0 -20
  131. package/dist-lib/components/detail-layout/AssociatedToolbar.d.ts +0 -13
  132. package/dist-lib/components/detail-layout/ChildrenBlock.d.ts +0 -16
  133. package/dist-lib/components/detail-layout/ChildrenCards.d.ts +0 -2
  134. package/dist-lib/components/detail-layout/ChildrenList.d.ts +0 -2
  135. package/dist-lib/components/detail-layout/ChildrenTable.d.ts +0 -2
  136. package/dist-lib/components/detail-layout/ChildrenTimeline.d.ts +0 -2
  137. package/dist-lib/components/detail-layout/DetailAuditStrip.d.ts +0 -12
  138. package/dist-lib/components/detail-layout/DetailHighlights.d.ts +0 -14
  139. package/dist-lib/components/detail-layout/DraggableChildrenTable.d.ts +0 -16
  140. package/dist-lib/components/detail-layout/EditableChildrenTable.d.ts +0 -16
  141. package/dist-lib/components/detail-layout/ErrorSummary.d.ts +0 -11
  142. package/dist-lib/components/detail-layout/EvidenceBlock.d.ts +0 -6
  143. package/dist-lib/components/detail-layout/FieldRow.d.ts +0 -23
  144. package/dist-lib/components/detail-layout/FieldsBlock.d.ts +0 -8
  145. package/dist-lib/components/detail-layout/LayoutColumn.d.ts +0 -9
  146. package/dist-lib/components/detail-layout/LayoutRenderer.d.ts +0 -46
  147. package/dist-lib/components/detail-layout/LayoutRow.d.ts +0 -8
  148. package/dist-lib/components/detail-layout/LayoutTabs.d.ts +0 -8
  149. package/dist-lib/components/detail-layout/PropertiesBlock.d.ts +0 -8
  150. package/dist-lib/components/detail-layout/QuickAddForm.d.ts +0 -10
  151. package/dist-lib/components/detail-layout/SectionBlock.d.ts +0 -8
  152. package/dist-lib/components/detail-layout/StatusesBlock.d.ts +0 -8
  153. package/dist-lib/components/detail-layout/TimelineComposer.d.ts +0 -10
  154. package/dist-lib/components/detail-layout/blockMeta.d.ts +0 -5
  155. package/dist-lib/components/detail-layout/index.d.ts +0 -21
  156. package/dist-lib/components/detail-layout/useManualColumnResize.d.ts +0 -25
  157. package/dist-lib/components/detail-layout/useQuickAdd.d.ts +0 -16
  158. package/dist-lib/components/detail-layout/widgets/EntityScorecardWidget.d.ts +0 -2
  159. package/dist-lib/components/detail-layout/widgets/JsonDiffWidget.d.ts +0 -2
  160. package/dist-lib/components/detail-layout/widgets/MonacoJson.d.ts +0 -9
  161. package/dist-lib/components/detail-layout/widgets/WidgetHost.d.ts +0 -9
  162. package/dist-lib/components/detail-layout/widgets/builtins.d.ts +0 -1
  163. package/dist-lib/components/detail-layout/widgets/canonicalizeJson.d.ts +0 -1
  164. package/dist-lib/components/detail-layout/widgets/monacoBootstrap.d.ts +0 -1
  165. package/dist-lib/components/detail-layout/widgets/registry.d.ts +0 -14
  166. package/dist-lib/components/fields/BoolField.d.ts +0 -2
  167. package/dist-lib/components/fields/EmailField.d.ts +0 -2
  168. package/dist-lib/components/fields/EnumField.d.ts +0 -2
  169. package/dist-lib/components/fields/IntArrayField.d.ts +0 -2
  170. package/dist-lib/components/fields/JsonEditor.d.ts +0 -10
  171. package/dist-lib/components/fields/JsonField.d.ts +0 -3
  172. package/dist-lib/components/fields/MultilangArrayField.d.ts +0 -2
  173. package/dist-lib/components/fields/MultilangField.d.ts +0 -2
  174. package/dist-lib/components/fields/MultilangTextField.d.ts +0 -2
  175. package/dist-lib/components/fields/NumberField.d.ts +0 -2
  176. package/dist-lib/components/fields/PasswordField.d.ts +0 -2
  177. package/dist-lib/components/fields/PhoneField.d.ts +0 -2
  178. package/dist-lib/components/fields/RefCombobox.d.ts +0 -45
  179. package/dist-lib/components/fields/RefField.d.ts +0 -2
  180. package/dist-lib/components/fields/RichTextField.d.ts +0 -2
  181. package/dist-lib/components/fields/SecretField.d.ts +0 -2
  182. package/dist-lib/components/fields/StringArrayField.d.ts +0 -2
  183. package/dist-lib/components/fields/StringField.d.ts +0 -2
  184. package/dist-lib/components/fields/StructureField.d.ts +0 -2
  185. package/dist-lib/components/fields/TextField.d.ts +0 -2
  186. package/dist-lib/components/fields/TimestampField.d.ts +0 -2
  187. package/dist-lib/components/fields/UrlField.d.ts +0 -2
  188. package/dist-lib/components/fields/cells/factories/badge.d.ts +0 -2
  189. package/dist-lib/components/fields/cells/factories/boolPill.d.ts +0 -2
  190. package/dist-lib/components/fields/cells/factories/code.d.ts +0 -2
  191. package/dist-lib/components/fields/cells/factories/date.d.ts +0 -2
  192. package/dist-lib/components/fields/cells/factories/email.d.ts +0 -2
  193. package/dist-lib/components/fields/cells/factories/emptyCell.d.ts +0 -2
  194. package/dist-lib/components/fields/cells/factories/host-icons.d.ts +0 -17
  195. package/dist-lib/components/fields/cells/factories/json.d.ts +0 -2
  196. package/dist-lib/components/fields/cells/factories/link.d.ts +0 -2
  197. package/dist-lib/components/fields/cells/factories/markdown.d.ts +0 -2
  198. package/dist-lib/components/fields/cells/factories/markdownPreview.d.ts +0 -9
  199. package/dist-lib/components/fields/cells/factories/money.d.ts +0 -2
  200. package/dist-lib/components/fields/cells/factories/multilangInline.d.ts +0 -2
  201. package/dist-lib/components/fields/cells/factories/nextRun.d.ts +0 -2
  202. package/dist-lib/components/fields/cells/factories/number.d.ts +0 -2
  203. package/dist-lib/components/fields/cells/factories/passwordMask.d.ts +0 -2
  204. package/dist-lib/components/fields/cells/factories/phone.d.ts +0 -2
  205. package/dist-lib/components/fields/cells/factories/refLink.d.ts +0 -2
  206. package/dist-lib/components/fields/cells/factories/richTextPreview.d.ts +0 -2
  207. package/dist-lib/components/fields/cells/factories/statusPill.d.ts +0 -2
  208. package/dist-lib/components/fields/cells/factories/tagList.d.ts +0 -2
  209. package/dist-lib/components/fields/cells/factories/text.d.ts +0 -2
  210. package/dist-lib/components/fields/cells/factories/timestamp.d.ts +0 -3
  211. package/dist-lib/components/fields/cells/factories/url-helpers.d.ts +0 -12
  212. package/dist-lib/components/fields/cells/factories/url.d.ts +0 -2
  213. package/dist-lib/components/fields/cells/registry.d.ts +0 -21
  214. package/dist-lib/components/fields/index.d.ts +0 -28
  215. package/dist-lib/components/fields/langMap.d.ts +0 -2
  216. package/dist-lib/components/fields/secretValue.d.ts +0 -2
  217. package/dist-lib/components/file-widgets/CircleImage.d.ts +0 -2
  218. package/dist-lib/components/file-widgets/DocumentCard.d.ts +0 -2
  219. package/dist-lib/components/file-widgets/FileList.d.ts +0 -2
  220. package/dist-lib/components/file-widgets/Grid.d.ts +0 -2
  221. package/dist-lib/components/file-widgets/GridLazy.d.ts +0 -2
  222. package/dist-lib/components/file-widgets/ImageWidget.d.ts +0 -12
  223. package/dist-lib/components/file-widgets/LabeledSlots.d.ts +0 -2
  224. package/dist-lib/components/file-widgets/SquareImage.d.ts +0 -2
  225. package/dist-lib/components/file-widgets/UnknownFileWidget.d.ts +0 -3
  226. package/dist-lib/components/file-widgets/UploadFailureText.d.ts +0 -4
  227. package/dist-lib/components/file-widgets/WideBanner.d.ts +0 -2
  228. package/dist-lib/components/file-widgets/builtins.d.ts +0 -1
  229. package/dist-lib/components/file-widgets/cropper.d.ts +0 -14
  230. package/dist-lib/components/file-widgets/draft-scope.d.ts +0 -22
  231. package/dist-lib/components/file-widgets/helpers.d.ts +0 -15
  232. package/dist-lib/components/file-widgets/host.d.ts +0 -28
  233. package/dist-lib/components/file-widgets/index.d.ts +0 -16
  234. package/dist-lib/components/file-widgets/payload.d.ts +0 -21
  235. package/dist-lib/components/file-widgets/registry.d.ts +0 -5
  236. package/dist-lib/components/file-widgets/types.d.ts +0 -17
  237. package/dist-lib/components/file-widgets/upload.d.ts +0 -45
  238. package/dist-lib/components/file-widgets/useEmbedFileSrc.d.ts +0 -42
  239. package/dist-lib/components/file-widgets/value.d.ts +0 -4
  240. package/dist-lib/components/filters/FilterChips.d.ts +0 -14
  241. package/dist-lib/components/filters/FilterDrawer.d.ts +0 -32
  242. package/dist-lib/components/filters/filter-op-label.d.ts +0 -3
  243. package/dist-lib/components/layout/CommandPalette.d.ts +0 -21
  244. package/dist-lib/components/layout/DirtyTabsCloseDialog.d.ts +0 -9
  245. package/dist-lib/components/layout/ImpersonationBanner.d.ts +0 -11
  246. package/dist-lib/components/layout/ImpersonationFrame.d.ts +0 -11
  247. package/dist-lib/components/layout/ImpersonationStartModal.d.ts +0 -22
  248. package/dist-lib/components/layout/Layout.d.ts +0 -6
  249. package/dist-lib/components/layout/Rail.d.ts +0 -22
  250. package/dist-lib/components/layout/Sidebar.d.ts +0 -12
  251. package/dist-lib/components/layout/TabStrip.d.ts +0 -6
  252. package/dist-lib/components/layout/TenantChip.d.ts +0 -26
  253. package/dist-lib/components/layout/TopBar.d.ts +0 -22
  254. package/dist-lib/components/layout/tab-close.d.ts +0 -13
  255. package/dist-lib/components/list/ColumnPicker.d.ts +0 -20
  256. package/dist-lib/components/list/InlineEditCell.d.ts +0 -15
  257. package/dist-lib/components/list/PeekFieldCell.d.ts +0 -16
  258. package/dist-lib/components/list/QuickPeek.d.ts +0 -59
  259. package/dist-lib/components/list/ViewSwitcher.d.ts +0 -24
  260. package/dist-lib/components/list/peekDraftStore.d.ts +0 -6
  261. package/dist-lib/components/pages/AdminCatalogPage.d.ts +0 -1
  262. package/dist-lib/components/pages/DocumentsMenu.d.ts +0 -21
  263. package/dist-lib/components/pages/ExportMenu.d.ts +0 -30
  264. package/dist-lib/components/pages/NotFoundPage.d.ts +0 -1
  265. package/dist-lib/components/pages/RecordDocumentsPanel.d.ts +0 -41
  266. package/dist-lib/components/pages/SSOCallbackPage.d.ts +0 -1
  267. package/dist-lib/components/pages/SmartDetailPage.d.ts +0 -2
  268. package/dist-lib/components/pages/SmartDetailPage.impl.d.ts +0 -4
  269. package/dist-lib/components/pages/SmartListPage.d.ts +0 -2
  270. package/dist-lib/components/pages/SmartListPage.impl.d.ts +0 -4
  271. package/dist-lib/components/pages/SmartRecordListPage.d.ts +0 -2
  272. package/dist-lib/components/pages/SmartRecordListPage.impl.d.ts +0 -4
  273. package/dist-lib/components/pages/auth/AuthShell.d.ts +0 -18
  274. package/dist-lib/components/pages/auth/Forgot.d.ts +0 -1
  275. package/dist-lib/components/pages/auth/Reset.d.ts +0 -1
  276. package/dist-lib/components/pages/auth/SignIn.d.ts +0 -1
  277. package/dist-lib/components/pages/auth/SignUp.d.ts +0 -1
  278. package/dist-lib/components/pages/auth/TwoFA.d.ts +0 -1
  279. package/dist-lib/components/pages/auth/icons.d.ts +0 -6
  280. package/dist-lib/components/pages/exportRequest.d.ts +0 -69
  281. package/dist-lib/components/pages/list/DataCell.d.ts +0 -4
  282. package/dist-lib/components/pages/list/DeleteViewDialog.d.ts +0 -8
  283. package/dist-lib/components/pages/list/ListCardRow.d.ts +0 -39
  284. package/dist-lib/components/pages/list/ListCardsBody.d.ts +0 -33
  285. package/dist-lib/components/pages/list/ListFloatbar.d.ts +0 -29
  286. package/dist-lib/components/pages/list/ListFooter.d.ts +0 -26
  287. package/dist-lib/components/pages/list/ListHeader.d.ts +0 -26
  288. package/dist-lib/components/pages/list/ListNoRows.d.ts +0 -31
  289. package/dist-lib/components/pages/list/ListTable.d.ts +0 -33
  290. package/dist-lib/components/pages/list/ListTableRow.d.ts +0 -17
  291. package/dist-lib/components/pages/list/ListToolbar.d.ts +0 -46
  292. package/dist-lib/components/pages/list/ListUrlBanner.d.ts +0 -10
  293. package/dist-lib/components/pages/list/RowActionsCell.d.ts +0 -34
  294. package/dist-lib/components/pages/list/RowContextMenu.d.ts +0 -28
  295. package/dist-lib/components/pages/list/SaveViewDialog.d.ts +0 -10
  296. package/dist-lib/components/pages/list/SortHeaderMenu.d.ts +0 -14
  297. package/dist-lib/components/pages/list/cardProjection.d.ts +0 -67
  298. package/dist-lib/components/pages/list/column-sizing.d.ts +0 -14
  299. package/dist-lib/components/pages/list/columns.d.ts +0 -46
  300. package/dist-lib/components/pages/list/filter-meta.d.ts +0 -25
  301. package/dist-lib/components/pages/list/page-size.d.ts +0 -3
  302. package/dist-lib/components/pages/list/sortable-header.d.ts +0 -2
  303. package/dist-lib/components/pages/list/table-features.d.ts +0 -14
  304. package/dist-lib/components/pages/list/use-filter-value-labels.d.ts +0 -24
  305. package/dist-lib/components/pages/list/useActiveView.d.ts +0 -45
  306. package/dist-lib/components/pages/list/useHeaderReorder.d.ts +0 -26
  307. package/dist-lib/components/pages/list/useListColumnLayout.d.ts +0 -38
  308. package/dist-lib/components/pages/list/useListQuery.d.ts +0 -67
  309. package/dist-lib/components/pages/list/useListRowInteraction.d.ts +0 -61
  310. package/dist-lib/components/pages/list/useListSelection.d.ts +0 -31
  311. package/dist-lib/components/pages/list/useListSort.d.ts +0 -46
  312. package/dist-lib/components/pages/list/useListViews.d.ts +0 -57
  313. package/dist-lib/components/pages/list/useRowMenu.d.ts +0 -46
  314. package/dist-lib/components/pages/profile/Preferences.d.ts +0 -1
  315. package/dist-lib/components/pages/profile/Profile.d.ts +0 -7
  316. package/dist-lib/components/pages/tenant-params/TenantParamsPage.d.ts +0 -2
  317. package/dist-lib/components/params/ParamsBlock.d.ts +0 -13
  318. package/dist-lib/components/params/param-editors.d.ts +0 -20
  319. package/dist-lib/components/primitives/Avatar.d.ts +0 -6
  320. package/dist-lib/components/primitives/BoolToggle.d.ts +0 -7
  321. package/dist-lib/components/primitives/BrandGlyph.d.ts +0 -8
  322. package/dist-lib/components/primitives/BrandLogo.d.ts +0 -12
  323. package/dist-lib/components/primitives/Btn.d.ts +0 -19
  324. package/dist-lib/components/primitives/Check.d.ts +0 -7
  325. package/dist-lib/components/primitives/Chip.d.ts +0 -9
  326. package/dist-lib/components/primitives/ClassifiedFieldLocked.d.ts +0 -9
  327. package/dist-lib/components/primitives/Dropdown.d.ts +0 -20
  328. package/dist-lib/components/primitives/Fields.d.ts +0 -111
  329. package/dist-lib/components/primitives/HoverCard.d.ts +0 -15
  330. package/dist-lib/components/primitives/IconBtn.d.ts +0 -11
  331. package/dist-lib/components/primitives/Icons.d.ts +0 -136
  332. package/dist-lib/components/primitives/Kbd.d.ts +0 -4
  333. package/dist-lib/components/primitives/MenuItem.d.ts +0 -14
  334. package/dist-lib/components/primitives/Pill.d.ts +0 -11
  335. package/dist-lib/components/primitives/RecordIdBadge.d.ts +0 -8
  336. package/dist-lib/components/primitives/RowField.d.ts +0 -10
  337. package/dist-lib/components/primitives/SectionCard.d.ts +0 -24
  338. package/dist-lib/components/primitives/Spinner.d.ts +0 -3
  339. package/dist-lib/components/primitives/Tooltip.d.ts +0 -34
  340. package/dist-lib/components/primitives/dataTableStyles.d.ts +0 -4
  341. package/dist-lib/components/primitives/index.d.ts +0 -37
  342. package/dist-lib/components/shared/ChangePasswordDialog.d.ts +0 -9
  343. package/dist-lib/components/shared/ConfirmDialog.d.ts +0 -11
  344. package/dist-lib/components/shared/CopyButton.d.ts +0 -8
  345. package/dist-lib/components/shared/DynamicIcon.d.ts +0 -20
  346. package/dist-lib/components/shared/EmptyState.d.ts +0 -9
  347. package/dist-lib/components/shared/ErrorBoundary.d.ts +0 -17
  348. package/dist-lib/components/shared/LoadingSkeleton.d.ts +0 -6
  349. package/dist-lib/components/shared/LucideIcon.d.ts +0 -16
  350. package/dist-lib/components/shared/Markdown.d.ts +0 -3
  351. package/dist-lib/components/shared/MarkdownRenderer.d.ts +0 -11
  352. package/dist-lib/components/shared/RefreshControl.d.ts +0 -25
  353. package/dist-lib/components/shared/StatusGroupsDisplay.d.ts +0 -11
  354. package/dist-lib/components/shared/StatusStepper.d.ts +0 -13
  355. package/dist-lib/components/shared/toast/DeclarionToast.d.ts +0 -31
  356. package/dist-lib/components/shared/useOwnRefresh.d.ts +0 -9
  357. package/dist-lib/embed/EmbedAuthBootstrap.d.ts +0 -8
  358. package/dist-lib/embed/EmbedContext.d.ts +0 -50
  359. package/dist-lib/embed/EmbedDirtyReporter.d.ts +0 -10
  360. package/dist-lib/embed/EmbedHistoryTracker.d.ts +0 -1
  361. package/dist-lib/embed/EmbedLocationReporter.d.ts +0 -8
  362. package/dist-lib/embed/EmbedResizeReporter.d.ts +0 -6
  363. package/dist-lib/embed/EmbedUnsavedGuard.d.ts +0 -7
  364. package/dist-lib/embed/embed-dirty.d.ts +0 -24
  365. package/dist-lib/embed/embed-history.d.ts +0 -19
  366. package/dist-lib/embed/embed-nav-guard.d.ts +0 -20
  367. package/dist-lib/embed/file-src.d.ts +0 -63
  368. package/dist-lib/embed/handshake.d.ts +0 -57
  369. package/dist-lib/embed/index.d.ts +0 -19
  370. package/dist-lib/embed/params.d.ts +0 -75
  371. package/dist-lib/embed/protocol.d.ts +0 -165
  372. package/dist-lib/embed/screen-location.d.ts +0 -50
  373. package/dist-lib/embed/theme.d.ts +0 -34
  374. package/dist-lib/embed/token.d.ts +0 -57
  375. package/dist-lib/embed/useEmbedNavigate.d.ts +0 -48
  376. package/dist-lib/embed/useGlobalLinkInterceptor.d.ts +0 -66
  377. package/dist-lib/failure-BUxXuP4c.js +0 -158
  378. package/dist-lib/format-count-bXVfHzbI.js +0 -1771
  379. package/dist-lib/hooks/useActionData.d.ts +0 -61
  380. package/dist-lib/hooks/useAgentConversation.d.ts +0 -24
  381. package/dist-lib/hooks/useAllEntityData.d.ts +0 -16
  382. package/dist-lib/hooks/useAssociatedData.d.ts +0 -10
  383. package/dist-lib/hooks/useAuth.d.ts +0 -22
  384. package/dist-lib/hooks/useBranding.d.ts +0 -8
  385. package/dist-lib/hooks/useBrandingChrome.d.ts +0 -59
  386. package/dist-lib/hooks/useChildrenData.d.ts +0 -3
  387. package/dist-lib/hooks/useColumns.d.ts +0 -13
  388. package/dist-lib/hooks/useCurrentScreen.d.ts +0 -34
  389. package/dist-lib/hooks/useCursorEntityData.d.ts +0 -79
  390. package/dist-lib/hooks/useDebounce.d.ts +0 -1
  391. package/dist-lib/hooks/useEntity.d.ts +0 -2
  392. package/dist-lib/hooks/useEntityData.d.ts +0 -41
  393. package/dist-lib/hooks/useFilters.d.ts +0 -14
  394. package/dist-lib/hooks/useImpersonation.d.ts +0 -23
  395. package/dist-lib/hooks/useLanguage.d.ts +0 -4
  396. package/dist-lib/hooks/useLiveObject.d.ts +0 -9
  397. package/dist-lib/hooks/useLongPress.d.ts +0 -29
  398. package/dist-lib/hooks/useMutations.d.ts +0 -13
  399. package/dist-lib/hooks/useObject.d.ts +0 -11
  400. package/dist-lib/hooks/useObjectStatus.d.ts +0 -5
  401. package/dist-lib/hooks/usePageState.d.ts +0 -32
  402. package/dist-lib/hooks/usePageStateRuntime.d.ts +0 -27
  403. package/dist-lib/hooks/usePageStateTtl.d.ts +0 -11
  404. package/dist-lib/hooks/useParams.d.ts +0 -49
  405. package/dist-lib/hooks/useProperties.d.ts +0 -5
  406. package/dist-lib/hooks/useRealtimeThresholds.d.ts +0 -1
  407. package/dist-lib/hooks/useRegisterScreenTab.d.ts +0 -11
  408. package/dist-lib/hooks/useResponsiveMode.d.ts +0 -27
  409. package/dist-lib/hooks/useSSE.d.ts +0 -31
  410. package/dist-lib/hooks/useSchema.d.ts +0 -1
  411. package/dist-lib/hooks/useScreen.d.ts +0 -2
  412. package/dist-lib/hooks/useScreenBack.d.ts +0 -21
  413. package/dist-lib/hooks/useScreenTab.d.ts +0 -10
  414. package/dist-lib/hooks/useTabNavigate.d.ts +0 -34
  415. package/dist-lib/hooks/useTabSearchMirror.d.ts +0 -1
  416. package/dist-lib/hooks/useTabTitle.d.ts +0 -2
  417. package/dist-lib/hooks/useText.d.ts +0 -3
  418. package/dist-lib/hooks/useTimelineData.d.ts +0 -10
  419. package/dist-lib/hooks/useVersionWatcher.d.ts +0 -30
  420. package/dist-lib/hooks/useViews.d.ts +0 -26
  421. package/dist-lib/lib/action-dispatch.d.ts +0 -8
  422. package/dist-lib/lib/actions.d.ts +0 -254
  423. package/dist-lib/lib/anchor.d.ts +0 -36
  424. package/dist-lib/lib/brand-tokens.d.ts +0 -43
  425. package/dist-lib/lib/branding.d.ts +0 -20
  426. package/dist-lib/lib/canonical-url.d.ts +0 -27
  427. package/dist-lib/lib/capabilityPrefetch.d.ts +0 -6
  428. package/dist-lib/lib/child-config.d.ts +0 -24
  429. package/dist-lib/lib/children-validation.d.ts +0 -5
  430. package/dist-lib/lib/decimal-text.d.ts +0 -1
  431. package/dist-lib/lib/display-value.d.ts +0 -1
  432. package/dist-lib/lib/document-templates.d.ts +0 -11
  433. package/dist-lib/lib/download.d.ts +0 -21
  434. package/dist-lib/lib/evidence-verdict.d.ts +0 -11
  435. package/dist-lib/lib/failure.d.ts +0 -2
  436. package/dist-lib/lib/field-classification.d.ts +0 -61
  437. package/dist-lib/lib/field-regions.d.ts +0 -8
  438. package/dist-lib/lib/filter-evaluator.d.ts +0 -16
  439. package/dist-lib/lib/filters.d.ts +0 -93
  440. package/dist-lib/lib/format-count.d.ts +0 -41
  441. package/dist-lib/lib/html-state.d.ts +0 -11
  442. package/dist-lib/lib/language.d.ts +0 -19
  443. package/dist-lib/lib/longPressGesture.d.ts +0 -55
  444. package/dist-lib/lib/mass-edit.d.ts +0 -32
  445. package/dist-lib/lib/page-inset.d.ts +0 -3
  446. package/dist-lib/lib/quick-add.d.ts +0 -2
  447. package/dist-lib/lib/realtime-query-keys.d.ts +0 -22
  448. package/dist-lib/lib/realtime-reconcile.d.ts +0 -33
  449. package/dist-lib/lib/realtime-resync.d.ts +0 -23
  450. package/dist-lib/lib/record-documents-key.d.ts +0 -1
  451. package/dist-lib/lib/rich-text.d.ts +0 -14
  452. package/dist-lib/lib/rowClickGesture.d.ts +0 -26
  453. package/dist-lib/lib/safe-url.d.ts +0 -15
  454. package/dist-lib/lib/schema-routing.d.ts +0 -3
  455. package/dist-lib/lib/screen-back.d.ts +0 -70
  456. package/dist-lib/lib/scroll-restoration.d.ts +0 -90
  457. package/dist-lib/lib/size-value.d.ts +0 -16
  458. package/dist-lib/lib/sort.d.ts +0 -72
  459. package/dist-lib/lib/timestamp.d.ts +0 -53
  460. package/dist-lib/lib/toast.d.ts +0 -49
  461. package/dist-lib/lib/ui-actions.d.ts +0 -12
  462. package/dist-lib/lib/utils.d.ts +0 -9
  463. package/dist-lib/lib/variants.d.ts +0 -7
  464. package/dist-lib/lib/versionTracker.d.ts +0 -72
  465. package/dist-lib/lib/viewport-category.d.ts +0 -44
  466. package/dist-lib/main.d.ts +0 -1
  467. package/dist-lib/registry-nSeHd5si.js +0 -1956
  468. package/dist-lib/safe-url-oSJw5pzO.js +0 -34
  469. package/dist-lib/stores/auth.d.ts +0 -16
  470. package/dist-lib/stores/list-layout.d.ts +0 -85
  471. package/dist-lib/stores/page-state.d.ts +0 -61
  472. package/dist-lib/stores/preferences.d.ts +0 -37
  473. package/dist-lib/stores/realtime.d.ts +0 -96
  474. package/dist-lib/stores/screen-registry.d.ts +0 -17
  475. package/dist-lib/stores/tabs.d.ts +0 -73
  476. package/dist-lib/types/api.d.ts +0 -579
  477. package/dist-lib/types/fieldType.d.ts +0 -2
  478. package/dist-lib/types/files.d.ts +0 -79
  479. package/dist-lib/types/ordmap.d.ts +0 -39
  480. package/dist-lib/types/schema.d.ts +0 -1089
  481. package/dist-lib/useCurrentScreen-0WBj7wT6.js +0 -7860
  482. package/dist-lib/useListQuery-C7dq_sEo.js +0 -103
  483. package/dist-lib/useOwnRefresh-q80kCMMh.js +0 -1167
  484. package/dist-lib/useProperties-CeGKtq7Q.js +0 -83
  485. package/dist-lib/useTabSearchMirror-CzNAj82Q.js +0 -175
  486. package/dist-lib/useText-BsedsJ-J.js +0 -952
  487. package/dist-lib/vite/fingerprint-plugin.d.ts +0 -44
@@ -1,1771 +0,0 @@
1
- import { s as e, t } from "./DynamicIcon-DW5krHuX.js";
2
- import { G as n, Gn as r, Hn as i, It as a, J as o, Jn as s, Vn as c, W as l, Wn as u, bt as d, gn as f, i as p, pn as m, qn as h, rn as g, rt as _, sn as v, un as y } from "./useCurrentScreen-0WBj7wT6.js";
3
- import { d as b, f as x, t as S } from "./useText-BsedsJ-J.js";
4
- import { T as C, g as w, h as T, r as E } from "./useOwnRefresh-q80kCMMh.js";
5
- import { c as ee, o as D, p as te, r as ne } from "./action-dispatch-gWmOYjOP.js";
6
- import { a as O, d as k, f as A, h as j, i as M, o as N, s as P, u as F } from "./useTabSearchMirror-CzNAj82Q.js";
7
- import { Fragment as I, useCallback as L, useEffect as R, useMemo as z, useRef as B, useState as V } from "react";
8
- import { useLocation as re, useSearchParams as ie } from "react-router";
9
- import { Fragment as H, jsx as U, jsxs as W } from "react/jsx-runtime";
10
- //#region src/components/primitives/Avatar.tsx
11
- function G({ name: e, size: t = 22, color: n }) {
12
- let r = e.split(/\s+/).map((e) => e[0]).slice(0, 2).join("").toUpperCase(), i = e.split("").reduce((e, t) => e + t.charCodeAt(0), 0), a = [
13
- "#DCE4F6",
14
- "#E4DCF6",
15
- "#F6DCE4",
16
- "#F6E4DC",
17
- "#DCF6E4",
18
- "#DCF6F1",
19
- "#F1F6DC",
20
- "#F6DCF1"
21
- ], o = n || a[i % a.length];
22
- return /* @__PURE__ */ U("span", {
23
- style: {
24
- display: "inline-flex",
25
- alignItems: "center",
26
- justifyContent: "center",
27
- width: t,
28
- height: t,
29
- borderRadius: 999,
30
- background: o,
31
- color: "#1E2A4A",
32
- fontSize: t < 20 ? 9.5 : 10.5,
33
- fontWeight: 600,
34
- flexShrink: 0
35
- },
36
- children: r
37
- });
38
- }
39
- //#endregion
40
- //#region src/components/shared/ConfirmDialog.tsx
41
- function ae({ open: t, onOpenChange: n, title: r, description: i, confirmLabel: a, onConfirm: o, destructive: c = !1 }) {
42
- let l = S(), u = B(null);
43
- return R(() => {
44
- t && u.current?.focus();
45
- }, [t]), t ? /* @__PURE__ */ W(H, { children: [/* @__PURE__ */ U("div", {
46
- onClick: () => n(!1),
47
- style: {
48
- position: "fixed",
49
- inset: 0,
50
- background: "var(--scrim)",
51
- zIndex: 60,
52
- backdropFilter: "blur(2px)"
53
- }
54
- }), /* @__PURE__ */ W("div", {
55
- ref: u,
56
- role: "dialog",
57
- "aria-modal": "true",
58
- "aria-label": r,
59
- tabIndex: -1,
60
- onKeyDown: (e) => {
61
- e.key === "Escape" && n(!1);
62
- },
63
- style: {
64
- position: "fixed",
65
- top: "50%",
66
- left: "50%",
67
- transform: "translate(-50%, -50%)",
68
- zIndex: 61,
69
- width: "calc(100vw - 24px)",
70
- maxWidth: 460,
71
- maxHeight: "calc(var(--app-height) - var(--safe-area-top) - var(--safe-area-bottom) - 16px)",
72
- background: "var(--surface)",
73
- borderRadius: 12,
74
- boxShadow: "var(--shadow-lg)",
75
- border: "1px solid var(--border)",
76
- overflow: "hidden",
77
- display: "flex",
78
- flexDirection: "column",
79
- outline: "none"
80
- },
81
- children: [/* @__PURE__ */ W("div", {
82
- style: {
83
- padding: "14px 18px",
84
- display: "flex",
85
- alignItems: "center",
86
- gap: 10,
87
- minWidth: 0,
88
- overflowY: "auto"
89
- },
90
- children: [
91
- /* @__PURE__ */ U("span", {
92
- style: {
93
- width: 28,
94
- height: 28,
95
- borderRadius: 7,
96
- background: c ? "var(--danger-soft)" : "var(--accent-soft)",
97
- color: c ? "var(--danger)" : "var(--accent)",
98
- display: "inline-flex",
99
- alignItems: "center",
100
- justifyContent: "center",
101
- flexShrink: 0
102
- },
103
- children: U(c ? e.trash : e.info, { size: 15 })
104
- }),
105
- /* @__PURE__ */ W("div", {
106
- style: {
107
- flex: 1,
108
- minWidth: 0
109
- },
110
- children: [/* @__PURE__ */ U("div", {
111
- style: {
112
- fontSize: 14,
113
- fontWeight: 600,
114
- color: "var(--text)"
115
- },
116
- children: r
117
- }), /* @__PURE__ */ U("div", {
118
- style: {
119
- fontSize: 11.5,
120
- color: "var(--text-3)",
121
- marginTop: 2
122
- },
123
- children: i
124
- })]
125
- }),
126
- /* @__PURE__ */ U(h, {
127
- icon: /* @__PURE__ */ U(e.x, { size: 14 }),
128
- onClick: () => n(!1)
129
- })
130
- ]
131
- }), /* @__PURE__ */ W("div", {
132
- style: {
133
- padding: "10px 16px",
134
- borderTop: "1px solid var(--divider)",
135
- display: "flex",
136
- alignItems: "center",
137
- justifyContent: "flex-end",
138
- flexWrap: "wrap",
139
- gap: 8,
140
- background: "var(--surface-2)",
141
- flexShrink: 0
142
- },
143
- children: [
144
- /* @__PURE__ */ U("div", { style: { flex: 1 } }),
145
- /* @__PURE__ */ U(s, {
146
- onClick: () => n(!1),
147
- children: l("dialog.cancel", "Cancel")
148
- }),
149
- /* @__PURE__ */ U(s, {
150
- kind: "primary",
151
- danger: c,
152
- onClick: () => {
153
- o(), n(!1);
154
- },
155
- children: a ?? l("dialog.confirm", "Confirm")
156
- })
157
- ]
158
- })]
159
- })] }) : null;
160
- }
161
- //#endregion
162
- //#region src/hooks/useScreen.ts
163
- function K(e) {
164
- let { data: t } = x();
165
- if (t && e) return t.screens[e];
166
- }
167
- //#endregion
168
- //#region src/hooks/useFilters.ts
169
- var oe = [];
170
- function se({ defaults: e = oe } = {}) {
171
- let [t, n] = ie(), r = S("errors"), i = z(() => A(t), [t]), a = i.error === null && t.get("filters") !== null ? i.filters : e, o = z(() => P(a), [a]), s = L((r) => {
172
- let i = new URLSearchParams(t);
173
- j(r, i, e), i.set("page", "1"), n(i);
174
- }, [
175
- t,
176
- n,
177
- e
178
- ]), c = L(() => {
179
- let e = new URLSearchParams(t);
180
- e.delete("filters"), e.set("page", "1"), n(e);
181
- }, [t, n]);
182
- return {
183
- filters: a,
184
- filterError: i.error === null ? null : r(i.errorCode ?? "", i.error),
185
- activeCount: o,
186
- setFilters: s,
187
- clearFilters: c
188
- };
189
- }
190
- //#endregion
191
- //#region src/hooks/useViews.ts
192
- function q(e, t) {
193
- let n = t && String(e.user_id) === t;
194
- return {
195
- id: String(e.id),
196
- name: typeof e.name == "object" && e.name !== null ? e.name : { en: c(e.name) },
197
- icon: e.icon,
198
- source: n ? "personal" : "shared",
199
- is_default: e.is_default === !0,
200
- filters: e.filters,
201
- columns: e.columns,
202
- sort: e.sort
203
- };
204
- }
205
- function ce(e, t) {
206
- let n = a("view", {
207
- filters: [{
208
- field: "id",
209
- op: "eq",
210
- value: e ?? ""
211
- }],
212
- per_page: 1
213
- }, !!e), r = n.data?.data?.[0], i = z(() => r ? q(r, t) : void 0, [r, t]);
214
- return e ? {
215
- view: i,
216
- isSettled: !n.isPending || n.fetchStatus === "paused"
217
- } : {
218
- view: void 0,
219
- isSettled: !0
220
- };
221
- }
222
- function le(e, t) {
223
- return J(e, t).views;
224
- }
225
- function J(e, t) {
226
- let n = K(e), r = a("view", {
227
- filters: [{
228
- field: "screen_code",
229
- op: "eq",
230
- value: e
231
- }, ...t ? [{ or: [{
232
- field: "user_id",
233
- op: "eq",
234
- value: t
235
- }, {
236
- field: "is_shared",
237
- op: "eq",
238
- value: "true"
239
- }] }] : []],
240
- sort: "created_at:desc",
241
- per_page: 100
242
- }), i = r.data, o = z(() => {
243
- let e = [];
244
- if (n?.views) for (let t of n.views) e.push({
245
- id: t.code,
246
- name: t.name,
247
- icon: t.icon,
248
- source: "system",
249
- filters: t.filters,
250
- columns: t.columns,
251
- sort: t.sort
252
- });
253
- if (i?.data) for (let n of i.data) e.push(q(n, t));
254
- return e;
255
- }, [
256
- n?.views,
257
- i?.data,
258
- t
259
- ]), { refetch: s } = r;
260
- return {
261
- views: o,
262
- isSettled: !r.isPending || r.fetchStatus === "paused",
263
- isFetching: r.isFetching,
264
- refetch: L(() => {
265
- s();
266
- }, [s])
267
- };
268
- }
269
- //#endregion
270
- //#region src/hooks/usePageState.ts
271
- function ue(e, t, n) {
272
- let r = re(), i = n?.scope === "path" ? T(r) : w(r), a = B(i);
273
- a.current = i;
274
- let o = B(t), s = C((t) => t.ttlMs <= 0 ? void 0 : t.entries[i]?.bag[e]), c = s === void 0 ? o.current : s;
275
- return R(() => {
276
- C.getState().touch(i);
277
- }, [i]), [c, L((t) => {
278
- let n = a.current, r = C.getState(), i = r.read(n, e), s = i === void 0 ? o.current : i, c = typeof t == "function" ? t(s) : t;
279
- r.set(n, e, c);
280
- }, [e])];
281
- }
282
- //#endregion
283
- //#region src/components/shared/EmptyState.tsx
284
- function de({ icon: e, title: n, description: r, action: i }) {
285
- return /* @__PURE__ */ W("div", {
286
- "data-testid": "empty-state",
287
- style: {
288
- display: "flex",
289
- flexDirection: "column",
290
- alignItems: "center",
291
- justifyContent: "center",
292
- padding: "64px 16px",
293
- textAlign: "center"
294
- },
295
- children: [
296
- e && /* @__PURE__ */ U("div", {
297
- style: {
298
- marginBottom: 16,
299
- borderRadius: 999,
300
- background: "var(--surface-3)",
301
- padding: 16,
302
- color: "var(--text-3)",
303
- display: "inline-flex"
304
- },
305
- children: /* @__PURE__ */ U(t, {
306
- name: e,
307
- size: 32
308
- })
309
- }),
310
- /* @__PURE__ */ U("h3", {
311
- style: {
312
- margin: 0,
313
- fontSize: 15,
314
- fontWeight: 600,
315
- color: "var(--text)"
316
- },
317
- children: n
318
- }),
319
- r && /* @__PURE__ */ U("p", {
320
- style: {
321
- marginTop: 4,
322
- fontSize: 12.5,
323
- color: "var(--text-3)",
324
- maxWidth: 420
325
- },
326
- children: r
327
- }),
328
- i && /* @__PURE__ */ U("div", {
329
- style: { marginTop: 16 },
330
- children: i
331
- })
332
- ]
333
- });
334
- }
335
- //#endregion
336
- //#region src/components/filters/filter-op-label.ts
337
- function Y(e, t) {
338
- let n = N[t];
339
- return n ? e(`filter.op.${t}`, n) : t;
340
- }
341
- //#endregion
342
- //#region src/components/filters/FilterDrawer.tsx
343
- function fe({ open: t, onClose: n, filters: r, onApply: i, availableFields: a, defaultFilters: o, refs: c }) {
344
- let l = S(), u = f().category === "phone", [d, p] = V(r), [m, g] = V(!1);
345
- if (R(() => {
346
- if (t) {
347
- if (r.length === 0 && o && o.length > 0) {
348
- let e = o.flatMap((e) => {
349
- let t = a.find((t) => t.code === e);
350
- return t ? [{
351
- field: e,
352
- op: t.operators[0] || "eq"
353
- }] : [];
354
- });
355
- p(e);
356
- return;
357
- }
358
- p(r);
359
- }
360
- }, [
361
- t,
362
- r,
363
- o,
364
- a
365
- ]), !t) return null;
366
- let _ = k(d), v = new Set(F(d).filter((e) => e.field).map((e) => e.field)), y = (e = d) => {
367
- let t = new Set(F(e).map((e) => e.field).filter(Boolean)), n = a.find((e) => !t.has(e.code)) ?? a[0];
368
- return n ? {
369
- field: n.code,
370
- op: n.operators[0] || "eq"
371
- } : {};
372
- }, b = (e) => {
373
- let t = a.find((t) => t.code === e);
374
- if (!t) return;
375
- let n = t.operators[0] || "eq";
376
- p((t) => [...t, {
377
- field: e,
378
- op: n
379
- }]), g(!1);
380
- }, x = () => {
381
- let e = d.filter((e) => e.field && e.op), t = d.filter((e) => !e.field || !e.op), n = e.length === 1 ? e[0] : e.length > 1 ? { and: e } : {};
382
- p([...t, { or: [n, {}] }]);
383
- }, C = (e, t) => {
384
- p((n) => Q(n, e, (e) => ({
385
- ...e,
386
- ...t
387
- })));
388
- }, w = (e, t) => {
389
- p((n) => xe(n, e, t));
390
- }, T = (e) => {
391
- p((t) => Se(t, e));
392
- }, E = (e, t) => {
393
- p((n) => Q(n, e, (e) => e.or ? {
394
- ...e,
395
- or: [...e.or, t]
396
- } : e.and ? {
397
- ...e,
398
- and: [...e.and, t]
399
- } : e));
400
- }, ee = (e, t) => {
401
- let n = [...e, t], r = be(d, n);
402
- if (!r) return;
403
- let i = y();
404
- r.and ? E(n, i) : r.field || r.op || r.or ? w(n, { and: [r, i] }) : w(n, i);
405
- }, D = (e, t) => {
406
- if (e.or || e.and) return /* @__PURE__ */ U(ye, {
407
- node: e,
408
- renderNode: D,
409
- onRemoveChild: T,
410
- onAddCondition: (n) => {
411
- e.or && n !== void 0 ? ee(t, n) : E(t, y(e.or ?? e.and));
412
- },
413
- onAddBranch: () => E(t, {}),
414
- path: t
415
- }, t.join("-"));
416
- if (!e.field || !e.op) return /* @__PURE__ */ U("div", { style: { minHeight: 4 } }, t.join("-"));
417
- let n = a.find((t) => t.code === e.field);
418
- return n ? /* @__PURE__ */ U(ve, {
419
- node: e,
420
- meta: n,
421
- refs: c,
422
- onUpdate: (e) => C(t, e),
423
- onRemove: () => T(t)
424
- }, t.join("-")) : null;
425
- };
426
- return /* @__PURE__ */ W(H, { children: [/* @__PURE__ */ U("div", {
427
- onClick: n,
428
- style: {
429
- position: "fixed",
430
- inset: 0,
431
- background: "var(--scrim-lite)",
432
- zIndex: 40
433
- }
434
- }), /* @__PURE__ */ W("div", {
435
- role: "dialog",
436
- "aria-label": l("filter.drawer.title", "Filters"),
437
- "aria-modal": "true",
438
- "data-testid": "filter-drawer",
439
- style: {
440
- position: "fixed",
441
- top: "calc(var(--topbar-h) + var(--safe-area-top))",
442
- right: "var(--safe-area-right)",
443
- width: "min(400px, calc(100vw - var(--safe-area-left) - var(--safe-area-right)))",
444
- height: "calc(var(--app-height) - var(--topbar-h) - var(--safe-area-top) - var(--safe-area-bottom) - var(--tabbar-h))",
445
- maxHeight: "calc(var(--app-height) - var(--topbar-h) - var(--safe-area-top) - var(--safe-area-bottom) - var(--tabbar-h))",
446
- background: "var(--surface)",
447
- borderLeft: "1px solid var(--border)",
448
- boxShadow: "var(--shadow-lg)",
449
- zIndex: 50,
450
- display: "flex",
451
- flexDirection: "column",
452
- boxSizing: "border-box",
453
- minWidth: 0,
454
- overflow: "hidden"
455
- },
456
- children: [
457
- /* @__PURE__ */ W("div", {
458
- style: {
459
- display: "flex",
460
- alignItems: "center",
461
- justifyContent: "space-between",
462
- padding: "10px 14px",
463
- borderBottom: "1px solid var(--divider)"
464
- },
465
- children: [/* @__PURE__ */ W("div", {
466
- style: {
467
- display: "flex",
468
- alignItems: "center",
469
- gap: 8
470
- },
471
- children: [/* @__PURE__ */ U(e.filter, { size: 14 }), /* @__PURE__ */ U("h3", {
472
- style: {
473
- margin: 0,
474
- fontSize: 13,
475
- fontWeight: 600,
476
- color: "var(--text)"
477
- },
478
- children: l("filter.drawer.title", "Filters")
479
- })]
480
- }), /* @__PURE__ */ U(h, {
481
- icon: /* @__PURE__ */ U(e.x, { size: 14 }),
482
- onClick: n,
483
- title: l("filter.drawer.close", "Close")
484
- })]
485
- }),
486
- /* @__PURE__ */ W("div", {
487
- style: {
488
- flex: 1,
489
- overflowY: "auto",
490
- padding: 14,
491
- display: "flex",
492
- flexDirection: "column",
493
- gap: 10,
494
- minWidth: 0,
495
- minHeight: 0
496
- },
497
- children: [d.map((e, t) => D(e, [t])), /* @__PURE__ */ U("div", {
498
- style: {
499
- display: "flex",
500
- alignItems: "center",
501
- gap: 6,
502
- paddingTop: 6
503
- },
504
- children: m ? /* @__PURE__ */ U(Ce, {
505
- fields: a,
506
- activeFields: v,
507
- compact: u,
508
- onSelect: b,
509
- onCancel: () => g(!1)
510
- }) : /* @__PURE__ */ W(H, { children: [/* @__PURE__ */ U(s, {
511
- icon: /* @__PURE__ */ U(e.plus, { size: 12 }),
512
- onClick: () => g(!0),
513
- children: l("filter.drawer.add_filter", "Add filter")
514
- }), !_ && F(d).length > 0 && /* @__PURE__ */ U(s, {
515
- kind: "ghost",
516
- icon: /* @__PURE__ */ U(e.plus, { size: 12 }),
517
- onClick: x,
518
- children: l("filter.drawer.add_or_group", "Add OR group")
519
- })] })
520
- })]
521
- }),
522
- /* @__PURE__ */ W("div", {
523
- style: {
524
- display: "flex",
525
- alignItems: "center",
526
- padding: "10px 14px",
527
- borderTop: "1px solid var(--divider)",
528
- background: "var(--surface-2)",
529
- gap: 6,
530
- flexWrap: "wrap",
531
- minWidth: 0,
532
- paddingBottom: "calc(10px + var(--safe-area-bottom))"
533
- },
534
- children: [
535
- /* @__PURE__ */ U(s, {
536
- kind: "ghost",
537
- onClick: () => {
538
- p([]);
539
- },
540
- children: l("filter.drawer.reset", "Reset")
541
- }),
542
- /* @__PURE__ */ U("div", { style: { flex: 1 } }),
543
- /* @__PURE__ */ U(s, {
544
- onClick: n,
545
- children: l("dialog.cancel", "Cancel")
546
- }),
547
- /* @__PURE__ */ U(s, {
548
- kind: "primary",
549
- onClick: () => {
550
- i(X(d)), n();
551
- },
552
- children: l("filter.drawer.apply", "Apply")
553
- })
554
- ]
555
- })
556
- ]
557
- })] });
558
- }
559
- function pe(e) {
560
- return e == null || e === "" ? !1 : !Array.isArray(e) || e.length > 0;
561
- }
562
- function X(e) {
563
- let t = [];
564
- for (let n of e) {
565
- if (n.or) {
566
- let e = X(n.or);
567
- e.length > 0 && t.push({
568
- ...n,
569
- or: e
570
- });
571
- continue;
572
- }
573
- if (n.and) {
574
- let e = X(n.and);
575
- e.length > 0 && t.push({
576
- ...n,
577
- and: e
578
- });
579
- continue;
580
- }
581
- n.field && n.op && (O.has(n.op) || pe(n.value)) && t.push(n);
582
- }
583
- return t;
584
- }
585
- function Z(e, t) {
586
- return !t || t.length === 0 ? [] : [
587
- {
588
- value: "",
589
- label: e("filter.value.special", "Special values"),
590
- heading: !0
591
- },
592
- ...t.map((t) => ({
593
- value: t.code,
594
- label: e(t.label) || t.code
595
- })),
596
- {
597
- value: "",
598
- label: "",
599
- divider: !0
600
- }
601
- ];
602
- }
603
- var me = "__custom__";
604
- function he({ meta: e, value: t, onUpdate: n }) {
605
- let r = S(), i = e.specialValues ?? [], a = c(t), o = i.some((e) => e.code === a), [s, l] = V(!o && a !== "");
606
- return s ? /* @__PURE__ */ U(y, {
607
- "aria-label": r("filter.value.aria", "{field} filter value", { field: e.label }),
608
- value: a,
609
- onChange: (e) => n({ value: e }),
610
- placeholder: r("filter.value.placeholder", "Value…"),
611
- autoFocus: !0
612
- }) : /* @__PURE__ */ U(v, {
613
- "aria-label": r("filter.value.aria", "{field} filter value", { field: e.label }),
614
- value: a,
615
- options: [
616
- {
617
- value: "",
618
- label: r("filter.value.select", "Select…")
619
- },
620
- ...Z(r, i),
621
- {
622
- value: me,
623
- label: r("filter.value.custom", "Custom value…")
624
- }
625
- ],
626
- onChange: (e) => {
627
- e === me ? (l(!0), n({ value: "" })) : n({ value: e });
628
- }
629
- });
630
- }
631
- function ge(e) {
632
- return Array.isArray(e) ? e.map((e) => c(e)) : e == null || e === "" ? [] : [c(e)];
633
- }
634
- function _e(e) {
635
- return Array.isArray(e) ? e.length > 0 ? c(e[0]) : "" : c(e);
636
- }
637
- function ve({ node: t, meta: n, refs: r, onUpdate: i, onRemove: a }) {
638
- let o = S(), s = O.has(t.op), l = M.has(t.op), u = n.operators.map((e) => ({
639
- value: e,
640
- label: Y(o, e)
641
- })), f = o("filter.value.aria", "{field} filter value", { field: n.label }), p = (e) => {
642
- let n = M.has(t.op), r = M.has(e);
643
- if (r === n) {
644
- i({ op: e });
645
- return;
646
- }
647
- i({
648
- op: e,
649
- value: r ? ge(t.value) : _e(t.value)
650
- });
651
- };
652
- return /* @__PURE__ */ W("div", {
653
- style: {
654
- display: "flex",
655
- flexDirection: "column",
656
- gap: 6,
657
- minWidth: 0
658
- },
659
- children: [/* @__PURE__ */ W("div", {
660
- style: {
661
- display: "flex",
662
- alignItems: "center",
663
- gap: 8,
664
- minWidth: 0
665
- },
666
- children: [/* @__PURE__ */ U("span", {
667
- style: {
668
- flex: 1,
669
- fontSize: 12.5,
670
- fontWeight: 600,
671
- color: "var(--text)",
672
- overflow: "hidden",
673
- textOverflow: "ellipsis",
674
- whiteSpace: "nowrap",
675
- minWidth: 0
676
- },
677
- title: n.label,
678
- children: n.label
679
- }), /* @__PURE__ */ U(h, {
680
- size: 22,
681
- icon: /* @__PURE__ */ U(e.x, { size: 12 }),
682
- onClick: a,
683
- title: o("filter.drawer.remove", "Remove")
684
- })]
685
- }), /* @__PURE__ */ W("div", {
686
- style: {
687
- display: "grid",
688
- gridTemplateColumns: s ? "minmax(0, 1fr)" : "minmax(112px, 152px) minmax(0, 1fr)",
689
- gap: 6,
690
- alignItems: "start",
691
- minWidth: 0
692
- },
693
- children: [/* @__PURE__ */ U(v, {
694
- "aria-label": o("filter.operator.aria", "{field} filter operator", { field: n.label }),
695
- value: t.op ?? u[0]?.value,
696
- options: u,
697
- onChange: (e) => p(e)
698
- }), s ? null : l && n.options ? /* @__PURE__ */ U(g, {
699
- "aria-label": f,
700
- value: ge(t.value),
701
- options: [...Z(o, n.specialValues), ...n.options.map((e) => ({
702
- value: e.value,
703
- label: e.label
704
- }))],
705
- onChange: (e) => i({ value: e }),
706
- placeholder: o("filter.value.select", "Select…")
707
- }) : n.type === "ref" && n.ref?.entity ? /* @__PURE__ */ U(d, {
708
- ref: n.ref,
709
- value: t.value,
710
- onChange: (e) => i({ value: e ?? "" }),
711
- refs: r,
712
- ariaLabel: f,
713
- placeholder: o("filter.value.select", "Select…"),
714
- specialValues: n.specialValues
715
- }) : n.options ? /* @__PURE__ */ U(v, {
716
- "aria-label": f,
717
- value: c(t.value),
718
- options: [...Z(o, n.specialValues), ...n.options.map((e) => ({
719
- value: e.value,
720
- label: e.label
721
- }))],
722
- onChange: (e) => i({ value: e }),
723
- placeholder: o("filter.value.select", "Select…")
724
- }) : n.specialValues && n.specialValues.length > 0 ? /* @__PURE__ */ U(he, {
725
- meta: n,
726
- value: t.value,
727
- onUpdate: i
728
- }) : /* @__PURE__ */ U(y, {
729
- "aria-label": f,
730
- value: c(t.value),
731
- onChange: (e) => i({ value: e }),
732
- placeholder: o("filter.value.placeholder", "Value…")
733
- })]
734
- })]
735
- });
736
- }
737
- function ye({ node: t, renderNode: n, onRemoveChild: r, onAddCondition: i, onAddBranch: a, path: o }) {
738
- let c = S(), l = t.or ?? t.and ?? [], u = t.or !== void 0;
739
- return /* @__PURE__ */ W("div", {
740
- style: {
741
- display: "flex",
742
- flexDirection: "column",
743
- gap: 8
744
- },
745
- children: [
746
- l.map((t, a) => {
747
- let l = [...o, a], d = u && t.and ? t.and : [t];
748
- return /* @__PURE__ */ W("div", { children: [u && a > 0 && /* @__PURE__ */ W("div", {
749
- style: {
750
- display: "flex",
751
- alignItems: "center",
752
- gap: 8,
753
- padding: "4px 0"
754
- },
755
- children: [
756
- /* @__PURE__ */ U("div", { style: {
757
- flex: 1,
758
- borderTop: "1px solid var(--divider)"
759
- } }),
760
- /* @__PURE__ */ U("span", {
761
- style: {
762
- fontSize: 11,
763
- fontWeight: 600,
764
- color: "var(--text-3)",
765
- padding: "0 6px"
766
- },
767
- children: c("filter.join.or", "OR")
768
- }),
769
- /* @__PURE__ */ U("div", { style: {
770
- flex: 1,
771
- borderTop: "1px solid var(--divider)"
772
- } })
773
- ]
774
- }), /* @__PURE__ */ W("div", {
775
- style: {
776
- border: "1px solid var(--border)",
777
- borderRadius: 8,
778
- padding: 10,
779
- display: "flex",
780
- flexDirection: "column",
781
- gap: 8
782
- },
783
- children: [
784
- u && /* @__PURE__ */ U("div", {
785
- style: {
786
- fontSize: 10.5,
787
- fontWeight: 600,
788
- color: "var(--text-3)",
789
- textTransform: "uppercase",
790
- letterSpacing: "0.08em"
791
- },
792
- children: c("filter.group.match_all", "Match ALL")
793
- }),
794
- d.map((e, r) => n(e, u && t.and ? [...l, r] : l)),
795
- u && /* @__PURE__ */ U(s, {
796
- kind: "ghost",
797
- size: "xs",
798
- icon: /* @__PURE__ */ U(e.plus, { size: 11 }),
799
- onClick: () => i(a),
800
- children: c("filter.group.add_condition", "Add condition")
801
- }),
802
- u && /* @__PURE__ */ U(h, {
803
- size: 22,
804
- icon: /* @__PURE__ */ U(e.x, { size: 12 }),
805
- onClick: () => r(l),
806
- title: c("filter.group.remove_alternative", "Remove OR alternative")
807
- })
808
- ]
809
- })] }, a);
810
- }),
811
- !u && /* @__PURE__ */ U(s, {
812
- kind: "ghost",
813
- size: "xs",
814
- icon: /* @__PURE__ */ U(e.plus, { size: 11 }),
815
- onClick: () => i(),
816
- children: c("filter.group.add_condition", "Add condition")
817
- }),
818
- u && /* @__PURE__ */ U(s, {
819
- kind: "ghost",
820
- size: "xs",
821
- icon: /* @__PURE__ */ U(e.plus, { size: 11 }),
822
- onClick: a,
823
- children: c("filter.drawer.add_or_group", "Add OR group")
824
- })
825
- ]
826
- });
827
- }
828
- function be(e, t) {
829
- let n = e, r;
830
- for (let e = 0; e < t.length; e += 1) {
831
- let i = t[e];
832
- if (r = n[i], !r) return;
833
- e < t.length - 1 && (n = r.or ?? r.and ?? []);
834
- }
835
- return r;
836
- }
837
- function Q(e, t, n) {
838
- if (t.length === 0) return e;
839
- let [r, ...i] = t;
840
- return e.map((e, t) => {
841
- if (t !== r) return e;
842
- if (i.length === 0) return n(e);
843
- let a = e.or ? "or" : "and", o = e.or ?? e.and;
844
- if (!o) return e;
845
- let s = Q(o, i, n);
846
- return a === "or" ? {
847
- ...e,
848
- or: s
849
- } : {
850
- ...e,
851
- and: s
852
- };
853
- });
854
- }
855
- function xe(e, t, n) {
856
- if (t.length === 0) return e;
857
- let [r, ...i] = t;
858
- return e.map((e, t) => {
859
- if (t !== r) return e;
860
- if (i.length === 0) return n;
861
- let a = e.or ?? e.and;
862
- if (!a) return e;
863
- let o = xe(a, i, n);
864
- return e.or ? {
865
- ...e,
866
- or: o
867
- } : {
868
- ...e,
869
- and: o
870
- };
871
- });
872
- }
873
- function Se(e, t) {
874
- if (t.length === 0) return e;
875
- let [n, ...r] = t;
876
- return r.length === 0 ? e.filter((e, t) => t !== n) : e.map((e, t) => {
877
- if (t !== n) return e;
878
- let i = e.or ?? e.and;
879
- if (!i) return e;
880
- let a = Se(i, r);
881
- return e.or ? {
882
- ...e,
883
- or: a
884
- } : {
885
- ...e,
886
- and: a
887
- };
888
- });
889
- }
890
- function Ce({ fields: t, activeFields: n, compact: r, onSelect: i, onCancel: a }) {
891
- let o = S(), [c, l] = V(""), u = t.filter((e) => !n.has(e.code) && (c === "" || e.label.toLowerCase().includes(c.toLowerCase()) || e.code.toLowerCase().includes(c.toLowerCase())));
892
- return /* @__PURE__ */ W("div", {
893
- style: {
894
- width: "100%",
895
- border: "1px solid var(--border)",
896
- borderRadius: 8,
897
- padding: 8,
898
- display: "flex",
899
- flexDirection: "column",
900
- gap: 6,
901
- minWidth: 0,
902
- boxSizing: "border-box"
903
- },
904
- children: [
905
- /* @__PURE__ */ U(y, {
906
- value: c,
907
- onChange: l,
908
- placeholder: o("filter.fields.search", "Search fields…"),
909
- prefix: /* @__PURE__ */ U(e.search, { size: 12 }),
910
- autoFocus: !0
911
- }),
912
- /* @__PURE__ */ W("div", {
913
- style: {
914
- maxHeight: 200,
915
- overflow: "auto",
916
- display: "flex",
917
- flexDirection: "column"
918
- },
919
- children: [u.map((e) => /* @__PURE__ */ W("button", {
920
- "data-testid": `filter-field-${e.code}`,
921
- onClick: () => i(e.code),
922
- style: {
923
- textAlign: "left",
924
- padding: "6px 8px",
925
- fontSize: 12,
926
- background: "transparent",
927
- border: 0,
928
- color: "var(--text-2)",
929
- cursor: "pointer",
930
- borderRadius: 5,
931
- display: "flex",
932
- justifyContent: "space-between",
933
- gap: 8,
934
- minWidth: 0
935
- },
936
- onMouseEnter: (e) => e.currentTarget.style.background = "var(--surface-3)",
937
- onMouseLeave: (e) => e.currentTarget.style.background = "transparent",
938
- children: [/* @__PURE__ */ U("span", {
939
- style: {
940
- minWidth: 0,
941
- overflow: "hidden",
942
- textOverflow: "ellipsis",
943
- whiteSpace: "nowrap"
944
- },
945
- children: e.label
946
- }), /* @__PURE__ */ U("span", {
947
- className: "mono",
948
- style: {
949
- color: "var(--text-4)",
950
- fontSize: 10.5,
951
- display: r ? "none" : void 0
952
- },
953
- children: e.code
954
- })]
955
- }, e.code)), u.length === 0 && /* @__PURE__ */ U("div", {
956
- style: {
957
- fontSize: 12,
958
- color: "var(--text-3)",
959
- padding: "6px 8px"
960
- },
961
- children: o("filter.fields.none", "No fields available")
962
- })]
963
- }),
964
- /* @__PURE__ */ U(s, {
965
- kind: "ghost",
966
- size: "xs",
967
- onClick: a,
968
- style: { justifyContent: "center" },
969
- children: o("dialog.cancel", "Cancel")
970
- })
971
- ]
972
- });
973
- }
974
- //#endregion
975
- //#region src/components/filters/FilterChips.tsx
976
- function we({ filters: t, onRemove: n, onClearAll: r, onChipClick: i, fieldLabel: a = (e) => e, resolveValue: o }) {
977
- let c = S();
978
- return t.length === 0 ? null : /* @__PURE__ */ W("div", {
979
- style: {
980
- display: "flex",
981
- alignItems: "center",
982
- gap: 8,
983
- flexWrap: "wrap",
984
- paddingBottom: 12
985
- },
986
- children: [t.map((e, t) => /* @__PURE__ */ W(I, { children: [t > 0 && /* @__PURE__ */ U(Ee, { join: "and" }), /* @__PURE__ */ U(Te, {
987
- node: e,
988
- fieldLabel: a,
989
- resolveValue: o,
990
- onRemove: n,
991
- onClick: i
992
- })] }, t)), /* @__PURE__ */ U(s, {
993
- kind: "ghost",
994
- size: "xs",
995
- icon: /* @__PURE__ */ U(e.x, { size: 11 }),
996
- onClick: r,
997
- children: c("filter.chips.clear_all", "Clear all")
998
- })]
999
- });
1000
- }
1001
- function Te({ node: e, fieldLabel: t, resolveValue: n, onRemove: r, onClick: i }) {
1002
- if (e.field && e.op) return /* @__PURE__ */ U(De, {
1003
- node: e,
1004
- fieldLabel: t,
1005
- resolveValue: n,
1006
- onRemove: () => r(e.field),
1007
- onClick: i
1008
- });
1009
- let a = e.or ?? e.and ?? [], o = e.or ? "or" : "and";
1010
- return /* @__PURE__ */ W("span", {
1011
- "data-testid": `filter-${e.or ? "or" : "and"}-group`,
1012
- style: {
1013
- display: "inline-flex",
1014
- alignItems: "center",
1015
- gap: 4,
1016
- flexWrap: "wrap",
1017
- border: "1px solid var(--divider)",
1018
- borderRadius: 6,
1019
- padding: "2px 5px"
1020
- },
1021
- children: [
1022
- /* @__PURE__ */ U("span", {
1023
- "aria-hidden": "true",
1024
- style: {
1025
- color: "var(--text-3)",
1026
- fontWeight: 600
1027
- },
1028
- children: "("
1029
- }),
1030
- a.map((e, a) => /* @__PURE__ */ W(I, { children: [a > 0 && /* @__PURE__ */ U(Ee, { join: o }), /* @__PURE__ */ U(Te, {
1031
- node: e,
1032
- fieldLabel: t,
1033
- resolveValue: n,
1034
- onRemove: r,
1035
- onClick: i
1036
- })] }, a)),
1037
- /* @__PURE__ */ U("span", {
1038
- "aria-hidden": "true",
1039
- style: {
1040
- color: "var(--text-3)",
1041
- fontWeight: 600
1042
- },
1043
- children: ")"
1044
- })
1045
- ]
1046
- });
1047
- }
1048
- function Ee({ join: e }) {
1049
- let t = S(), n = e === "or" ? t("filter.join.or", "OR") : t("filter.join.and", "AND");
1050
- return /* @__PURE__ */ U("span", {
1051
- "aria-label": n,
1052
- style: {
1053
- fontSize: 11,
1054
- color: "var(--text-3)",
1055
- fontWeight: 600,
1056
- padding: "0 2px"
1057
- },
1058
- children: n
1059
- });
1060
- }
1061
- function De({ node: t, fieldLabel: n, resolveValue: r, onRemove: a, onClick: o }) {
1062
- let s = /* @__PURE__ */ U(e.filter, { size: 11 });
1063
- return /* @__PURE__ */ U(i, {
1064
- tone: "slate",
1065
- icon: s,
1066
- onClick: o,
1067
- onRemove: a,
1068
- children: /* @__PURE__ */ W("span", { children: [
1069
- /* @__PURE__ */ U("span", {
1070
- style: { color: "var(--text-3)" },
1071
- children: n(t.field)
1072
- }),
1073
- " ",
1074
- /* @__PURE__ */ U("span", {
1075
- style: { fontWeight: 600 },
1076
- children: /* @__PURE__ */ U(Oe, {
1077
- node: t,
1078
- resolveValue: r
1079
- })
1080
- })
1081
- ] })
1082
- });
1083
- }
1084
- function Oe({ node: e, resolveValue: t }) {
1085
- let n = S(), r = e.op, i = Y(n, r);
1086
- if (O.has(r)) return /* @__PURE__ */ U(H, { children: i });
1087
- let a = Array.isArray(e.value) ? e.value : [e.value];
1088
- return t ? /* @__PURE__ */ W(H, { children: [
1089
- i,
1090
- " ",
1091
- a.map((n, r) => {
1092
- let i = t(e.field, n);
1093
- return /* @__PURE__ */ W(I, { children: [r > 0 ? ", " : "", /* @__PURE__ */ U("span", { children: i.status === "loading" ? /* @__PURE__ */ U(ke, {}) : i.label ?? i.raw })] }, r);
1094
- })
1095
- ] }) : /* @__PURE__ */ U(H, { children: `${i} ${a.map(c).join(", ")}` });
1096
- }
1097
- function ke() {
1098
- let e = S();
1099
- return /* @__PURE__ */ W(H, { children: [/* @__PURE__ */ U("style", { children: E }), /* @__PURE__ */ U("span", {
1100
- "aria-label": e("filter.chips.loading", "loading"),
1101
- style: {
1102
- display: "inline-block",
1103
- width: 52,
1104
- height: "0.72em",
1105
- verticalAlign: "middle",
1106
- borderRadius: 4,
1107
- background: "linear-gradient(90deg, var(--surface-3) 0%, var(--surface-2) 40%, var(--surface-3) 80%)",
1108
- backgroundSize: "200% 100%",
1109
- animation: "declarion-shimmer 1.2s ease-in-out infinite"
1110
- }
1111
- })] });
1112
- }
1113
- //#endregion
1114
- //#region src/components/list/ColumnPicker.tsx
1115
- function Ae({ availableColumns: t, visibleColumns: n, onToggle: r, onMove: i, onReset: a, onShowAll: o, onResetWidths: c, columnLabel: l = (e) => e }) {
1116
- let d = S(), f = B(null), [p, g] = V(!1), _ = t.filter((e) => !n.includes(e)), v = (e) => /* @__PURE__ */ U("div", {
1117
- style: {
1118
- padding: "6px 8px 4px",
1119
- fontSize: 10.5,
1120
- color: "var(--text-3)",
1121
- fontWeight: 600,
1122
- letterSpacing: "0.06em",
1123
- textTransform: "uppercase"
1124
- },
1125
- children: e
1126
- });
1127
- return /* @__PURE__ */ W(H, { children: [/* @__PURE__ */ U(s, {
1128
- ref: f,
1129
- icon: /* @__PURE__ */ U(e.columns, { size: 13 }),
1130
- onClick: () => g((e) => !e),
1131
- active: p,
1132
- children: d("list.columns.button", "Columns")
1133
- }), /* @__PURE__ */ W(u, {
1134
- open: p,
1135
- anchor: f.current,
1136
- onClose: () => g(!1),
1137
- align: "end",
1138
- width: 240,
1139
- children: [
1140
- v(d("list.columns.visible", "Visible columns")),
1141
- n.map((t, a) => /* @__PURE__ */ W("div", {
1142
- style: {
1143
- display: "flex",
1144
- alignItems: "center",
1145
- gap: 2,
1146
- padding: "0 6px 0 8px"
1147
- },
1148
- children: [/* @__PURE__ */ W("button", {
1149
- type: "button",
1150
- onClick: () => r(t),
1151
- "aria-label": d("list.columns.hide", "Hide {column}", { column: l(t) }),
1152
- style: {
1153
- flex: 1,
1154
- display: "flex",
1155
- alignItems: "center",
1156
- gap: 6,
1157
- minWidth: 0,
1158
- background: "none",
1159
- border: 0,
1160
- cursor: "pointer",
1161
- textAlign: "left",
1162
- color: "var(--text)",
1163
- font: "inherit",
1164
- fontSize: 12.5,
1165
- padding: "4px 0"
1166
- },
1167
- children: [/* @__PURE__ */ U(e.check, { size: 12 }), /* @__PURE__ */ U("span", {
1168
- style: {
1169
- overflow: "hidden",
1170
- textOverflow: "ellipsis",
1171
- whiteSpace: "nowrap"
1172
- },
1173
- children: l(t)
1174
- })]
1175
- }), i && /* @__PURE__ */ W(H, { children: [/* @__PURE__ */ U(h, {
1176
- icon: /* @__PURE__ */ U(e.arrowUp, { size: 12 }),
1177
- title: d("list.columns.move_up", "Move {column} up", { column: l(t) }),
1178
- size: 22,
1179
- disabled: a === 0,
1180
- onClick: () => i(t, "up")
1181
- }), /* @__PURE__ */ U(h, {
1182
- icon: /* @__PURE__ */ U(e.arrowDown, { size: 12 }),
1183
- title: d("list.columns.move_down", "Move {column} down", { column: l(t) }),
1184
- size: 22,
1185
- disabled: a === n.length - 1,
1186
- onClick: () => i(t, "down")
1187
- })] })]
1188
- }, t)),
1189
- _.length > 0 && /* @__PURE__ */ W(H, { children: [v(d("list.columns.hidden", "Hidden columns")), _.map((e) => /* @__PURE__ */ U(m, {
1190
- icon: /* @__PURE__ */ U("span", { style: {
1191
- width: 12,
1192
- display: "inline-block"
1193
- } }),
1194
- onClick: () => r(e),
1195
- children: l(e)
1196
- }, e))] }),
1197
- /* @__PURE__ */ U(m, { divider: !0 }),
1198
- /* @__PURE__ */ U(m, {
1199
- icon: /* @__PURE__ */ U(e.refresh, { size: 12 }),
1200
- onClick: a,
1201
- children: d("list.columns.reset", "Reset columns")
1202
- }),
1203
- /* @__PURE__ */ U(m, {
1204
- icon: /* @__PURE__ */ U(e.eye, { size: 12 }),
1205
- onClick: o,
1206
- children: d("list.columns.show_all", "Show all")
1207
- }),
1208
- c && /* @__PURE__ */ U(m, {
1209
- icon: /* @__PURE__ */ U(e.columns, { size: 12 }),
1210
- onClick: c,
1211
- children: d("list.columns.reset_widths", "Reset column widths (this device)")
1212
- })
1213
- ]
1214
- })] });
1215
- }
1216
- //#endregion
1217
- //#region src/components/list/ViewSwitcher.tsx
1218
- var je = e["undo-2"], Me = {
1219
- display: "flex",
1220
- alignItems: "center",
1221
- gap: 6,
1222
- height: 28,
1223
- padding: "0 10px",
1224
- background: "var(--surface)",
1225
- border: "1px solid var(--border)",
1226
- borderRadius: 6,
1227
- cursor: "pointer",
1228
- fontSize: 12,
1229
- color: "var(--text-2)",
1230
- fontFamily: "inherit"
1231
- };
1232
- function Ne({ views: t, activeViewId: n, isDirty: r, onSelect: i, onSave: a, onSaveAs: o, onDiscard: c, onDelete: l, deletePending: d = !1 }) {
1233
- let f = S(), p = B(null), [g, _] = V(!1), v = t.find((e) => e.id === n), y = t.filter((e) => e.source === "system"), b = t.filter((e) => e.source === "personal"), x = t.filter((e) => e.source === "shared"), C = v ? f(v.name) : f("list.view.all_records", "All Records"), w = (e) => /* @__PURE__ */ U("div", {
1234
- style: {
1235
- padding: "6px 8px 4px",
1236
- fontSize: 10,
1237
- color: "var(--text-3)",
1238
- fontWeight: 700,
1239
- letterSpacing: "0.08em",
1240
- textTransform: "uppercase"
1241
- },
1242
- children: e
1243
- });
1244
- return /* @__PURE__ */ W("div", {
1245
- style: {
1246
- display: "flex",
1247
- alignItems: "center",
1248
- gap: 6
1249
- },
1250
- children: [
1251
- /* @__PURE__ */ W("button", {
1252
- ref: p,
1253
- type: "button",
1254
- onClick: () => _((e) => !e),
1255
- style: Me,
1256
- children: [
1257
- /* @__PURE__ */ U(e.star, { size: 12 }),
1258
- /* @__PURE__ */ U("span", { children: C }),
1259
- r && /* @__PURE__ */ U("span", { style: {
1260
- display: "inline-block",
1261
- width: 6,
1262
- height: 6,
1263
- borderRadius: 999,
1264
- background: "var(--warn)",
1265
- marginLeft: 2
1266
- } }),
1267
- /* @__PURE__ */ U(e.down, { size: 11 })
1268
- ]
1269
- }),
1270
- /* @__PURE__ */ W(u, {
1271
- open: g,
1272
- anchor: p.current,
1273
- onClose: () => _(!1),
1274
- width: 280,
1275
- children: [
1276
- /* @__PURE__ */ U(m, {
1277
- icon: n ? void 0 : /* @__PURE__ */ U(e.check, { size: 12 }),
1278
- active: !n,
1279
- onClick: () => {
1280
- i({
1281
- id: "",
1282
- name: { [f.language]: f("list.view.all_records", "All Records") },
1283
- source: "system"
1284
- }), _(!1);
1285
- },
1286
- children: f("list.view.all_records", "All Records")
1287
- }),
1288
- y.length > 0 && w(f("list.view.presets", "Presets")),
1289
- y.map((t) => /* @__PURE__ */ U(m, {
1290
- icon: n === t.id ? /* @__PURE__ */ U(e.check, { size: 12 }) : void 0,
1291
- active: n === t.id,
1292
- onClick: () => {
1293
- i(t), _(!1);
1294
- },
1295
- children: f(t.name)
1296
- }, t.id)),
1297
- b.length > 0 && w(f("list.view.mine", "My Views")),
1298
- b.map((t) => /* @__PURE__ */ W("div", {
1299
- style: {
1300
- display: "flex",
1301
- alignItems: "center",
1302
- gap: 2,
1303
- paddingRight: 6
1304
- },
1305
- children: [/* @__PURE__ */ U("div", {
1306
- style: {
1307
- flex: 1,
1308
- minWidth: 0
1309
- },
1310
- children: /* @__PURE__ */ U(m, {
1311
- icon: n === t.id ? /* @__PURE__ */ U(e.check, { size: 12 }) : t.is_default ? /* @__PURE__ */ U(e.star, { size: 12 }) : void 0,
1312
- active: n === t.id,
1313
- onClick: () => {
1314
- i(t), _(!1);
1315
- },
1316
- children: f(t.name)
1317
- })
1318
- }), l && /* @__PURE__ */ U(h, {
1319
- icon: /* @__PURE__ */ U(e.trash, { size: 12 }),
1320
- title: f("list.view.delete_action", "Delete view {name}", { name: f(t.name) }),
1321
- size: 22,
1322
- disabled: d,
1323
- onClick: () => {
1324
- l(t), _(!1);
1325
- }
1326
- })]
1327
- }, t.id)),
1328
- x.length > 0 && w(f("list.view.shared", "Shared")),
1329
- x.map((t) => /* @__PURE__ */ U(m, {
1330
- icon: n === t.id ? /* @__PURE__ */ U(e.check, { size: 12 }) : /* @__PURE__ */ U(e.globe, { size: 12 }),
1331
- active: n === t.id,
1332
- onClick: () => {
1333
- i(t), _(!1);
1334
- },
1335
- children: f(t.name)
1336
- }, t.id)),
1337
- o && /* @__PURE__ */ W(H, { children: [/* @__PURE__ */ U(m, { divider: !0 }), /* @__PURE__ */ U(m, {
1338
- icon: /* @__PURE__ */ U(e.plus, { size: 12 }),
1339
- onClick: () => {
1340
- o(), _(!1);
1341
- },
1342
- children: f("list.view.save_as_menu", "Save as new view…")
1343
- })] })
1344
- ]
1345
- }),
1346
- r && n && /* @__PURE__ */ W(H, { children: [a && v?.source === "personal" ? /* @__PURE__ */ U(s, {
1347
- icon: /* @__PURE__ */ U(e.save, { size: 12 }),
1348
- onClick: a,
1349
- children: f("list.view.save", "Save")
1350
- }) : o ? /* @__PURE__ */ U(s, {
1351
- icon: /* @__PURE__ */ U(e.plus, { size: 12 }),
1352
- onClick: o,
1353
- children: f("list.view.save_as", "Save as new")
1354
- }) : null, c && /* @__PURE__ */ U(s, {
1355
- kind: "ghost",
1356
- icon: /* @__PURE__ */ U(je, { size: 12 }),
1357
- onClick: c,
1358
- children: f("list.view.discard", "Discard")
1359
- })] })
1360
- ]
1361
- });
1362
- }
1363
- //#endregion
1364
- //#region src/components/list/PeekFieldCell.tsx
1365
- var Pe = /* @__PURE__ */ new Set([
1366
- "enum",
1367
- "bool",
1368
- "ref"
1369
- ]);
1370
- function Fe(e) {
1371
- let t = e.display?.widget;
1372
- return t && Pe.has(t) ? !0 : Pe.has(e.type);
1373
- }
1374
- function Ie({ field: t, fieldName: n, label: r, value: i, record: a, refs: o, readOnly: s, onCommit: c }) {
1375
- let l = S(), [u, d] = V(!1), [f, p] = V(i), m = Fe(t);
1376
- R(() => {
1377
- u || p(i);
1378
- }, [i, u]);
1379
- let g = L(() => {
1380
- s || (p(i), d(!0));
1381
- }, [s, i]), v = L((e) => {
1382
- c(e === void 0 ? f : e), d(!1);
1383
- }, [c, f]), y = L(() => {
1384
- p(i), d(!1);
1385
- }, [i]), b = L((e) => {
1386
- if (s || u) return;
1387
- let t = e.target;
1388
- t.closest("a") || t.closest("[data-peek-pencil=\"true\"]") || g();
1389
- }, [
1390
- s,
1391
- u,
1392
- g
1393
- ]), x = L((e) => {
1394
- if (!u) {
1395
- !s && (e.key === "Enter" || e.key === " ") && (e.preventDefault(), g());
1396
- return;
1397
- }
1398
- m || (e.key === "Enter" ? (e.preventDefault(), e.stopPropagation(), v()) : e.key === "Escape" && (e.preventDefault(), e.stopPropagation(), y()));
1399
- }, [
1400
- u,
1401
- m,
1402
- s,
1403
- g,
1404
- v,
1405
- y
1406
- ]), C = L((e) => {
1407
- m ? (p(e), v(e)) : p(e);
1408
- }, [m, v]), w = _({
1409
- field: t,
1410
- fieldName: n,
1411
- value: i,
1412
- mode: "display",
1413
- record: a,
1414
- refs: o,
1415
- t: l
1416
- }), T = u ? _({
1417
- field: t,
1418
- fieldName: n,
1419
- value: f,
1420
- mode: "edit",
1421
- onChange: C,
1422
- record: a,
1423
- refs: o,
1424
- t: l
1425
- }) : null;
1426
- return /* @__PURE__ */ U("div", {
1427
- className: "peek-field-cell",
1428
- "data-editing": u ? "true" : "false",
1429
- onClick: b,
1430
- onKeyDown: x,
1431
- onMouseEnter: (e) => {
1432
- s || u || (e.currentTarget.style.borderColor = "var(--border)");
1433
- },
1434
- onMouseLeave: (e) => {
1435
- e.currentTarget.style.borderColor = "transparent";
1436
- },
1437
- style: {
1438
- position: "relative",
1439
- display: "flex",
1440
- alignItems: "center",
1441
- gap: 6,
1442
- padding: "4px 6px",
1443
- margin: "-4px -6px",
1444
- borderRadius: 4,
1445
- minHeight: 28,
1446
- cursor: s || u ? "default" : "text",
1447
- border: "1px dashed transparent"
1448
- },
1449
- tabIndex: s || u ? -1 : 0,
1450
- role: s || u ? void 0 : "button",
1451
- "aria-label": s || u ? void 0 : l("list.peek.edit_field", "Edit {field}", { field: r }),
1452
- children: u ? /* @__PURE__ */ W("div", {
1453
- style: {
1454
- display: "flex",
1455
- alignItems: "center",
1456
- gap: 4,
1457
- flex: 1,
1458
- minWidth: 0
1459
- },
1460
- children: [/* @__PURE__ */ U("div", {
1461
- style: {
1462
- flex: 1,
1463
- minWidth: 0
1464
- },
1465
- children: T
1466
- }), !m && /* @__PURE__ */ W(H, { children: [/* @__PURE__ */ U(h, {
1467
- size: 24,
1468
- icon: /* @__PURE__ */ U(e.check, { size: 13 }),
1469
- onClick: () => v(),
1470
- title: l("dialog.save", "Save")
1471
- }), /* @__PURE__ */ U(h, {
1472
- size: 24,
1473
- icon: /* @__PURE__ */ U(e.x, { size: 13 }),
1474
- onClick: y,
1475
- title: l("dialog.cancel", "Cancel")
1476
- })] })]
1477
- }) : /* @__PURE__ */ W(H, { children: [/* @__PURE__ */ U("div", {
1478
- style: {
1479
- flex: 1,
1480
- minWidth: 0
1481
- },
1482
- children: w
1483
- }), !s && /* @__PURE__ */ U("span", {
1484
- "data-peek-pencil": "true",
1485
- style: {
1486
- position: "absolute",
1487
- right: 4,
1488
- top: "50%",
1489
- transform: "translateY(-50%)"
1490
- },
1491
- className: "peek-pencil",
1492
- children: /* @__PURE__ */ U(h, {
1493
- size: 20,
1494
- icon: /* @__PURE__ */ U(e.edit, { size: 12 }),
1495
- onClick: (e) => {
1496
- e.stopPropagation(), g();
1497
- },
1498
- title: l("list.record.edit", "Edit")
1499
- })
1500
- })] })
1501
- });
1502
- }
1503
- //#endregion
1504
- //#region src/components/list/QuickPeek.tsx
1505
- var Le = {
1506
- tab: "Tab",
1507
- esc: "Esc"
1508
- };
1509
- function Re({ entity: t, entityCode: i, record: a, title: c, recordId: u, avatarName: d, fields: f, refs: m, screen: g, actions: _, screenActionLayout: v, entityActionLayout: y, executeAction: x, onClose: C, onOpen: w, onSave: T }) {
1510
- let E = S(), [O, k] = V({ ...a }), [A, j] = V(!1), M = B(null), { run: N } = p(), P = ne(t, g, O);
1511
- R(() => {
1512
- k({ ...a }), j(!1);
1513
- }, [a]), R(() => {
1514
- M.current?.focus();
1515
- }, []);
1516
- let F = z(() => {
1517
- let e = P?.action_layout ?? v ?? y ?? n(_, "quick_peek"), r = o(e, _, void 0, "quick_peek");
1518
- return l(E, r, _, void 0, O, [], D(t, O));
1519
- }, [
1520
- E,
1521
- P?.action_layout,
1522
- v,
1523
- y,
1524
- _,
1525
- O,
1526
- t
1527
- ]), I = ({ code: e, action: t }) => {
1528
- N({
1529
- action: t,
1530
- title: E(t.display?.name) || e,
1531
- row: O,
1532
- execute: (n) => x(e, t, n)
1533
- });
1534
- }, L = (e, t) => {
1535
- let n = {
1536
- ...O,
1537
- [e]: t
1538
- };
1539
- k(n), j(!0), T?.(n);
1540
- }, re = P?.quick_peek?.width ?? 480;
1541
- return /* @__PURE__ */ W(H, { children: [/* @__PURE__ */ U("div", {
1542
- onClick: C,
1543
- style: {
1544
- position: "fixed",
1545
- inset: 0,
1546
- background: "var(--scrim-lite)",
1547
- zIndex: 40
1548
- }
1549
- }), /* @__PURE__ */ W("aside", {
1550
- ref: M,
1551
- role: "dialog",
1552
- "aria-label": E("list.peek.dialog", "Quick peek"),
1553
- tabIndex: -1,
1554
- onKeyDown: (e) => {
1555
- e.key === "Escape" && C();
1556
- },
1557
- style: {
1558
- position: "fixed",
1559
- top: "var(--topbar-h)",
1560
- right: 0,
1561
- bottom: "var(--tabbar-h)",
1562
- width: re,
1563
- background: "var(--surface)",
1564
- borderLeft: "1px solid var(--border)",
1565
- zIndex: 41,
1566
- display: "flex",
1567
- flexDirection: "column",
1568
- boxShadow: "var(--shadow-lg)"
1569
- },
1570
- children: [
1571
- /* @__PURE__ */ W("div", {
1572
- style: {
1573
- display: "flex",
1574
- alignItems: "center",
1575
- padding: "12px 16px",
1576
- borderBottom: "1px solid var(--divider)",
1577
- gap: 10
1578
- },
1579
- children: [
1580
- /* @__PURE__ */ U(G, {
1581
- name: d || c,
1582
- size: 28
1583
- }),
1584
- /* @__PURE__ */ W("div", {
1585
- style: {
1586
- flex: 1,
1587
- minWidth: 0
1588
- },
1589
- children: [/* @__PURE__ */ U("div", {
1590
- style: {
1591
- fontSize: 14,
1592
- fontWeight: 600,
1593
- color: "var(--text)",
1594
- overflow: "hidden",
1595
- textOverflow: "ellipsis",
1596
- whiteSpace: "nowrap"
1597
- },
1598
- children: c
1599
- }), u && /* @__PURE__ */ U("div", {
1600
- className: "mono",
1601
- style: {
1602
- fontSize: 11,
1603
- color: "var(--text-4)"
1604
- },
1605
- children: u
1606
- })]
1607
- }),
1608
- /* @__PURE__ */ U(h, {
1609
- icon: /* @__PURE__ */ U(e.external, { size: 13 }),
1610
- title: A ? E("list.peek.open_in_tab_dirty", "Open in tab (keeps unsaved changes)") : E("list.peek.open_in_tab", "Open in tab"),
1611
- onClick: () => w(A ? O : null)
1612
- }),
1613
- /* @__PURE__ */ U(h, {
1614
- icon: /* @__PURE__ */ U(e.x, { size: 14 }),
1615
- title: E("list.peek.close", "Close"),
1616
- onClick: C
1617
- })
1618
- ]
1619
- }),
1620
- /* @__PURE__ */ W("div", {
1621
- style: {
1622
- flex: 1,
1623
- overflowY: "auto",
1624
- padding: 14,
1625
- display: "flex",
1626
- flexDirection: "column",
1627
- gap: 10
1628
- },
1629
- children: [/* @__PURE__ */ W("div", {
1630
- style: {
1631
- padding: "8px 10px",
1632
- background: "var(--accent-soft)",
1633
- borderRadius: 6,
1634
- fontSize: 11.5,
1635
- color: "var(--accent)",
1636
- display: "flex",
1637
- alignItems: "center",
1638
- gap: 6
1639
- },
1640
- children: [
1641
- /* @__PURE__ */ U(e.sparkle, { size: 12 }),
1642
- " ",
1643
- E("list.peek.hint", "Inline quick-edit — click any field to change."),
1644
- b(E("list.peek.keys_hint", "{tab} to move, {esc} to close."), {
1645
- tab: /* @__PURE__ */ U(r, { children: Le.tab }),
1646
- esc: /* @__PURE__ */ U(r, { children: Le.esc })
1647
- })
1648
- ]
1649
- }), f.map((e) => /* @__PURE__ */ U(ze, {
1650
- label: e.label,
1651
- children: e.kind === "file" ? te({
1652
- entity: t,
1653
- entityCode: i,
1654
- fieldName: e.key,
1655
- record: O,
1656
- mode: e.readOnly ? "display" : "edit",
1657
- onChange: (t) => L(e.key, t),
1658
- refs: m,
1659
- disabled: e.readOnly,
1660
- t: E
1661
- }) : /* @__PURE__ */ U(Ie, {
1662
- field: e.field,
1663
- fieldName: e.key,
1664
- label: e.label,
1665
- value: O[e.key],
1666
- record: O,
1667
- refs: m,
1668
- readOnly: e.readOnly,
1669
- onCommit: (t) => L(e.key, t)
1670
- })
1671
- }, e.key))]
1672
- }),
1673
- /* @__PURE__ */ W("div", {
1674
- style: {
1675
- display: "flex",
1676
- padding: "10px 14px",
1677
- borderTop: "1px solid var(--divider)",
1678
- gap: 6,
1679
- alignItems: "center"
1680
- },
1681
- children: [
1682
- A && /* @__PURE__ */ W("span", {
1683
- style: {
1684
- fontSize: 11,
1685
- color: "var(--warn)",
1686
- display: "flex",
1687
- alignItems: "center",
1688
- gap: 4
1689
- },
1690
- children: [/* @__PURE__ */ U("span", { style: {
1691
- width: 6,
1692
- height: 6,
1693
- borderRadius: 999,
1694
- background: "var(--warn)"
1695
- } }), E("list.peek.unsaved", "Unsaved")]
1696
- }),
1697
- /* @__PURE__ */ U("div", {
1698
- style: {
1699
- flex: 1,
1700
- minWidth: 0,
1701
- display: "flex",
1702
- justifyContent: "flex-end"
1703
- },
1704
- children: F.length > 0 && /* @__PURE__ */ U(ee, {
1705
- layout: F,
1706
- row: O,
1707
- onRun: (e, t) => I({
1708
- code: e,
1709
- action: t
1710
- }),
1711
- kind: "toolbar",
1712
- entityActions: _,
1713
- align: "trailing",
1714
- ariaLabel: E("list.peek.actions", "Quick peek actions")
1715
- })
1716
- }),
1717
- /* @__PURE__ */ U(s, {
1718
- kind: "primary",
1719
- icon: /* @__PURE__ */ U(e.edit, { size: 13 }),
1720
- onClick: () => w(A ? O : null),
1721
- children: E("list.peek.open_full", "Open full")
1722
- })
1723
- ]
1724
- })
1725
- ]
1726
- })] });
1727
- }
1728
- function ze({ label: e, children: t }) {
1729
- return /* @__PURE__ */ W("div", {
1730
- style: {
1731
- display: "grid",
1732
- gridTemplateColumns: "120px 1fr",
1733
- alignItems: "center",
1734
- padding: "4px 0",
1735
- borderBottom: "1px solid var(--divider)"
1736
- },
1737
- children: [/* @__PURE__ */ U("div", {
1738
- style: {
1739
- fontSize: 11.5,
1740
- color: "var(--text-3)",
1741
- fontWeight: 500
1742
- },
1743
- children: e
1744
- }), /* @__PURE__ */ U("div", { children: t })]
1745
- });
1746
- }
1747
- //#endregion
1748
- //#region src/lib/format-count.ts
1749
- var Be = [
1750
- 1e9,
1751
- 1e6,
1752
- 1e3
1753
- ];
1754
- function Ve(e, t) {
1755
- if (!Number.isFinite(e) || e < 0) return "~0";
1756
- let n = Math.round(e);
1757
- if (n < 1e3) return `~${n}`;
1758
- let r = +(n / (Be.find((e) => n >= e) ?? 1e3) < 10);
1759
- return `~${new Intl.NumberFormat(t, {
1760
- notation: "compact",
1761
- maximumFractionDigits: r
1762
- }).format(n)}`;
1763
- }
1764
- function $(e, t) {
1765
- return !Number.isFinite(e) || e < 0 ? "0" : Math.round(e).toLocaleString(t);
1766
- }
1767
- function He(e, t, n) {
1768
- return t === "estimated" ? Ve(e, n) : $(e, n);
1769
- }
1770
- //#endregion
1771
- export { ae as _, Re as a, we as c, ue as d, ce as f, K as g, se as h, ze as i, fe as l, J as m, Ve as n, Ne as o, le as p, $ as r, Ae as s, He as t, de as u, G as v };