@objectstack/console 17.3.0 → 17.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. package/CHANGELOG.md +87 -0
  2. package/dist/.objectui-sha +1 -1
  3. package/dist/assets/{ActionResultDialog-CQwenjVA.js → ActionResultDialog-Bsr2GS71.js} +1 -1
  4. package/dist/assets/{AiPendingActionsPage-7gZ8zlOy.js → AiPendingActionsPage-DB-UVcdM.js} +1 -1
  5. package/dist/assets/{ApiConsolePage-DUF0ysH7.js → ApiConsolePage-Bzqo2owc.js} +1 -1
  6. package/dist/assets/{AppDocsIndex-CP_AVG4X.js → AppDocsIndex-KhVqdZ-P.js} +1 -1
  7. package/dist/assets/{AppManagementPage-BJktnoa5.js → AppManagementPage-CsZ0LMQn.js} +1 -1
  8. package/dist/assets/{ApprovalsInboxPage-DlnxY-uy.js → ApprovalsInboxPage-D_LOnhJ7.js} +1 -1
  9. package/dist/assets/{AuditLogPage-DIJPRjji.js → AuditLogPage-B9eqwuzl.js} +1 -1
  10. package/dist/assets/{ComponentNavView-C84QByT7.js → ComponentNavView-DeokLfkW.js} +1 -1
  11. package/dist/assets/{CreateViewDialog-Zbd9Cagm.js → CreateViewDialog-BMdQ4ZYy.js} +1 -1
  12. package/dist/assets/{DashboardView-UyKHklBx.js → DashboardView-DHZboRi8.js} +1 -1
  13. package/dist/assets/{DeveloperHubPage-BRyNdrCJ.js → DeveloperHubPage-C_VYirN0.js} +1 -1
  14. package/dist/assets/{DocPage-Bx8ZXCYt.js → DocPage-_9x-3Dbi.js} +1 -1
  15. package/dist/assets/{DocShell-Ipy_IDvh.js → DocShell-D4dSPfBz.js} +1 -1
  16. package/dist/assets/{DocsIndex-CmY-7OQR.js → DocsIndex-CJVRa_hE.js} +1 -1
  17. package/dist/assets/{DocsLayout-BNsSvaz2.js → DocsLayout-C-tYgUZv.js} +1 -1
  18. package/dist/assets/{DocsSlug-Cb_NMM1k.js → DocsSlug-DmyGpfEy.js} +1 -1
  19. package/dist/assets/{ExpressionProvider-DqGWVuxV.js → ExpressionProvider-B6z09kM6.js} +1 -1
  20. package/dist/assets/{FlowRunsPage-B6ustUgi.js → FlowRunsPage-OjGJi-JU.js} +1 -1
  21. package/dist/assets/{IntegrationsPage-chOxmiyU.js → IntegrationsPage-CrDMDe62.js} +1 -1
  22. package/dist/assets/{InterfaceListPage-DVETnQm5.js → InterfaceListPage-P3y6hqTX.js} +1 -1
  23. package/dist/assets/{MarketplaceInstalledPage-DA5pjhAz.js → MarketplaceInstalledPage-CQek7WnV.js} +1 -1
  24. package/dist/assets/{MarketplacePackagePage-dCIVHBFi.js → MarketplacePackagePage-DL2ivKSc.js} +1 -1
  25. package/dist/assets/{MarketplacePage-wJb6g1p7.js → MarketplacePage-B-6EokyB.js} +1 -1
  26. package/dist/assets/{MetadataInspector-Cu-n1FYz.js → MetadataInspector-IQGUoLyp.js} +1 -1
  27. package/dist/assets/{ObjectDataPage-CP-YSZYQ.js → ObjectDataPage-Bmc3RQhM.js} +1 -1
  28. package/dist/assets/{PageView-B1_ibRuM.js → PageView-DzUZqB_h.js} +1 -1
  29. package/dist/assets/{ProfilePage-DEr5iZVB.js → ProfilePage-NklCqPxc.js} +1 -1
  30. package/dist/assets/{PublicFormsPage-CBcKQbNl.js → PublicFormsPage-CItIvcLQ.js} +1 -1
  31. package/dist/assets/RecordDetailView-XWxuegfV.js +3 -0
  32. package/dist/assets/{RecordFormPage-CGQlYWDk.js → RecordFormPage-B-yrhs7J.js} +1 -1
  33. package/dist/assets/{ReportDefaultInspector-R_p6YStL.js → ReportDefaultInspector-D5Kro5_t.js} +1 -1
  34. package/dist/assets/{ReportView-BTMrtcGH.js → ReportView-COpZ8PQT.js} +1 -1
  35. package/dist/assets/{RuntimeDraftBar-agGU39FL.js → RuntimeDraftBar-CSVtuByp.js} +1 -1
  36. package/dist/assets/{SchemaForm-DJbupOno.js → SchemaForm-DIsxxOZF.js} +1 -1
  37. package/dist/assets/{SearchResultsPage-CHhZUc6L.js → SearchResultsPage-B2r6kgni.js} +1 -1
  38. package/dist/assets/{SettingsHub-BGLR_gS7.js → SettingsHub-DQz2HDtZ.js} +1 -1
  39. package/dist/assets/{SettingsView-Bq-7Zkzs.js → SettingsView-BfOEalDW.js} +1 -1
  40. package/dist/assets/{SkeletonDetail-B4-UKxai.js → SkeletonDetail-DMOa5zcl.js} +1 -1
  41. package/dist/assets/{SystemHubPage-CVZVag1e.js → SystemHubPage-DM2VRSIP.js} +1 -1
  42. package/dist/assets/{abnfDiagram-VCTEODGH-DUS5D5dU.js → abnfDiagram-VCTEODGH-DaPlU6Hz.js} +1 -1
  43. package/dist/assets/{app-shell-eager-leaves-BB0oaPx6.js → app-shell-eager-leaves-wjbiJgVZ.js} +1 -1
  44. package/dist/assets/architectureDiagram-5GKGNRK7-Cq014PwG.js +36 -0
  45. package/dist/assets/{blockDiagram-OSKFZWR5-Bz2hnVmp.js → blockDiagram-OSKFZWR5-vtlcoeZc.js} +1 -1
  46. package/dist/assets/{c4Diagram-7LVT6UL2-DU3u1Y6c.js → c4Diagram-7LVT6UL2-BrdwRG2M.js} +1 -1
  47. package/dist/assets/channel-D2IgUFnY.js +1 -0
  48. package/dist/assets/{chunk-3NF5O7KM-B8Q7HUio.js → chunk-3NF5O7KM-CjWAf_Jo.js} +1 -1
  49. package/dist/assets/{chunk-4HAMMTFA-BPKwX4iB.js → chunk-4HAMMTFA-BtV_msXT.js} +1 -1
  50. package/dist/assets/chunk-75Z2AOVW-DdRL9yNr.js +2 -0
  51. package/dist/assets/chunk-CLGD4ZFX-De9kMAXh.js +1 -0
  52. package/dist/assets/{chunk-DU6HZSFF-BkY4hAzc.js → chunk-DU6HZSFF-DqjylQO-.js} +1 -1
  53. package/dist/assets/chunk-F27PBJKO-tEB_K-iD.js +1 -0
  54. package/dist/assets/{chunk-GMAD6QVW-DZo_NykZ.js → chunk-GMAD6QVW-BMzd_HHM.js} +1 -1
  55. package/dist/assets/{chunk-GVQU2GXP-9ELY9S6X.js → chunk-GVQU2GXP-B1p1nHC0.js} +1 -1
  56. package/dist/assets/{chunk-H2I77ZZE-vCr_buP7.js → chunk-H2I77ZZE-ioXC4dHO.js} +1 -1
  57. package/dist/assets/{chunk-HLEWEB6X-iPkY2ESt.js → chunk-HLEWEB6X-zZ3ZMup3.js} +1 -1
  58. package/dist/assets/chunk-L3NEJ4N5-DePXufTQ.js +1 -0
  59. package/dist/assets/{chunk-LQGUR6SS-iVI0GACK.js → chunk-LQGUR6SS-BUWUp_dz.js} +1 -1
  60. package/dist/assets/{chunk-OSK3NFVY-DcRwXCQD.js → chunk-OSK3NFVY-L7nTUJKT.js} +2 -2
  61. package/dist/assets/{chunk-P2QGCYS3-nx2-dM5t.js → chunk-P2QGCYS3-BG-i3rdI.js} +1 -1
  62. package/dist/assets/{chunk-POPQ4Y6H-BxLOacOG.js → chunk-POPQ4Y6H-DLEB8EqK.js} +1 -1
  63. package/dist/assets/{chunk-PWAF6VOD-2mst9kZu.js → chunk-PWAF6VOD-Be_prJjm.js} +1 -1
  64. package/dist/assets/{chunk-SVP7TREG-C3BMpr4x.js → chunk-SVP7TREG-BdJpxJji.js} +1 -1
  65. package/dist/assets/chunk-XXDRQBXY-CEXsCcSu.js +1 -0
  66. package/dist/assets/{chunk-ZLD2IHE6-ZFqtFJbj.js → chunk-ZLD2IHE6-BLIPZykR.js} +1 -1
  67. package/dist/assets/classDiagram-CYGNFDIV-BielDdJQ.js +1 -0
  68. package/dist/assets/classDiagram-v2-TLXNO2FR-BielDdJQ.js +1 -0
  69. package/dist/assets/cose-bilkent-JH36ORCC-CnLWv9XE.js +1 -0
  70. package/dist/assets/{createDerive-Best2JCj.js → createDerive-DtfnFzGm.js} +1 -1
  71. package/dist/assets/{cynefinDiagram-5FMLGOSQ-Lnly8IJd.js → cynefinDiagram-5FMLGOSQ-Do1SZz4I.js} +1 -1
  72. package/dist/assets/{dagre-OS7QT2EB-CdXLxmTK.js → dagre-OS7QT2EB-CqmZ9Y9O.js} +1 -1
  73. package/dist/assets/data-adapter-1YRpH3h_.js +5 -0
  74. package/dist/assets/{default-inspector-registry-DeEG98bO.js → default-inspector-registry-CmSpNwTr.js} +1 -1
  75. package/dist/assets/{diagram-S7CK7UJ4-DE8I3gxQ.js → diagram-S7CK7UJ4-CMpcDWop.js} +1 -1
  76. package/dist/assets/{diagram-UQ7AKVKN-D2xQpbEq.js → diagram-UQ7AKVKN-DLK_4yej.js} +1 -1
  77. package/dist/assets/{diagram-VSXAHHWV-DnttDSlO.js → diagram-VSXAHHWV-MAILxw0S.js} +1 -1
  78. package/dist/assets/diagram-VX7I27RA-DGiXGVX7.js +24 -0
  79. package/dist/assets/{diagram-Z3DM3KII-BgB9f0Nv.js → diagram-Z3DM3KII-BywboeGI.js} +1 -1
  80. package/dist/assets/dist-B88JFSFg.js +5 -0
  81. package/dist/assets/{ebnfDiagram-PWID7BFC-32WvKbS2.js → ebnfDiagram-PWID7BFC-DdMLbnuP.js} +1 -1
  82. package/dist/assets/{erDiagram-2YWLMYGG-Dwf8uAdl.js → erDiagram-2YWLMYGG-O6raGx2P.js} +1 -1
  83. package/dist/assets/flowDiagram-T62WH6J4-CkAxOnqU.js +1 -0
  84. package/dist/assets/framework-DFE_Mws9.js +36 -0
  85. package/dist/assets/{ganttDiagram-EL5Y4UJY-DqYIE0Cu.js → ganttDiagram-EL5Y4UJY-Dijdjc50.js} +2 -2
  86. package/dist/assets/{getIcon-CgyYxSEC.js → getIcon-B4Pp7Q-0.js} +1 -1
  87. package/dist/assets/gitGraphDiagram-WWUBYQGX-Cfl4OIGG.js +106 -0
  88. package/dist/assets/{highlighted-body-OFNGDK62-BxO9mjPI.js → highlighted-body-OFNGDK62-BlqGRgbU.js} +1 -1
  89. package/dist/assets/{i18n-Cfqor-xb.js → i18n-DGcOKnTh.js} +1 -1
  90. package/dist/assets/{i18n-locales-Bz4c8KXc.js → i18n-locales-BBA090ve.js} +10 -10
  91. package/dist/assets/index-C5Fu9Kda.css +2 -0
  92. package/dist/assets/index-ClPLLRzK.js +20 -0
  93. package/dist/assets/{infoDiagram-FKFFQAWI-Cr1-5_Am.js → infoDiagram-FKFFQAWI-oOVNWlVA.js} +1 -1
  94. package/dist/assets/{infrastructure-CIpDEFyQ.js → infrastructure-B4zG1jNa.js} +2 -2
  95. package/dist/assets/{ishikawaDiagram-5VMMS53U-Bsjx7BsE.js → ishikawaDiagram-5VMMS53U-BUfTfup1.js} +1 -1
  96. package/dist/assets/{journeyDiagram-EYS64GPL-1scn5Z5c.js → journeyDiagram-EYS64GPL-4fyU8Ui9.js} +2 -2
  97. package/dist/assets/{kanban-definition-UXKFOSKX-DjLQAv5U.js → kanban-definition-UXKFOSKX-qwquHo2y.js} +1 -1
  98. package/dist/assets/mermaid-GHXKKRXX-_UhQGe8N.js +1 -0
  99. package/dist/assets/{mermaid.core-pW40dd4u.js → mermaid.core-RfBGJVq5.js} +2 -2
  100. package/dist/assets/{metadata-admin-pawEBYI9.js → metadata-admin-Bo-vWW2Z.js} +3 -3
  101. package/dist/assets/{mindmap-definition-THT77NOG-CUcYMB9H.js → mindmap-definition-THT77NOG-cOVHgGB_.js} +1 -1
  102. package/dist/assets/{pegDiagram-XKGWAZYB-CT1r3sRa.js → pegDiagram-XKGWAZYB-DQikOuPL.js} +1 -1
  103. package/dist/assets/{pieDiagram-E7YTZNPT-CSi-V1LQ.js → pieDiagram-E7YTZNPT-Cu9wPXiv.js} +2 -2
  104. package/dist/assets/plugin-calendar-DqlnPeWE.js +1 -0
  105. package/dist/assets/plugin-charts-hJ5C1pY-.js +7 -0
  106. package/dist/assets/{plugin-chatbot-BGnkLzFS.js → plugin-chatbot-BeSLDg4N.js} +5 -5
  107. package/dist/assets/plugin-dashboard-d1o52lHr.js +6 -0
  108. package/dist/assets/{plugin-form-_fjHxKTV.js → plugin-form-D8x_rH5w.js} +1 -1
  109. package/dist/assets/plugin-gantt-B2GTMGPH.js +63 -0
  110. package/dist/assets/plugin-grid-DGXy_yQF.js +9 -0
  111. package/dist/assets/{plugin-kanban-DA0eW6yj.js → plugin-kanban-CVf6Nj3e.js} +1 -1
  112. package/dist/assets/plugin-map-hkbw1bGS.js +1 -0
  113. package/dist/assets/{plugin-markdown-B7zwZHmn.js → plugin-markdown-Bdb2UThR.js} +4 -4
  114. package/dist/assets/plugin-report-CelulaB7.js +59 -0
  115. package/dist/assets/{plugin-timeline-B6rsNNAK.js → plugin-timeline-DTcJ-hts.js} +1 -1
  116. package/dist/assets/plugin-tree-Bk5vG9la.js +1 -0
  117. package/dist/assets/{plugin-view-5qxxRyZZ.js → plugin-view-CKs41t7o.js} +1 -1
  118. package/dist/assets/plugins-views-DZmsFOak.js +4 -0
  119. package/dist/assets/{quadrantDiagram-AXDQQJYC-DUJ_94hm.js → quadrantDiagram-AXDQQJYC-DqTU6p89.js} +3 -3
  120. package/dist/assets/{railroadDiagram-O6MQD6OU-CEyfAhzM.js → railroadDiagram-O6MQD6OU-CHGgIBKb.js} +1 -1
  121. package/dist/assets/{requirementDiagram-IS5BZ75X-CAK7hvBg.js → requirementDiagram-IS5BZ75X-B20mHS5h.js} +1 -1
  122. package/dist/assets/{runtime-metadata-persistence-DYPxFzHI.js → runtime-metadata-persistence-DzS2YaNb.js} +1 -1
  123. package/dist/assets/{sankeyDiagram-P5KCCOFB-DgYJh7uz.js → sankeyDiagram-P5KCCOFB-oqGY91Cw.js} +3 -3
  124. package/dist/assets/{sequenceDiagram-WJ2MYXX4-DsQerPtC.js → sequenceDiagram-WJ2MYXX4-CVMm7Aid.js} +1 -1
  125. package/dist/assets/{src-CVJP2nIc.js → src-D7tZqf12.js} +1 -1
  126. package/dist/assets/{src-_DxAIBqo.js → src-DCXZnd2l.js} +1 -1
  127. package/dist/assets/{src-S6pzKItc.js → src-DEMdKbQy.js} +1 -1
  128. package/dist/assets/src-hcMLuWxG.js +17 -0
  129. package/dist/assets/stateDiagram-XQSTLZYL-3oM7IdVe.js +1 -0
  130. package/dist/assets/stateDiagram-v2-IH3M54BS-BznjPAgb.js +1 -0
  131. package/dist/assets/studioEntry-BUFsLXCL.js +1 -0
  132. package/dist/assets/{submitRedirect-UXd9NsjL.js → submitRedirect-7ExeC4kw.js} +1 -1
  133. package/dist/assets/{swimlanes-V6O3JKXN-BiKyiEJr.js → swimlanes-V6O3JKXN-Djgbrkmh.js} +1 -1
  134. package/dist/assets/swimlanesDiagram-JKAHXJPX-DHJJ3qZq.js +8 -0
  135. package/dist/assets/{timeline-definition-24CTP7MA-CW5rY3PX.js → timeline-definition-24CTP7MA-k2lbfDvL.js} +2 -2
  136. package/dist/assets/ui-components-CMHDBJEm.js +37 -0
  137. package/dist/assets/{ui-layout-UUTFXV6S.js → ui-layout-Jk_qY9Ni.js} +1 -1
  138. package/dist/assets/{use-book-data-qUZAxIs0.js → use-book-data-CM73PGvc.js} +1 -1
  139. package/dist/assets/{useActionModal-CkM-zGdy.js → useActionModal-D_iilsul.js} +1 -1
  140. package/dist/assets/{usePackageL10n-F9isJ9pn.js → usePackageL10n-BfPqgsRL.js} +1 -1
  141. package/dist/assets/{useSettingsLabel-CSZBfUiw.js → useSettingsLabel-CW2sBbmj.js} +1 -1
  142. package/dist/assets/vendor-charts-BBlPrtHS.js +67 -0
  143. package/dist/assets/{vendor-i18n-C1AQDWux.js → vendor-i18n-CzBLXLJU.js} +1 -1
  144. package/dist/assets/vendor-objectstack-BU0HrnMy.js +270 -0
  145. package/dist/assets/{vendor-zod-r9lyeyrU.js → vendor-zod-Bwe8XZZa.js} +3 -3
  146. package/dist/assets/{vennDiagram-4TSXK5OY-C79cMc25.js → vennDiagram-4TSXK5OY-zweM554s.js} +1 -1
  147. package/dist/assets/{wardleyDiagram-VM6X3IG4-BAO0_jUk.js → wardleyDiagram-VM6X3IG4-Dg9r6Ajz.js} +1 -1
  148. package/dist/assets/{xychartDiagram-S5SC5T6Z-BIRd7YRo.js → xychartDiagram-S5SC5T6Z-CraplxeN.js} +2 -2
  149. package/dist/eager-closure.json +87 -87
  150. package/dist/index.html +4 -4
  151. package/package.json +1 -1
  152. package/dist/assets/RecordDetailView-A8bbPnkK.js +0 -3
  153. package/dist/assets/architectureDiagram-5GKGNRK7-mGW8P1lC.js +0 -36
  154. package/dist/assets/channel-FD4s9EIH.js +0 -1
  155. package/dist/assets/chunk-75Z2AOVW-CkSdnmiC.js +0 -2
  156. package/dist/assets/chunk-CLGD4ZFX-BTkDISwp.js +0 -1
  157. package/dist/assets/chunk-F27PBJKO-DUKg0YWV.js +0 -1
  158. package/dist/assets/chunk-L3NEJ4N5-Bzz35TZJ.js +0 -1
  159. package/dist/assets/chunk-XXDRQBXY-iNC8aYmk.js +0 -1
  160. package/dist/assets/classDiagram-CYGNFDIV-D5Pd2TCl.js +0 -1
  161. package/dist/assets/classDiagram-v2-TLXNO2FR-D5Pd2TCl.js +0 -1
  162. package/dist/assets/cose-bilkent-JH36ORCC-CPQv9aQH.js +0 -1
  163. package/dist/assets/data-adapter-DL25qpAe.js +0 -5
  164. package/dist/assets/diagram-VX7I27RA-BSEwkn7K.js +0 -24
  165. package/dist/assets/dist-BpPy7hlB.js +0 -5
  166. package/dist/assets/flowDiagram-T62WH6J4-CqVSNJ8T.js +0 -1
  167. package/dist/assets/framework-BfSv4Kb0.js +0 -36
  168. package/dist/assets/gitGraphDiagram-WWUBYQGX-D1dYmoGu.js +0 -106
  169. package/dist/assets/index-BU-FzlQ6.js +0 -20
  170. package/dist/assets/index-_VyGO4ms.css +0 -2
  171. package/dist/assets/mermaid-GHXKKRXX-NzEcDxBh.js +0 -1
  172. package/dist/assets/plugin-calendar-BwiiCIjv.js +0 -1
  173. package/dist/assets/plugin-charts-CDGkx7z5.js +0 -7
  174. package/dist/assets/plugin-dashboard-Bj4ldCX6.js +0 -6
  175. package/dist/assets/plugin-gantt-zR8DkpEg.js +0 -63
  176. package/dist/assets/plugin-grid-kkbz4uec.js +0 -9
  177. package/dist/assets/plugin-map-DukneTNg.js +0 -1
  178. package/dist/assets/plugin-report-DaPtlsJr.js +0 -59
  179. package/dist/assets/plugin-tree-DauauLFc.js +0 -1
  180. package/dist/assets/plugins-views-iYcMmImr.js +0 -4
  181. package/dist/assets/src-JX1BkhmR.js +0 -17
  182. package/dist/assets/stateDiagram-XQSTLZYL-BJndPKik.js +0 -1
  183. package/dist/assets/stateDiagram-v2-IH3M54BS-Bi94bTLl.js +0 -1
  184. package/dist/assets/studioEntry-C6G8U-LG.js +0 -1
  185. package/dist/assets/swimlanesDiagram-JKAHXJPX-DKIR852g.js +0 -8
  186. package/dist/assets/ui-components-D2lrjG-t.js +0 -43
  187. package/dist/assets/vendor-charts-CY9WhhzX.js +0 -67
  188. package/dist/assets/vendor-objectstack-BeKUVjuj.js +0 -270
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{a as t,b as n,f as r,r as i}from"./vendor-react-CsWFRkED.js";import{Pn as a}from"./vendor-objectstack-BeKUVjuj.js";import{At as o,Or as s,Qr as c,ht as l}from"./framework-BfSv4Kb0.js";import{$t as u,Aa as d,Cn as f,Er as p,Ko as m,Mt as h,Pr as g,Qc as _,Qt as v,Ri as y,Tr as b,Xr as x,Zt as S,_n as C,an as w,cn as T,en as E,il as D,in as O,ja as k,jt as A,ko as j,ln as M,nn as N,on as P,pc as ee,rn as te,sn as ne,tn as F,un as I,us as re,wr as ie}from"./ui-components-D2lrjG-t.js";import{_ as L,c as R,d as ae,n as z,o as oe,p as se,s as B,t as V,u as ce,v as le,y as ue}from"./vendor-dndkit-CkJ59XFL.js";var H=e(n(),1),U=i(),de=e=>{let t=e?.name??e?.full_name??e?.display_name??e?.label??e?.title??e?.subject;return t!=null&&String(t).trim()?String(t):[e?.salutation,e?.first_name,e?.last_name].filter(e=>typeof e==`string`&&e.trim()).map(e=>e.trim()).join(` `)||(typeof e?.email==`string`&&e.email.trim()?e.email.trim():null)},fe=(e,t)=>!e||typeof e!=`string`?e??``:e.includes(`{`)?e.replace(/\{([a-zA-Z0-9_.]+)\}/g,(e,n)=>{let r=n.split(`.`).reduce((e,t)=>e==null?e:e[t],t);return r==null?``:typeof r==`object`?de(r)??``:String(r)}).replace(/\s*[-–—|/·,:]\s*(?=\s*[-–—|/·,:]|$)/g,``).replace(/^\s*[-–—|/·,:]\s*/,``).replace(/\s+/g,` `).trim():e;function pe({title:e,subtitle:t,icon:n,action:r,actions:i,showBack:a,schema:s,className:c,children:u,...d}){let f=o(),p=typeof e==`string`&&/\{[a-zA-Z0-9_.]+\}/.test(e),m=fe(e,f?.data)||(p?``:e),h=t,g=typeof h==`string`&&/\{[a-zA-Z0-9_.]+\}/.test(h),v=fe(h,f?.data)||(g?``:h),y=!!f?.recordId,b=!!f?.embedded,S=a??(y&&!b),C=H.useCallback(()=>{if(typeof window>`u`)return;let e=window.location.pathname,t=e.replace(/\/record\/[^/]+\/?$/,``);t===e?window.history.length>1&&window.history.back():(window.history.pushState({},``,t+window.location.search),window.dispatchEvent(new PopStateEvent(`popstate`)))},[]),w=Array.isArray(s?.children)?s.children.filter(Boolean).map((e,t)=>(0,U.jsx)(l,{schema:e},e?.id||`pgh-child-${t}`)):null,T=Array.isArray(i)&&i.length>0&&i||Array.isArray(s?.actions)&&s.actions.length>0&&s.actions||Array.isArray(s?.properties?.actions)&&s.properties.actions.length>0&&s.properties.actions||null,E=r||u||(T?(0,U.jsx)(l,{schema:{type:`record:quick_actions`,properties:{actions:T,location:`record_header`,align:`end`,inline:!0}}}):null)||w;return(0,U.jsx)(`div`,{className:D(`flex flex-col gap-3 pb-4 border-b`,c),...d,children:(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-4 gap-y-2`,children:[S&&(0,U.jsx)(x,{type:`button`,variant:`ghost`,size:`icon`,onClick:C,"aria-label":`Back to list`,className:`flex-shrink-0 -ml-2`,children:(0,U.jsx)(_,{className:`size-4`})}),n&&(m||v)&&(0,U.jsx)(`div`,{className:`flex-shrink-0 grid place-items-center size-10 rounded-md bg-primary/10 text-primary`,children:typeof n==`string`?(0,U.jsx)(A,{name:n,className:`size-5`}):n}),(0,U.jsxs)(`div`,{className:`flex flex-col min-w-0 flex-1`,children:[m?(0,U.jsx)(`h1`,{className:`text-2xl font-bold tracking-tight md:text-3xl truncate`,children:m}):null,v&&(0,U.jsx)(`p`,{className:`text-sm text-muted-foreground truncate`,children:v})]}),E&&(0,U.jsx)(`div`,{className:`flex items-center gap-2 ml-auto`,children:E})]})})}function me({className:e,children:t,...n}){return(0,U.jsx)(`div`,{className:D(`rounded-xl border bg-card text-card-foreground shadow`,e),...n,children:(0,U.jsx)(`div`,{className:`p-6`,children:t})})}var he={xs:{1:`grid-cols-1`,2:`grid-cols-2`,3:`grid-cols-3`,4:`grid-cols-4`,6:`grid-cols-6`,12:`grid-cols-12`},sm:{1:`sm:grid-cols-1`,2:`sm:grid-cols-2`,3:`sm:grid-cols-3`,4:`sm:grid-cols-4`,6:`sm:grid-cols-6`,12:`sm:grid-cols-12`},md:{1:`md:grid-cols-1`,2:`md:grid-cols-2`,3:`md:grid-cols-3`,4:`md:grid-cols-4`,6:`md:grid-cols-6`,12:`md:grid-cols-12`},lg:{1:`lg:grid-cols-1`,2:`lg:grid-cols-2`,3:`lg:grid-cols-3`,4:`lg:grid-cols-4`,6:`lg:grid-cols-6`,12:`lg:grid-cols-12`},xl:{1:`xl:grid-cols-1`,2:`xl:grid-cols-2`,3:`xl:grid-cols-3`,4:`xl:grid-cols-4`,6:`xl:grid-cols-6`,12:`xl:grid-cols-12`},"2xl":{1:`2xl:grid-cols-1`,2:`2xl:grid-cols-2`,3:`2xl:grid-cols-3`,4:`2xl:grid-cols-4`,6:`2xl:grid-cols-6`,12:`2xl:grid-cols-12`}};function ge(e){if(!e)return`grid-cols-1`;let t=[];for(let[n,r]of Object.entries(e)){let e=he[n];if(e&&r){let n=Object.keys(e).map(Number).reduce((e,t)=>Math.abs(t-r)<Math.abs(e-r)?t:e);t.push(e[n])}}return t.join(` `)||`grid-cols-1`}var _e={0:`gap-0`,1:`gap-1`,2:`gap-2`,3:`gap-3`,4:`gap-4`,5:`gap-5`,6:`gap-6`,8:`gap-8`},ve=({columns:e,gap:t=4,className:n,children:r})=>{let i=ge(e),a=typeof t==`number`?_e[t]||`gap-${t}`:``;return(0,U.jsx)(`div`,{className:D(`grid`,i,a,n),children:r})};function W(e){return e?h(e):re}function G(e,t){if(typeof e==`string`)return e;if(t){let n=t(e.key,{defaultValue:e.defaultValue,...e.params});if(n&&n!==e.key)return n}return e.defaultValue||e.key}function K(e,t,n,r,i){let a=G(e.label,n);if(typeof e.label!=`string`)return a;let o=e=>!!e&&a.trim().toLowerCase()!==e.trim().toLowerCase();if(e.type===`object`&&e.objectName){if(e.viewName)return o(e.viewName)?a:i?i(e.objectName,e.viewName,a):a;if(o(e.objectName))return a;if(t)return t(e.objectName,a)}if(e.type===`dashboard`&&e.dashboardName){if(o(e.dashboardName))return a;if(r)return r(e.dashboardName,a)}return a}var ye=e=>e!==!1&&e!==`false`,be=()=>!0,xe=()=>!0;function q(e,t={}){let{evaluateVisibility:n=ye,checkPermission:r=be,checkCapability:i=xe,hasActionHandler:a=!1}=t;for(let o of e)if(n(o.visible)&&!(o.requiredPermissions?.length&&!r(o.requiredPermissions))&&!(o.requiresObject&&!i(`object`,o.requiresObject))&&!(o.requiresService&&!i(`service`,o.requiresService))&&o.type!==`separator`){if(o.type===`group`){if(q(o.children??[],t))return!0;continue}if(!(o.type===`action`&&!a))return!0}return!1}var Se=/\{(current_user_id|current_org_id|[a-z][a-z0-9_]*)\}/g;function J(e,t){if(!e.includes(`{`))return e;let n=!1,r=e.replace(Se,(e,r)=>{let i;return i=r===`current_user_id`?t?.currentUserId:r===`current_org_id`?t?.currentOrgId:t?.contextValues?.[r],i||(n=!0,``)});return n?null:r}var Ce=`runAction`;function we(e,t){let n=t.runAction;return typeof n!=`string`||n===``?e:`${e}${e.includes(`?`)?`&`:`?`}${Ce}=${encodeURIComponent(n)}`}function Y(e,t,n){switch(e.type){case`object`:{let r=`${t}/${e.objectName??``}`,i=e.recordId;if(i){let t=J(i,n);if(t){let n=`${r}/record/${encodeURIComponent(t)}`;return{href:e.recordMode===`edit`?`${n}/edit`:n,external:!1}}}let a=e.filters;if(a&&typeof a==`object`&&!Array.isArray(a)){let t=new URLSearchParams;for(let[e,r]of Object.entries(a)){if(r==null||e===``)continue;let i=J(String(r),n);i!==null&&t.set(`filter[${e}]`,i)}let i=t.toString();return{href:we(i?`${r}/data?${i}`:`${r}/data`,e),external:!1}}return{href:we(e.viewName?`${r}/view/${e.viewName}`:r,e),external:!1}}case`dashboard`:return{href:e.dashboardName?`${t}/dashboard/${e.dashboardName}`:`#`,external:!1};case`page`:{if(!e.pageName)return{href:`#`,external:!1};let r=e.params,i=`${t}/page/${e.pageName}`;if(r&&typeof r==`object`){let e=new URLSearchParams;for(let[t,i]of Object.entries(r))if(i!=null){if(typeof i==`string`){let r=J(i,n);r!==null&&e.set(t,r)}else e.set(t,JSON.stringify(i))}let t=e.toString();t&&(i+=`?${t}`)}return{href:i,external:!1}}case`report`:return{href:e.reportName?`${t}/report/${e.reportName}`:`#`,external:!1};case`url`:return{href:e.url??`#`,external:e.target===`_blank`};case`component`:{let r=e.componentRef;if(!r)return{href:`#`,external:!1};let i=r.split(`:`).filter(Boolean);if(i.length===0)return{href:`#`,external:!1};let a=e.params;if(i[0]===`metadata`){let e=i[1],r=a&&typeof a.type==`string`?a.type:void 0,o=a&&typeof a.name==`string`?a.name:void 0,s=``;if(a&&typeof a==`object`){let e=new URLSearchParams;for(let[t,r]of Object.entries(a))if(t!==`type`&&t!==`name`&&r!=null){if(typeof r==`string`){let i=J(r,n);i&&e.set(t,i)}else e.set(t,JSON.stringify(r))}let t=e.toString();t&&(s=`?${t}`)}return e===`directory`||!e?{href:`${t}/metadata${s}`,external:!1}:e===`resource`&&r?{href:`${t}/metadata${o?`/${encodeURIComponent(r)}/${encodeURIComponent(o)}`:`/${encodeURIComponent(r)}`}${s}`,external:!1}:{href:`${t}/metadata${s}`,external:!1}}let o=`${t}/component/${i.join(`/`)}`;if(a&&typeof a==`object`){let e=new URLSearchParams;for(let[t,n]of Object.entries(a))n!=null&&e.set(t,typeof n==`string`?n:JSON.stringify(n));let t=e.toString();t&&(o+=`?${t}`)}return{href:o,external:!1}}default:return{href:`#`,external:!1}}}var Te=50,Ee=40,De=30,Oe=25,ke=10,Ae=5;function je(e){let t=new Map;return new URLSearchParams(e).forEach((e,n)=>{let r=/^filter\[(.+)\]$/.exec(n);r&&r[1]&&e!==``&&t.set(r[1],e)}),t}function Me(e,t){return t.startsWith(`${e}.`)?t.slice(e.length+1):t}function Ne(e,t,n,r,i){let{href:a,external:o}=Y(e,r,i);if(o||a===`#`)return 0;if(e.type===`object`&&e.objectName){let a=`${r}/${e.objectName}`;if(t!==a&&!t.startsWith(`${a}/`))return 0;let o=t===a?[]:t.slice(a.length+1).split(`/`),s=e.recordId;if(s){let e=J(s,i);if(e)return o[0]===`record`&&decodeURIComponent(o[1]??``)===e?Te:0}let c=e.filters;if(c&&typeof c==`object`&&!Array.isArray(c)){if(o[0]!==`data`)return 0;let e=new Map;for(let[t,n]of Object.entries(c)){if(n==null||t===``)continue;let r=J(String(n),i);r!==null&&e.set(t,r)}if(e.size!==n.size)return 0;for(let[t,r]of e)if(n.get(t)!==r)return 0;return Ee}return e.viewName?o[0]!==`view`||!o[1]?0:Me(e.objectName,decodeURIComponent(o[1]))===Me(e.objectName,e.viewName)?De:0:o.length===0?Oe:ke}let s=a.split(`?`)[0];if(t===s)return Oe;let c=e.componentRef;return c&&c.split(`:`)[1]===`directory`?0:t.startsWith(`${s}/`)?Ae:0}function Pe(e,t,n,r,i){let a=je(n),o=null,s=0,c=e=>{if(e)for(let n of e){if(n.type===`group`){c(n.children);continue}let e=Ne(n,t,a,r,i);e>s&&(o=n,s=e)}};return c(e),o}var X=H.createContext(null);function Fe(e,t){if(!t.trim())return e;let n=t.toLowerCase().trim();return e.reduce((e,r)=>{if(r.type===`separator`)return e;if(r.type===`group`&&r.children?.length){let n=Fe(r.children,t);return n.length>0&&e.push({...r,children:n}),e}return G(r.label).toLowerCase().includes(n)&&e.push(r),e},[])}var Ie=5;function Le({item:e,basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,enablePinning:o,onPinToggle:s,enableReorder:c,resolveObjectLabel:l,resolveDashboardLabel:u,resolveViewLabel:d,t:f,templateContext:p}){let{attributes:m,listeners:h,setNodeRef:g,transform:_,transition:v,isDragging:y}=oe({id:e.id,disabled:!c}),b={transform:ue.Transform.toString(_),transition:v,opacity:y?.5:void 0,zIndex:y?10:void 0};return(0,U.jsx)(`div`,{ref:g,style:b,...m,children:(0,U.jsx)(Z,{item:e,basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,enablePinning:o,onPinToggle:s,dragListeners:c?h:void 0,resolveObjectLabel:l,resolveDashboardLabel:u,resolveViewLabel:d,t:f,templateContext:p})})}function Z({item:e,basePath:n,evalVis:r,checkPerm:i,checkCap:a,onAction:o,enablePinning:s,onPinToggle:c,dragListeners:l,resolveObjectLabel:u,resolveDashboardLabel:h,resolveViewLabel:_,t:v,templateContext:y}){let x=C(),S=x?`min-h-[44px] text-[15px] gap-3 rounded-xl`:void 0,w=D(`shrink-0`,x?`h-5 w-5`:`h-4 w-4`),O=(()=>{if(typeof e.expanded==`boolean`)return e.expanded;if(typeof e.defaultOpen==`boolean`)return e.defaultOpen})(),A=e.type===`group`?e.children?.length??0:0,j=H.useContext(X),te=H.useMemo(()=>{if(e.type!==`group`||!j)return!1;let t=e=>!!e?.some(e=>e.id===j||e.type===`group`&&t(e.children));return t(e.children)},[e,j])?!0:O??!(A>=8),[I,re]=(0,H.useState)(te);if(!r(e.visible)||e.requiredPermissions?.length&&!i(e.requiredPermissions))return null;let L=e.requiresObject,R=e.requiresService;if(L&&!a(`object`,L)||R&&!a(`service`,R))return null;if(e.type===`separator`)return(0,U.jsx)(f,{className:`my-2`});if(e.type===`group`){let t=(e.children??[]).slice().sort((e,t)=>(e.order??0)-(t.order??0)),l=K(e,u,v,h,_);return(0,U.jsx)(ie,{open:I,onOpenChange:re,children:(0,U.jsxs)(E,{children:[(0,U.jsx)(N,{asChild:!0,children:(0,U.jsxs)(p,{className:D(`flex w-full items-center justify-between`,x&&`min-h-[44px] text-[15px] rounded-xl`),children:[l,(0,U.jsx)(ee,{className:D(`ml-auto transition-transform`,x?`h-5 w-5`:`h-4 w-4`,I&&`rotate-90`)})]})}),(0,U.jsx)(b,{children:(0,U.jsx)(F,{children:(0,U.jsx)(P,{children:t.map(e=>(0,U.jsx)(Z,{item:e,basePath:n,evalVis:r,checkPerm:i,checkCap:a,onAction:o,enablePinning:s,onPinToggle:c,resolveObjectLabel:u,resolveDashboardLabel:h,resolveViewLabel:_,t:v,templateContext:y},e.id))})})})]})})}if(e.type===`action`){if(!o)return null;let t=W(e.icon),r=G(e.label,v);return(0,U.jsxs)(M,{children:[l&&(0,U.jsx)(`span`,{className:`absolute left-0.5 top-1/2 -translate-y-1/2 cursor-grab text-muted-foreground`,"aria-label":v?v(`console.nav.dragToReorder`,{defaultValue:`Drag to reorder`}):`Drag to reorder`,...l,children:(0,U.jsx)(m,{className:`h-3.5 w-3.5`})}),(0,U.jsxs)(T,{tooltip:r,onClick:()=>o?.(e),className:S,children:[(0,U.jsx)(t,{className:w}),(0,U.jsx)(`span`,{children:r}),e.badge!=null&&(0,U.jsx)(g,{variant:e.badgeVariant??`default`,className:`ml-auto text-[10px] px-1.5 py-0`,children:e.badge})]}),s&&c&&(0,U.jsx)(ne,{showOnHover:!0,onClick:()=>c(e.id,!e.pinned,e,n),"aria-label":v?v(e.pinned?`console.nav.unpinItem`:`console.nav.pinItem`,{defaultValue:e.pinned?`Unpin ${r}`:`Pin ${r}`,name:r}):e.pinned?`Unpin ${r}`:`Pin ${r}`,children:e.pinned?(0,U.jsx)(k,{className:`h-3.5 w-3.5`}):(0,U.jsx)(d,{className:`h-3.5 w-3.5`})})]})}let ae=W(e.icon),{href:z,external:oe}=Y(e,n,y),se=j!==null&&e.id===j,B=K(e,u,v,h,_),V=(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(ae,{className:w}),(0,U.jsx)(`span`,{children:B}),e.badge!=null&&(0,U.jsx)(g,{variant:e.badgeVariant??`default`,className:`ml-auto text-[10px] px-1.5 py-0`,children:e.badge})]});return(0,U.jsxs)(M,{children:[l&&(0,U.jsx)(`span`,{className:`absolute left-0.5 top-1/2 -translate-y-1/2 cursor-grab text-muted-foreground`,"aria-label":v?v(`console.nav.dragToReorder`,{defaultValue:`Drag to reorder`}):`Drag to reorder`,...l,children:(0,U.jsx)(m,{className:`h-3.5 w-3.5`})}),(0,U.jsx)(T,{asChild:!0,isActive:se,tooltip:B,className:S,children:oe?(0,U.jsx)(`a`,{href:z,target:`_blank`,rel:`noopener noreferrer`,children:V}):(0,U.jsx)(t,{to:z,children:V})}),s&&c&&(0,U.jsx)(ne,{showOnHover:!0,onClick:()=>c(e.id,!e.pinned,e,n),"aria-label":v?v(e.pinned?`console.nav.unpinItem`:`console.nav.pinItem`,{defaultValue:e.pinned?`Unpin ${B}`:`Pin ${B}`,name:B}):e.pinned?`Unpin ${B}`:`Pin ${B}`,children:e.pinned?(0,U.jsx)(k,{className:`h-3.5 w-3.5`}):(0,U.jsx)(d,{className:`h-3.5 w-3.5`})})]})}function Q({items:e,basePath:t=``,evaluateVisibility:n=ye,checkPermission:i=be,checkCapability:a=xe,onAction:o,searchQuery:s,enablePinning:c,onPinToggle:l,enableReorder:u,onReorder:d,resolveObjectLabel:f,resolveDashboardLabel:p,resolveViewLabel:m,t:h,templateContext:g}){let _=r(),v=(0,H.useMemo)(()=>Pe(e,_.pathname,_.search,t,g)?.id??null,[e,_.pathname,_.search,t,g]),b=(0,H.useMemo)(()=>s?Fe(e,s):e,[e,s]),x=(0,H.useMemo)(()=>$(b),[b]),S=b.slice().sort((e,t)=>(e.order??0)-(t.order??0)),C=le(L(ae,{activationConstraint:{distance:Ie}}),L(ce)),w=e=>{let{active:t,over:n}=e;if(!n||t.id===n.id||!d)return;let r=S.findIndex(e=>e.id===t.id),i=S.findIndex(e=>e.id===n.id);r!==-1&&i!==-1&&d(z(S,r,i).map((e,t)=>({...e,order:t})))},T={basePath:t,evalVis:n,checkPerm:i,checkCap:a,onAction:o,enablePinning:c,onPinToggle:l,resolveObjectLabel:f,resolveDashboardLabel:p,resolveViewLabel:m,t:h,templateContext:g},D=S.some(e=>e.type===`group`),O=x.length>0&&c?(0,U.jsxs)(E,{children:[(0,U.jsxs)(N,{className:`flex items-center gap-1.5`,children:[(0,U.jsx)(y,{className:`h-3.5 w-3.5`}),h?h(`console.nav.favorites`,{defaultValue:`Favorites`}):`Favorites`]}),(0,U.jsx)(F,{children:(0,U.jsx)(P,{children:x.map(e=>(0,U.jsx)(Z,{item:e,...T},`fav-${e.id}`))})})]}):null;if(!D){let e=S.filter(e=>e.type!==`group`).map(e=>e.id),t=u?(0,U.jsx)(R,{sensors:C,collisionDetection:se,onDragEnd:w,children:(0,U.jsx)(V,{items:e,strategy:B,children:(0,U.jsx)(P,{children:S.map(e=>(0,U.jsx)(Le,{item:e,enableReorder:u,...T},e.id))})})}):(0,U.jsx)(P,{children:S.map(e=>(0,U.jsx)(Z,{item:e,...T},e.id))});return(0,U.jsxs)(X.Provider,{value:v,children:[O,(0,U.jsx)(E,{children:(0,U.jsx)(F,{children:t})})]})}let k=[],A=[],j=e=>{if(A.length===0)return;let t=A;A=[],k.push((0,U.jsx)(E,{children:(0,U.jsx)(F,{children:(0,U.jsx)(P,{children:t.map(e=>(0,U.jsx)(Z,{item:e,...T},e.id))})})},e))};return S.forEach((e,t)=>{e.type===`group`?(j(`leaf-${t}`),k.push((0,U.jsx)(Z,{item:e,...T},e.id))):A.push(e)}),j(`leaf-end`),(0,U.jsxs)(X.Provider,{value:v,children:[O,k]})}function $(e){let t=[];for(let n of e)n.pinned&&n.type!==`group`&&n.type!==`separator`&&t.push(n),n.children?.length&&t.push(...$(n.children));return t}function Re(e){let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(!t)return null;let n=parseInt(t[1],16)/255,r=parseInt(t[2],16)/255,i=parseInt(t[3],16)/255,a=Math.max(n,r,i),o=Math.min(n,r,i),s=0,c=0,l=(a+o)/2;if(a!==o){let e=a-o;switch(c=l>.5?e/(2-a-o):e/(a+o),a){case n:s=((r-i)/e+(r<i?6:0))/6;break;case r:s=((i-n)/e+2)/6;break;case i:s=((n-r)/e+4)/6}}return{h:s*360,s:c*100,l:l*100}}function ze(e){let t=Re(e);return t?`${Math.round(t.h)} ${Math.round(t.s)}% ${Math.round(t.l)}%`:null}function Be(e){let t=Re(e);if(!t)return null;let n=Math.max(t.l,65),r=t.s>80?Math.max(t.s-10,70):t.s;return`${Math.round(t.h)} ${Math.round(r)}% ${Math.round(n)}%`}function Ve(e){let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(!t)return`0 0% 100%`;let n=e=>{let t=e/255;return t<=.03928?t/12.92:((t+.055)/1.055)**2.4},r=n(parseInt(t[1],16)),i=n(parseInt(t[2],16)),a=n(parseInt(t[3],16));return .2126*r+.7152*i+.0722*a>.6?`222 47% 11%`:`0 0% 100%`}function He(e,t){(0,H.useEffect)(()=>{let n=document.documentElement,r=()=>n.classList.contains(`dark`),i=()=>{if(e?.primaryColor){let t=ze(e.primaryColor),i=Be(e.primaryColor),a=r()&&i||t;a&&(n.style.setProperty(`--brand-primary`,e.primaryColor),n.style.setProperty(`--brand-primary-hsl`,t||a),n.style.setProperty(`--primary`,a),n.style.setProperty(`--primary-foreground`,r()?`222 47% 11%`:Ve(e.primaryColor)),n.style.setProperty(`--ring`,a),n.style.setProperty(`--sidebar-primary`,a),n.style.setProperty(`--sidebar-ring`,a))}else n.style.removeProperty(`--brand-primary`),n.style.removeProperty(`--brand-primary-hsl`),n.style.removeProperty(`--primary`),n.style.removeProperty(`--primary-foreground`),n.style.removeProperty(`--ring`),n.style.removeProperty(`--sidebar-primary`),n.style.removeProperty(`--sidebar-ring`);if(e?.accentColor){let t=ze(e.accentColor),i=Be(e.accentColor),a=r()&&i||t;a&&(n.style.setProperty(`--brand-accent`,e.accentColor),n.style.setProperty(`--brand-accent-hsl`,t||a),n.style.setProperty(`--accent`,a),n.style.setProperty(`--accent-foreground`,r()?`222 47% 11%`:Ve(e.accentColor)))}else n.style.removeProperty(`--brand-accent`),n.style.removeProperty(`--brand-accent-hsl`),n.style.removeProperty(`--accent`),n.style.removeProperty(`--accent-foreground`)};i();let a=new MutationObserver(e=>{for(let t of e)if(t.type===`attributes`&&t.attributeName===`class`){i();break}});if(a.observe(n,{attributes:!0,attributeFilter:[`class`]}),e?.favicon){let t=document.querySelector(`#favicon`)||document.querySelector(`link[rel="icon"]`);t&&(t.href=e.favicon)}return t&&(document.title=t),()=>{a.disconnect(),n.style.removeProperty(`--brand-primary`),n.style.removeProperty(`--brand-primary-hsl`),n.style.removeProperty(`--brand-accent`),n.style.removeProperty(`--brand-accent-hsl`),n.style.removeProperty(`--primary`),n.style.removeProperty(`--primary-foreground`),n.style.removeProperty(`--ring`),n.style.removeProperty(`--sidebar-primary`),n.style.removeProperty(`--sidebar-ring`),n.style.removeProperty(`--accent`),n.style.removeProperty(`--accent-foreground`)}},[e?.primaryColor,e?.accentColor,e?.favicon,t])}function Ue({sidebar:e,navbar:t,children:n,className:r,defaultOpen:i=!0,branding:a,rightRail:o}){return He(a,a?.title),(0,U.jsxs)(I,{defaultOpen:i,className:`!flex-col h-svh overflow-hidden`,children:[(0,U.jsx)(`header`,{className:`sticky top-0 z-30 flex h-14 w-full shrink-0 items-center gap-2 border-b bg-background px-2 sm:px-4`,children:t}),(0,U.jsxs)(`div`,{className:`flex flex-1 min-h-0 w-full`,children:[e,(0,U.jsx)(w,{className:`min-w-0`,children:(0,U.jsx)(`main`,{className:D(`flex-1 min-w-0 overflow-auto p-3 sm:p-4 md:p-6 pb-20 sm:pb-4 md:pb-6`,r),children:n})}),o]})]})}function We(e){return a(e,void 0)??``}function Ge({areas:e,activeAreaId:t,onAreaChange:n}){return e.length<=1?null:(0,U.jsxs)(E,{children:[(0,U.jsxs)(N,{className:`flex items-center gap-1.5`,children:[(0,U.jsx)(j,{className:`h-3.5 w-3.5`}),`Area`]}),(0,U.jsx)(F,{children:(0,U.jsx)(P,{children:e.map(e=>{let r=W(e.icon),i=We(e.label);return(0,U.jsx)(M,{children:(0,U.jsxs)(T,{isActive:e.id===t,tooltip:i,onClick:()=>n(e.id),children:[(0,U.jsx)(r,{className:`h-4 w-4`}),(0,U.jsx)(`span`,{children:i})]})},e.id)})})})]})}function Ke({items:e,basePath:n}){let i=r(),a=e=>{let t=[];for(let n of e)n.type!==`separator`&&(n.type===`group`?t.push(...a(n.children||[])):t.push(n));return t},o=a(e).slice(0,5);return o.length===0?null:(0,U.jsx)(`div`,{className:`fixed bottom-0 left-0 right-0 z-50 flex items-center justify-around border-t bg-background/95 backdrop-blur-sm px-2 py-1 sm:hidden safe-area-bottom`,role:`navigation`,"aria-label":`Mobile navigation`,children:o.map(e=>{let r=W(e.icon),a=`#`;if(e.type===`object`)a=`${n}/${e.objectName}`,e.viewName&&(a+=`/view/${e.viewName}`);else if(e.type===`dashboard`)a=e.dashboardName?`${n}/dashboard/${e.dashboardName}`:`#`;else if(e.type===`page`)a=e.pageName?`${n}/page/${e.pageName}`:`#`;else if(e.type===`report`)a=e.reportName?`${n}/report/${e.reportName}`:`#`;else if(e.type===`url`)a=e.url??`#`;else if(e.type===`component`){let t=e.componentRef;if(t){a=`${n}/component/${t.split(`:`).filter(Boolean).join(`/`)}`;let r=e.params;if(r){let e=new URLSearchParams;for(let[t,n]of Object.entries(r))n!=null&&e.set(t,typeof n==`string`?n:JSON.stringify(n));let t=e.toString();t&&(a+=`?${t}`)}}}let o=a!==`#`&&i.pathname.startsWith(a);return(0,U.jsxs)(t,{to:a,className:`flex flex-col items-center gap-0.5 px-2 py-1.5 transition-colors min-w-[44px] min-h-[44px] justify-center ${o?`text-primary`:`text-muted-foreground hover:text-foreground`}`,children:[(0,U.jsx)(r,{className:`h-5 w-5`}),(0,U.jsx)(`span`,{className:`text-[10px] truncate max-w-[60px]`,children:G(e.label)})]},e.id)})})}function qe({schema:e,basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,sidebarHeader:o,sidebarFooter:s,sidebarExtra:c,visibleAreas:l,activeAreaId:d,setActiveAreaId:f,resolvedNavigation:p,enableSearch:m,enablePinning:h,onPinToggle:g,enableReorder:_,onReorder:y}){let b=W(e.logo),[x,C]=(0,H.useState)(``);return(0,U.jsxs)(S,{collapsible:`icon`,children:[(0,U.jsxs)(te,{children:[o??(0,U.jsx)(P,{children:(0,U.jsx)(M,{children:(0,U.jsxs)(T,{size:`lg`,tooltip:e.title??e.name,children:[(0,U.jsx)(`div`,{className:`flex aspect-square size-8 items-center justify-center rounded-lg bg-primary text-primary-foreground`,children:e.logo&&e.logo.startsWith(`http`)?(0,U.jsx)(`img`,{src:e.logo,alt:e.title??``,className:`size-6 object-contain`}):(0,U.jsx)(b,{className:`size-4`})}),(0,U.jsxs)(`div`,{className:`grid flex-1 text-left text-sm leading-tight`,children:[(0,U.jsx)(`span`,{className:`truncate font-semibold`,children:e.title??e.name??`App`}),e.description&&(0,U.jsx)(`span`,{className:`truncate text-xs text-muted-foreground`,children:e.description})]})]})})}),m&&(0,U.jsx)(O,{placeholder:`Search navigation…`,value:x,onChange:e=>C(e.target.value),"aria-label":`Search navigation`})]}),(0,U.jsxs)(v,{children:[l.length>1&&d&&(0,U.jsx)(Ge,{areas:l,activeAreaId:d,onAreaChange:f}),(0,U.jsx)(Q,{items:p,basePath:t,evaluateVisibility:n,checkPermission:r,checkCapability:i,onAction:a,searchQuery:x,enablePinning:h,onPinToggle:g,enableReorder:_,onReorder:y}),c]}),s&&(0,U.jsx)(u,{children:s})]})}function Je({schema:e,basePath:t=``,mobileNavMode:n=`drawer`,evaluateVisibility:r,checkPermission:i,checkCapability:a,onAction:o,navbar:c,sidebarHeader:l,sidebarFooter:u,sidebarExtra:d,children:f,className:p,defaultOpen:m=!0,enableSearch:h,enablePinning:g,onPinToggle:_,enableReorder:v,onReorder:y}){let b=r??(e=>e!==!1&&e!==`false`),x=i??(()=>!0),S=a??(()=>!0),C=(0,H.useMemo)(()=>(e.menu??[]).map((e,t)=>s(e,t)),[e.menu]),w=e.navigation??C,T=(e.areas??[]).filter(e=>q(e.navigation,{evaluateVisibility:b,checkPermission:x,checkCapability:S,hasActionHandler:!!o})),[E,D]=(0,H.useState)(()=>T.length>0?T[0].id:null),O=T.map(e=>e.id).join(`,`);(0,H.useEffect)(()=>{T.length>0?D(e=>T.some(t=>t.id===e)?e:T[0].id):D(null)},[e.name,O]);let k=T.find(e=>e.id===E)??T[0],A=k?.navigation??w,j={title:e.title,favicon:e.favicon},M=(0,U.jsx)(qe,{schema:e,basePath:t,evalVis:b,checkPerm:x,checkCap:S,onAction:o,sidebarHeader:l,sidebarFooter:u,sidebarExtra:d,visibleAreas:T,activeAreaId:k?.id??null,setActiveAreaId:D,resolvedNavigation:A,enableSearch:h,enablePinning:g,onPinToggle:_,enableReorder:v,onReorder:y});return(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(Ue,{sidebar:M,navbar:c,className:p,defaultOpen:m,branding:j,children:f}),n===`bottom_nav`&&(0,U.jsx)(Ke,{items:A,basePath:t})]})}function Ye(){c.register(`page-header`,pe,{namespace:`layout`,label:`Page Header`,category:`Layout`,isContainer:!0,inputs:[{name:`title`,type:`string`,label:`Title`},{name:`subtitle`,type:`string`,label:`Subtitle`},{name:`icon`,type:`string`,label:`Icon`,description:`Lucide icon name`},{name:`actions`,type:`array`,label:`Actions`,description:`ActionDef list (or action ids) rendered through record:quick_actions`}]}),c.register(`page:card`,me,{namespace:`layout`,skipFallback:!0,label:`Page Card`,category:`Layout`,isContainer:!0}),c.register(`responsive-grid`,ve,{namespace:`layout`,label:`Responsive Grid`,category:`Layout`,isContainer:!0,inputs:[{name:`columns`,type:`object`},{name:`gap`,type:`number`}]}),c.register(`navigation-renderer`,Q,{namespace:`layout`,label:`Navigation Renderer`,category:`Layout`,inputs:[{name:`items`,type:`array`,required:!0},{name:`basePath`,type:`string`}]}),c.register(`app-schema-renderer`,Je,{namespace:`layout`,label:`App Schema Renderer`,category:`Layout`,isContainer:!0,inputs:[{name:`schema`,type:`object`},{name:`basePath`,type:`string`},{name:`mobileNavMode`,type:`enum`,enum:[`drawer`,`bottom_nav`],defaultValue:`drawer`,label:`Mobile Nav Mode`,description:`Mobile navigation mode. "drawer" (default) puts the sidebar in the mobile sheet overlay; "bottom_nav" additionally renders a fixed bottom bar. These are the only two modes the renderer implements.`}]})}try{Ye()}catch{}export{Pe as a,q as i,Ce as n,Y as o,Q as r,K as s,Ue as t};
1
+ import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{a as t,b as n,f as r,r as i}from"./vendor-react-CsWFRkED.js";import{Fn as a}from"./vendor-objectstack-BU0HrnMy.js";import{At as o,ht as s,jr as c,ti as l}from"./framework-DFE_Mws9.js";import{$t as u,Aa as d,Cn as f,Er as p,Ko as m,Mt as h,Pr as g,Qc as _,Qt as v,Ri as y,Tr as b,Xr as x,Zt as S,_n as C,an as w,cn as T,en as E,il as D,in as O,ja as k,jt as A,ko as j,ln as M,nn as N,on as P,pc as ee,rn as te,sn as ne,tn as F,un as I,us as re,wr as ie}from"./ui-components-CMHDBJEm.js";import{_ as L,c as R,d as ae,n as z,o as oe,p as se,s as B,t as V,u as ce,v as le,y as ue}from"./vendor-dndkit-CkJ59XFL.js";var H=e(n(),1),U=i(),de=e=>{let t=e?.name??e?.full_name??e?.display_name??e?.label??e?.title??e?.subject;return t!=null&&String(t).trim()?String(t):[e?.salutation,e?.first_name,e?.last_name].filter(e=>typeof e==`string`&&e.trim()).map(e=>e.trim()).join(` `)||(typeof e?.email==`string`&&e.email.trim()?e.email.trim():null)},fe=(e,t)=>!e||typeof e!=`string`?e??``:e.includes(`{`)?e.replace(/\{([a-zA-Z0-9_.]+)\}/g,(e,n)=>{let r=n.split(`.`).reduce((e,t)=>e==null?e:e[t],t);return r==null?``:typeof r==`object`?de(r)??``:String(r)}).replace(/\s*[-–—|/·,:]\s*(?=\s*[-–—|/·,:]|$)/g,``).replace(/^\s*[-–—|/·,:]\s*/,``).replace(/\s+/g,` `).trim():e;function pe({title:e,subtitle:t,icon:n,action:r,actions:i,showBack:a,schema:c,className:l,children:u,...d}){let f=o(),p=typeof e==`string`&&/\{[a-zA-Z0-9_.]+\}/.test(e),m=fe(e,f?.data)||(p?``:e),h=t,g=typeof h==`string`&&/\{[a-zA-Z0-9_.]+\}/.test(h),v=fe(h,f?.data)||(g?``:h),y=!!f?.recordId,b=!!f?.embedded,S=a??(y&&!b),C=H.useCallback(()=>{if(typeof window>`u`)return;let e=window.location.pathname,t=e.replace(/\/record\/[^/]+\/?$/,``);t===e?window.history.length>1&&window.history.back():(window.history.pushState({},``,t+window.location.search),window.dispatchEvent(new PopStateEvent(`popstate`)))},[]),w=Array.isArray(c?.children)?c.children.filter(Boolean).map((e,t)=>(0,U.jsx)(s,{schema:e},e?.id||`pgh-child-${t}`)):null,T=Array.isArray(i)&&i.length>0&&i||Array.isArray(c?.actions)&&c.actions.length>0&&c.actions||Array.isArray(c?.properties?.actions)&&c.properties.actions.length>0&&c.properties.actions||null,E=r||u||(T?(0,U.jsx)(s,{schema:{type:`record:quick_actions`,properties:{actions:T,location:`record_header`,align:`end`,inline:!0}}}):null)||w;return(0,U.jsx)(`div`,{className:D(`flex flex-col gap-3 pb-4 border-b`,l),...d,children:(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-4 gap-y-2`,children:[S&&(0,U.jsx)(x,{type:`button`,variant:`ghost`,size:`icon`,onClick:C,"aria-label":`Back to list`,className:`flex-shrink-0 -ml-2`,children:(0,U.jsx)(_,{className:`size-4`})}),n&&(m||v)&&(0,U.jsx)(`div`,{className:`flex-shrink-0 grid place-items-center size-10 rounded-md bg-primary/10 text-primary`,children:typeof n==`string`?(0,U.jsx)(A,{name:n,className:`size-5`}):n}),(0,U.jsxs)(`div`,{className:`flex flex-col min-w-0 flex-1`,children:[m?(0,U.jsx)(`h1`,{className:`text-2xl font-bold tracking-tight md:text-3xl truncate`,children:m}):null,v&&(0,U.jsx)(`p`,{className:`text-sm text-muted-foreground truncate`,children:v})]}),E&&(0,U.jsx)(`div`,{className:`flex items-center gap-2 ml-auto`,children:E})]})})}function me({className:e,children:t,...n}){return(0,U.jsx)(`div`,{className:D(`rounded-xl border bg-card text-card-foreground shadow`,e),...n,children:(0,U.jsx)(`div`,{className:`p-6`,children:t})})}var he={xs:{1:`grid-cols-1`,2:`grid-cols-2`,3:`grid-cols-3`,4:`grid-cols-4`,6:`grid-cols-6`,12:`grid-cols-12`},sm:{1:`sm:grid-cols-1`,2:`sm:grid-cols-2`,3:`sm:grid-cols-3`,4:`sm:grid-cols-4`,6:`sm:grid-cols-6`,12:`sm:grid-cols-12`},md:{1:`md:grid-cols-1`,2:`md:grid-cols-2`,3:`md:grid-cols-3`,4:`md:grid-cols-4`,6:`md:grid-cols-6`,12:`md:grid-cols-12`},lg:{1:`lg:grid-cols-1`,2:`lg:grid-cols-2`,3:`lg:grid-cols-3`,4:`lg:grid-cols-4`,6:`lg:grid-cols-6`,12:`lg:grid-cols-12`},xl:{1:`xl:grid-cols-1`,2:`xl:grid-cols-2`,3:`xl:grid-cols-3`,4:`xl:grid-cols-4`,6:`xl:grid-cols-6`,12:`xl:grid-cols-12`},"2xl":{1:`2xl:grid-cols-1`,2:`2xl:grid-cols-2`,3:`2xl:grid-cols-3`,4:`2xl:grid-cols-4`,6:`2xl:grid-cols-6`,12:`2xl:grid-cols-12`}};function ge(e){if(!e)return`grid-cols-1`;let t=[];for(let[n,r]of Object.entries(e)){let e=he[n];if(e&&r){let n=Object.keys(e).map(Number).reduce((e,t)=>Math.abs(t-r)<Math.abs(e-r)?t:e);t.push(e[n])}}return t.join(` `)||`grid-cols-1`}var _e={0:`gap-0`,1:`gap-1`,2:`gap-2`,3:`gap-3`,4:`gap-4`,5:`gap-5`,6:`gap-6`,8:`gap-8`},ve=({columns:e,gap:t=4,className:n,children:r})=>{let i=ge(e),a=typeof t==`number`?_e[t]||`gap-${t}`:``;return(0,U.jsx)(`div`,{className:D(`grid`,i,a,n),children:r})};function W(e){return e?h(e):re}function G(e,t){if(typeof e==`string`)return e;if(t){let n=t(e.key,{defaultValue:e.defaultValue,...e.params});if(n&&n!==e.key)return n}return e.defaultValue||e.key}function K(e,t,n,r,i){let a=G(e.label,n);if(typeof e.label!=`string`)return a;let o=e=>!!e&&a.trim().toLowerCase()!==e.trim().toLowerCase();if(e.type===`object`&&e.objectName){if(e.viewName)return o(e.viewName)?a:i?i(e.objectName,e.viewName,a):a;if(o(e.objectName))return a;if(t)return t(e.objectName,a)}if(e.type===`dashboard`&&e.dashboardName){if(o(e.dashboardName))return a;if(r)return r(e.dashboardName,a)}return a}var ye=e=>e!==!1&&e!==`false`,be=()=>!0,xe=()=>!0;function q(e,t={}){let{evaluateVisibility:n=ye,checkPermission:r=be,checkCapability:i=xe,hasActionHandler:a=!1}=t;for(let o of e)if(n(o.visible)&&!(o.requiredPermissions?.length&&!r(o.requiredPermissions))&&!(o.requiresObject&&!i(`object`,o.requiresObject))&&!(o.requiresService&&!i(`service`,o.requiresService))&&o.type!==`separator`){if(o.type===`group`){if(q(o.children??[],t))return!0;continue}if(!(o.type===`action`&&!a))return!0}return!1}var Se=/\{(current_user_id|current_org_id|[a-z][a-z0-9_]*)\}/g;function J(e,t){if(!e.includes(`{`))return e;let n=!1,r=e.replace(Se,(e,r)=>{let i;return i=r===`current_user_id`?t?.currentUserId:r===`current_org_id`?t?.currentOrgId:t?.contextValues?.[r],i||(n=!0,``)});return n?null:r}var Ce=`runAction`;function we(e,t){let n=t.runAction;return typeof n!=`string`||n===``?e:`${e}${e.includes(`?`)?`&`:`?`}${Ce}=${encodeURIComponent(n)}`}function Y(e,t,n){switch(e.type){case`object`:{let r=`${t}/${e.objectName??``}`,i=e.recordId;if(i){let t=J(i,n);if(t){let n=`${r}/record/${encodeURIComponent(t)}`;return{href:e.recordMode===`edit`?`${n}/edit`:n,external:!1}}}let a=e.filters;if(a&&typeof a==`object`&&!Array.isArray(a)){let t=new URLSearchParams;for(let[e,r]of Object.entries(a)){if(r==null||e===``)continue;let i=J(String(r),n);i!==null&&t.set(`filter[${e}]`,i)}let i=t.toString();return{href:we(i?`${r}/data?${i}`:`${r}/data`,e),external:!1}}return{href:we(e.viewName?`${r}/view/${e.viewName}`:r,e),external:!1}}case`dashboard`:return{href:e.dashboardName?`${t}/dashboard/${e.dashboardName}`:`#`,external:!1};case`page`:{if(!e.pageName)return{href:`#`,external:!1};let r=e.params,i=`${t}/page/${e.pageName}`;if(r&&typeof r==`object`){let e=new URLSearchParams;for(let[t,i]of Object.entries(r))if(i!=null){if(typeof i==`string`){let r=J(i,n);r!==null&&e.set(t,r)}else e.set(t,JSON.stringify(i))}let t=e.toString();t&&(i+=`?${t}`)}return{href:i,external:!1}}case`report`:return{href:e.reportName?`${t}/report/${e.reportName}`:`#`,external:!1};case`url`:return{href:e.url??`#`,external:e.target===`_blank`};case`component`:{let r=e.componentRef;if(!r)return{href:`#`,external:!1};let i=r.split(`:`).filter(Boolean);if(i.length===0)return{href:`#`,external:!1};let a=e.params;if(i[0]===`metadata`){let e=i[1],r=a&&typeof a.type==`string`?a.type:void 0,o=a&&typeof a.name==`string`?a.name:void 0,s=``;if(a&&typeof a==`object`){let e=new URLSearchParams;for(let[t,r]of Object.entries(a))if(t!==`type`&&t!==`name`&&r!=null){if(typeof r==`string`){let i=J(r,n);i&&e.set(t,i)}else e.set(t,JSON.stringify(r))}let t=e.toString();t&&(s=`?${t}`)}return e===`directory`||!e?{href:`${t}/metadata${s}`,external:!1}:e===`resource`&&r?{href:`${t}/metadata${o?`/${encodeURIComponent(r)}/${encodeURIComponent(o)}`:`/${encodeURIComponent(r)}`}${s}`,external:!1}:{href:`${t}/metadata${s}`,external:!1}}let o=`${t}/component/${i.join(`/`)}`;if(a&&typeof a==`object`){let e=new URLSearchParams;for(let[t,n]of Object.entries(a))n!=null&&e.set(t,typeof n==`string`?n:JSON.stringify(n));let t=e.toString();t&&(o+=`?${t}`)}return{href:o,external:!1}}default:return{href:`#`,external:!1}}}var Te=50,Ee=40,De=30,Oe=25,ke=10,Ae=5;function je(e){let t=new Map;return new URLSearchParams(e).forEach((e,n)=>{let r=/^filter\[(.+)\]$/.exec(n);r&&r[1]&&e!==``&&t.set(r[1],e)}),t}function Me(e,t){return t.startsWith(`${e}.`)?t.slice(e.length+1):t}function Ne(e,t,n,r,i){let{href:a,external:o}=Y(e,r,i);if(o||a===`#`)return 0;if(e.type===`object`&&e.objectName){let a=`${r}/${e.objectName}`;if(t!==a&&!t.startsWith(`${a}/`))return 0;let o=t===a?[]:t.slice(a.length+1).split(`/`),s=e.recordId;if(s){let e=J(s,i);if(e)return o[0]===`record`&&decodeURIComponent(o[1]??``)===e?Te:0}let c=e.filters;if(c&&typeof c==`object`&&!Array.isArray(c)){if(o[0]!==`data`)return 0;let e=new Map;for(let[t,n]of Object.entries(c)){if(n==null||t===``)continue;let r=J(String(n),i);r!==null&&e.set(t,r)}if(e.size!==n.size)return 0;for(let[t,r]of e)if(n.get(t)!==r)return 0;return Ee}return e.viewName?o[0]!==`view`||!o[1]?0:Me(e.objectName,decodeURIComponent(o[1]))===Me(e.objectName,e.viewName)?De:0:o.length===0?Oe:ke}let s=a.split(`?`)[0];if(t===s)return Oe;let c=e.componentRef;return c&&c.split(`:`)[1]===`directory`?0:t.startsWith(`${s}/`)?Ae:0}function Pe(e,t,n,r,i){let a=je(n),o=null,s=0,c=e=>{if(e)for(let n of e){if(n.type===`group`){c(n.children);continue}let e=Ne(n,t,a,r,i);e>s&&(o=n,s=e)}};return c(e),o}var X=H.createContext(null);function Fe(e,t){if(!t.trim())return e;let n=t.toLowerCase().trim();return e.reduce((e,r)=>{if(r.type===`separator`)return e;if(r.type===`group`&&r.children?.length){let n=Fe(r.children,t);return n.length>0&&e.push({...r,children:n}),e}return G(r.label).toLowerCase().includes(n)&&e.push(r),e},[])}var Ie=5;function Le({item:e,basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,enablePinning:o,onPinToggle:s,enableReorder:c,resolveObjectLabel:l,resolveDashboardLabel:u,resolveViewLabel:d,t:f,templateContext:p}){let{attributes:m,listeners:h,setNodeRef:g,transform:_,transition:v,isDragging:y}=oe({id:e.id,disabled:!c}),b={transform:ue.Transform.toString(_),transition:v,opacity:y?.5:void 0,zIndex:y?10:void 0};return(0,U.jsx)(`div`,{ref:g,style:b,...m,children:(0,U.jsx)(Z,{item:e,basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,enablePinning:o,onPinToggle:s,dragListeners:c?h:void 0,resolveObjectLabel:l,resolveDashboardLabel:u,resolveViewLabel:d,t:f,templateContext:p})})}function Z({item:e,basePath:n,evalVis:r,checkPerm:i,checkCap:a,onAction:o,enablePinning:s,onPinToggle:c,dragListeners:l,resolveObjectLabel:u,resolveDashboardLabel:h,resolveViewLabel:_,t:v,templateContext:y}){let x=C(),S=x?`min-h-[44px] text-[15px] gap-3 rounded-xl`:void 0,w=D(`shrink-0`,x?`h-5 w-5`:`h-4 w-4`),O=(()=>{if(typeof e.expanded==`boolean`)return e.expanded;if(typeof e.defaultOpen==`boolean`)return e.defaultOpen})(),A=e.type===`group`?e.children?.length??0:0,j=H.useContext(X),te=H.useMemo(()=>{if(e.type!==`group`||!j)return!1;let t=e=>!!e?.some(e=>e.id===j||e.type===`group`&&t(e.children));return t(e.children)},[e,j])?!0:O??!(A>=8),[I,re]=(0,H.useState)(te);if(!r(e.visible)||e.requiredPermissions?.length&&!i(e.requiredPermissions))return null;let L=e.requiresObject,R=e.requiresService;if(L&&!a(`object`,L)||R&&!a(`service`,R))return null;if(e.type===`separator`)return(0,U.jsx)(f,{className:`my-2`});if(e.type===`group`){let t=(e.children??[]).slice().sort((e,t)=>(e.order??0)-(t.order??0)),l=K(e,u,v,h,_);return(0,U.jsx)(ie,{open:I,onOpenChange:re,children:(0,U.jsxs)(E,{children:[(0,U.jsx)(N,{asChild:!0,children:(0,U.jsxs)(p,{className:D(`flex w-full items-center justify-between`,x&&`min-h-[44px] text-[15px] rounded-xl`),children:[l,(0,U.jsx)(ee,{className:D(`ml-auto transition-transform`,x?`h-5 w-5`:`h-4 w-4`,I&&`rotate-90`)})]})}),(0,U.jsx)(b,{children:(0,U.jsx)(F,{children:(0,U.jsx)(P,{children:t.map(e=>(0,U.jsx)(Z,{item:e,basePath:n,evalVis:r,checkPerm:i,checkCap:a,onAction:o,enablePinning:s,onPinToggle:c,resolveObjectLabel:u,resolveDashboardLabel:h,resolveViewLabel:_,t:v,templateContext:y},e.id))})})})]})})}if(e.type===`action`){if(!o)return null;let t=W(e.icon),r=G(e.label,v);return(0,U.jsxs)(M,{children:[l&&(0,U.jsx)(`span`,{className:`absolute left-0.5 top-1/2 -translate-y-1/2 cursor-grab text-muted-foreground`,"aria-label":v?v(`console.nav.dragToReorder`,{defaultValue:`Drag to reorder`}):`Drag to reorder`,...l,children:(0,U.jsx)(m,{className:`h-3.5 w-3.5`})}),(0,U.jsxs)(T,{tooltip:r,onClick:()=>o?.(e),className:S,children:[(0,U.jsx)(t,{className:w}),(0,U.jsx)(`span`,{children:r}),e.badge!=null&&(0,U.jsx)(g,{variant:e.badgeVariant??`default`,className:`ml-auto text-[10px] px-1.5 py-0`,children:e.badge})]}),s&&c&&(0,U.jsx)(ne,{showOnHover:!0,onClick:()=>c(e.id,!e.pinned,e,n),"aria-label":v?v(e.pinned?`console.nav.unpinItem`:`console.nav.pinItem`,{defaultValue:e.pinned?`Unpin ${r}`:`Pin ${r}`,name:r}):e.pinned?`Unpin ${r}`:`Pin ${r}`,children:e.pinned?(0,U.jsx)(k,{className:`h-3.5 w-3.5`}):(0,U.jsx)(d,{className:`h-3.5 w-3.5`})})]})}let ae=W(e.icon),{href:z,external:oe}=Y(e,n,y),se=j!==null&&e.id===j,B=K(e,u,v,h,_),V=(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(ae,{className:w}),(0,U.jsx)(`span`,{children:B}),e.badge!=null&&(0,U.jsx)(g,{variant:e.badgeVariant??`default`,className:`ml-auto text-[10px] px-1.5 py-0`,children:e.badge})]});return(0,U.jsxs)(M,{children:[l&&(0,U.jsx)(`span`,{className:`absolute left-0.5 top-1/2 -translate-y-1/2 cursor-grab text-muted-foreground`,"aria-label":v?v(`console.nav.dragToReorder`,{defaultValue:`Drag to reorder`}):`Drag to reorder`,...l,children:(0,U.jsx)(m,{className:`h-3.5 w-3.5`})}),(0,U.jsx)(T,{asChild:!0,isActive:se,tooltip:B,className:S,children:oe?(0,U.jsx)(`a`,{href:z,target:`_blank`,rel:`noopener noreferrer`,children:V}):(0,U.jsx)(t,{to:z,children:V})}),s&&c&&(0,U.jsx)(ne,{showOnHover:!0,onClick:()=>c(e.id,!e.pinned,e,n),"aria-label":v?v(e.pinned?`console.nav.unpinItem`:`console.nav.pinItem`,{defaultValue:e.pinned?`Unpin ${B}`:`Pin ${B}`,name:B}):e.pinned?`Unpin ${B}`:`Pin ${B}`,children:e.pinned?(0,U.jsx)(k,{className:`h-3.5 w-3.5`}):(0,U.jsx)(d,{className:`h-3.5 w-3.5`})})]})}function Q({items:e,basePath:t=``,evaluateVisibility:n=ye,checkPermission:i=be,checkCapability:a=xe,onAction:o,searchQuery:s,enablePinning:c,onPinToggle:l,enableReorder:u,onReorder:d,resolveObjectLabel:f,resolveDashboardLabel:p,resolveViewLabel:m,t:h,templateContext:g}){let _=r(),v=(0,H.useMemo)(()=>Pe(e,_.pathname,_.search,t,g)?.id??null,[e,_.pathname,_.search,t,g]),b=(0,H.useMemo)(()=>s?Fe(e,s):e,[e,s]),x=(0,H.useMemo)(()=>$(b),[b]),S=b.slice().sort((e,t)=>(e.order??0)-(t.order??0)),C=le(L(ae,{activationConstraint:{distance:Ie}}),L(ce)),w=e=>{let{active:t,over:n}=e;if(!n||t.id===n.id||!d)return;let r=S.findIndex(e=>e.id===t.id),i=S.findIndex(e=>e.id===n.id);r!==-1&&i!==-1&&d(z(S,r,i).map((e,t)=>({...e,order:t})))},T={basePath:t,evalVis:n,checkPerm:i,checkCap:a,onAction:o,enablePinning:c,onPinToggle:l,resolveObjectLabel:f,resolveDashboardLabel:p,resolveViewLabel:m,t:h,templateContext:g},D=S.some(e=>e.type===`group`),O=x.length>0&&c?(0,U.jsxs)(E,{children:[(0,U.jsxs)(N,{className:`flex items-center gap-1.5`,children:[(0,U.jsx)(y,{className:`h-3.5 w-3.5`}),h?h(`console.nav.favorites`,{defaultValue:`Favorites`}):`Favorites`]}),(0,U.jsx)(F,{children:(0,U.jsx)(P,{children:x.map(e=>(0,U.jsx)(Z,{item:e,...T},`fav-${e.id}`))})})]}):null;if(!D){let e=S.filter(e=>e.type!==`group`).map(e=>e.id),t=u?(0,U.jsx)(R,{sensors:C,collisionDetection:se,onDragEnd:w,children:(0,U.jsx)(V,{items:e,strategy:B,children:(0,U.jsx)(P,{children:S.map(e=>(0,U.jsx)(Le,{item:e,enableReorder:u,...T},e.id))})})}):(0,U.jsx)(P,{children:S.map(e=>(0,U.jsx)(Z,{item:e,...T},e.id))});return(0,U.jsxs)(X.Provider,{value:v,children:[O,(0,U.jsx)(E,{children:(0,U.jsx)(F,{children:t})})]})}let k=[],A=[],j=e=>{if(A.length===0)return;let t=A;A=[],k.push((0,U.jsx)(E,{children:(0,U.jsx)(F,{children:(0,U.jsx)(P,{children:t.map(e=>(0,U.jsx)(Z,{item:e,...T},e.id))})})},e))};return S.forEach((e,t)=>{e.type===`group`?(j(`leaf-${t}`),k.push((0,U.jsx)(Z,{item:e,...T},e.id))):A.push(e)}),j(`leaf-end`),(0,U.jsxs)(X.Provider,{value:v,children:[O,k]})}function $(e){let t=[];for(let n of e)n.pinned&&n.type!==`group`&&n.type!==`separator`&&t.push(n),n.children?.length&&t.push(...$(n.children));return t}function Re(e){let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(!t)return null;let n=parseInt(t[1],16)/255,r=parseInt(t[2],16)/255,i=parseInt(t[3],16)/255,a=Math.max(n,r,i),o=Math.min(n,r,i),s=0,c=0,l=(a+o)/2;if(a!==o){let e=a-o;switch(c=l>.5?e/(2-a-o):e/(a+o),a){case n:s=((r-i)/e+(r<i?6:0))/6;break;case r:s=((i-n)/e+2)/6;break;case i:s=((n-r)/e+4)/6}}return{h:s*360,s:c*100,l:l*100}}function ze(e){let t=Re(e);return t?`${Math.round(t.h)} ${Math.round(t.s)}% ${Math.round(t.l)}%`:null}function Be(e){let t=Re(e);if(!t)return null;let n=Math.max(t.l,65),r=t.s>80?Math.max(t.s-10,70):t.s;return`${Math.round(t.h)} ${Math.round(r)}% ${Math.round(n)}%`}function Ve(e){let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(!t)return`0 0% 100%`;let n=e=>{let t=e/255;return t<=.03928?t/12.92:((t+.055)/1.055)**2.4},r=n(parseInt(t[1],16)),i=n(parseInt(t[2],16)),a=n(parseInt(t[3],16));return .2126*r+.7152*i+.0722*a>.6?`222 47% 11%`:`0 0% 100%`}function He(e,t){(0,H.useEffect)(()=>{let n=document.documentElement,r=()=>n.classList.contains(`dark`),i=()=>{if(e?.primaryColor){let t=ze(e.primaryColor),i=Be(e.primaryColor),a=r()&&i||t;a&&(n.style.setProperty(`--brand-primary`,e.primaryColor),n.style.setProperty(`--brand-primary-hsl`,t||a),n.style.setProperty(`--primary`,a),n.style.setProperty(`--primary-foreground`,r()?`222 47% 11%`:Ve(e.primaryColor)),n.style.setProperty(`--ring`,a),n.style.setProperty(`--sidebar-primary`,a),n.style.setProperty(`--sidebar-ring`,a))}else n.style.removeProperty(`--brand-primary`),n.style.removeProperty(`--brand-primary-hsl`),n.style.removeProperty(`--primary`),n.style.removeProperty(`--primary-foreground`),n.style.removeProperty(`--ring`),n.style.removeProperty(`--sidebar-primary`),n.style.removeProperty(`--sidebar-ring`);if(e?.accentColor){let t=ze(e.accentColor),i=Be(e.accentColor),a=r()&&i||t;a&&(n.style.setProperty(`--brand-accent`,e.accentColor),n.style.setProperty(`--brand-accent-hsl`,t||a),n.style.setProperty(`--accent`,a),n.style.setProperty(`--accent-foreground`,r()?`222 47% 11%`:Ve(e.accentColor)))}else n.style.removeProperty(`--brand-accent`),n.style.removeProperty(`--brand-accent-hsl`),n.style.removeProperty(`--accent`),n.style.removeProperty(`--accent-foreground`)};i();let a=new MutationObserver(e=>{for(let t of e)if(t.type===`attributes`&&t.attributeName===`class`){i();break}});if(a.observe(n,{attributes:!0,attributeFilter:[`class`]}),e?.favicon){let t=document.querySelector(`#favicon`)||document.querySelector(`link[rel="icon"]`);t&&(t.href=e.favicon)}return t&&(document.title=t),()=>{a.disconnect(),n.style.removeProperty(`--brand-primary`),n.style.removeProperty(`--brand-primary-hsl`),n.style.removeProperty(`--brand-accent`),n.style.removeProperty(`--brand-accent-hsl`),n.style.removeProperty(`--primary`),n.style.removeProperty(`--primary-foreground`),n.style.removeProperty(`--ring`),n.style.removeProperty(`--sidebar-primary`),n.style.removeProperty(`--sidebar-ring`),n.style.removeProperty(`--accent`),n.style.removeProperty(`--accent-foreground`)}},[e?.primaryColor,e?.accentColor,e?.favicon,t])}function Ue({sidebar:e,navbar:t,children:n,className:r,defaultOpen:i=!0,branding:a,rightRail:o}){return He(a,a?.title),(0,U.jsxs)(I,{defaultOpen:i,className:`!flex-col h-svh overflow-hidden`,children:[(0,U.jsx)(`header`,{className:`sticky top-0 z-30 flex h-14 w-full shrink-0 items-center gap-2 border-b bg-background px-2 sm:px-4`,children:t}),(0,U.jsxs)(`div`,{className:`flex flex-1 min-h-0 w-full`,children:[e,(0,U.jsx)(w,{className:`min-w-0`,children:(0,U.jsx)(`main`,{className:D(`flex-1 min-w-0 overflow-auto p-3 sm:p-4 md:p-6 pb-20 sm:pb-4 md:pb-6`,r),children:n})}),o]})]})}function We(e){return a(e,void 0)??``}function Ge({areas:e,activeAreaId:t,onAreaChange:n}){return e.length<=1?null:(0,U.jsxs)(E,{children:[(0,U.jsxs)(N,{className:`flex items-center gap-1.5`,children:[(0,U.jsx)(j,{className:`h-3.5 w-3.5`}),`Area`]}),(0,U.jsx)(F,{children:(0,U.jsx)(P,{children:e.map(e=>{let r=W(e.icon),i=We(e.label);return(0,U.jsx)(M,{children:(0,U.jsxs)(T,{isActive:e.id===t,tooltip:i,onClick:()=>n(e.id),children:[(0,U.jsx)(r,{className:`h-4 w-4`}),(0,U.jsx)(`span`,{children:i})]})},e.id)})})})]})}function Ke({items:e,basePath:n}){let i=r(),a=e=>{let t=[];for(let n of e)n.type!==`separator`&&(n.type===`group`?t.push(...a(n.children||[])):t.push(n));return t},o=a(e).slice(0,5);return o.length===0?null:(0,U.jsx)(`div`,{className:`fixed bottom-0 left-0 right-0 z-50 flex items-center justify-around border-t bg-background/95 backdrop-blur-sm px-2 py-1 sm:hidden safe-area-bottom`,role:`navigation`,"aria-label":`Mobile navigation`,children:o.map(e=>{let r=W(e.icon),a=`#`;if(e.type===`object`)a=`${n}/${e.objectName}`,e.viewName&&(a+=`/view/${e.viewName}`);else if(e.type===`dashboard`)a=e.dashboardName?`${n}/dashboard/${e.dashboardName}`:`#`;else if(e.type===`page`)a=e.pageName?`${n}/page/${e.pageName}`:`#`;else if(e.type===`report`)a=e.reportName?`${n}/report/${e.reportName}`:`#`;else if(e.type===`url`)a=e.url??`#`;else if(e.type===`component`){let t=e.componentRef;if(t){a=`${n}/component/${t.split(`:`).filter(Boolean).join(`/`)}`;let r=e.params;if(r){let e=new URLSearchParams;for(let[t,n]of Object.entries(r))n!=null&&e.set(t,typeof n==`string`?n:JSON.stringify(n));let t=e.toString();t&&(a+=`?${t}`)}}}let o=a!==`#`&&i.pathname.startsWith(a);return(0,U.jsxs)(t,{to:a,className:`flex flex-col items-center gap-0.5 px-2 py-1.5 transition-colors min-w-[44px] min-h-[44px] justify-center ${o?`text-primary`:`text-muted-foreground hover:text-foreground`}`,children:[(0,U.jsx)(r,{className:`h-5 w-5`}),(0,U.jsx)(`span`,{className:`text-[10px] truncate max-w-[60px]`,children:G(e.label)})]},e.id)})})}function qe({schema:e,basePath:t,evalVis:n,checkPerm:r,checkCap:i,onAction:a,sidebarHeader:o,sidebarFooter:s,sidebarExtra:c,visibleAreas:l,activeAreaId:d,setActiveAreaId:f,resolvedNavigation:p,enableSearch:m,enablePinning:h,onPinToggle:g,enableReorder:_,onReorder:y}){let b=W(e.logo),[x,C]=(0,H.useState)(``);return(0,U.jsxs)(S,{collapsible:`icon`,children:[(0,U.jsxs)(te,{children:[o??(0,U.jsx)(P,{children:(0,U.jsx)(M,{children:(0,U.jsxs)(T,{size:`lg`,tooltip:e.title??e.name,children:[(0,U.jsx)(`div`,{className:`flex aspect-square size-8 items-center justify-center rounded-lg bg-primary text-primary-foreground`,children:e.logo&&e.logo.startsWith(`http`)?(0,U.jsx)(`img`,{src:e.logo,alt:e.title??``,className:`size-6 object-contain`}):(0,U.jsx)(b,{className:`size-4`})}),(0,U.jsxs)(`div`,{className:`grid flex-1 text-left text-sm leading-tight`,children:[(0,U.jsx)(`span`,{className:`truncate font-semibold`,children:e.title??e.name??`App`}),e.description&&(0,U.jsx)(`span`,{className:`truncate text-xs text-muted-foreground`,children:e.description})]})]})})}),m&&(0,U.jsx)(O,{placeholder:`Search navigation…`,value:x,onChange:e=>C(e.target.value),"aria-label":`Search navigation`})]}),(0,U.jsxs)(v,{children:[l.length>1&&d&&(0,U.jsx)(Ge,{areas:l,activeAreaId:d,onAreaChange:f}),(0,U.jsx)(Q,{items:p,basePath:t,evaluateVisibility:n,checkPermission:r,checkCapability:i,onAction:a,searchQuery:x,enablePinning:h,onPinToggle:g,enableReorder:_,onReorder:y}),c]}),s&&(0,U.jsx)(u,{children:s})]})}function Je({schema:e,basePath:t=``,mobileNavMode:n=`drawer`,evaluateVisibility:r,checkPermission:i,checkCapability:a,onAction:o,navbar:s,sidebarHeader:l,sidebarFooter:u,sidebarExtra:d,children:f,className:p,defaultOpen:m=!0,enableSearch:h,enablePinning:g,onPinToggle:_,enableReorder:v,onReorder:y}){let b=r??(e=>e!==!1&&e!==`false`),x=i??(()=>!0),S=a??(()=>!0),C=(0,H.useMemo)(()=>(e.menu??[]).map((e,t)=>c(e,t)),[e.menu]),w=e.navigation??C,T=(e.areas??[]).filter(e=>q(e.navigation,{evaluateVisibility:b,checkPermission:x,checkCapability:S,hasActionHandler:!!o})),[E,D]=(0,H.useState)(()=>T.length>0?T[0].id:null),O=T.map(e=>e.id).join(`,`);(0,H.useEffect)(()=>{T.length>0?D(e=>T.some(t=>t.id===e)?e:T[0].id):D(null)},[e.name,O]);let k=T.find(e=>e.id===E)??T[0],A=k?.navigation??w,j={title:e.title,favicon:e.favicon},M=(0,U.jsx)(qe,{schema:e,basePath:t,evalVis:b,checkPerm:x,checkCap:S,onAction:o,sidebarHeader:l,sidebarFooter:u,sidebarExtra:d,visibleAreas:T,activeAreaId:k?.id??null,setActiveAreaId:D,resolvedNavigation:A,enableSearch:h,enablePinning:g,onPinToggle:_,enableReorder:v,onReorder:y});return(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(Ue,{sidebar:M,navbar:s,className:p,defaultOpen:m,branding:j,children:f}),n===`bottom_nav`&&(0,U.jsx)(Ke,{items:A,basePath:t})]})}function Ye(){l.register(`page-header`,pe,{namespace:`layout`,label:`Page Header`,category:`Layout`,isContainer:!0,inputs:[{name:`title`,type:`string`,label:`Title`},{name:`subtitle`,type:`string`,label:`Subtitle`},{name:`icon`,type:`string`,label:`Icon`,description:`Lucide icon name`},{name:`actions`,type:`array`,label:`Actions`,description:`ActionDef list (or action ids) rendered through record:quick_actions`}]}),l.register(`page:card`,me,{namespace:`layout`,skipFallback:!0,label:`Page Card`,category:`Layout`,isContainer:!0}),l.register(`responsive-grid`,ve,{namespace:`layout`,label:`Responsive Grid`,category:`Layout`,isContainer:!0,inputs:[{name:`columns`,type:`object`},{name:`gap`,type:`number`}]}),l.register(`navigation-renderer`,Q,{namespace:`layout`,label:`Navigation Renderer`,category:`Layout`,inputs:[{name:`items`,type:`array`,required:!0},{name:`basePath`,type:`string`}]}),l.register(`app-schema-renderer`,Je,{namespace:`layout`,label:`App Schema Renderer`,category:`Layout`,isContainer:!0,inputs:[{name:`schema`,type:`object`},{name:`basePath`,type:`string`},{name:`mobileNavMode`,type:`enum`,enum:[`drawer`,`bottom_nav`],defaultValue:`drawer`,label:`Mobile Nav Mode`,description:`Mobile navigation mode. "drawer" (default) puts the sidebar in the mobile sheet overlay; "bottom_nav" additionally renders a fixed bottom bar. These are the only two modes the renderer implements.`}]})}try{Ye()}catch{}export{Pe as a,q as i,Ce as n,Y as o,Q as r,K as s,Ue as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{b as t}from"./vendor-react-CsWFRkED.js";import{q as n}from"./framework-BfSv4Kb0.js";import"./src-JX1BkhmR.js";var r=e(t(),1),i=`uncategorized`;function a(e){let t=e.indexOf(`_`);return t>0?e.slice(0,t):e}function o(e){return e.packageId??a(e.name)}function s(e){return e.packageId??a(e.name)}function c(e){return e.slug??e.name}function l(e){let t=e.replace(/[.+^${}()|[\]\\]/g,`\\$&`).replace(/\*/g,`.*`);return RegExp(`^${t}$`)}function u(e,t,n){return n&&o(e)!==n?!1:typeof t==`string`?l(t).test(e.name):Array.isArray(e.tags)&&e.tags.includes(t.tag)}function d(e,t){return(e.order??0)-(t.order??0)||(e.label??e.name).localeCompare(t.label??t.name)}function f(e){return{doc:e.name,label:e.label,description:e.description}}function p(e,t,n){let r=n??e.packageId,a=[...e.groups??[]].map((e,t)=>({g:e,i:t})).sort((e,t)=>(e.g.order??0)-(t.g.order??0)||e.i-t.i).map(e=>e.g),o=new Set,s=new Map(t.map(e=>[e.name,e])),c=new Map;for(let e of a){if(e.pages)continue;let n=e.package??r,i=t.filter(t=>o.has(t.name)?!1:e.include!=null&&u(t,e.include,n)||t.group!=null&&t.group===e.key);i.sort(d),i.forEach(e=>o.add(e.name)),c.set(e.key,i)}let l=[];for(let e of a){let n;if(e.pages){let i=e.package??r;n=[];let a=new Set(e.pages.filter(e=>typeof e==`string`&&e!==`...`&&e!==`---`));for(let r of e.pages)if(r===`---`)n.push({separator:!0});else if(r===`...`){let r=t.filter(t=>!o.has(t.name)&&!a.has(t.name)&&(e.include!=null&&u(t,e.include,i)||t.group!=null&&t.group===e.key));r.sort(d),r.forEach(e=>{o.add(e.name),n.push(f(e))})}else if(typeof r==`string`){let e=s.get(r);o.add(r),n.push(e?f(e):{doc:r})}else if(r.doc){let e=s.get(r.doc);o.add(r.doc),n.push({...e?f(e):{doc:r.doc},label:r.label??e?.label,badge:r.badge,icon:r.icon})}else r.href&&n.push({href:r.href,label:r.label,badge:r.badge,icon:r.icon})}else n=(c.get(e.key)??[]).map(f);l.push({key:e.key,label:e.label,entries:n})}let p=t.filter(e=>!o.has(e.name)).sort(d);return p.length&&l.push({key:i,label:`Uncategorized`,entries:p.map(f),synthetic:!0}),{name:e.name,label:e.label,description:e.description,groups:l}}function m(e,t){return{name:e,label:t??e,audience:`org`,groups:[{key:`all`,label:t??`Documentation`,include:`*`,package:e}]}}function h(e){let t=new Set;e.packageId&&t.add(e.packageId);for(let n of e.groups??[])n.package&&t.add(n.package);return t}function g(e,t){let n=h(e);return n.size===0?t:t.filter(e=>n.has(o(e)))}function _(e){return[...e].map((e,t)=>({b:e,i:t})).sort((e,t)=>(e.b.order??0)-(t.b.order??0)||(e.b.label??e.b.name).localeCompare(t.b.label??t.b.name)||e.i-t.i).map(e=>e.b)}function v(e,t){let n=p(e,g(e,t)),r=new Set;for(let e of n.groups)if(!e.synthetic)for(let t of e.entries)t.doc&&!t.separator&&r.add(t.doc);return r.size}function y(e,t){return e.map(e=>({name:e.name,slug:c(e),label:e.label??e.name,description:e.description,subtitle:e.implicit&&!e.description?e.packageId:void 0,icon:e.icon,packageId:e.packageId,docCount:v(e,t)}))}function b(e,t){let n=new Set(e.map(s)),r=[...new Set(t.map(o))].filter(e=>!n.has(e)).map(e=>({...m(e),label:x(e),packageId:e,implicit:!0}));return[..._(e),..._(r)]}function x(e){let t=e.split(`.`).pop()||e;return t.charAt(0).toUpperCase()+t.slice(1)}function S(e,t,n){let r=n.find(t=>t.name===e),i=r?o(r):a(e);return _(t).find(e=>s(e)===i)??null}function C(e){let t=[];for(let n of e.groups)for(let e of n.entries)e.doc&&!e.separator&&t.push(e.doc);return t.find(e=>/(^|_)index$/.test(e))??t[0]}function w(e){if(Array.isArray(e))return e;let t=e;return Array.isArray(t?.items)?t.items:Array.isArray(t?.value)?t.value:[]}function T(e){return!e||typeof e.name!=`string`||!e.name?null:{name:e.name,label:e.label,description:e.description,slug:e.slug,icon:e.icon,order:typeof e.order==`number`?e.order:void 0,audience:e.audience,groups:Array.isArray(e.groups)?e.groups:[],packageId:e._packageId??e.packageId}}function E(e){return!e||typeof e.name!=`string`||!e.name?null:{name:e.name,label:e.label,description:e.description,order:typeof e.order==`number`?e.order:void 0,group:typeof e.group==`string`?e.group:void 0,tags:Array.isArray(e.tags)?e.tags:void 0,packageId:e._packageId??e.packageId}}function D(){let e=n(),[t,i]=(0,r.useState)({authoredBooks:[],docs:[],state:`loading`});(0,r.useEffect)(()=>{let t=!1;async function n(){if(!e)return;let n=e.getClient();if(!n?.meta?.getItems){i({authoredBooks:[],docs:[],state:`error`,error:`meta.getItems is not available`});return}i(e=>({...e,state:`loading`}));try{let e=await n.meta.getItems(`doc`),r=[];try{r=await n.meta.getItems(`book`)}catch{r=[]}if(t)return;let a=w(e).map(E).filter(e=>e!==null),o=w(r).map(T).filter(e=>e!==null);i({authoredBooks:o,docs:a,state:`ready`})}catch(e){if(t)return;i({authoredBooks:[],docs:[],state:`error`,error:e?.message??`Failed to load documentation`})}}return n(),()=>{t=!0}},[e]);let a=(0,r.useMemo)(()=>b(t.authoredBooks,t.docs),[t.authoredBooks,t.docs]);return{...t,books:a}}var O={authoredBooks:[],books:[],docs:[],state:`loading`},k=(0,r.createContext)(null);function A(){return(0,r.useContext)(k)??O}export{y as a,s as c,c as i,p as l,A as n,C as o,D as r,S as s,k as t,g as u};
1
+ import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{b as t}from"./vendor-react-CsWFRkED.js";import{q as n}from"./framework-DFE_Mws9.js";import"./src-hcMLuWxG.js";var r=e(t(),1),i=`uncategorized`;function a(e){let t=e.indexOf(`_`);return t>0?e.slice(0,t):e}function o(e){return e.packageId??a(e.name)}function s(e){return e.packageId??a(e.name)}function c(e){return e.slug??e.name}function l(e){let t=e.replace(/[.+^${}()|[\]\\]/g,`\\$&`).replace(/\*/g,`.*`);return RegExp(`^${t}$`)}function u(e,t,n){return n&&o(e)!==n?!1:typeof t==`string`?l(t).test(e.name):Array.isArray(e.tags)&&e.tags.includes(t.tag)}function d(e,t){return(e.order??0)-(t.order??0)||(e.label??e.name).localeCompare(t.label??t.name)}function f(e){return{doc:e.name,label:e.label,description:e.description}}function p(e,t,n){let r=n??e.packageId,a=[...e.groups??[]].map((e,t)=>({g:e,i:t})).sort((e,t)=>(e.g.order??0)-(t.g.order??0)||e.i-t.i).map(e=>e.g),o=new Set,s=new Map(t.map(e=>[e.name,e])),c=new Map;for(let e of a){if(e.pages)continue;let n=e.package??r,i=t.filter(t=>o.has(t.name)?!1:e.include!=null&&u(t,e.include,n)||t.group!=null&&t.group===e.key);i.sort(d),i.forEach(e=>o.add(e.name)),c.set(e.key,i)}let l=[];for(let e of a){let n;if(e.pages){let i=e.package??r;n=[];let a=new Set(e.pages.filter(e=>typeof e==`string`&&e!==`...`&&e!==`---`));for(let r of e.pages)if(r===`---`)n.push({separator:!0});else if(r===`...`){let r=t.filter(t=>!o.has(t.name)&&!a.has(t.name)&&(e.include!=null&&u(t,e.include,i)||t.group!=null&&t.group===e.key));r.sort(d),r.forEach(e=>{o.add(e.name),n.push(f(e))})}else if(typeof r==`string`){let e=s.get(r);o.add(r),n.push(e?f(e):{doc:r})}else if(r.doc){let e=s.get(r.doc);o.add(r.doc),n.push({...e?f(e):{doc:r.doc},label:r.label??e?.label,badge:r.badge,icon:r.icon})}else r.href&&n.push({href:r.href,label:r.label,badge:r.badge,icon:r.icon})}else n=(c.get(e.key)??[]).map(f);l.push({key:e.key,label:e.label,entries:n})}let p=t.filter(e=>!o.has(e.name)).sort(d);return p.length&&l.push({key:i,label:`Uncategorized`,entries:p.map(f),synthetic:!0}),{name:e.name,label:e.label,description:e.description,groups:l}}function m(e,t){return{name:e,label:t??e,audience:`org`,groups:[{key:`all`,label:t??`Documentation`,include:`*`,package:e}]}}function h(e){let t=new Set;e.packageId&&t.add(e.packageId);for(let n of e.groups??[])n.package&&t.add(n.package);return t}function g(e,t){let n=h(e);return n.size===0?t:t.filter(e=>n.has(o(e)))}function _(e){return[...e].map((e,t)=>({b:e,i:t})).sort((e,t)=>(e.b.order??0)-(t.b.order??0)||(e.b.label??e.b.name).localeCompare(t.b.label??t.b.name)||e.i-t.i).map(e=>e.b)}function v(e,t){let n=p(e,g(e,t)),r=new Set;for(let e of n.groups)if(!e.synthetic)for(let t of e.entries)t.doc&&!t.separator&&r.add(t.doc);return r.size}function y(e,t){return e.map(e=>({name:e.name,slug:c(e),label:e.label??e.name,description:e.description,subtitle:e.implicit&&!e.description?e.packageId:void 0,icon:e.icon,packageId:e.packageId,docCount:v(e,t)}))}function b(e,t){let n=new Set(e.map(s)),r=[...new Set(t.map(o))].filter(e=>!n.has(e)).map(e=>({...m(e),label:x(e),packageId:e,implicit:!0}));return[..._(e),..._(r)]}function x(e){let t=e.split(`.`).pop()||e;return t.charAt(0).toUpperCase()+t.slice(1)}function S(e,t,n){let r=n.find(t=>t.name===e),i=r?o(r):a(e);return _(t).find(e=>s(e)===i)??null}function C(e){let t=[];for(let n of e.groups)for(let e of n.entries)e.doc&&!e.separator&&t.push(e.doc);return t.find(e=>/(^|_)index$/.test(e))??t[0]}function w(e){if(Array.isArray(e))return e;let t=e;return Array.isArray(t?.items)?t.items:Array.isArray(t?.value)?t.value:[]}function T(e){return!e||typeof e.name!=`string`||!e.name?null:{name:e.name,label:e.label,description:e.description,slug:e.slug,icon:e.icon,order:typeof e.order==`number`?e.order:void 0,audience:e.audience,groups:Array.isArray(e.groups)?e.groups:[],packageId:e._packageId??e.packageId}}function E(e){return!e||typeof e.name!=`string`||!e.name?null:{name:e.name,label:e.label,description:e.description,order:typeof e.order==`number`?e.order:void 0,group:typeof e.group==`string`?e.group:void 0,tags:Array.isArray(e.tags)?e.tags:void 0,packageId:e._packageId??e.packageId}}function D(){let e=n(),[t,i]=(0,r.useState)({authoredBooks:[],docs:[],state:`loading`});(0,r.useEffect)(()=>{let t=!1;async function n(){if(!e)return;let n=e.getClient();if(!n?.meta?.getItems){i({authoredBooks:[],docs:[],state:`error`,error:`meta.getItems is not available`});return}i(e=>({...e,state:`loading`}));try{let e=await n.meta.getItems(`doc`),r=[];try{r=await n.meta.getItems(`book`)}catch{r=[]}if(t)return;let a=w(e).map(E).filter(e=>e!==null),o=w(r).map(T).filter(e=>e!==null);i({authoredBooks:o,docs:a,state:`ready`})}catch(e){if(t)return;i({authoredBooks:[],docs:[],state:`error`,error:e?.message??`Failed to load documentation`})}}return n(),()=>{t=!0}},[e]);let a=(0,r.useMemo)(()=>b(t.authoredBooks,t.docs),[t.authoredBooks,t.docs]);return{...t,books:a}}var O={authoredBooks:[],books:[],docs:[],state:`loading`},k=(0,r.createContext)(null);function A(){return(0,r.useContext)(k)??O}export{y as a,s as c,c as i,p as l,A as n,C as o,D as r,S as s,k as t,g as u};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{b as t,r as n}from"./vendor-react-CsWFRkED.js";import{J as r,ht as i}from"./framework-BfSv4Kb0.js";import{$n as a,Cr as o,Qn as s,Sn as c,Sr as l,Xr as u,Zn as d,bn as f,br as p,er as m,il as h,tr as g,vn as _,vr as v,xn as y,yn as b,yr as x}from"./ui-components-D2lrjG-t.js";import{n as S}from"./plugin-form-_fjHxKTV.js";var C=e(t(),1);function w(e){let{objectDef:t,baseUrl:n,record:r}=e;if(!t?.name||t.editMode!==`page`)return{kind:`modal`};let i=r?.id??r?._id;if(r&&i!=null&&i!==``){let e=encodeURIComponent(String(i));return{kind:`page`,url:`${n}/${t.name}/record/${e}/edit`}}return{kind:`page`,url:`${n}/${t.name}/new`}}function T(e){let t=e?.form??e?.formViews?.default;if(!t)return{};let n={};return Array.isArray(t.sections)&&t.sections.length>0&&(n.sections=t.sections,t.type===`tabbed`&&(n.contentLayout=`tabbed`)),Array.isArray(t.subforms)&&t.subforms.length>0&&(n.subforms=t.subforms),n}function E(e){let{objectName:t,baseUrl:n,pathname:r,search:i,surface:a,recordId:o}=e;if(o==null||o===``||!t)return{kind:`none`};let s=encodeURIComponent(String(o));if(a===`page`)return{kind:`detail-page`,url:`${n}/${t}/record/${s}`};let c=new URLSearchParams(i??``);return c.delete(`form`),c.set(`recordId`,String(o)),{kind:`detail-drawer`,url:`${r}?${c.toString()}`}}function D(e){let{action:t,context:n={},defaultBaseUrl:r}=e,i=t.params?.objectName??t.objectName??n.objectName,a=n.baseUrl??r;return i?{success:!0,url:`${a}/${i}/new`}:{success:!1,error:`navigate_create: objectName is required`}}function O(e){let{action:t,context:n={},defaultBaseUrl:r}=e,i=t.params?.objectName??t.objectName??n.objectName,a=t.params?.recordId??t.recordId,o=n.baseUrl??r;return!i||a==null||a===``?{success:!1,error:`navigate_edit: objectName and recordId are required`}:{success:!0,url:`${o}/${i}/record/${encodeURIComponent(String(a))}/edit`}}var k="a modal action's `target` names a PAGE, only. To open an object's form, use `type: 'form'` with an `<object>.<view>` target.",A="Or use `type: 'script'` with `params` to collect input and run a handler.";function j(e={}){let{target:t,actionName:n,serverHandlerHint:r}=e,i=t==null?``:String(t);return i?`${n?`Action "${n}" is type:'modal' but its target "${i}" names no page`:`Modal target "${i}" names no page`} — ${k}${r?` ${A}`:``}`:n?`Action "${n}" is type:'modal' but has no target to open.`:`Modal action has no target to open.`}var M=n(),N={sm:`sm:max-w-sm`,default:`sm:max-w-lg`,lg:`sm:max-w-2xl`,xl:`sm:max-w-5xl`,full:`sm:max-w-[95vw] sm:w-full`},P={lg:`sm:max-w-2xl`,xl:`sm:max-w-3xl`,full:`sm:max-w-[95vw]`};function F(e){return typeof e==`string`?{targetName:e}:e&&typeof e==`object`?e.type&&!e.content&&!e.objectName&&!e.placement?{content:e}:e:{}}function I(e){let[t,n]=(0,C.useState)(null),{objects:w,getItem:E}=r(),D=(0,C.useCallback)(e=>{n(t=>(t?.resolve(e),null))},[]),O=(0,C.useCallback)(async e=>{let t=F(e),n=t.targetName;if(!n)return t.content||t.objectName?t:null;let r=await E(`page`,n);return r?{placement:t.placement??`center`,size:t.size??`xl`,title:t.title??r.label??void 0,description:t.description,content:{...r,type:r.type||`page`}}:null},[E]),k=(0,C.useCallback)(async e=>{let t=await O(e);if(!t){let t=F(e).targetName;return{success:!1,error:j({target:t})}}return new Promise(e=>{n({d:t,resolve:e})})},[O]),A=null;if(t){let n=t.d,r=e=>{e||D({success:!1})};if(n.objectName&&!n.content){let t=n.fields||n.sections?{}:T(w.find(e=>e?.name===n.objectName));A=(0,M.jsx)(S,{schema:{type:`object-form`,formType:`modal`,objectName:n.objectName,mode:n.mode||`create`,recordId:n.recordId,title:n.title,description:n.description,fields:n.fields,...t,modalSize:n.size,open:!0,onOpenChange:r,onSuccess:e=>D({success:!0,reload:!0,data:e}),onCancel:()=>D({success:!1}),showSubmit:!0,showCancel:!0},dataSource:e})}else{let e=n.placement||`center`,t=n.content?(0,M.jsx)(i,{schema:n.content}):n.description?(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:n.description}):null;A=e===`side`?(0,M.jsx)(_,{open:!0,onOpenChange:r,children:(0,M.jsxs)(b,{side:n.side||`right`,className:h(`w-full overflow-y-auto`,P[n.size||`default`]),children:[n.title&&(0,M.jsxs)(y,{children:[(0,M.jsx)(c,{children:n.title}),n.description&&(0,M.jsx)(f,{children:n.description})]}),(0,M.jsx)(`div`,{className:`py-3`,children:t})]})}):e===`bottom`?(0,M.jsx)(d,{open:!0,onOpenChange:r,children:(0,M.jsxs)(s,{children:[n.title&&(0,M.jsxs)(m,{children:[(0,M.jsx)(g,{children:n.title}),n.description&&(0,M.jsx)(a,{children:n.description})]}),(0,M.jsx)(`div`,{className:`max-h-[75vh] overflow-y-auto px-4 pb-6`,children:t})]})}):(0,M.jsx)(v,{open:!0,onOpenChange:r,children:(0,M.jsxs)(x,{className:h(e===`fullscreen`?`h-[95vh] w-full max-w-[98vw] overflow-y-auto`:N[n.size||`default`]),children:[n.title&&(0,M.jsxs)(l,{children:[(0,M.jsx)(o,{children:n.title}),n.description&&(0,M.jsx)(p,{children:n.description})]}),(0,M.jsx)(`div`,{children:t}),!n.content&&(0,M.jsx)(`div`,{className:`flex justify-end`,children:(0,M.jsx)(u,{onClick:()=>D({success:!0}),children:`OK`})})]})})}}return{modalHandler:k,modalElement:A,closeModal:D,resolveModalTarget:O}}export{O as a,D as i,j as n,E as o,T as r,w as s,I as t};
1
+ import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{b as t,r as n}from"./vendor-react-CsWFRkED.js";import{J as r,ht as i}from"./framework-DFE_Mws9.js";import{$n as a,Cr as o,Qn as s,Sn as c,Sr as l,Xr as u,Zn as d,bn as f,br as p,er as m,il as h,tr as g,vn as _,vr as v,xn as y,yn as b,yr as x}from"./ui-components-CMHDBJEm.js";import{n as S}from"./plugin-form-D8x_rH5w.js";var C=e(t(),1);function w(e){let{objectDef:t,baseUrl:n,record:r}=e;if(!t?.name||t.editMode!==`page`)return{kind:`modal`};let i=r?.id??r?._id;if(r&&i!=null&&i!==``){let e=encodeURIComponent(String(i));return{kind:`page`,url:`${n}/${t.name}/record/${e}/edit`}}return{kind:`page`,url:`${n}/${t.name}/new`}}function T(e){let t=e?.form??e?.formViews?.default;if(!t)return{};let n={};return Array.isArray(t.sections)&&t.sections.length>0&&(n.sections=t.sections,t.type===`tabbed`&&(n.contentLayout=`tabbed`)),Array.isArray(t.subforms)&&t.subforms.length>0&&(n.subforms=t.subforms),n}function E(e){let{objectName:t,baseUrl:n,pathname:r,search:i,surface:a,recordId:o}=e;if(o==null||o===``||!t)return{kind:`none`};let s=encodeURIComponent(String(o));if(a===`page`)return{kind:`detail-page`,url:`${n}/${t}/record/${s}`};let c=new URLSearchParams(i??``);return c.delete(`form`),c.set(`recordId`,String(o)),{kind:`detail-drawer`,url:`${r}?${c.toString()}`}}function D(e){let{action:t,context:n={},defaultBaseUrl:r}=e,i=t.params?.objectName??t.objectName??n.objectName,a=n.baseUrl??r;return i?{success:!0,url:`${a}/${i}/new`}:{success:!1,error:`navigate_create: objectName is required`}}function O(e){let{action:t,context:n={},defaultBaseUrl:r}=e,i=t.params?.objectName??t.objectName??n.objectName,a=t.params?.recordId??t.recordId,o=n.baseUrl??r;return!i||a==null||a===``?{success:!1,error:`navigate_edit: objectName and recordId are required`}:{success:!0,url:`${o}/${i}/record/${encodeURIComponent(String(a))}/edit`}}var k="a modal action's `target` names a PAGE, only. To open an object's form, use `type: 'form'` with an `<object>.<view>` target.",A="Or use `type: 'script'` with `params` to collect input and run a handler.";function j(e={}){let{target:t,actionName:n,serverHandlerHint:r}=e,i=t==null?``:String(t);return i?`${n?`Action "${n}" is type:'modal' but its target "${i}" names no page`:`Modal target "${i}" names no page`} — ${k}${r?` ${A}`:``}`:n?`Action "${n}" is type:'modal' but has no target to open.`:`Modal action has no target to open.`}var M=n(),N={sm:`sm:max-w-sm`,default:`sm:max-w-lg`,lg:`sm:max-w-2xl`,xl:`sm:max-w-5xl`,full:`sm:max-w-[95vw] sm:w-full`},P={lg:`sm:max-w-2xl`,xl:`sm:max-w-3xl`,full:`sm:max-w-[95vw]`};function F(e){return typeof e==`string`?{targetName:e}:e&&typeof e==`object`?e.type&&!e.content&&!e.objectName&&!e.placement?{content:e}:e:{}}function I(e){let[t,n]=(0,C.useState)(null),{objects:w,getItem:E}=r(),D=(0,C.useCallback)(e=>{n(t=>(t?.resolve(e),null))},[]),O=(0,C.useCallback)(async e=>{let t=F(e),n=t.targetName;if(!n)return t.content||t.objectName?t:null;let r=await E(`page`,n);return r?{placement:t.placement??`center`,size:t.size??`xl`,title:t.title??r.label??void 0,description:t.description,content:{...r,type:r.type||`page`}}:null},[E]),k=(0,C.useCallback)(async e=>{let t=await O(e);if(!t){let t=F(e).targetName;return{success:!1,error:j({target:t})}}return new Promise(e=>{n({d:t,resolve:e})})},[O]),A=null;if(t){let n=t.d,r=e=>{e||D({success:!1})};if(n.objectName&&!n.content){let t=n.fields||n.sections?{}:T(w.find(e=>e?.name===n.objectName));A=(0,M.jsx)(S,{schema:{type:`object-form`,formType:`modal`,objectName:n.objectName,mode:n.mode||`create`,recordId:n.recordId,title:n.title,description:n.description,fields:n.fields,...t,modalSize:n.size,open:!0,onOpenChange:r,onSuccess:e=>D({success:!0,reload:!0,data:e}),onCancel:()=>D({success:!1}),showSubmit:!0,showCancel:!0},dataSource:e})}else{let e=n.placement||`center`,t=n.content?(0,M.jsx)(i,{schema:n.content}):n.description?(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:n.description}):null;A=e===`side`?(0,M.jsx)(_,{open:!0,onOpenChange:r,children:(0,M.jsxs)(b,{side:n.side||`right`,className:h(`w-full overflow-y-auto`,P[n.size||`default`]),children:[n.title&&(0,M.jsxs)(y,{children:[(0,M.jsx)(c,{children:n.title}),n.description&&(0,M.jsx)(f,{children:n.description})]}),(0,M.jsx)(`div`,{className:`py-3`,children:t})]})}):e===`bottom`?(0,M.jsx)(d,{open:!0,onOpenChange:r,children:(0,M.jsxs)(s,{children:[n.title&&(0,M.jsxs)(m,{children:[(0,M.jsx)(g,{children:n.title}),n.description&&(0,M.jsx)(a,{children:n.description})]}),(0,M.jsx)(`div`,{className:`max-h-[75vh] overflow-y-auto px-4 pb-6`,children:t})]})}):(0,M.jsx)(v,{open:!0,onOpenChange:r,children:(0,M.jsxs)(x,{className:h(e===`fullscreen`?`h-[95vh] w-full max-w-[98vw] overflow-y-auto`:N[n.size||`default`]),children:[n.title&&(0,M.jsxs)(l,{children:[(0,M.jsx)(o,{children:n.title}),n.description&&(0,M.jsx)(p,{children:n.description})]}),(0,M.jsx)(`div`,{children:t}),!n.content&&(0,M.jsx)(`div`,{className:`flex justify-end`,children:(0,M.jsx)(u,{onClick:()=>D({success:!0}),children:`OK`})})]})})}}return{modalHandler:k,modalElement:A,closeModal:D,resolveModalTarget:O}}export{O as a,D as i,j as n,E as o,T as r,w as s,I as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{b as t,h as n,p as r,r as i}from"./vendor-react-CsWFRkED.js";import{y as a}from"./i18n-locales-Bz4c8KXc.js";import{Fi as o,Or as s,Xr as c,gn as l,kr as u}from"./ui-components-D2lrjG-t.js";var d=e(t(),1),f=i();function p({iconUrl:e,displayName:t,manifestId:n,className:r=`h-10 w-10`,initialClassName:i=`text-base font-semibold`}){let[a,o]=(0,d.useState)(!1),s=((t??n??`?`).trim()[0]??`?`).toUpperCase(),c=!!e&&!a;return(0,f.jsx)(`div`,{className:`flex shrink-0 items-center justify-center rounded-lg bg-primary/10 text-primary overflow-hidden ${r}`,children:c?(0,f.jsx)(`img`,{src:e,alt:``,className:`${r} object-cover`,onError:()=>o(!0),loading:`lazy`}):(0,f.jsx)(`span`,{className:i,children:s})})}function m(){return(0,f.jsxs)(`div`,{className:`mx-auto w-full max-w-6xl flex flex-col gap-6 p-4 sm:p-6`,"data-testid":`marketplace-resolving`,children:[(0,f.jsx)(l,{className:`h-8 w-32`}),(0,f.jsx)(l,{className:`h-16 w-full`}),(0,f.jsx)(l,{className:`h-64 w-full`})]})}function h(){let e=r(),{appName:t}=n(),{t:i}=a(),l=t?`/apps/${t}`:`/`;return(0,f.jsx)(`div`,{className:`container mx-auto max-w-2xl px-6 py-16`,"data-testid":`marketplace-disabled`,children:(0,f.jsx)(s,{children:(0,f.jsxs)(u,{className:`flex flex-col items-center gap-4 py-12 text-center`,children:[(0,f.jsx)(`div`,{className:`rounded-full bg-muted p-3`,children:(0,f.jsx)(o,{className:`h-6 w-6 text-muted-foreground`,"aria-hidden":`true`})}),(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`h2`,{className:`text-lg font-semibold`,children:i(`marketplace.disabled.title`)}),(0,f.jsx)(`p`,{className:`mt-1 text-sm text-muted-foreground`,children:i(`marketplace.disabled.description`)}),(0,f.jsx)(`p`,{className:`mt-3 text-xs text-muted-foreground`,"data-testid":`marketplace-disabled-hint`,dangerouslySetInnerHTML:{__html:i(`marketplace.disabled.hint`)}})]}),(0,f.jsx)(c,{variant:`outline`,onClick:()=>e(l),children:i(`marketplace.action.backHome`)})]})})})}var g=`en`;function _(e){let t=e.indexOf(`-`);return t===-1?e:e.slice(0,t)}function v(e){let t=new Set,n=[];for(let r of e)!r||t.has(r)||(t.add(r),n.push(r));return n}function y(e,t,n){if(!e)return;let r=_(t),i=v([t,r,...Object.keys(e).filter(e=>e===r||e.startsWith(`${r}-`)),g]);for(let t of i){let r=e[t];if(!r)continue;let i=r[n];if(typeof i==`string`&&i.length>0)return i}}function b(e,t){let n=e[{displayName:`display_name`,description:`description`,readme:`readme`,tagline:`tagline`,screenshotCaptions:`screenshotCaptions`}[t]]??e[t];return typeof n==`string`&&n.length>0?n:void 0}function x(e,t){let n=t||g;return{displayName:y(e.translations??void 0,n,`displayName`)??b(e,`displayName`)??e.manifest_id,description:y(e.translations??void 0,n,`description`)??b(e,`description`),readme:y(e.translations??void 0,n,`readme`)??b(e,`readme`),tagline:y(e.translations??void 0,n,`tagline`)??b(e,`tagline`)}}export{p as i,h as n,m as r,x as t};
1
+ import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{b as t,h as n,p as r,r as i}from"./vendor-react-CsWFRkED.js";import{y as a}from"./i18n-locales-BBA090ve.js";import{Fi as o,Or as s,Xr as c,gn as l,kr as u}from"./ui-components-CMHDBJEm.js";var d=e(t(),1),f=i();function p({iconUrl:e,displayName:t,manifestId:n,className:r=`h-10 w-10`,initialClassName:i=`text-base font-semibold`}){let[a,o]=(0,d.useState)(!1),s=((t??n??`?`).trim()[0]??`?`).toUpperCase(),c=!!e&&!a;return(0,f.jsx)(`div`,{className:`flex shrink-0 items-center justify-center rounded-lg bg-primary/10 text-primary overflow-hidden ${r}`,children:c?(0,f.jsx)(`img`,{src:e,alt:``,className:`${r} object-cover`,onError:()=>o(!0),loading:`lazy`}):(0,f.jsx)(`span`,{className:i,children:s})})}function m(){return(0,f.jsxs)(`div`,{className:`mx-auto w-full max-w-6xl flex flex-col gap-6 p-4 sm:p-6`,"data-testid":`marketplace-resolving`,children:[(0,f.jsx)(l,{className:`h-8 w-32`}),(0,f.jsx)(l,{className:`h-16 w-full`}),(0,f.jsx)(l,{className:`h-64 w-full`})]})}function h(){let e=r(),{appName:t}=n(),{t:i}=a(),l=t?`/apps/${t}`:`/`;return(0,f.jsx)(`div`,{className:`container mx-auto max-w-2xl px-6 py-16`,"data-testid":`marketplace-disabled`,children:(0,f.jsx)(s,{children:(0,f.jsxs)(u,{className:`flex flex-col items-center gap-4 py-12 text-center`,children:[(0,f.jsx)(`div`,{className:`rounded-full bg-muted p-3`,children:(0,f.jsx)(o,{className:`h-6 w-6 text-muted-foreground`,"aria-hidden":`true`})}),(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`h2`,{className:`text-lg font-semibold`,children:i(`marketplace.disabled.title`)}),(0,f.jsx)(`p`,{className:`mt-1 text-sm text-muted-foreground`,children:i(`marketplace.disabled.description`)}),(0,f.jsx)(`p`,{className:`mt-3 text-xs text-muted-foreground`,"data-testid":`marketplace-disabled-hint`,dangerouslySetInnerHTML:{__html:i(`marketplace.disabled.hint`)}})]}),(0,f.jsx)(c,{variant:`outline`,onClick:()=>e(l),children:i(`marketplace.action.backHome`)})]})})})}var g=`en`;function _(e){let t=e.indexOf(`-`);return t===-1?e:e.slice(0,t)}function v(e){let t=new Set,n=[];for(let r of e)!r||t.has(r)||(t.add(r),n.push(r));return n}function y(e,t,n){if(!e)return;let r=_(t),i=v([t,r,...Object.keys(e).filter(e=>e===r||e.startsWith(`${r}-`)),g]);for(let t of i){let r=e[t];if(!r)continue;let i=r[n];if(typeof i==`string`&&i.length>0)return i}}function b(e,t){let n=e[{displayName:`display_name`,description:`description`,readme:`readme`,tagline:`tagline`,screenshotCaptions:`screenshotCaptions`}[t]]??e[t];return typeof n==`string`&&n.length>0?n:void 0}function x(e,t){let n=t||g;return{displayName:y(e.translations??void 0,n,`displayName`)??b(e,`displayName`)??e.manifest_id,description:y(e.translations??void 0,n,`description`)??b(e,`description`),readme:y(e.translations??void 0,n,`readme`)??b(e,`readme`),tagline:y(e.translations??void 0,n,`tagline`)??b(e,`tagline`)}}export{p as i,h as n,m as r,x as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{b as t}from"./vendor-react-CsWFRkED.js";import{y as n}from"./i18n-locales-Bz4c8KXc.js";import{Ft as r,Ms as i}from"./ui-components-D2lrjG-t.js";var a=e(t(),1);function o(e){return e.includes(`-`)?e.toLowerCase():e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).replace(/([A-Z]+)([A-Z][a-z])/g,`$1-$2`).toLowerCase()}var s=new Map;function c(e){if(!e)return i;let t=s.get(e);if(t)return t;let n=o(e),c=e=>a.createElement(r,{name:n,fallback:i,...e});return c.displayName=`LucideIcon(${e})`,s.set(e,c),c}var l=`${``.replace(/\/$/,``)}/api/settings`;function u(e){return typeof e==`object`&&e&&typeof e.success==`boolean`&&`data`in e?e.data:e}function d(e,t,n){let r=e,i=t.filter(e=>!(r&&typeof r==`object`)||r[e]===null||r[e]===void 0);if(i.length>0)throw Error(`Malformed response from ${n}: expected an object carrying ${i.map(e=>`\`${e}\``).join(`, `)}.`);return e}async function f(e){if(!e.ok){let t=await e.json().catch(()=>({error:{message:e.statusText}})),n=Error(t?.error?.message??e.statusText);throw n.status=e.status,n.payload=t,n}return u(await e.json())}var p=()=>({"Content-Type":`application/json`,Accept:`application/json`});function m(e){if(!e||typeof e!=`object`)return;let t=e,n=(t.details&&typeof t.details==`object`?t.details.key:void 0)??t.key;return typeof n==`string`&&n.length>0?n:void 0}async function h(){return d(await f(await fetch(l,{credentials:`include`,headers:p()})),[`manifests`],`GET /api/settings`)}async function g(e){return d(await f(await fetch(`${l}/${encodeURIComponent(e)}`,{credentials:`include`,headers:p()})),[`manifest`,`values`],`GET /api/settings/${e}`)}async function _(e,t){return d(await f(await fetch(`${l}/${encodeURIComponent(e)}`,{method:`PUT`,credentials:`include`,headers:p(),body:JSON.stringify(t)})),[`values`],`PUT /api/settings/${e}`)}async function v(e,t,n){let r=await fetch(`${l}/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,{method:`POST`,credentials:`include`,headers:p(),body:JSON.stringify(n??{})}),i=await r.json().catch(()=>null),a=u(i);if(y(a))return a;let o=i?.error;if(y(o?.details))return o.details;let s=typeof o?.message==`string`?o.message:r.statusText;return{ok:r.ok,message:s}}function y(e){return typeof e==`object`&&!!e&&typeof e.ok==`boolean`}function b(e){return typeof e==`string`?e:e?.defaultValue||e?.key||``}var x=new Set([`common`,`validation`,`errors`,`system`,`auth`]);function S(e){let{t,i18n:r}=n();return(0,a.useMemo)(()=>{let n=()=>{if(!r||typeof r.getResourceBundle!=`function`)return[];let e=r.language||`en`,t=r.getResourceBundle(e,`translation`);return t?Object.keys(t).filter(e=>!x.has(e)&&t[e]&&typeof t[e]==`object`&&t[e].settings):[]},i=(r,i)=>{if(!e)return i;try{let i=n();for(let n of i){let i=`${n}.settings.${e}.${r}`,a=t(i,{defaultValue:``});if(a&&a!==i&&a!==``)return a}}catch{}return i},a=(e,n)=>{try{if(!r||typeof r.getResourceBundle!=`function`)return n;let i=r.language||`en`,a=r.getResourceBundle(i,`translation`);if(!a)return n;for(let n of Object.keys(a)){if(x.has(n))continue;let r=a[n];if(!r||typeof r!=`object`||!(`settingsCommon`in r))continue;let i=`${n}.settingsCommon.${e}`,o=t(i,{defaultValue:``});if(o&&o!==i&&o!==``)return o}}catch{}return n},o={env:`Env`,global:`Global`,tenant:`Tenant`,user:`User`,default:`Default`};return{title:e=>i(`title`,e)??e,description:e=>i(`description`,e),groupTitle:(e,t)=>i(`groups.${e}.title`,t)??t,groupDescription:(e,t)=>i(`groups.${e}.description`,t),fieldLabel:(e,t)=>i(`keys.${e}.label`,t)??t,fieldHelp:(e,t)=>i(`keys.${e}.help`,t),fieldPlaceholder:(e,t)=>i(`keys.${e}.placeholder`,t),optionLabel:(e,t,n)=>i(`keys.${e}.options.${t}`,n)??n,actionLabel:(e,t)=>i(`actions.${e}.label`,t)??t,actionConfirm:(e,t)=>i(`actions.${e}.confirmText`,t),actionSuccess:(e,t)=>i(`actions.${e}.successMessage`,t),sourceLabel:e=>a(`sourceLabels.${e}`,o[e]??e)}},[e,t,r,r?.language])}export{m as a,c,h as i,b as n,v as o,g as r,_ as s,S as t};
1
+ import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{b as t}from"./vendor-react-CsWFRkED.js";import{y as n}from"./i18n-locales-BBA090ve.js";import{Ft as r,Ms as i}from"./ui-components-CMHDBJEm.js";var a=e(t(),1);function o(e){return e.includes(`-`)?e.toLowerCase():e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).replace(/([A-Z]+)([A-Z][a-z])/g,`$1-$2`).toLowerCase()}var s=new Map;function c(e){if(!e)return i;let t=s.get(e);if(t)return t;let n=o(e),c=e=>a.createElement(r,{name:n,fallback:i,...e});return c.displayName=`LucideIcon(${e})`,s.set(e,c),c}var l=`${``.replace(/\/$/,``)}/api/settings`;function u(e){return typeof e==`object`&&e&&typeof e.success==`boolean`&&`data`in e?e.data:e}function d(e,t,n){let r=e,i=t.filter(e=>!(r&&typeof r==`object`)||r[e]===null||r[e]===void 0);if(i.length>0)throw Error(`Malformed response from ${n}: expected an object carrying ${i.map(e=>`\`${e}\``).join(`, `)}.`);return e}async function f(e){if(!e.ok){let t=await e.json().catch(()=>({error:{message:e.statusText}})),n=Error(t?.error?.message??e.statusText);throw n.status=e.status,n.payload=t,n}return u(await e.json())}var p=()=>({"Content-Type":`application/json`,Accept:`application/json`});function m(e){if(!e||typeof e!=`object`)return;let t=e,n=(t.details&&typeof t.details==`object`?t.details.key:void 0)??t.key;return typeof n==`string`&&n.length>0?n:void 0}async function h(){return d(await f(await fetch(l,{credentials:`include`,headers:p()})),[`manifests`],`GET /api/settings`)}async function g(e){return d(await f(await fetch(`${l}/${encodeURIComponent(e)}`,{credentials:`include`,headers:p()})),[`manifest`,`values`],`GET /api/settings/${e}`)}async function _(e,t){return d(await f(await fetch(`${l}/${encodeURIComponent(e)}`,{method:`PUT`,credentials:`include`,headers:p(),body:JSON.stringify(t)})),[`values`],`PUT /api/settings/${e}`)}async function v(e,t,n){let r=await fetch(`${l}/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,{method:`POST`,credentials:`include`,headers:p(),body:JSON.stringify(n??{})}),i=await r.json().catch(()=>null),a=u(i);if(y(a))return a;let o=i?.error;if(y(o?.details))return o.details;let s=typeof o?.message==`string`?o.message:r.statusText;return{ok:r.ok,message:s}}function y(e){return typeof e==`object`&&!!e&&typeof e.ok==`boolean`}function b(e){return typeof e==`string`?e:e?.defaultValue||e?.key||``}var x=new Set([`common`,`validation`,`errors`,`system`,`auth`]);function S(e){let{t,i18n:r}=n();return(0,a.useMemo)(()=>{let n=()=>{if(!r||typeof r.getResourceBundle!=`function`)return[];let e=r.language||`en`,t=r.getResourceBundle(e,`translation`);return t?Object.keys(t).filter(e=>!x.has(e)&&t[e]&&typeof t[e]==`object`&&t[e].settings):[]},i=(r,i)=>{if(!e)return i;try{let i=n();for(let n of i){let i=`${n}.settings.${e}.${r}`,a=t(i,{defaultValue:``});if(a&&a!==i&&a!==``)return a}}catch{}return i},a=(e,n)=>{try{if(!r||typeof r.getResourceBundle!=`function`)return n;let i=r.language||`en`,a=r.getResourceBundle(i,`translation`);if(!a)return n;for(let n of Object.keys(a)){if(x.has(n))continue;let r=a[n];if(!r||typeof r!=`object`||!(`settingsCommon`in r))continue;let i=`${n}.settingsCommon.${e}`,o=t(i,{defaultValue:``});if(o&&o!==i&&o!==``)return o}}catch{}return n},o={env:`Env`,global:`Global`,tenant:`Tenant`,user:`User`,default:`Default`};return{title:e=>i(`title`,e)??e,description:e=>i(`description`,e),groupTitle:(e,t)=>i(`groups.${e}.title`,t)??t,groupDescription:(e,t)=>i(`groups.${e}.description`,t),fieldLabel:(e,t)=>i(`keys.${e}.label`,t)??t,fieldHelp:(e,t)=>i(`keys.${e}.help`,t),fieldPlaceholder:(e,t)=>i(`keys.${e}.placeholder`,t),optionLabel:(e,t,n)=>i(`keys.${e}.options.${t}`,n)??n,actionLabel:(e,t)=>i(`actions.${e}.label`,t)??t,actionConfirm:(e,t)=>i(`actions.${e}.confirmText`,t),actionSuccess:(e,t)=>i(`actions.${e}.successMessage`,t),sourceLabel:e=>a(`sourceLabels.${e}`,o[e]??e)}},[e,t,r,r?.language])}export{m as a,c,h as i,b as n,v as o,g as r,_ as s,S as t};