@vertesia/ui 1.5.0-dev.20260807.073259Z → 1.5.0-dev.20260901.005903Z

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 (502) hide show
  1. package/README.md +1 -7
  2. package/lib/core/components/FormItem.d.ts.map +1 -1
  3. package/lib/core/components/FormItem.js +2 -3
  4. package/lib/core/components/FormItem.js.map +1 -1
  5. package/lib/core/components/InfoTip.d.ts +20 -0
  6. package/lib/core/components/InfoTip.d.ts.map +1 -0
  7. package/lib/core/components/InfoTip.js +18 -0
  8. package/lib/core/components/InfoTip.js.map +1 -0
  9. package/lib/core/components/index.d.ts +1 -0
  10. package/lib/core/components/index.d.ts.map +1 -1
  11. package/lib/core/components/index.js +1 -0
  12. package/lib/core/components/index.js.map +1 -1
  13. package/lib/core/components/shadcn/Panel.d.ts.map +1 -1
  14. package/lib/core/components/shadcn/Panel.js +3 -3
  15. package/lib/core/components/shadcn/Panel.js.map +1 -1
  16. package/lib/core/components/shadcn/filters/comboBox/DateCombobox.js +1 -1
  17. package/lib/core/components/shadcn/filters/comboBox/DateCombobox.js.map +1 -1
  18. package/lib/core/components/shadcn/filters/filter/dateFilter.d.ts.map +1 -1
  19. package/lib/core/components/shadcn/filters/filter/dateFilter.js +1 -1
  20. package/lib/core/components/shadcn/filters/filter/dateFilter.js.map +1 -1
  21. package/lib/core/components/shadcn/filters/filters.d.ts.map +1 -1
  22. package/lib/core/components/shadcn/filters/filters.js +1 -1
  23. package/lib/core/components/shadcn/filters/filters.js.map +1 -1
  24. package/lib/core/components/shadcn/index.d.ts +1 -0
  25. package/lib/core/components/shadcn/index.d.ts.map +1 -1
  26. package/lib/core/components/shadcn/index.js +1 -0
  27. package/lib/core/components/shadcn/index.js.map +1 -1
  28. package/lib/core/components/shadcn/modal/dialog.d.ts.map +1 -1
  29. package/lib/core/components/shadcn/modal/dialog.js +1 -3
  30. package/lib/core/components/shadcn/modal/dialog.js.map +1 -1
  31. package/lib/core/components/shadcn/overflowTabs.d.ts +59 -0
  32. package/lib/core/components/shadcn/overflowTabs.d.ts.map +1 -0
  33. package/lib/core/components/shadcn/overflowTabs.js +173 -0
  34. package/lib/core/components/shadcn/overflowTabs.js.map +1 -0
  35. package/lib/core/components/shadcn/selectBox.js +2 -2
  36. package/lib/core/components/shadcn/selectBox.js.map +1 -1
  37. package/lib/core/components/shadcn/theme/ThemeProvider.d.ts +3 -1
  38. package/lib/core/components/shadcn/theme/ThemeProvider.d.ts.map +1 -1
  39. package/lib/core/components/shadcn/theme/ThemeProvider.js +8 -9
  40. package/lib/core/components/shadcn/theme/ThemeProvider.js.map +1 -1
  41. package/lib/core/utils/dayjs.d.ts +12 -0
  42. package/lib/core/utils/dayjs.d.ts.map +1 -0
  43. package/lib/core/utils/dayjs.js +16 -0
  44. package/lib/core/utils/dayjs.js.map +1 -0
  45. package/lib/env/index.d.ts +17 -0
  46. package/lib/env/index.d.ts.map +1 -1
  47. package/lib/env/index.js +18 -1
  48. package/lib/env/index.js.map +1 -1
  49. package/lib/features/agent/PayloadBuilder.d.ts +1 -0
  50. package/lib/features/agent/PayloadBuilder.d.ts.map +1 -1
  51. package/lib/features/agent/PayloadBuilder.js +22 -5
  52. package/lib/features/agent/PayloadBuilder.js.map +1 -1
  53. package/lib/features/agent/chat/AgentRightPanel.d.ts.map +1 -1
  54. package/lib/features/agent/chat/AgentRightPanel.js +3 -135
  55. package/lib/features/agent/chat/AgentRightPanel.js.map +1 -1
  56. package/lib/features/agent/chat/ArtifactsTab.d.ts.map +1 -1
  57. package/lib/features/agent/chat/ArtifactsTab.js +1 -1
  58. package/lib/features/agent/chat/ArtifactsTab.js.map +1 -1
  59. package/lib/features/agent/chat/AskUserWidget.d.ts.map +1 -1
  60. package/lib/features/agent/chat/AskUserWidget.js +19 -4
  61. package/lib/features/agent/chat/AskUserWidget.js.map +1 -1
  62. package/lib/features/agent/chat/ModernAgentConversation.d.ts +6 -0
  63. package/lib/features/agent/chat/ModernAgentConversation.d.ts.map +1 -1
  64. package/lib/features/agent/chat/ModernAgentConversation.js +99 -29
  65. package/lib/features/agent/chat/ModernAgentConversation.js.map +1 -1
  66. package/lib/features/agent/chat/ModernAgentOutput/ActiveWorkstreamsSummary.d.ts.map +1 -1
  67. package/lib/features/agent/chat/ModernAgentOutput/ActiveWorkstreamsSummary.js +10 -9
  68. package/lib/features/agent/chat/ModernAgentOutput/ActiveWorkstreamsSummary.js.map +1 -1
  69. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts.map +1 -1
  70. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js +5 -8
  71. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js.map +1 -1
  72. package/lib/features/agent/chat/ModernAgentOutput/AttachmentPreview.d.ts.map +1 -1
  73. package/lib/features/agent/chat/ModernAgentOutput/AttachmentPreview.js +45 -4
  74. package/lib/features/agent/chat/ModernAgentOutput/AttachmentPreview.js.map +1 -1
  75. package/lib/features/agent/chat/ModernAgentOutput/BatchProgressPanel.js +1 -1
  76. package/lib/features/agent/chat/ModernAgentOutput/BatchProgressPanel.js.map +1 -1
  77. package/lib/features/agent/chat/ModernAgentOutput/Header.d.ts.map +1 -1
  78. package/lib/features/agent/chat/ModernAgentOutput/Header.js +3 -3
  79. package/lib/features/agent/chat/ModernAgentOutput/Header.js.map +1 -1
  80. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.d.ts.map +1 -1
  81. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js +1 -1
  82. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js.map +1 -1
  83. package/lib/features/agent/chat/ModernAgentOutput/StreamingMessage.d.ts.map +1 -1
  84. package/lib/features/agent/chat/ModernAgentOutput/StreamingMessage.js +1 -1
  85. package/lib/features/agent/chat/ModernAgentOutput/StreamingMessage.js.map +1 -1
  86. package/lib/features/agent/chat/ModernAgentOutput/ToolCallGroup.js +1 -1
  87. package/lib/features/agent/chat/ModernAgentOutput/ToolCallGroup.js.map +1 -1
  88. package/lib/features/agent/chat/ModernAgentOutput/WorkstreamTabs.d.ts.map +1 -1
  89. package/lib/features/agent/chat/ModernAgentOutput/WorkstreamTabs.js +9 -121
  90. package/lib/features/agent/chat/ModernAgentOutput/WorkstreamTabs.js.map +1 -1
  91. package/lib/features/agent/chat/ModernAgentOutput/utils.d.ts +6 -0
  92. package/lib/features/agent/chat/ModernAgentOutput/utils.d.ts.map +1 -1
  93. package/lib/features/agent/chat/ModernAgentOutput/utils.js +19 -11
  94. package/lib/features/agent/chat/ModernAgentOutput/utils.js.map +1 -1
  95. package/lib/features/agent/chat/VegaLiteChart.d.ts.map +1 -1
  96. package/lib/features/agent/chat/VegaLiteChart.js +11 -3
  97. package/lib/features/agent/chat/VegaLiteChart.js.map +1 -1
  98. package/lib/features/agent/chat/hooks/useAgentStream.d.ts.map +1 -1
  99. package/lib/features/agent/chat/hooks/useAgentStream.js +3 -0
  100. package/lib/features/agent/chat/hooks/useAgentStream.js.map +1 -1
  101. package/lib/features/document-viewer/UniversalDocumentViewer.d.ts.map +1 -1
  102. package/lib/features/document-viewer/UniversalDocumentViewer.js +1 -1
  103. package/lib/features/document-viewer/UniversalDocumentViewer.js.map +1 -1
  104. package/lib/features/facets/AgentRunnerFacetsNav.d.ts +14 -2
  105. package/lib/features/facets/AgentRunnerFacetsNav.d.ts.map +1 -1
  106. package/lib/features/facets/AgentRunnerFacetsNav.js +20 -2
  107. package/lib/features/facets/AgentRunnerFacetsNav.js.map +1 -1
  108. package/lib/features/facets/CollectionsFacetsNav.d.ts +3 -3
  109. package/lib/features/facets/CollectionsFacetsNav.d.ts.map +1 -1
  110. package/lib/features/facets/CollectionsFacetsNav.js +6 -1
  111. package/lib/features/facets/CollectionsFacetsNav.js.map +1 -1
  112. package/lib/features/facets/DocumentsFacetsNav.d.ts +3 -3
  113. package/lib/features/facets/DocumentsFacetsNav.d.ts.map +1 -1
  114. package/lib/features/facets/DocumentsFacetsNav.js +20 -8
  115. package/lib/features/facets/DocumentsFacetsNav.js.map +1 -1
  116. package/lib/features/facets/InteractionsFacetsNav.d.ts +3 -3
  117. package/lib/features/facets/InteractionsFacetsNav.d.ts.map +1 -1
  118. package/lib/features/facets/InteractionsFacetsNav.js +11 -1
  119. package/lib/features/facets/InteractionsFacetsNav.js.map +1 -1
  120. package/lib/features/facets/PromptsFacetsNav.d.ts +3 -3
  121. package/lib/features/facets/PromptsFacetsNav.d.ts.map +1 -1
  122. package/lib/features/facets/PromptsFacetsNav.js +6 -1
  123. package/lib/features/facets/PromptsFacetsNav.js.map +1 -1
  124. package/lib/features/facets/RunsFacetsNav.d.ts +4 -14
  125. package/lib/features/facets/RunsFacetsNav.d.ts.map +1 -1
  126. package/lib/features/facets/RunsFacetsNav.js +26 -15
  127. package/lib/features/facets/RunsFacetsNav.js.map +1 -1
  128. package/lib/features/facets/WorkflowExecutionsFacetsNav.d.ts +4 -3
  129. package/lib/features/facets/WorkflowExecutionsFacetsNav.d.ts.map +1 -1
  130. package/lib/features/facets/WorkflowExecutionsFacetsNav.js +18 -10
  131. package/lib/features/facets/WorkflowExecutionsFacetsNav.js.map +1 -1
  132. package/lib/features/facets/index.d.ts +1 -1
  133. package/lib/features/facets/index.d.ts.map +1 -1
  134. package/lib/features/facets/index.js.map +1 -1
  135. package/lib/features/facets/utils/SearchInterface.d.ts +4 -3
  136. package/lib/features/facets/utils/SearchInterface.d.ts.map +1 -1
  137. package/lib/features/facets/utils/SearchInterface.js +4 -0
  138. package/lib/features/facets/utils/SearchInterface.js.map +1 -1
  139. package/lib/features/layout/GenericPageNavHeader.d.ts +8 -1
  140. package/lib/features/layout/GenericPageNavHeader.d.ts.map +1 -1
  141. package/lib/features/layout/GenericPageNavHeader.js +9 -1
  142. package/lib/features/layout/GenericPageNavHeader.js.map +1 -1
  143. package/lib/features/magic-pdf/DownloadPopover.d.ts +3 -2
  144. package/lib/features/magic-pdf/DownloadPopover.d.ts.map +1 -1
  145. package/lib/features/magic-pdf/DownloadPopover.js.map +1 -1
  146. package/lib/features/magic-pdf/GroundedExtractionView.d.ts.map +1 -1
  147. package/lib/features/magic-pdf/GroundedExtractionView.js +51 -64
  148. package/lib/features/magic-pdf/GroundedExtractionView.js.map +1 -1
  149. package/lib/features/oauth/McpConnectionsButton.d.ts +1 -1
  150. package/lib/features/oauth/McpConnectionsButton.d.ts.map +1 -1
  151. package/lib/features/oauth/McpConnectionsButton.js +2 -2
  152. package/lib/features/oauth/McpConnectionsButton.js.map +1 -1
  153. package/lib/features/oauth/McpConnectionsDialog.d.ts +1 -1
  154. package/lib/features/oauth/McpConnectionsDialog.js +2 -2
  155. package/lib/features/oauth/McpConnectionsDialog.js.map +1 -1
  156. package/lib/features/oauth/useMcpConnections.d.ts +4 -5
  157. package/lib/features/oauth/useMcpConnections.d.ts.map +1 -1
  158. package/lib/features/oauth/useMcpConnections.js +20 -4
  159. package/lib/features/oauth/useMcpConnections.js.map +1 -1
  160. package/lib/features/pdf-viewer/PdfPageRenderer.d.ts.map +1 -1
  161. package/lib/features/pdf-viewer/PdfPageRenderer.js +9 -11
  162. package/lib/features/pdf-viewer/PdfPageRenderer.js.map +1 -1
  163. package/lib/features/pdf-viewer/lazyReactPdf.d.ts +10 -0
  164. package/lib/features/pdf-viewer/lazyReactPdf.d.ts.map +1 -0
  165. package/lib/features/pdf-viewer/lazyReactPdf.js +25 -0
  166. package/lib/features/pdf-viewer/lazyReactPdf.js.map +1 -0
  167. package/lib/features/store/collections/CollectionsTable.d.ts.map +1 -1
  168. package/lib/features/store/collections/CollectionsTable.js +1 -3
  169. package/lib/features/store/collections/CollectionsTable.js.map +1 -1
  170. package/lib/features/store/collections/EditCollectionView.js +1 -1
  171. package/lib/features/store/collections/EditCollectionView.js.map +1 -1
  172. package/lib/features/store/objects/ExportPropertiesModal.d.ts +3 -1
  173. package/lib/features/store/objects/ExportPropertiesModal.d.ts.map +1 -1
  174. package/lib/features/store/objects/ExportPropertiesModal.js +5 -5
  175. package/lib/features/store/objects/ExportPropertiesModal.js.map +1 -1
  176. package/lib/features/store/objects/components/ContentOverview.d.ts.map +1 -1
  177. package/lib/features/store/objects/components/ContentOverview.js +4 -10
  178. package/lib/features/store/objects/components/ContentOverview.js.map +1 -1
  179. package/lib/features/store/objects/components/TextEditorPanel.d.ts.map +1 -1
  180. package/lib/features/store/objects/components/TextEditorPanel.js +8 -3
  181. package/lib/features/store/objects/components/TextEditorPanel.js.map +1 -1
  182. package/lib/features/store/objects/layout/renderers.d.ts.map +1 -1
  183. package/lib/features/store/objects/layout/renderers.js +1 -5
  184. package/lib/features/store/objects/layout/renderers.js.map +1 -1
  185. package/lib/features/store/objects/search/DocumentSearchContext.d.ts +44 -62
  186. package/lib/features/store/objects/search/DocumentSearchContext.d.ts.map +1 -1
  187. package/lib/features/store/objects/search/DocumentSearchContext.js +47 -2
  188. package/lib/features/store/objects/search/DocumentSearchContext.js.map +1 -1
  189. package/lib/features/store/objects/selection/actions/DeleteObjectsAction.d.ts.map +1 -1
  190. package/lib/features/store/objects/selection/actions/DeleteObjectsAction.js +5 -0
  191. package/lib/features/store/objects/selection/actions/DeleteObjectsAction.js.map +1 -1
  192. package/lib/features/store/objects/upload/DocumentUploadModal.d.ts +6 -1
  193. package/lib/features/store/objects/upload/DocumentUploadModal.d.ts.map +1 -1
  194. package/lib/features/store/objects/upload/DocumentUploadModal.js +4 -3
  195. package/lib/features/store/objects/upload/DocumentUploadModal.js.map +1 -1
  196. package/lib/features/store/objects/upload/useSmartFileUploadProcessing.d.ts.map +1 -1
  197. package/lib/features/store/objects/upload/useSmartFileUploadProcessing.js +2 -2
  198. package/lib/features/store/objects/upload/useSmartFileUploadProcessing.js.map +1 -1
  199. package/lib/features/store/types/ContentObjectTypesTable.d.ts.map +1 -1
  200. package/lib/features/store/types/ContentObjectTypesTable.js +1 -3
  201. package/lib/features/store/types/ContentObjectTypesTable.js.map +1 -1
  202. package/lib/features/store/types/IntakePolicyEditor.d.ts.map +1 -1
  203. package/lib/features/store/types/IntakePolicyEditor.js +12 -2
  204. package/lib/features/store/types/IntakePolicyEditor.js.map +1 -1
  205. package/lib/features/store/types/IntakePolicyForm.d.ts.map +1 -1
  206. package/lib/features/store/types/IntakePolicyForm.js +15 -15
  207. package/lib/features/store/types/IntakePolicyForm.js.map +1 -1
  208. package/lib/features/store/types/ObjectSchemaEditor.d.ts.map +1 -1
  209. package/lib/features/store/types/ObjectSchemaEditor.js +6 -2
  210. package/lib/features/store/types/ObjectSchemaEditor.js.map +1 -1
  211. package/lib/features/store/types/TableLayoutEditor.d.ts.map +1 -1
  212. package/lib/features/store/types/TableLayoutEditor.js +2 -0
  213. package/lib/features/store/types/TableLayoutEditor.js.map +1 -1
  214. package/lib/features/store/types/TypeRegistry.d.ts +282 -0
  215. package/lib/features/store/types/TypeRegistry.d.ts.map +1 -1
  216. package/lib/features/store/types/search/ObjectTypeSearchContext.d.ts +281 -0
  217. package/lib/features/store/types/search/ObjectTypeSearchContext.d.ts.map +1 -1
  218. package/lib/features/user/UserInfo.d.ts.map +1 -1
  219. package/lib/features/user/UserInfo.js +2 -4
  220. package/lib/features/user/UserInfo.js.map +1 -1
  221. package/lib/features/views/ViewActions.d.ts +32 -0
  222. package/lib/features/views/ViewActions.d.ts.map +1 -0
  223. package/lib/features/views/ViewActions.js +186 -0
  224. package/lib/features/views/ViewActions.js.map +1 -0
  225. package/lib/features/views/ViewDropTarget.d.ts +15 -0
  226. package/lib/features/views/ViewDropTarget.d.ts.map +1 -0
  227. package/lib/features/views/ViewDropTarget.js +79 -0
  228. package/lib/features/views/ViewDropTarget.js.map +1 -0
  229. package/lib/features/views/ViewExperience.d.ts +3 -2
  230. package/lib/features/views/ViewExperience.d.ts.map +1 -1
  231. package/lib/features/views/ViewExperience.js +103 -12
  232. package/lib/features/views/ViewExperience.js.map +1 -1
  233. package/lib/features/views/ViewNavigation.d.ts +1 -1
  234. package/lib/features/views/ViewNavigation.d.ts.map +1 -1
  235. package/lib/features/views/ViewNavigation.js +14 -5
  236. package/lib/features/views/ViewNavigation.js.map +1 -1
  237. package/lib/features/views/ViewResults.d.ts +1 -1
  238. package/lib/features/views/ViewResults.d.ts.map +1 -1
  239. package/lib/features/views/ViewResults.js +124 -34
  240. package/lib/features/views/ViewResults.js.map +1 -1
  241. package/lib/features/views/index.d.ts +1 -0
  242. package/lib/features/views/index.d.ts.map +1 -1
  243. package/lib/features/views/index.js +1 -0
  244. package/lib/features/views/index.js.map +1 -1
  245. package/lib/features/views/types.d.ts +46 -1
  246. package/lib/features/views/types.d.ts.map +1 -1
  247. package/lib/features/views/viewState.d.ts.map +1 -1
  248. package/lib/features/views/viewState.js +34 -0
  249. package/lib/features/views/viewState.js.map +1 -1
  250. package/lib/i18n/LanguageProvider.d.ts +3 -1
  251. package/lib/i18n/LanguageProvider.d.ts.map +1 -1
  252. package/lib/i18n/LanguageProvider.js +9 -7
  253. package/lib/i18n/LanguageProvider.js.map +1 -1
  254. package/lib/i18n/instance.d.ts +2 -0
  255. package/lib/i18n/instance.d.ts.map +1 -1
  256. package/lib/i18n/instance.js +45 -26
  257. package/lib/i18n/instance.js.map +1 -1
  258. package/lib/i18n/locales/ar.json +296 -15
  259. package/lib/i18n/locales/de.json +294 -13
  260. package/lib/i18n/locales/en.json +65 -4
  261. package/lib/i18n/locales/es.json +295 -14
  262. package/lib/i18n/locales/fr.json +294 -13
  263. package/lib/i18n/locales/it.json +294 -13
  264. package/lib/i18n/locales/ja.json +292 -10
  265. package/lib/i18n/locales/ko.json +292 -10
  266. package/lib/i18n/locales/pt.json +294 -13
  267. package/lib/i18n/locales/ru.json +291 -10
  268. package/lib/i18n/locales/tr.json +291 -10
  269. package/lib/i18n/locales/zh-TW.json +292 -10
  270. package/lib/i18n/locales/zh.json +292 -10
  271. package/lib/router/RouteComponent.d.ts +8 -0
  272. package/lib/router/RouteComponent.d.ts.map +1 -1
  273. package/lib/router/RouteComponent.js +41 -9
  274. package/lib/router/RouteComponent.js.map +1 -1
  275. package/lib/session/UserSessionProvider.d.ts.map +1 -1
  276. package/lib/session/UserSessionProvider.js +20 -29
  277. package/lib/session/UserSessionProvider.js.map +1 -1
  278. package/lib/session/auth/composable.d.ts.map +1 -1
  279. package/lib/session/auth/composable.js +25 -19
  280. package/lib/session/auth/composable.js.map +1 -1
  281. package/lib/session/auth/domainRouting.d.ts +11 -0
  282. package/lib/session/auth/domainRouting.d.ts.map +1 -1
  283. package/lib/session/auth/domainRouting.js +13 -0
  284. package/lib/session/auth/domainRouting.js.map +1 -1
  285. package/lib/session/auth/firebase.js +1 -1
  286. package/lib/session/auth/firebase.js.map +1 -1
  287. package/lib/session/useUXTracking.d.ts.map +1 -1
  288. package/lib/session/useUXTracking.js +6 -1
  289. package/lib/session/useUXTracking.js.map +1 -1
  290. package/lib/shell/VertesiaShell.d.ts.map +1 -1
  291. package/lib/shell/VertesiaShell.js +2 -1
  292. package/lib/shell/VertesiaShell.js.map +1 -1
  293. package/lib/shell/apps/AppInstallationProvider.d.ts +4 -2
  294. package/lib/shell/apps/AppInstallationProvider.d.ts.map +1 -1
  295. package/lib/shell/apps/IframeAppContextSync.d.ts +3 -0
  296. package/lib/shell/apps/IframeAppContextSync.d.ts.map +1 -0
  297. package/lib/shell/apps/IframeAppContextSync.js +95 -0
  298. package/lib/shell/apps/IframeAppContextSync.js.map +1 -0
  299. package/lib/shell/apps/iframe-auth.d.ts +55 -0
  300. package/lib/shell/apps/iframe-auth.d.ts.map +1 -0
  301. package/lib/shell/apps/iframe-auth.js +154 -0
  302. package/lib/shell/apps/iframe-auth.js.map +1 -0
  303. package/lib/shell/apps/index.d.ts +2 -0
  304. package/lib/shell/apps/index.d.ts.map +1 -1
  305. package/lib/shell/apps/index.js +2 -0
  306. package/lib/shell/apps/index.js.map +1 -1
  307. package/lib/vertesia-ui-core.js +199 -4
  308. package/lib/vertesia-ui-core.js.map +1 -1
  309. package/lib/vertesia-ui-env.js +1 -1
  310. package/lib/vertesia-ui-env.js.map +1 -1
  311. package/lib/vertesia-ui-features.js +975 -35
  312. package/lib/vertesia-ui-features.js.map +1 -1
  313. package/lib/vertesia-ui-i18n.BJBGsq-8.chunk.js +5 -0
  314. package/lib/vertesia-ui-i18n.BJBGsq-8.chunk.js.map +1 -0
  315. package/lib/vertesia-ui-i18n.BY5YG5cX.chunk.js +5 -0
  316. package/lib/vertesia-ui-i18n.BY5YG5cX.chunk.js.map +1 -0
  317. package/lib/vertesia-ui-i18n.Bd5_1BXO.chunk.js +5 -0
  318. package/lib/vertesia-ui-i18n.Bd5_1BXO.chunk.js.map +1 -0
  319. package/lib/vertesia-ui-i18n.Bvwej2HH.chunk.js +5 -0
  320. package/lib/vertesia-ui-i18n.Bvwej2HH.chunk.js.map +1 -0
  321. package/lib/vertesia-ui-i18n.CMT3f4gf.chunk.js +5 -0
  322. package/lib/vertesia-ui-i18n.CMT3f4gf.chunk.js.map +1 -0
  323. package/lib/vertesia-ui-i18n.D56DNPJW.chunk.js +5 -0
  324. package/lib/vertesia-ui-i18n.D56DNPJW.chunk.js.map +1 -0
  325. package/lib/vertesia-ui-i18n.DDzKLNx6.chunk.js +5 -0
  326. package/lib/vertesia-ui-i18n.DDzKLNx6.chunk.js.map +1 -0
  327. package/lib/vertesia-ui-i18n.D_Am1LpF.chunk.js +5 -0
  328. package/lib/vertesia-ui-i18n.D_Am1LpF.chunk.js.map +1 -0
  329. package/lib/vertesia-ui-i18n.DrZizgGV.chunk.js +5 -0
  330. package/lib/vertesia-ui-i18n.DrZizgGV.chunk.js.map +1 -0
  331. package/lib/vertesia-ui-i18n.DwHsq86z.chunk.js +5 -0
  332. package/lib/vertesia-ui-i18n.DwHsq86z.chunk.js.map +1 -0
  333. package/lib/vertesia-ui-i18n.PLpo0Bbz.chunk.js +5 -0
  334. package/lib/vertesia-ui-i18n.PLpo0Bbz.chunk.js.map +1 -0
  335. package/lib/vertesia-ui-i18n.js +2 -38
  336. package/lib/vertesia-ui-i18n.js.map +1 -1
  337. package/lib/vertesia-ui-i18n.xVbXALqz.chunk.js +5 -0
  338. package/lib/vertesia-ui-i18n.xVbXALqz.chunk.js.map +1 -0
  339. package/lib/vertesia-ui-layout.js +80 -1
  340. package/lib/vertesia-ui-layout.js.map +1 -1
  341. package/lib/vertesia-ui-rich-text.js +278 -4
  342. package/lib/vertesia-ui-rich-text.js.map +1 -1
  343. package/lib/vertesia-ui-router.js +1 -1
  344. package/lib/vertesia-ui-router.js.map +1 -1
  345. package/lib/vertesia-ui-session.js +1 -1
  346. package/lib/vertesia-ui-session.js.map +1 -1
  347. package/lib/vertesia-ui-shell.js +118 -1
  348. package/lib/vertesia-ui-shell.js.map +1 -1
  349. package/lib/vertesia-ui-widgets.js +336 -20
  350. package/lib/vertesia-ui-widgets.js.map +1 -1
  351. package/lib/widgets/markdown/MarkdownRenderer.d.ts.map +1 -1
  352. package/lib/widgets/markdown/MarkdownRenderer.js +43 -2
  353. package/lib/widgets/markdown/MarkdownRenderer.js.map +1 -1
  354. package/lib/widgets/markdown/MermaidDiagram.d.ts.map +1 -1
  355. package/lib/widgets/markdown/MermaidDiagram.js +35 -22
  356. package/lib/widgets/markdown/MermaidDiagram.js.map +1 -1
  357. package/lib/widgets/monacoEditor/MonacoEditor.d.ts.map +1 -1
  358. package/lib/widgets/monacoEditor/MonacoEditor.js +14 -10
  359. package/lib/widgets/monacoEditor/MonacoEditor.js.map +1 -1
  360. package/lib/widgets/xml-viewer/hooks/useCollapsible.d.ts +1 -1
  361. package/package.json +24 -29
  362. package/src/core/components/FormItem.tsx +2 -5
  363. package/src/core/components/InfoTip.test.tsx +33 -0
  364. package/src/core/components/InfoTip.tsx +32 -0
  365. package/src/core/components/index.ts +1 -0
  366. package/src/core/components/shadcn/Panel.tsx +3 -7
  367. package/src/core/components/shadcn/filters/comboBox/DateCombobox.tsx +1 -1
  368. package/src/core/components/shadcn/filters/filter/dateFilter.tsx +1 -1
  369. package/src/core/components/shadcn/filters/filters.tsx +1 -1
  370. package/src/core/components/shadcn/index.ts +1 -0
  371. package/src/core/components/shadcn/modal/dialog.test.tsx +35 -0
  372. package/src/core/components/shadcn/modal/dialog.tsx +0 -4
  373. package/src/core/components/shadcn/overflowTabs.tsx +320 -0
  374. package/src/core/components/shadcn/selectBox.tsx +2 -2
  375. package/src/core/components/shadcn/theme/ThemeProvider.tsx +10 -9
  376. package/src/core/utils/dayjs.ts +17 -0
  377. package/src/css/base.css +78 -0
  378. package/src/env/index.test.ts +94 -0
  379. package/src/env/index.ts +36 -1
  380. package/src/features/agent/PayloadBuilder.test.ts +68 -0
  381. package/src/features/agent/PayloadBuilder.tsx +28 -4
  382. package/src/features/agent/chat/AgentRightPanel.tsx +2 -252
  383. package/src/features/agent/chat/ArtifactsTab.tsx +1 -0
  384. package/src/features/agent/chat/AskUserWidget.test.tsx +20 -1
  385. package/src/features/agent/chat/AskUserWidget.tsx +22 -6
  386. package/src/features/agent/chat/ModernAgentConversation.test.tsx +160 -0
  387. package/src/features/agent/chat/ModernAgentConversation.tsx +111 -31
  388. package/src/features/agent/chat/ModernAgentOutput/ActiveWorkstreamsSummary.tsx +86 -67
  389. package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.test.tsx +90 -7
  390. package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.tsx +4 -6
  391. package/src/features/agent/chat/ModernAgentOutput/AttachmentPreview.test.ts +103 -1
  392. package/src/features/agent/chat/ModernAgentOutput/AttachmentPreview.tsx +50 -4
  393. package/src/features/agent/chat/ModernAgentOutput/BatchProgressPanel.tsx +1 -1
  394. package/src/features/agent/chat/ModernAgentOutput/Header.tsx +18 -1
  395. package/src/features/agent/chat/ModernAgentOutput/MessageItem.tsx +1 -1
  396. package/src/features/agent/chat/ModernAgentOutput/StreamingMessage.tsx +1 -1
  397. package/src/features/agent/chat/ModernAgentOutput/ToolCallGroup.tsx +1 -1
  398. package/src/features/agent/chat/ModernAgentOutput/WorkstreamTabs.tsx +37 -167
  399. package/src/features/agent/chat/ModernAgentOutput/utils.test.ts +94 -0
  400. package/src/features/agent/chat/ModernAgentOutput/utils.ts +19 -10
  401. package/src/features/agent/chat/VegaLiteChart.tsx +32 -14
  402. package/src/features/agent/chat/hooks/useAgentStream.test.tsx +18 -0
  403. package/src/features/agent/chat/hooks/useAgentStream.ts +3 -0
  404. package/src/features/document-viewer/UniversalDocumentViewer.tsx +1 -1
  405. package/src/features/facets/AgentRunnerFacetsNav.tsx +44 -4
  406. package/src/features/facets/CollectionsFacetsNav.tsx +15 -4
  407. package/src/features/facets/DocumentsFacetsNav.tsx +25 -8
  408. package/src/features/facets/FacetQueryHandlers.test.ts +84 -0
  409. package/src/features/facets/InteractionsFacetsNav.tsx +20 -4
  410. package/src/features/facets/PromptsFacetsNav.tsx +15 -4
  411. package/src/features/facets/RunsFacetsNav.test.ts +59 -0
  412. package/src/features/facets/RunsFacetsNav.tsx +40 -30
  413. package/src/features/facets/WorkflowExecutionsFacetsNav.test.ts +57 -0
  414. package/src/features/facets/WorkflowExecutionsFacetsNav.tsx +36 -16
  415. package/src/features/facets/index.ts +1 -0
  416. package/src/features/facets/utils/SearchInterface.tsx +12 -3
  417. package/src/features/layout/GenericPageNavHeader.tsx +16 -0
  418. package/src/features/magic-pdf/DownloadPopover.tsx +1 -2
  419. package/src/features/magic-pdf/GroundedExtractionView.test.tsx +7 -1
  420. package/src/features/magic-pdf/GroundedExtractionView.tsx +162 -242
  421. package/src/features/oauth/McpConnectionsButton.test.tsx +18 -1
  422. package/src/features/oauth/McpConnectionsButton.tsx +6 -2
  423. package/src/features/oauth/McpConnectionsDialog.tsx +3 -3
  424. package/src/features/oauth/useMcpConnections.test.ts +1 -0
  425. package/src/features/oauth/useMcpConnections.ts +24 -7
  426. package/src/features/pdf-viewer/PdfPageRenderer.tsx +76 -71
  427. package/src/features/pdf-viewer/lazyReactPdf.ts +33 -0
  428. package/src/features/store/collections/CollectionsTable.tsx +1 -4
  429. package/src/features/store/collections/EditCollectionView.tsx +1 -1
  430. package/src/features/store/objects/ExportPropertiesModal.tsx +25 -16
  431. package/src/features/store/objects/components/ContentOverview.tsx +2 -28
  432. package/src/features/store/objects/components/TextEditorPanel.tsx +13 -3
  433. package/src/features/store/objects/layout/renderers.tsx +1 -6
  434. package/src/features/store/objects/search/DocumentSearchContext.test.ts +45 -0
  435. package/src/features/store/objects/search/DocumentSearchContext.ts +54 -4
  436. package/src/features/store/objects/selection/actions/DeleteObjectsAction.tsx +5 -0
  437. package/src/features/store/objects/upload/DocumentUploadModal.tsx +10 -3
  438. package/src/features/store/objects/upload/useSmartFileUploadProcessing.ts +15 -6
  439. package/src/features/store/types/ContentObjectTypesTable.tsx +1 -4
  440. package/src/features/store/types/IntakePolicyEditor.tsx +14 -5
  441. package/src/features/store/types/IntakePolicyForm.tsx +120 -20
  442. package/src/features/store/types/ObjectSchemaEditor.tsx +6 -2
  443. package/src/features/store/types/TableLayoutEditor.tsx +2 -0
  444. package/src/features/user/UserInfo.test.tsx +10 -0
  445. package/src/features/user/UserInfo.tsx +2 -7
  446. package/src/features/views/ViewActions.test.tsx +80 -0
  447. package/src/features/views/ViewActions.tsx +352 -0
  448. package/src/features/views/ViewDropTarget.test.tsx +150 -0
  449. package/src/features/views/ViewDropTarget.tsx +140 -0
  450. package/src/features/views/ViewExperience.test.tsx +72 -0
  451. package/src/features/views/ViewExperience.tsx +189 -22
  452. package/src/features/views/ViewMedia.test.tsx +180 -0
  453. package/src/features/views/ViewNavigation.test.tsx +42 -0
  454. package/src/features/views/ViewNavigation.tsx +43 -5
  455. package/src/features/views/ViewResults.tsx +243 -26
  456. package/src/features/views/index.ts +1 -0
  457. package/src/features/views/types.ts +50 -0
  458. package/src/features/views/viewState.test.ts +7 -1
  459. package/src/features/views/viewState.ts +32 -0
  460. package/src/i18n/LanguageProvider.tsx +15 -8
  461. package/src/i18n/instance.test.ts +30 -0
  462. package/src/i18n/instance.ts +67 -40
  463. package/src/i18n/locales/ar.json +1192 -911
  464. package/src/i18n/locales/de.json +1148 -867
  465. package/src/i18n/locales/en.json +65 -4
  466. package/src/i18n/locales/es.json +1159 -878
  467. package/src/i18n/locales/fr.json +1159 -878
  468. package/src/i18n/locales/it.json +1159 -878
  469. package/src/i18n/locales/ja.json +1148 -866
  470. package/src/i18n/locales/ko.json +1148 -866
  471. package/src/i18n/locales/pt.json +1159 -878
  472. package/src/i18n/locales/ru.json +1170 -889
  473. package/src/i18n/locales/tr.json +1148 -867
  474. package/src/i18n/locales/zh-TW.json +1148 -866
  475. package/src/i18n/locales/zh.json +1148 -866
  476. package/src/i18n/rtl.test.ts +16 -7
  477. package/src/rich-text/VertesiaRichTextEditor.test.tsx +33 -1
  478. package/src/router/RouteComponent.test.tsx +139 -0
  479. package/src/router/RouteComponent.tsx +54 -9
  480. package/src/session/UserSessionProvider.tsx +20 -31
  481. package/src/session/auth/composable.scope.test.ts +1 -1
  482. package/src/session/auth/composable.test.ts +61 -1
  483. package/src/session/auth/composable.ts +29 -23
  484. package/src/session/auth/domainRouting.test.ts +24 -1
  485. package/src/session/auth/domainRouting.ts +29 -0
  486. package/src/session/auth/firebase.ts +1 -1
  487. package/src/session/useUXTracking.tsx +6 -1
  488. package/src/shell/VertesiaShell.tsx +2 -0
  489. package/src/shell/apps/IframeAppContextSync.test.tsx +196 -0
  490. package/src/shell/apps/IframeAppContextSync.tsx +101 -0
  491. package/src/shell/apps/iframe-auth.test.ts +118 -0
  492. package/src/shell/apps/iframe-auth.ts +193 -0
  493. package/src/shell/apps/index.ts +2 -0
  494. package/src/widgets/markdown/ArtifactEditingSurface.test.tsx +12 -3
  495. package/src/widgets/markdown/MarkdownRenderer.tsx +50 -2
  496. package/src/widgets/markdown/MermaidDiagram.tsx +38 -22
  497. package/src/widgets/monacoEditor/MonacoEditor.tsx +27 -20
  498. package/lib/features/magic-pdf/GroundedExtractionAssistantPanel.d.ts +0 -25
  499. package/lib/features/magic-pdf/GroundedExtractionAssistantPanel.d.ts.map +0 -1
  500. package/lib/features/magic-pdf/GroundedExtractionAssistantPanel.js +0 -42
  501. package/lib/features/magic-pdf/GroundedExtractionAssistantPanel.js.map +0 -1
  502. package/src/features/magic-pdf/GroundedExtractionAssistantPanel.tsx +0 -86
@@ -1 +1 @@
1
- {"version":3,"file":"vertesia-ui-layout.js","names":["_jsx","_jsxs","_jsx","_jsxs","_jsx","_Fragment","_jsx","_jsxs","_jsx","_jsxs","_jsx","_jsx"],"sources":["layout/SidebarContext.js","layout/TitleBar.js","layout/Navbar.js","layout/Sidebar.js","layout/AppLayout.js","layout/ErrorPage.js","layout/FullHeightLayout.js","layout/RegionTag.js"],"sourcesContent":["import { createContext, useContext } from 'react';\nexport const SidebarContext = createContext({\n isOpen: false,\n toggleMobile: () => void 0,\n toggleDesktop: () => void 0,\n});\nexport function useSidebarToggle() {\n return useContext(SidebarContext);\n}\n//# sourceMappingURL=SidebarContext.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nexport function TitleBar({ title }) {\n return _jsx(\"div\", { className: \"self-center text-lg font-semibold\", children: title });\n}\n//# sourceMappingURL=TitleBar.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Button } from '@vertesia/ui/core';\nimport { useUITranslation } from '@vertesia/ui/i18n';\nimport { Menu, Search } from 'lucide-react';\nimport { useSidebarToggle } from './SidebarContext.js';\nimport { TitleBar } from './TitleBar.js';\nexport function Navbar({ children, logo, onSearch, title }) {\n return (_jsxs(\"div\", { className: \"sticky top-0 z-40 flex h-16 shrink-0 items-center gap-x-4 border-b px-4 shadow-2xs sm:gap-x-6 sm:px-6 lg:px-8\", children: [_jsx(HamburgerButton, {}), _jsx(\"div\", { className: \"lg:hidden\", children: logo }), onSearch && _jsx(NavbarSeparator, { visible: \"mobile\" }), _jsxs(\"div\", { className: \"flex flex-1 gap-x-4 self-stretch lg:gap-x-6\", children: [_jsx(TitleBar, { title: title }), onSearch && _jsx(SearchBox, { onSearch: onSearch }), _jsx(\"div\", { className: \"flex items-center gap-x-4 lg:gap-x-6 ms-auto\", children: children })] })] }));\n}\nfunction SearchBox(_props) {\n const { t } = useUITranslation();\n return (_jsxs(\"form\", { className: \"relative flex flex-1\", action: \"#\", method: \"GET\", children: [_jsx(\"label\", { htmlFor: \"search-field\", className: \"sr-only\", children: t('layout.search') }), _jsx(Search, { className: \"pointer-events-none absolute inset-y-0 start-0 h-full w-5 text-gray-400\", \"aria-hidden\": \"true\" }), _jsx(\"input\", { id: \"search-field\", className: \"block h-full w-full border-0 py-0 ps-8 pe-0 text-gray-900 placeholder:text-gray-400 focus:ring-0 sm:text-sm\", placeholder: t('layout.searchPlaceholder'), type: \"search\", name: \"search\" })] }));\n}\nexport function HamburgerButton() {\n const { toggleDesktop, toggleMobile } = useSidebarToggle();\n const toggle = () => {\n if (window.innerWidth < 1024) {\n toggleMobile();\n }\n else {\n toggleDesktop();\n }\n };\n return (_jsx(Button, { variant: \"ghost\", size: \"icon\", onClick: () => toggle(), className: \"p-2 rounded-full transition-colors w-full text-center \", children: _jsx(Menu, { \"aria-hidden\": \"true\", size: 24 }) }));\n}\nexport function NavbarSeparator({ visible }) {\n let visibility = '';\n if (visible) {\n visibility = visible === 'mobile' ? 'lg:hidden' : 'hidden lg:block';\n }\n return _jsx(\"div\", { className: `h-6 w-px bg-gray-900/10 dark:bg-slate-900/0.1 ${visibility}`, \"aria-hidden\": \"true\" });\n}\nexport function NavbarIconButton({ title, icon: Icon, onClick }) {\n return (_jsxs(\"button\", { type: \"button\", className: \"-m-2.5 p-2.5 text-gray-400 dark:text-slate-50 hover:text-gray-500\", onClick: onClick, children: [_jsx(\"span\", { className: \"sr-only\", children: title }), _jsx(Icon, { className: \"size-6\", \"aria-hidden\": \"true\", title: title })] }));\n}\nexport function NavbarButton({ children, onClick }) {\n return _jsx(Button, { onClick: onClick, children: children });\n}\nexport function NavbarLink({ href, onClick, children }) {\n return (_jsx(\"a\", { className: \"dark:text-slate-50\", href: href, onClick: onClick, children: children }));\n}\n//# sourceMappingURL=Navbar.js.map","import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@vertesia/ui/core';\nimport { Nav, useRouterContext } from '@vertesia/ui/router';\nimport clsx from 'clsx';\nimport { Dot } from 'lucide-react';\nimport { useSidebarToggle } from './SidebarContext';\nexport function Sidebar({ children, logo, className }) {\n return (_jsxs(\"div\", { className: clsx(className || 'bg-indigo-600 dark:bg-indigo-950', 'flex flex-col h-full'), children: [logo && _jsx(\"div\", { className: \"-mx-2 flex h-auto my-4 shrink-0 self-start\", children: logo }), _jsx(\"div\", { className: \"flex-1 min-h-0 overflow-hidden px-0 lg:px-2\", children: _jsx(\"nav\", { className: \"h-full flex flex-col\", children: _jsx(\"ul\", { className: \"flex flex-col gap-y-2 overflow-y-auto h-full\", children: children }) }) })] }));\n}\nexport function SidebarSection({ children, title, action, isFooter = false, className }) {\n const { isOpen } = useSidebarToggle();\n const header = isOpen ? (_jsxs(_Fragment, { children: [title || '', action] })) : (_jsx(Dot, { className: \"size-6\" }));\n return (_jsxs(\"li\", { className: isFooter ? 'mt-auto' : '', children: [title && (_jsx(\"div\", { className: \"text-xs font-medium h-8 flex items-center gap-x-2 px-2 text-sidebar-foreground/70\", children: header })), _jsx(\"ul\", { \"data-sidebar\": \"menu\", className: clsx('flex w-full min-w-0 flex-col gap-1', className), children: children })] }));\n}\nexport function SidebarTooltip({ children, text }) {\n const { isOpen } = useSidebarToggle();\n return isOpen ? (children) : (_jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: children }), _jsx(TooltipContent, { side: \"right\", children: text })] }) }));\n}\nexport function SidebarItem({ external, className, tools, children, icon: Icon, href, to, current, onClick, replace, skipStickyParams, }) {\n const { toggleMobile } = useSidebarToggle();\n const { router } = useRouterContext();\n // Append the active tenant sticky params (account `a` + project `p`) the router holds to internal\n // hrefs, so opening a nav item in a new tab or copying its address preserves the current\n // account/project.\n const resolvedHref = !skipStickyParams && href.startsWith('/') ? router.getTopRouter().navigator.addStickyParams(href) : href;\n const _closeSideBar = () => {\n setTimeout(() => {\n toggleMobile(false);\n }, 100);\n };\n const onClickWrapper = (event) => {\n if (external) {\n window.open(resolvedHref, '_blank');\n event.preventDefault(); // Prevent default link behavior\n event.stopPropagation(); // Stop the event from propagating\n }\n else if (onClick) {\n onClick(event);\n }\n };\n return (_jsx(\"li\", { children: _jsx(Nav, { to: to, onClick: _closeSideBar, replace: replace, children: _jsx(SidebarTooltip, { text: children, children: _jsxs(\"a\", { href: resolvedHref, onClick: onClickWrapper, className: clsx(current\n ? 'bg-sidebar-accent text-sidebar-accent-foreground'\n : 'text-sidebar-foreground hover:text-sidebar-accent-foreground hover:bg-sidebar-accent', 'group flex gap-x-3 rounded-md px-2 py-1.5 text-sm items-center h-8', className), children: [Icon && (_jsx(Icon, { className: clsx(current\n ? 'bg-sidebar-accent text-sidebar-accent-foreground'\n : 'text-sidebar-foreground hover:text-sidebar-accent-foreground hover:bg-sidebar-accent', 'size-4 shrink-0'), \"aria-hidden\": \"true\" })), children, tools && _jsx(\"div\", { className: \"flex items-center ms-auto\", children: tools })] }) }) }) }));\n}\n//# sourceMappingURL=Sidebar.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { SidePanel } from '@vertesia/ui/core';\nimport { useLanguage } from '@vertesia/ui/i18n';\nimport clsx from 'clsx';\nimport { useEffect, useState } from 'react';\n// import { FullHeightLayout } from './FullHeightLayout.js'\nimport { Navbar } from './Navbar.js';\nimport { Sidebar } from './Sidebar.js';\nimport { SidebarContext } from './SidebarContext.js';\nexport function AppLayout({ sidebarClassName, className, title, children, logo, navbar, sidebar, mainNav, }) {\n if (localStorage.getItem('desktopSidebarOpen') === null) {\n localStorage.setItem('desktopSidebarOpen', 'true');\n }\n const { isRTL } = useLanguage();\n const [sidebarOpen, setSidebarOpen] = useState(false);\n const [desktopSidebarOpen, setDesktopSidebarOpen] = useState(localStorage.getItem('desktopSidebarOpen') === 'true');\n const [isLargeScreen, setIsLargeScreen] = useState(window.innerWidth >= 1024);\n useEffect(() => {\n const handleResize = () => {\n setIsLargeScreen(window.innerWidth >= 1024);\n };\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n const sidebarContextValue = {\n isOpen: isLargeScreen ? desktopSidebarOpen : sidebarOpen,\n toggleDesktop: (value) => {\n if (value === undefined) {\n setDesktopSidebarOpen(!desktopSidebarOpen);\n }\n else {\n setDesktopSidebarOpen(value);\n }\n localStorage.setItem('desktopSidebarOpen', JSON.stringify(!desktopSidebarOpen));\n },\n toggleMobile: (value) => {\n if (value === undefined) {\n setSidebarOpen(!sidebarOpen);\n }\n else {\n setSidebarOpen(value);\n }\n },\n };\n return (_jsx(\"div\", { className: \"flex flex-col h-screen overflow-y-hidden\", children: _jsxs(SidebarContext.Provider, { value: sidebarContextValue, children: [_jsx(\"div\", { className: \"w-full\", children: mainNav }), _jsxs(\"div\", { className: \"flex h-full overflow-y-auto w-full\", children: [_jsx(\"div\", { className: \"lg:hidden\", children: _jsx(SidePanel, { className: \"bg-sidebar\", isOpen: sidebarOpen, onClose: () => setSidebarOpen(false), side: isRTL ? 'right' : 'left', panelWidth: 288, resizable: false, backdrop: true, children: _jsx(Sidebar, { logo: logo, className: sidebarClassName, children: sidebar }) }) }), _jsx(\"div\", { className: `hidden lg:block relative transition-all duration-300 ${desktopSidebarOpen ? 'w-72' : 'w-12'}`, children: _jsx(Sidebar, { logo: logo, className: sidebarClassName, children: sidebar }) }), _jsxs(\"div\", { className: \"w-full h-full overflow-y-hidden\", children: [navbar ? (_jsx(Navbar, { title: title, logo: logo, children: navbar })) : null, _jsx(\"main\", { className: clsx('flex-1 h-full w-full relative flex flex-col', className), children: children })] })] })] }) }));\n}\n//# sourceMappingURL=AppLayout.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Button } from '@vertesia/ui/core';\nexport function ErrorPage({ title = 'Something went wrong', message = 'An unexpected error occurred. Please try again.', actionLabel = 'Try again', onAction, }) {\n return (_jsx(\"div\", { className: \"flex min-h-screen items-center justify-center bg-white px-6 py-12 text-center\", children: _jsxs(\"div\", { className: \"max-w-md space-y-6\", children: [_jsx(\"div\", { className: \"mx-auto flex h-16 w-16 items-center justify-center rounded-full bg-destructive text-3xl font-semibold text-destructive\", children: \"!\" }), _jsxs(\"div\", { className: \"space-y-2\", children: [_jsx(\"h1\", { className: \"text-2xl font-semibold tracking-tight\", children: title }), _jsx(\"p\", { className: \"text-sm leading-6 text-muted\", children: message })] }), onAction ? _jsx(Button, { onClick: onAction, children: actionLabel }) : null] }) }));\n}\n//# sourceMappingURL=ErrorPage.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport clsx from 'clsx';\nexport function FullHeightLayout({ className, children }) {\n return _jsx(\"div\", { className: clsx('flex flex-col', 'h-full', 'overflow-y-auto', 'px-2', className), children: children });\n}\nFullHeightLayout.Fixed = function Fixed({ heightClass, className, children }) {\n return _jsx(\"div\", { className: clsx('w-full', heightClass, className), children: children });\n};\nFullHeightLayout.Body = function Body({ className, children }) {\n return _jsx(\"div\", { className: clsx('grow overflow-auto', 'min-h-0', 'p-2', className), children: children });\n};\nFullHeightLayout.VR = function VDivider() {\n return _jsx(\"div\", { className: \"w-[1px] border border-red-200\" });\n};\nFullHeightLayout.HR = function HDivider() {\n return _jsx(\"div\", { className: \"w-full h-1 border-b border-red-200\" });\n};\nFullHeightLayout.Flex = function Flex({ className, children }) {\n return _jsx(\"div\", { className: clsx('grow flex flex-col', 'overflow-hidden min-h-0', 'p-2', className), children: children });\n};\nFullHeightLayout.Tab = function Tab({ children }) {\n return _jsx(\"div\", { className: \"flex flex-col h-full\", children: children });\n};\n//# sourceMappingURL=FullHeightLayout.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { cn } from '@vertesia/ui/core';\nimport { Env } from '@vertesia/ui/env';\nconst regionLabels = {\n eu: 'EU',\n jp: 'JP',\n};\nexport function RegionTag({ className }) {\n const region = Env.region;\n // Only show for non-US regions (US is default, no need to display)\n if (!region || region === 'us')\n return null;\n return (_jsx(\"div\", { className: cn('text-[0.6rem] font-semibold px-1.5 rounded-3xl leading-4', 'bg-info text-white', className), children: regionLabels[region] ?? region.toUpperCase() }));\n}\n//# sourceMappingURL=RegionTag.js.map"],"mappings":"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"}
1
+ {"version":3,"file":"vertesia-ui-layout.js","names":["__iconNode","__iconNode","_jsx","_jsxs","_jsx","_jsxs","_jsx","_Fragment","_jsx","_jsxs","_jsx","_jsxs","_jsx","_jsx"],"sources":["../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/toKebabCase.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/toCamelCase.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/toPascalCase.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/defaultAttributes.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/hasA11yProp.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/context.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/Icon.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/createLucideIcon.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/icons/dot.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/icons/menu.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/icons/search.mjs","layout/SidebarContext.js","layout/TitleBar.js","layout/Navbar.js","layout/Sidebar.js","layout/AppLayout.js","layout/ErrorPage.js","layout/FullHeightLayout.js","layout/RegionTag.js"],"sourcesContent":["/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst mergeClasses = (...classes) => classes.filter((className, index, array) => {\n return Boolean(className) && className.trim() !== \"\" && array.indexOf(className) === index;\n}).join(\" \").trim();\n\nexport { mergeClasses };\n//# sourceMappingURL=mergeClasses.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, \"$1-$2\").toLowerCase();\n\nexport { toKebabCase };\n//# sourceMappingURL=toKebabCase.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toCamelCase = (string) => string.replace(\n /^([A-Z])|[\\s-_]+(\\w)/g,\n (match, p1, p2) => p2 ? p2.toUpperCase() : p1.toLowerCase()\n);\n\nexport { toCamelCase };\n//# sourceMappingURL=toCamelCase.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { toCamelCase } from './toCamelCase.mjs';\n\nconst toPascalCase = (string) => {\n const camelCase = toCamelCase(string);\n return camelCase.charAt(0).toUpperCase() + camelCase.slice(1);\n};\n\nexport { toPascalCase };\n//# sourceMappingURL=toPascalCase.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst hasA11yProp = (props) => {\n for (const prop in props) {\n if (prop.startsWith(\"aria-\") || prop === \"role\" || prop === \"title\") {\n return true;\n }\n }\n return false;\n};\n\nexport { hasA11yProp };\n//# sourceMappingURL=hasA11yProp.mjs.map\n","\"use strict\";\n\"use client\";\n/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { createContext, useContext, useMemo, createElement } from 'react';\n\nconst LucideContext = createContext({});\nfunction LucideProvider({\n children,\n size,\n color,\n strokeWidth,\n absoluteStrokeWidth,\n className\n}) {\n const value = useMemo(\n () => ({\n size,\n color,\n strokeWidth,\n absoluteStrokeWidth,\n className\n }),\n [size, color, strokeWidth, absoluteStrokeWidth, className]\n );\n return createElement(LucideContext.Provider, { value }, children);\n}\nconst useLucideContext = () => useContext(LucideContext);\n\nexport { LucideProvider, useLucideContext };\n//# sourceMappingURL=context.mjs.map\n","\"use strict\";\n\"use client\";\n/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.mjs';\nimport { hasA11yProp } from './shared/src/utils/hasA11yProp.mjs';\nimport { mergeClasses } from './shared/src/utils/mergeClasses.mjs';\nimport { useLucideContext } from './context.mjs';\n\nconst Icon = forwardRef(\n ({ color, size, strokeWidth, absoluteStrokeWidth, className = \"\", children, iconNode, ...rest }, ref) => {\n const {\n size: contextSize = 24,\n strokeWidth: contextStrokeWidth = 2,\n absoluteStrokeWidth: contextAbsoluteStrokeWidth = false,\n color: contextColor = \"currentColor\",\n className: contextClass = \"\"\n } = useLucideContext() ?? {};\n const calculatedStrokeWidth = absoluteStrokeWidth ?? contextAbsoluteStrokeWidth ? Number(strokeWidth ?? contextStrokeWidth) * 24 / Number(size ?? contextSize) : strokeWidth ?? contextStrokeWidth;\n return createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes,\n width: size ?? contextSize ?? defaultAttributes.width,\n height: size ?? contextSize ?? defaultAttributes.height,\n stroke: color ?? contextColor,\n strokeWidth: calculatedStrokeWidth,\n className: mergeClasses(\"lucide\", contextClass, className),\n ...!children && !hasA11yProp(rest) && { \"aria-hidden\": \"true\" },\n ...rest\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n );\n }\n);\n\nexport { Icon as default };\n//# sourceMappingURL=Icon.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport { mergeClasses } from './shared/src/utils/mergeClasses.mjs';\nimport { toKebabCase } from './shared/src/utils/toKebabCase.mjs';\nimport { toPascalCase } from './shared/src/utils/toPascalCase.mjs';\nimport Icon from './Icon.mjs';\n\nconst createLucideIcon = (iconName, iconNode) => {\n const Component = forwardRef(\n ({ className, ...props }, ref) => createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(\n `lucide-${toKebabCase(toPascalCase(iconName))}`,\n `lucide-${iconName}`,\n className\n ),\n ...props\n })\n );\n Component.displayName = toPascalCase(iconName);\n return Component;\n};\n\nexport { createLucideIcon as default };\n//# sourceMappingURL=createLucideIcon.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [[\"circle\", { cx: \"12\", cy: \"12\", r: \"1\", key: \"41hilf\" }]];\nconst Dot = createLucideIcon(\"dot\", __iconNode);\n\nexport { __iconNode, Dot as default };\n//# sourceMappingURL=dot.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M4 5h16\", key: \"1tepv9\" }],\n [\"path\", { d: \"M4 12h16\", key: \"1lakjw\" }],\n [\"path\", { d: \"M4 19h16\", key: \"1djgab\" }]\n];\nconst Menu = createLucideIcon(\"menu\", __iconNode);\n\nexport { __iconNode, Menu as default };\n//# sourceMappingURL=menu.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m21 21-4.34-4.34\", key: \"14j7rj\" }],\n [\"circle\", { cx: \"11\", cy: \"11\", r: \"8\", key: \"4ej97u\" }]\n];\nconst Search = createLucideIcon(\"search\", __iconNode);\n\nexport { __iconNode, Search as default };\n//# sourceMappingURL=search.mjs.map\n","import { createContext, useContext } from 'react';\nexport const SidebarContext = createContext({\n isOpen: false,\n toggleMobile: () => void 0,\n toggleDesktop: () => void 0,\n});\nexport function useSidebarToggle() {\n return useContext(SidebarContext);\n}\n//# sourceMappingURL=SidebarContext.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nexport function TitleBar({ title }) {\n return _jsx(\"div\", { className: \"self-center text-lg font-semibold\", children: title });\n}\n//# sourceMappingURL=TitleBar.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Button } from '@vertesia/ui/core';\nimport { useUITranslation } from '@vertesia/ui/i18n';\nimport { Menu, Search } from 'lucide-react';\nimport { useSidebarToggle } from './SidebarContext.js';\nimport { TitleBar } from './TitleBar.js';\nexport function Navbar({ children, logo, onSearch, title }) {\n return (_jsxs(\"div\", { className: \"sticky top-0 z-40 flex h-16 shrink-0 items-center gap-x-4 border-b px-4 shadow-2xs sm:gap-x-6 sm:px-6 lg:px-8\", children: [_jsx(HamburgerButton, {}), _jsx(\"div\", { className: \"lg:hidden\", children: logo }), onSearch && _jsx(NavbarSeparator, { visible: \"mobile\" }), _jsxs(\"div\", { className: \"flex flex-1 gap-x-4 self-stretch lg:gap-x-6\", children: [_jsx(TitleBar, { title: title }), onSearch && _jsx(SearchBox, { onSearch: onSearch }), _jsx(\"div\", { className: \"flex items-center gap-x-4 lg:gap-x-6 ms-auto\", children: children })] })] }));\n}\nfunction SearchBox(_props) {\n const { t } = useUITranslation();\n return (_jsxs(\"form\", { className: \"relative flex flex-1\", action: \"#\", method: \"GET\", children: [_jsx(\"label\", { htmlFor: \"search-field\", className: \"sr-only\", children: t('layout.search') }), _jsx(Search, { className: \"pointer-events-none absolute inset-y-0 start-0 h-full w-5 text-gray-400\", \"aria-hidden\": \"true\" }), _jsx(\"input\", { id: \"search-field\", className: \"block h-full w-full border-0 py-0 ps-8 pe-0 text-gray-900 placeholder:text-gray-400 focus:ring-0 sm:text-sm\", placeholder: t('layout.searchPlaceholder'), type: \"search\", name: \"search\" })] }));\n}\nexport function HamburgerButton() {\n const { toggleDesktop, toggleMobile } = useSidebarToggle();\n const toggle = () => {\n if (window.innerWidth < 1024) {\n toggleMobile();\n }\n else {\n toggleDesktop();\n }\n };\n return (_jsx(Button, { variant: \"ghost\", size: \"icon\", onClick: () => toggle(), className: \"p-2 rounded-full transition-colors w-full text-center \", children: _jsx(Menu, { \"aria-hidden\": \"true\", size: 24 }) }));\n}\nexport function NavbarSeparator({ visible }) {\n let visibility = '';\n if (visible) {\n visibility = visible === 'mobile' ? 'lg:hidden' : 'hidden lg:block';\n }\n return _jsx(\"div\", { className: `h-6 w-px bg-gray-900/10 dark:bg-slate-900/0.1 ${visibility}`, \"aria-hidden\": \"true\" });\n}\nexport function NavbarIconButton({ title, icon: Icon, onClick }) {\n return (_jsxs(\"button\", { type: \"button\", className: \"-m-2.5 p-2.5 text-gray-400 dark:text-slate-50 hover:text-gray-500\", onClick: onClick, children: [_jsx(\"span\", { className: \"sr-only\", children: title }), _jsx(Icon, { className: \"size-6\", \"aria-hidden\": \"true\", title: title })] }));\n}\nexport function NavbarButton({ children, onClick }) {\n return _jsx(Button, { onClick: onClick, children: children });\n}\nexport function NavbarLink({ href, onClick, children }) {\n return (_jsx(\"a\", { className: \"dark:text-slate-50\", href: href, onClick: onClick, children: children }));\n}\n//# sourceMappingURL=Navbar.js.map","import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@vertesia/ui/core';\nimport { Nav, useRouterContext } from '@vertesia/ui/router';\nimport clsx from 'clsx';\nimport { Dot } from 'lucide-react';\nimport { useSidebarToggle } from './SidebarContext';\nexport function Sidebar({ children, logo, className }) {\n return (_jsxs(\"div\", { className: clsx(className || 'bg-indigo-600 dark:bg-indigo-950', 'flex flex-col h-full'), children: [logo && _jsx(\"div\", { className: \"-mx-2 flex h-auto my-4 shrink-0 self-start\", children: logo }), _jsx(\"div\", { className: \"flex-1 min-h-0 overflow-hidden px-0 lg:px-2\", children: _jsx(\"nav\", { className: \"h-full flex flex-col\", children: _jsx(\"ul\", { className: \"flex flex-col gap-y-2 overflow-y-auto h-full\", children: children }) }) })] }));\n}\nexport function SidebarSection({ children, title, action, isFooter = false, className }) {\n const { isOpen } = useSidebarToggle();\n const header = isOpen ? (_jsxs(_Fragment, { children: [title || '', action] })) : (_jsx(Dot, { className: \"size-6\" }));\n return (_jsxs(\"li\", { className: isFooter ? 'mt-auto' : '', children: [title && (_jsx(\"div\", { className: \"text-xs font-medium h-8 flex items-center gap-x-2 px-2 text-sidebar-foreground/70\", children: header })), _jsx(\"ul\", { \"data-sidebar\": \"menu\", className: clsx('flex w-full min-w-0 flex-col gap-1', className), children: children })] }));\n}\nexport function SidebarTooltip({ children, text }) {\n const { isOpen } = useSidebarToggle();\n return isOpen ? (children) : (_jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: children }), _jsx(TooltipContent, { side: \"right\", children: text })] }) }));\n}\nexport function SidebarItem({ external, className, tools, children, icon: Icon, href, to, current, onClick, replace, skipStickyParams, }) {\n const { toggleMobile } = useSidebarToggle();\n const { router } = useRouterContext();\n // Append the active tenant sticky params (account `a` + project `p`) the router holds to internal\n // hrefs, so opening a nav item in a new tab or copying its address preserves the current\n // account/project.\n const resolvedHref = !skipStickyParams && href.startsWith('/') ? router.getTopRouter().navigator.addStickyParams(href) : href;\n const _closeSideBar = () => {\n setTimeout(() => {\n toggleMobile(false);\n }, 100);\n };\n const onClickWrapper = (event) => {\n if (external) {\n window.open(resolvedHref, '_blank');\n event.preventDefault(); // Prevent default link behavior\n event.stopPropagation(); // Stop the event from propagating\n }\n else if (onClick) {\n onClick(event);\n }\n };\n return (_jsx(\"li\", { children: _jsx(Nav, { to: to, onClick: _closeSideBar, replace: replace, children: _jsx(SidebarTooltip, { text: children, children: _jsxs(\"a\", { href: resolvedHref, onClick: onClickWrapper, className: clsx(current\n ? 'bg-sidebar-accent text-sidebar-accent-foreground'\n : 'text-sidebar-foreground hover:text-sidebar-accent-foreground hover:bg-sidebar-accent', 'group flex gap-x-3 rounded-md px-2 py-1.5 text-sm items-center h-8', className), children: [Icon && (_jsx(Icon, { className: clsx(current\n ? 'bg-sidebar-accent text-sidebar-accent-foreground'\n : 'text-sidebar-foreground hover:text-sidebar-accent-foreground hover:bg-sidebar-accent', 'size-4 shrink-0'), \"aria-hidden\": \"true\" })), children, tools && _jsx(\"div\", { className: \"flex items-center ms-auto\", children: tools })] }) }) }) }));\n}\n//# sourceMappingURL=Sidebar.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { SidePanel } from '@vertesia/ui/core';\nimport { useLanguage } from '@vertesia/ui/i18n';\nimport clsx from 'clsx';\nimport { useEffect, useState } from 'react';\n// import { FullHeightLayout } from './FullHeightLayout.js'\nimport { Navbar } from './Navbar.js';\nimport { Sidebar } from './Sidebar.js';\nimport { SidebarContext } from './SidebarContext.js';\nexport function AppLayout({ sidebarClassName, className, title, children, logo, navbar, sidebar, mainNav, }) {\n if (localStorage.getItem('desktopSidebarOpen') === null) {\n localStorage.setItem('desktopSidebarOpen', 'true');\n }\n const { isRTL } = useLanguage();\n const [sidebarOpen, setSidebarOpen] = useState(false);\n const [desktopSidebarOpen, setDesktopSidebarOpen] = useState(localStorage.getItem('desktopSidebarOpen') === 'true');\n const [isLargeScreen, setIsLargeScreen] = useState(window.innerWidth >= 1024);\n useEffect(() => {\n const handleResize = () => {\n setIsLargeScreen(window.innerWidth >= 1024);\n };\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n const sidebarContextValue = {\n isOpen: isLargeScreen ? desktopSidebarOpen : sidebarOpen,\n toggleDesktop: (value) => {\n if (value === undefined) {\n setDesktopSidebarOpen(!desktopSidebarOpen);\n }\n else {\n setDesktopSidebarOpen(value);\n }\n localStorage.setItem('desktopSidebarOpen', JSON.stringify(!desktopSidebarOpen));\n },\n toggleMobile: (value) => {\n if (value === undefined) {\n setSidebarOpen(!sidebarOpen);\n }\n else {\n setSidebarOpen(value);\n }\n },\n };\n return (_jsx(\"div\", { className: \"flex flex-col h-screen overflow-y-hidden\", children: _jsxs(SidebarContext.Provider, { value: sidebarContextValue, children: [_jsx(\"div\", { className: \"w-full\", children: mainNav }), _jsxs(\"div\", { className: \"flex h-full overflow-y-auto w-full\", children: [_jsx(\"div\", { className: \"lg:hidden\", children: _jsx(SidePanel, { className: \"bg-sidebar\", isOpen: sidebarOpen, onClose: () => setSidebarOpen(false), side: isRTL ? 'right' : 'left', panelWidth: 288, resizable: false, backdrop: true, children: _jsx(Sidebar, { logo: logo, className: sidebarClassName, children: sidebar }) }) }), _jsx(\"div\", { className: `hidden lg:block relative transition-all duration-300 ${desktopSidebarOpen ? 'w-72' : 'w-12'}`, children: _jsx(Sidebar, { logo: logo, className: sidebarClassName, children: sidebar }) }), _jsxs(\"div\", { className: \"w-full h-full overflow-y-hidden\", children: [navbar ? (_jsx(Navbar, { title: title, logo: logo, children: navbar })) : null, _jsx(\"main\", { className: clsx('flex-1 h-full w-full relative flex flex-col', className), children: children })] })] })] }) }));\n}\n//# sourceMappingURL=AppLayout.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Button } from '@vertesia/ui/core';\nexport function ErrorPage({ title = 'Something went wrong', message = 'An unexpected error occurred. Please try again.', actionLabel = 'Try again', onAction, }) {\n return (_jsx(\"div\", { className: \"flex min-h-screen items-center justify-center bg-white px-6 py-12 text-center\", children: _jsxs(\"div\", { className: \"max-w-md space-y-6\", children: [_jsx(\"div\", { className: \"mx-auto flex h-16 w-16 items-center justify-center rounded-full bg-destructive text-3xl font-semibold text-destructive\", children: \"!\" }), _jsxs(\"div\", { className: \"space-y-2\", children: [_jsx(\"h1\", { className: \"text-2xl font-semibold tracking-tight\", children: title }), _jsx(\"p\", { className: \"text-sm leading-6 text-muted\", children: message })] }), onAction ? _jsx(Button, { onClick: onAction, children: actionLabel }) : null] }) }));\n}\n//# sourceMappingURL=ErrorPage.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport clsx from 'clsx';\nexport function FullHeightLayout({ className, children }) {\n return _jsx(\"div\", { className: clsx('flex flex-col', 'h-full', 'overflow-y-auto', 'px-2', className), children: children });\n}\nFullHeightLayout.Fixed = function Fixed({ heightClass, className, children }) {\n return _jsx(\"div\", { className: clsx('w-full', heightClass, className), children: children });\n};\nFullHeightLayout.Body = function Body({ className, children }) {\n return _jsx(\"div\", { className: clsx('grow overflow-auto', 'min-h-0', 'p-2', className), children: children });\n};\nFullHeightLayout.VR = function VDivider() {\n return _jsx(\"div\", { className: \"w-[1px] border border-red-200\" });\n};\nFullHeightLayout.HR = function HDivider() {\n return _jsx(\"div\", { className: \"w-full h-1 border-b border-red-200\" });\n};\nFullHeightLayout.Flex = function Flex({ className, children }) {\n return _jsx(\"div\", { className: clsx('grow flex flex-col', 'overflow-hidden min-h-0', 'p-2', className), children: children });\n};\nFullHeightLayout.Tab = function Tab({ children }) {\n return _jsx(\"div\", { className: \"flex flex-col h-full\", children: children });\n};\n//# sourceMappingURL=FullHeightLayout.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { cn } from '@vertesia/ui/core';\nimport { Env } from '@vertesia/ui/env';\nconst regionLabels = {\n eu: 'EU',\n jp: 'JP',\n};\nexport function RegionTag({ className }) {\n const region = Env.region;\n // Only show for non-US regions (US is default, no need to display)\n if (!region || region === 'us')\n return null;\n return (_jsx(\"div\", { className: cn('text-[0.6rem] font-semibold px-1.5 rounded-3xl leading-4', 'bg-info text-white', className), children: regionLabels[region] ?? region.toUpperCase() }));\n}\n//# sourceMappingURL=RegionTag.js.map"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11],"mappings":"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"}