@flanksource/clicky-ui 0.3.36 → 0.3.37

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 (2692) hide show
  1. package/NOTICE.md +462 -16
  2. package/README.md +16 -0
  3. package/dist/ai.cjs +24 -4
  4. package/dist/ai.cjs.map +1 -1
  5. package/dist/ai.js +21 -1
  6. package/dist/ai.js.map +1 -1
  7. package/dist/clicky.d.ts +1 -1
  8. package/dist/clicky.d.ts.map +1 -1
  9. package/dist/comments/CommentComposer.cjs +18 -5
  10. package/dist/comments/CommentComposer.cjs.map +1 -1
  11. package/dist/comments/CommentComposer.d.ts +5 -3
  12. package/dist/comments/CommentComposer.d.ts.map +1 -1
  13. package/dist/comments/CommentComposer.js +18 -5
  14. package/dist/comments/CommentComposer.js.map +1 -1
  15. package/dist/comments/CommentSidePanel.cjs +4 -1
  16. package/dist/comments/CommentSidePanel.cjs.map +1 -1
  17. package/dist/comments/CommentSidePanel.d.ts +2 -1
  18. package/dist/comments/CommentSidePanel.d.ts.map +1 -1
  19. package/dist/comments/CommentSidePanel.js +4 -1
  20. package/dist/comments/CommentSidePanel.js.map +1 -1
  21. package/dist/comments/CommentThread.cjs +2 -0
  22. package/dist/comments/CommentThread.cjs.map +1 -1
  23. package/dist/comments/CommentThread.d.ts +3 -2
  24. package/dist/comments/CommentThread.d.ts.map +1 -1
  25. package/dist/comments/CommentThread.js +2 -0
  26. package/dist/comments/CommentThread.js.map +1 -1
  27. package/dist/comments/comment-types.cjs.map +1 -1
  28. package/dist/comments/comment-types.d.ts +5 -1
  29. package/dist/comments/comment-types.d.ts.map +1 -1
  30. package/dist/comments/comment-types.js.map +1 -1
  31. package/dist/components/Combobox.cjs +1 -0
  32. package/dist/components/Combobox.cjs.map +1 -1
  33. package/dist/components/Combobox.d.ts.map +1 -1
  34. package/dist/components/Combobox.js +1 -0
  35. package/dist/components/Combobox.js.map +1 -1
  36. package/dist/components/ComboboxMenu.cjs +2 -1
  37. package/dist/components/ComboboxMenu.cjs.map +1 -1
  38. package/dist/components/ComboboxMenu.d.ts.map +1 -1
  39. package/dist/components/ComboboxMenu.js +2 -1
  40. package/dist/components/ComboboxMenu.js.map +1 -1
  41. package/dist/components/ErrorWrapper.cjs +1 -1
  42. package/dist/components/ErrorWrapper.cjs.map +1 -1
  43. package/dist/components/ErrorWrapper.d.ts +2 -2
  44. package/dist/components/ErrorWrapper.d.ts.map +1 -1
  45. package/dist/components/ErrorWrapper.js +2 -2
  46. package/dist/components/ErrorWrapper.js.map +1 -1
  47. package/dist/components/FilterBar.cjs +588 -228
  48. package/dist/components/FilterBar.cjs.map +1 -1
  49. package/dist/components/FilterBar.d.ts +42 -3
  50. package/dist/components/FilterBar.d.ts.map +1 -1
  51. package/dist/components/FilterBar.js +586 -226
  52. package/dist/components/FilterBar.js.map +1 -1
  53. package/dist/components/JsonSchemaForm.cjs +15 -6
  54. package/dist/components/JsonSchemaForm.cjs.map +1 -1
  55. package/dist/components/JsonSchemaForm.d.ts +1 -1
  56. package/dist/components/JsonSchemaForm.d.ts.map +1 -1
  57. package/dist/components/JsonSchemaForm.js +15 -6
  58. package/dist/components/JsonSchemaForm.js.map +1 -1
  59. package/dist/components/MultiSelect.cjs.map +1 -1
  60. package/dist/components/MultiSelect.d.ts +6 -0
  61. package/dist/components/MultiSelect.d.ts.map +1 -1
  62. package/dist/components/MultiSelect.js.map +1 -1
  63. package/dist/components/ScheduleEditor.cjs +184 -0
  64. package/dist/components/ScheduleEditor.cjs.map +1 -0
  65. package/dist/components/ScheduleEditor.d.ts +27 -0
  66. package/dist/components/ScheduleEditor.d.ts.map +1 -0
  67. package/dist/components/ScheduleEditor.js +184 -0
  68. package/dist/components/ScheduleEditor.js.map +1 -0
  69. package/dist/components/TimeRange.cjs +7 -4
  70. package/dist/components/TimeRange.cjs.map +1 -1
  71. package/dist/components/TimeRange.d.ts +6 -1
  72. package/dist/components/TimeRange.d.ts.map +1 -1
  73. package/dist/components/TimeRange.js +7 -4
  74. package/dist/components/TimeRange.js.map +1 -1
  75. package/dist/components/combobox-types.d.ts +6 -0
  76. package/dist/components/combobox-types.d.ts.map +1 -1
  77. package/dist/components/filter-bar-context.cjs +2 -1
  78. package/dist/components/filter-bar-context.cjs.map +1 -1
  79. package/dist/components/filter-bar-context.d.ts +1 -0
  80. package/dist/components/filter-bar-context.d.ts.map +1 -1
  81. package/dist/components/filter-bar-context.js +2 -1
  82. package/dist/components/filter-bar-context.js.map +1 -1
  83. package/dist/components/filter-bar-multi.cjs +7 -2
  84. package/dist/components/filter-bar-multi.cjs.map +1 -1
  85. package/dist/components/filter-bar-multi.d.ts.map +1 -1
  86. package/dist/components/filter-bar-multi.js +7 -2
  87. package/dist/components/filter-bar-multi.js.map +1 -1
  88. package/dist/components/filter-bar-utils.cjs +2 -2
  89. package/dist/components/filter-bar-utils.cjs.map +1 -1
  90. package/dist/components/filter-bar-utils.d.ts.map +1 -1
  91. package/dist/components/filter-bar-utils.js +2 -2
  92. package/dist/components/filter-bar-utils.js.map +1 -1
  93. package/dist/components/jotai-bindings-core.cjs +14 -1
  94. package/dist/components/jotai-bindings-core.cjs.map +1 -1
  95. package/dist/components/jotai-bindings-core.d.ts +3 -2
  96. package/dist/components/jotai-bindings-core.d.ts.map +1 -1
  97. package/dist/components/jotai-bindings-core.js +14 -1
  98. package/dist/components/jotai-bindings-core.js.map +1 -1
  99. package/dist/components/json-schema-form-errors.cjs +5 -3
  100. package/dist/components/json-schema-form-errors.cjs.map +1 -1
  101. package/dist/components/json-schema-form-errors.d.ts +3 -1
  102. package/dist/components/json-schema-form-errors.d.ts.map +1 -1
  103. package/dist/components/json-schema-form-errors.js +5 -3
  104. package/dist/components/json-schema-form-errors.js.map +1 -1
  105. package/dist/components/json-schema-form-fields.cjs +19 -13
  106. package/dist/components/json-schema-form-fields.cjs.map +1 -1
  107. package/dist/components/json-schema-form-fields.d.ts.map +1 -1
  108. package/dist/components/json-schema-form-fields.js +20 -14
  109. package/dist/components/json-schema-form-fields.js.map +1 -1
  110. package/dist/components/json-schema-form-layout.cjs +2 -1
  111. package/dist/components/json-schema-form-layout.cjs.map +1 -1
  112. package/dist/components/json-schema-form-layout.d.ts.map +1 -1
  113. package/dist/components/json-schema-form-layout.js +2 -1
  114. package/dist/components/json-schema-form-layout.js.map +1 -1
  115. package/dist/components/json-schema-form-render.cjs +32 -1
  116. package/dist/components/json-schema-form-render.cjs.map +1 -1
  117. package/dist/components/json-schema-form-render.d.ts.map +1 -1
  118. package/dist/components/json-schema-form-render.js +33 -2
  119. package/dist/components/json-schema-form-render.js.map +1 -1
  120. package/dist/components/json-schema-form-resolve.cjs +13 -1
  121. package/dist/components/json-schema-form-resolve.cjs.map +1 -1
  122. package/dist/components/json-schema-form-resolve.d.ts.map +1 -1
  123. package/dist/components/json-schema-form-resolve.js +13 -1
  124. package/dist/components/json-schema-form-resolve.js.map +1 -1
  125. package/dist/components/json-schema-form-runtime-types.d.ts +18 -0
  126. package/dist/components/json-schema-form-runtime-types.d.ts.map +1 -1
  127. package/dist/components/json-schema-form-table-array.cjs +1 -1
  128. package/dist/components/json-schema-form-table-array.cjs.map +1 -1
  129. package/dist/components/json-schema-form-table-array.js +1 -1
  130. package/dist/components/json-schema-form-table-array.js.map +1 -1
  131. package/dist/components/json-schema-form-template-menu.cjs +4 -0
  132. package/dist/components/json-schema-form-template-menu.cjs.map +1 -1
  133. package/dist/components/json-schema-form-template-menu.d.ts.map +1 -1
  134. package/dist/components/json-schema-form-template-menu.js +4 -0
  135. package/dist/components/json-schema-form-template-menu.js.map +1 -1
  136. package/dist/components/json-schema-form-template.cjs +5 -4
  137. package/dist/components/json-schema-form-template.cjs.map +1 -1
  138. package/dist/components/json-schema-form-template.d.ts +3 -1
  139. package/dist/components/json-schema-form-template.d.ts.map +1 -1
  140. package/dist/components/json-schema-form-template.js +5 -4
  141. package/dist/components/json-schema-form-template.js.map +1 -1
  142. package/dist/components/schedule-cron-model.cjs +68 -0
  143. package/dist/components/schedule-cron-model.cjs.map +1 -0
  144. package/dist/components/schedule-cron-model.d.ts +7 -0
  145. package/dist/components/schedule-cron-model.d.ts.map +1 -0
  146. package/dist/components/schedule-cron-model.js +68 -0
  147. package/dist/components/schedule-cron-model.js.map +1 -0
  148. package/dist/components/schedule-types.cjs +13 -0
  149. package/dist/components/schedule-types.cjs.map +1 -0
  150. package/dist/components/schedule-types.d.ts +8 -0
  151. package/dist/components/schedule-types.d.ts.map +1 -0
  152. package/dist/components/schedule-types.js +13 -0
  153. package/dist/components/schedule-types.js.map +1 -0
  154. package/dist/components/useComboboxLayout.cjs +2 -1
  155. package/dist/components/useComboboxLayout.cjs.map +1 -1
  156. package/dist/components/useComboboxLayout.d.ts.map +1 -1
  157. package/dist/components/useComboboxLayout.js +2 -1
  158. package/dist/components/useComboboxLayout.js.map +1 -1
  159. package/dist/components.cjs +11 -0
  160. package/dist/components.cjs.map +1 -1
  161. package/dist/components.d.ts +6 -2
  162. package/dist/components.d.ts.map +1 -1
  163. package/dist/components.js +12 -1
  164. package/dist/components.js.map +1 -1
  165. package/dist/data/Badge.cjs +9 -4
  166. package/dist/data/Badge.cjs.map +1 -1
  167. package/dist/data/Badge.d.ts.map +1 -1
  168. package/dist/data/Badge.js +9 -4
  169. package/dist/data/Badge.js.map +1 -1
  170. package/dist/data/Clicky.cjs +188 -19
  171. package/dist/data/Clicky.cjs.map +1 -1
  172. package/dist/data/Clicky.d.ts +48 -2
  173. package/dist/data/Clicky.d.ts.map +1 -1
  174. package/dist/data/Clicky.js +188 -19
  175. package/dist/data/Clicky.js.map +1 -1
  176. package/dist/data/CodeBlock.cjs +29 -3
  177. package/dist/data/CodeBlock.cjs.map +1 -1
  178. package/dist/data/CodeBlock.d.ts +12 -1
  179. package/dist/data/CodeBlock.d.ts.map +1 -1
  180. package/dist/data/CodeBlock.js +29 -3
  181. package/dist/data/CodeBlock.js.map +1 -1
  182. package/dist/data/DataTable.cjs +268 -392
  183. package/dist/data/DataTable.cjs.map +1 -1
  184. package/dist/data/DataTable.d.ts +18 -1
  185. package/dist/data/DataTable.d.ts.map +1 -1
  186. package/dist/data/DataTable.js +250 -374
  187. package/dist/data/DataTable.js.map +1 -1
  188. package/dist/data/DataTableMenuSections.cjs +263 -0
  189. package/dist/data/DataTableMenuSections.cjs.map +1 -0
  190. package/dist/data/DataTableMenuSections.d.ts +23 -0
  191. package/dist/data/DataTableMenuSections.d.ts.map +1 -0
  192. package/dist/data/DataTableMenuSections.js +263 -0
  193. package/dist/data/DataTableMenuSections.js.map +1 -0
  194. package/dist/data/DataTableOverflowCue.cjs +77 -0
  195. package/dist/data/DataTableOverflowCue.cjs.map +1 -0
  196. package/dist/data/DataTableOverflowCue.d.ts +4 -0
  197. package/dist/data/DataTableOverflowCue.d.ts.map +1 -0
  198. package/dist/data/DataTableOverflowCue.js +77 -0
  199. package/dist/data/DataTableOverflowCue.js.map +1 -0
  200. package/dist/data/DataTablePreferencesSheet.cjs +136 -0
  201. package/dist/data/DataTablePreferencesSheet.cjs.map +1 -0
  202. package/dist/data/DataTablePreferencesSheet.d.ts +23 -0
  203. package/dist/data/DataTablePreferencesSheet.d.ts.map +1 -0
  204. package/dist/data/DataTablePreferencesSheet.js +136 -0
  205. package/dist/data/DataTablePreferencesSheet.js.map +1 -0
  206. package/dist/data/ExecutionTree.cjs +4 -0
  207. package/dist/data/ExecutionTree.cjs.map +1 -1
  208. package/dist/data/ExecutionTree.d.ts +10 -1
  209. package/dist/data/ExecutionTree.d.ts.map +1 -1
  210. package/dist/data/ExecutionTree.js +4 -0
  211. package/dist/data/ExecutionTree.js.map +1 -1
  212. package/dist/data/GraphDiagram.cjs +201 -0
  213. package/dist/data/GraphDiagram.cjs.map +1 -0
  214. package/dist/data/GraphDiagram.d.ts +36 -0
  215. package/dist/data/GraphDiagram.d.ts.map +1 -0
  216. package/dist/data/GraphDiagram.js +201 -0
  217. package/dist/data/GraphDiagram.js.map +1 -0
  218. package/dist/data/JsonView.cjs +1 -1
  219. package/dist/data/JsonView.cjs.map +1 -1
  220. package/dist/data/JsonView.d.ts.map +1 -1
  221. package/dist/data/JsonView.js +1 -1
  222. package/dist/data/JsonView.js.map +1 -1
  223. package/dist/data/MarkdownEditor.model.d.ts +1 -1
  224. package/dist/data/MatrixTable.cjs +5 -4
  225. package/dist/data/MatrixTable.cjs.map +1 -1
  226. package/dist/data/MatrixTable.d.ts.map +1 -1
  227. package/dist/data/MatrixTable.js +5 -4
  228. package/dist/data/MatrixTable.js.map +1 -1
  229. package/dist/data/ObjectGraph.cjs +5 -2
  230. package/dist/data/ObjectGraph.cjs.map +1 -1
  231. package/dist/data/ObjectGraph.d.ts +8 -1
  232. package/dist/data/ObjectGraph.d.ts.map +1 -1
  233. package/dist/data/ObjectGraph.js +5 -2
  234. package/dist/data/ObjectGraph.js.map +1 -1
  235. package/dist/data/TaskExecDetails.cjs +31 -5
  236. package/dist/data/TaskExecDetails.cjs.map +1 -1
  237. package/dist/data/TaskExecDetails.d.ts +2 -1
  238. package/dist/data/TaskExecDetails.d.ts.map +1 -1
  239. package/dist/data/TaskExecDetails.js +31 -5
  240. package/dist/data/TaskExecDetails.js.map +1 -1
  241. package/dist/data/TaskProgress.cjs +8 -1
  242. package/dist/data/TaskProgress.cjs.map +1 -1
  243. package/dist/data/TaskProgress.js +8 -1
  244. package/dist/data/TaskProgress.js.map +1 -1
  245. package/dist/data/TaskSnapshot.cjs.map +1 -1
  246. package/dist/data/TaskSnapshot.d.ts +2 -1
  247. package/dist/data/TaskSnapshot.d.ts.map +1 -1
  248. package/dist/data/TaskSnapshot.js.map +1 -1
  249. package/dist/data/TreeNode.cjs +28 -1
  250. package/dist/data/TreeNode.cjs.map +1 -1
  251. package/dist/data/TreeNode.d.ts +13 -1
  252. package/dist/data/TreeNode.d.ts.map +1 -1
  253. package/dist/data/TreeNode.js +28 -1
  254. package/dist/data/TreeNode.js.map +1 -1
  255. package/dist/data/ai/ChatWindow.cjs +2 -2
  256. package/dist/data/ai/ChatWindow.cjs.map +1 -1
  257. package/dist/data/ai/ChatWindow.js +2 -2
  258. package/dist/data/ai/ChatWindow.js.map +1 -1
  259. package/dist/data/ai/ChatWindowManager.cjs +2 -2
  260. package/dist/data/ai/ChatWindowManager.cjs.map +1 -1
  261. package/dist/data/ai/ChatWindowManager.d.ts.map +1 -1
  262. package/dist/data/ai/ChatWindowManager.js +3 -3
  263. package/dist/data/ai/ChatWindowManager.js.map +1 -1
  264. package/dist/data/ai/PromptRunEditor/PromptBlocks.cjs +125 -0
  265. package/dist/data/ai/PromptRunEditor/PromptBlocks.cjs.map +1 -0
  266. package/dist/data/ai/PromptRunEditor/PromptBlocks.d.ts +24 -0
  267. package/dist/data/ai/PromptRunEditor/PromptBlocks.d.ts.map +1 -0
  268. package/dist/data/ai/PromptRunEditor/PromptBlocks.js +125 -0
  269. package/dist/data/ai/PromptRunEditor/PromptBlocks.js.map +1 -0
  270. package/dist/data/ai/PromptRunEditor/RecentRuntimes.cjs +69 -0
  271. package/dist/data/ai/PromptRunEditor/RecentRuntimes.cjs.map +1 -0
  272. package/dist/data/ai/PromptRunEditor/RecentRuntimes.d.ts +10 -0
  273. package/dist/data/ai/PromptRunEditor/RecentRuntimes.d.ts.map +1 -0
  274. package/dist/data/ai/PromptRunEditor/RecentRuntimes.js +69 -0
  275. package/dist/data/ai/PromptRunEditor/RecentRuntimes.js.map +1 -0
  276. package/dist/data/ai/PromptRunEditor/RuntimeRows.cjs +118 -0
  277. package/dist/data/ai/PromptRunEditor/RuntimeRows.cjs.map +1 -0
  278. package/dist/data/ai/PromptRunEditor/RuntimeRows.d.ts +16 -0
  279. package/dist/data/ai/PromptRunEditor/RuntimeRows.d.ts.map +1 -0
  280. package/dist/data/ai/PromptRunEditor/RuntimeRows.js +118 -0
  281. package/dist/data/ai/PromptRunEditor/RuntimeRows.js.map +1 -0
  282. package/dist/data/ai/PromptRunEditor/index.cjs +157 -253
  283. package/dist/data/ai/PromptRunEditor/index.cjs.map +1 -1
  284. package/dist/data/ai/PromptRunEditor/index.d.ts +20 -8
  285. package/dist/data/ai/PromptRunEditor/index.d.ts.map +1 -1
  286. package/dist/data/ai/PromptRunEditor/index.js +158 -254
  287. package/dist/data/ai/PromptRunEditor/index.js.map +1 -1
  288. package/dist/data/ai/PromptRunEditor/model.cjs +56 -0
  289. package/dist/data/ai/PromptRunEditor/model.cjs.map +1 -1
  290. package/dist/data/ai/PromptRunEditor/model.d.ts +13 -1
  291. package/dist/data/ai/PromptRunEditor/model.d.ts.map +1 -1
  292. package/dist/data/ai/PromptRunEditor/model.js +57 -1
  293. package/dist/data/ai/PromptRunEditor/model.js.map +1 -1
  294. package/dist/data/ai/PromptRunEditor/runtimeActions.cjs +194 -0
  295. package/dist/data/ai/PromptRunEditor/runtimeActions.cjs.map +1 -0
  296. package/dist/data/ai/PromptRunEditor/runtimeActions.d.ts +30 -0
  297. package/dist/data/ai/PromptRunEditor/runtimeActions.d.ts.map +1 -0
  298. package/dist/data/ai/PromptRunEditor/runtimeActions.js +194 -0
  299. package/dist/data/ai/PromptRunEditor/runtimeActions.js.map +1 -0
  300. package/dist/data/ai/PromptRunEditor/yaml.cjs +47 -0
  301. package/dist/data/ai/PromptRunEditor/yaml.cjs.map +1 -0
  302. package/dist/data/ai/PromptRunEditor/yaml.d.ts +9 -0
  303. package/dist/data/ai/PromptRunEditor/yaml.d.ts.map +1 -0
  304. package/dist/data/ai/PromptRunEditor/yaml.js +47 -0
  305. package/dist/data/ai/PromptRunEditor/yaml.js.map +1 -0
  306. package/dist/data/ai/SessionChatComposer.cjs +72 -2
  307. package/dist/data/ai/SessionChatComposer.cjs.map +1 -1
  308. package/dist/data/ai/SessionChatComposer.d.ts +12 -1
  309. package/dist/data/ai/SessionChatComposer.d.ts.map +1 -1
  310. package/dist/data/ai/SessionChatComposer.js +73 -3
  311. package/dist/data/ai/SessionChatComposer.js.map +1 -1
  312. package/dist/data/ai/SessionInspector.cjs +219 -144
  313. package/dist/data/ai/SessionInspector.cjs.map +1 -1
  314. package/dist/data/ai/SessionInspector.compact.cjs +91 -0
  315. package/dist/data/ai/SessionInspector.compact.cjs.map +1 -0
  316. package/dist/data/ai/SessionInspector.compact.d.ts +19 -0
  317. package/dist/data/ai/SessionInspector.compact.d.ts.map +1 -0
  318. package/dist/data/ai/SessionInspector.compact.js +91 -0
  319. package/dist/data/ai/SessionInspector.compact.js.map +1 -0
  320. package/dist/data/ai/SessionInspector.d.ts +10 -2
  321. package/dist/data/ai/SessionInspector.d.ts.map +1 -1
  322. package/dist/data/ai/SessionInspector.hierarchy.cjs +48 -33
  323. package/dist/data/ai/SessionInspector.hierarchy.cjs.map +1 -1
  324. package/dist/data/ai/SessionInspector.hierarchy.d.ts +6 -0
  325. package/dist/data/ai/SessionInspector.hierarchy.d.ts.map +1 -1
  326. package/dist/data/ai/SessionInspector.hierarchy.js +50 -35
  327. package/dist/data/ai/SessionInspector.hierarchy.js.map +1 -1
  328. package/dist/data/ai/SessionInspector.js +222 -147
  329. package/dist/data/ai/SessionInspector.js.map +1 -1
  330. package/dist/data/ai/SessionInspector.panels.cjs +15 -0
  331. package/dist/data/ai/SessionInspector.panels.cjs.map +1 -1
  332. package/dist/data/ai/SessionInspector.panels.d.ts.map +1 -1
  333. package/dist/data/ai/SessionInspector.panels.js +15 -0
  334. package/dist/data/ai/SessionInspector.panels.js.map +1 -1
  335. package/dist/data/ai/SessionInspector.summary.cjs +25 -0
  336. package/dist/data/ai/SessionInspector.summary.cjs.map +1 -1
  337. package/dist/data/ai/SessionInspector.summary.d.ts.map +1 -1
  338. package/dist/data/ai/SessionInspector.summary.js +25 -0
  339. package/dist/data/ai/SessionInspector.summary.js.map +1 -1
  340. package/dist/data/ai/SessionInspector.tabs.cjs +34 -0
  341. package/dist/data/ai/SessionInspector.tabs.cjs.map +1 -0
  342. package/dist/data/ai/SessionInspector.tabs.d.ts +8 -0
  343. package/dist/data/ai/SessionInspector.tabs.d.ts.map +1 -0
  344. package/dist/data/ai/SessionInspector.tabs.js +34 -0
  345. package/dist/data/ai/SessionInspector.tabs.js.map +1 -0
  346. package/dist/data/ai/SessionInspector.tabs.model.cjs +70 -0
  347. package/dist/data/ai/SessionInspector.tabs.model.cjs.map +1 -0
  348. package/dist/data/ai/SessionInspector.tabs.model.d.ts +9 -0
  349. package/dist/data/ai/SessionInspector.tabs.model.d.ts.map +1 -0
  350. package/dist/data/ai/SessionInspector.tabs.model.js +70 -0
  351. package/dist/data/ai/SessionInspector.tabs.model.js.map +1 -0
  352. package/dist/data/ai/SessionViewer.cjs +16 -5
  353. package/dist/data/ai/SessionViewer.cjs.map +1 -1
  354. package/dist/data/ai/SessionViewer.d.ts +3 -1
  355. package/dist/data/ai/SessionViewer.d.ts.map +1 -1
  356. package/dist/data/ai/SessionViewer.header.cjs +36 -1
  357. package/dist/data/ai/SessionViewer.header.cjs.map +1 -1
  358. package/dist/data/ai/SessionViewer.header.d.ts.map +1 -1
  359. package/dist/data/ai/SessionViewer.header.js +36 -1
  360. package/dist/data/ai/SessionViewer.header.js.map +1 -1
  361. package/dist/data/ai/SessionViewer.input.cjs +1 -0
  362. package/dist/data/ai/SessionViewer.input.cjs.map +1 -1
  363. package/dist/data/ai/SessionViewer.input.d.ts +1 -0
  364. package/dist/data/ai/SessionViewer.input.d.ts.map +1 -1
  365. package/dist/data/ai/SessionViewer.input.js +1 -0
  366. package/dist/data/ai/SessionViewer.input.js.map +1 -1
  367. package/dist/data/ai/SessionViewer.js +16 -5
  368. package/dist/data/ai/SessionViewer.js.map +1 -1
  369. package/dist/data/ai/SessionViewer.model.cjs +12 -0
  370. package/dist/data/ai/SessionViewer.model.cjs.map +1 -1
  371. package/dist/data/ai/SessionViewer.model.d.ts +4 -0
  372. package/dist/data/ai/SessionViewer.model.d.ts.map +1 -1
  373. package/dist/data/ai/SessionViewer.model.js +12 -0
  374. package/dist/data/ai/SessionViewer.model.js.map +1 -1
  375. package/dist/data/ai/SessionViewer.rows.cjs +9 -5
  376. package/dist/data/ai/SessionViewer.rows.cjs.map +1 -1
  377. package/dist/data/ai/SessionViewer.rows.d.ts.map +1 -1
  378. package/dist/data/ai/SessionViewer.rows.js +9 -5
  379. package/dist/data/ai/SessionViewer.rows.js.map +1 -1
  380. package/dist/data/ai/SessionViewer.tool-row.cjs +79 -72
  381. package/dist/data/ai/SessionViewer.tool-row.cjs.map +1 -1
  382. package/dist/data/ai/SessionViewer.tool-row.js +79 -72
  383. package/dist/data/ai/SessionViewer.tool-row.js.map +1 -1
  384. package/dist/data/ai/SessionViewer.unified.d.ts +4 -0
  385. package/dist/data/ai/SessionViewer.unified.d.ts.map +1 -1
  386. package/dist/data/ai/SessionViewerMenu.cjs +2 -0
  387. package/dist/data/ai/SessionViewerMenu.cjs.map +1 -1
  388. package/dist/data/ai/SessionViewerMenu.d.ts +3 -1
  389. package/dist/data/ai/SessionViewerMenu.d.ts.map +1 -1
  390. package/dist/data/ai/SessionViewerMenu.js +2 -0
  391. package/dist/data/ai/SessionViewerMenu.js.map +1 -1
  392. package/dist/data/ai/SpecRuntimeEditor/ModelSection.cjs +5 -4
  393. package/dist/data/ai/SpecRuntimeEditor/ModelSection.cjs.map +1 -1
  394. package/dist/data/ai/SpecRuntimeEditor/ModelSection.d.ts +3 -1
  395. package/dist/data/ai/SpecRuntimeEditor/ModelSection.d.ts.map +1 -1
  396. package/dist/data/ai/SpecRuntimeEditor/ModelSection.js +5 -4
  397. package/dist/data/ai/SpecRuntimeEditor/ModelSection.js.map +1 -1
  398. package/dist/data/ai/SpecRuntimeEditor/PermissionModeField.cjs +41 -31
  399. package/dist/data/ai/SpecRuntimeEditor/PermissionModeField.cjs.map +1 -1
  400. package/dist/data/ai/SpecRuntimeEditor/PermissionModeField.d.ts +7 -0
  401. package/dist/data/ai/SpecRuntimeEditor/PermissionModeField.d.ts.map +1 -1
  402. package/dist/data/ai/SpecRuntimeEditor/PermissionModeField.js +43 -33
  403. package/dist/data/ai/SpecRuntimeEditor/PermissionModeField.js.map +1 -1
  404. package/dist/data/ai/SpecRuntimeEditor/PermissionsSection.cjs +13 -171
  405. package/dist/data/ai/SpecRuntimeEditor/PermissionsSection.cjs.map +1 -1
  406. package/dist/data/ai/SpecRuntimeEditor/PermissionsSection.d.ts +6 -2
  407. package/dist/data/ai/SpecRuntimeEditor/PermissionsSection.d.ts.map +1 -1
  408. package/dist/data/ai/SpecRuntimeEditor/PermissionsSection.js +14 -172
  409. package/dist/data/ai/SpecRuntimeEditor/PermissionsSection.js.map +1 -1
  410. package/dist/data/ai/SpecRuntimeEditor/PromptSection.cjs +6 -2
  411. package/dist/data/ai/SpecRuntimeEditor/PromptSection.cjs.map +1 -1
  412. package/dist/data/ai/SpecRuntimeEditor/PromptSection.d.ts +1 -1
  413. package/dist/data/ai/SpecRuntimeEditor/PromptSection.d.ts.map +1 -1
  414. package/dist/data/ai/SpecRuntimeEditor/PromptSection.js +7 -3
  415. package/dist/data/ai/SpecRuntimeEditor/PromptSection.js.map +1 -1
  416. package/dist/data/ai/SpecRuntimeEditor/SandboxSection.cjs +1 -29
  417. package/dist/data/ai/SpecRuntimeEditor/SandboxSection.cjs.map +1 -1
  418. package/dist/data/ai/SpecRuntimeEditor/SandboxSection.d.ts +2 -3
  419. package/dist/data/ai/SpecRuntimeEditor/SandboxSection.d.ts.map +1 -1
  420. package/dist/data/ai/SpecRuntimeEditor/SandboxSection.js +2 -30
  421. package/dist/data/ai/SpecRuntimeEditor/SandboxSection.js.map +1 -1
  422. package/dist/data/ai/SpecRuntimeEditor/SectionCard.cjs +9 -1
  423. package/dist/data/ai/SpecRuntimeEditor/SectionCard.cjs.map +1 -1
  424. package/dist/data/ai/SpecRuntimeEditor/SectionCard.d.ts +3 -2
  425. package/dist/data/ai/SpecRuntimeEditor/SectionCard.d.ts.map +1 -1
  426. package/dist/data/ai/SpecRuntimeEditor/SectionCard.js +9 -1
  427. package/dist/data/ai/SpecRuntimeEditor/SectionCard.js.map +1 -1
  428. package/dist/data/ai/SpecRuntimeEditor/SectionTabs.cjs +62 -0
  429. package/dist/data/ai/SpecRuntimeEditor/SectionTabs.cjs.map +1 -0
  430. package/dist/data/ai/SpecRuntimeEditor/SectionTabs.d.ts +12 -0
  431. package/dist/data/ai/SpecRuntimeEditor/SectionTabs.d.ts.map +1 -0
  432. package/dist/data/ai/SpecRuntimeEditor/SectionTabs.js +62 -0
  433. package/dist/data/ai/SpecRuntimeEditor/SectionTabs.js.map +1 -0
  434. package/dist/data/ai/SpecRuntimeEditor/index.cjs +80 -51
  435. package/dist/data/ai/SpecRuntimeEditor/index.cjs.map +1 -1
  436. package/dist/data/ai/SpecRuntimeEditor/index.d.ts +15 -5
  437. package/dist/data/ai/SpecRuntimeEditor/index.d.ts.map +1 -1
  438. package/dist/data/ai/SpecRuntimeEditor/index.js +80 -51
  439. package/dist/data/ai/SpecRuntimeEditor/index.js.map +1 -1
  440. package/dist/data/ai/SpecRuntimeEditor/permission-mode-visuals.cjs +8 -3
  441. package/dist/data/ai/SpecRuntimeEditor/permission-mode-visuals.cjs.map +1 -1
  442. package/dist/data/ai/SpecRuntimeEditor/permission-mode-visuals.js +8 -3
  443. package/dist/data/ai/SpecRuntimeEditor/permission-mode-visuals.js.map +1 -1
  444. package/dist/data/ai/SpecRuntimeEditor/permissions-model.cjs +20 -0
  445. package/dist/data/ai/SpecRuntimeEditor/permissions-model.cjs.map +1 -1
  446. package/dist/data/ai/SpecRuntimeEditor/permissions-model.d.ts +3 -1
  447. package/dist/data/ai/SpecRuntimeEditor/permissions-model.d.ts.map +1 -1
  448. package/dist/data/ai/SpecRuntimeEditor/permissions-model.js +20 -0
  449. package/dist/data/ai/SpecRuntimeEditor/permissions-model.js.map +1 -1
  450. package/dist/data/ai/SpecRuntimeEditor/summaries.cjs.map +1 -1
  451. package/dist/data/ai/SpecRuntimeEditor/summaries.d.ts.map +1 -1
  452. package/dist/data/ai/SpecRuntimeEditor/summaries.js.map +1 -1
  453. package/dist/data/ai/SpecRuntimeEditor/types.cjs +17 -4
  454. package/dist/data/ai/SpecRuntimeEditor/types.cjs.map +1 -1
  455. package/dist/data/ai/SpecRuntimeEditor/types.d.ts +16 -0
  456. package/dist/data/ai/SpecRuntimeEditor/types.d.ts.map +1 -1
  457. package/dist/data/ai/SpecRuntimeEditor/types.js +18 -5
  458. package/dist/data/ai/SpecRuntimeEditor/types.js.map +1 -1
  459. package/dist/data/ai/SpecRuntimeEditor/update.cjs +10 -9
  460. package/dist/data/ai/SpecRuntimeEditor/update.cjs.map +1 -1
  461. package/dist/data/ai/SpecRuntimeEditor/update.d.ts +1 -1
  462. package/dist/data/ai/SpecRuntimeEditor/update.d.ts.map +1 -1
  463. package/dist/data/ai/SpecRuntimeEditor/update.js +10 -9
  464. package/dist/data/ai/SpecRuntimeEditor/update.js.map +1 -1
  465. package/dist/data/ai/SpecRuntimeEditor.model.cjs +6 -1
  466. package/dist/data/ai/SpecRuntimeEditor.model.cjs.map +1 -1
  467. package/dist/data/ai/SpecRuntimeEditor.model.d.ts.map +1 -1
  468. package/dist/data/ai/SpecRuntimeEditor.model.js +8 -3
  469. package/dist/data/ai/SpecRuntimeEditor.model.js.map +1 -1
  470. package/dist/data/ai/SpecRuntimeEditor.sandbox-model.cjs +5 -13
  471. package/dist/data/ai/SpecRuntimeEditor.sandbox-model.cjs.map +1 -1
  472. package/dist/data/ai/SpecRuntimeEditor.sandbox-model.d.ts +0 -1
  473. package/dist/data/ai/SpecRuntimeEditor.sandbox-model.d.ts.map +1 -1
  474. package/dist/data/ai/SpecRuntimeEditor.sandbox-model.js +5 -13
  475. package/dist/data/ai/SpecRuntimeEditor.sandbox-model.js.map +1 -1
  476. package/dist/data/ai/chat-window-context.cjs +15 -1
  477. package/dist/data/ai/chat-window-context.cjs.map +1 -1
  478. package/dist/data/ai/chat-window-context.d.ts +1 -0
  479. package/dist/data/ai/chat-window-context.d.ts.map +1 -1
  480. package/dist/data/ai/chat-window-context.js +15 -1
  481. package/dist/data/ai/chat-window-context.js.map +1 -1
  482. package/dist/data/ai/index.d.ts +9 -4
  483. package/dist/data/ai/index.d.ts.map +1 -1
  484. package/dist/data/ai/runtime-profile.cjs +1 -71
  485. package/dist/data/ai/runtime-profile.cjs.map +1 -1
  486. package/dist/data/ai/runtime-profile.d.ts +12 -11
  487. package/dist/data/ai/runtime-profile.d.ts.map +1 -1
  488. package/dist/data/ai/runtime-profile.js +1 -71
  489. package/dist/data/ai/runtime-profile.js.map +1 -1
  490. package/dist/data/ai/runtime-profiles/OrderedPresetSelect.cjs +2 -2
  491. package/dist/data/ai/runtime-profiles/OrderedPresetSelect.cjs.map +1 -1
  492. package/dist/data/ai/runtime-profiles/OrderedPresetSelect.js +2 -2
  493. package/dist/data/ai/runtime-profiles/OrderedPresetSelect.js.map +1 -1
  494. package/dist/data/ai/runtime-profiles/PresetSpecEditor.cjs +0 -8
  495. package/dist/data/ai/runtime-profiles/PresetSpecEditor.cjs.map +1 -1
  496. package/dist/data/ai/runtime-profiles/PresetSpecEditor.d.ts.map +1 -1
  497. package/dist/data/ai/runtime-profiles/PresetSpecEditor.js +0 -8
  498. package/dist/data/ai/runtime-profiles/PresetSpecEditor.js.map +1 -1
  499. package/dist/data/ai/runtime-profiles/PresetWorkspace.cjs +12 -3
  500. package/dist/data/ai/runtime-profiles/PresetWorkspace.cjs.map +1 -1
  501. package/dist/data/ai/runtime-profiles/PresetWorkspace.d.ts +3 -2
  502. package/dist/data/ai/runtime-profiles/PresetWorkspace.d.ts.map +1 -1
  503. package/dist/data/ai/runtime-profiles/PresetWorkspace.js +12 -3
  504. package/dist/data/ai/runtime-profiles/PresetWorkspace.js.map +1 -1
  505. package/dist/data/ai/runtime-profiles/ProfilePresetChips.cjs +59 -0
  506. package/dist/data/ai/runtime-profiles/ProfilePresetChips.cjs.map +1 -0
  507. package/dist/data/ai/runtime-profiles/ProfilePresetChips.d.ts +7 -0
  508. package/dist/data/ai/runtime-profiles/ProfilePresetChips.d.ts.map +1 -0
  509. package/dist/data/ai/runtime-profiles/ProfilePresetChips.js +59 -0
  510. package/dist/data/ai/runtime-profiles/ProfilePresetChips.js.map +1 -0
  511. package/dist/data/ai/runtime-profiles/ResolutionInspector.cjs.map +1 -1
  512. package/dist/data/ai/runtime-profiles/ResolutionInspector.d.ts +2 -2
  513. package/dist/data/ai/runtime-profiles/ResolutionInspector.d.ts.map +1 -1
  514. package/dist/data/ai/runtime-profiles/ResolutionInspector.js.map +1 -1
  515. package/dist/data/ai/runtime-profiles/RuntimeProfilePicker.cjs +136 -150
  516. package/dist/data/ai/runtime-profiles/RuntimeProfilePicker.cjs.map +1 -1
  517. package/dist/data/ai/runtime-profiles/RuntimeProfilePicker.d.ts +2 -5
  518. package/dist/data/ai/runtime-profiles/RuntimeProfilePicker.d.ts.map +1 -1
  519. package/dist/data/ai/runtime-profiles/RuntimeProfilePicker.js +137 -151
  520. package/dist/data/ai/runtime-profiles/RuntimeProfilePicker.js.map +1 -1
  521. package/dist/data/ai/runtime-profiles/RuntimeProfilePicker.model.cjs +0 -15
  522. package/dist/data/ai/runtime-profiles/RuntimeProfilePicker.model.cjs.map +1 -1
  523. package/dist/data/ai/runtime-profiles/RuntimeProfilePicker.model.js +1 -16
  524. package/dist/data/ai/runtime-profiles/RuntimeProfilePicker.model.js.map +1 -1
  525. package/dist/data/ai/runtime-profiles/RuntimeProfilesWorkspace.cjs +8 -62
  526. package/dist/data/ai/runtime-profiles/RuntimeProfilesWorkspace.cjs.map +1 -1
  527. package/dist/data/ai/runtime-profiles/RuntimeProfilesWorkspace.d.ts +1 -1
  528. package/dist/data/ai/runtime-profiles/RuntimeProfilesWorkspace.d.ts.map +1 -1
  529. package/dist/data/ai/runtime-profiles/RuntimeProfilesWorkspace.js +10 -64
  530. package/dist/data/ai/runtime-profiles/RuntimeProfilesWorkspace.js.map +1 -1
  531. package/dist/data/ai/runtime-profiles/index.d.ts +1 -1
  532. package/dist/data/ai/runtime-profiles/index.d.ts.map +1 -1
  533. package/dist/data/ai/runtime-profiles/types.d.ts +4 -2
  534. package/dist/data/ai/runtime-profiles/types.d.ts.map +1 -1
  535. package/dist/data/ai/runtime-profiles/use-resolution.cjs +33 -0
  536. package/dist/data/ai/runtime-profiles/use-resolution.cjs.map +1 -1
  537. package/dist/data/ai/runtime-profiles/use-resolution.d.ts +1 -0
  538. package/dist/data/ai/runtime-profiles/use-resolution.d.ts.map +1 -1
  539. package/dist/data/ai/runtime-profiles/use-resolution.js +33 -0
  540. package/dist/data/ai/runtime-profiles/use-resolution.js.map +1 -1
  541. package/dist/data/cells/TagList.cjs +5 -3
  542. package/dist/data/cells/TagList.cjs.map +1 -1
  543. package/dist/data/cells/TagList.d.ts.map +1 -1
  544. package/dist/data/cells/TagList.js +5 -3
  545. package/dist/data/cells/TagList.js.map +1 -1
  546. package/dist/data/chat/Chat.runtime.cjs +4 -6
  547. package/dist/data/chat/Chat.runtime.cjs.map +1 -1
  548. package/dist/data/chat/Chat.runtime.d.ts.map +1 -1
  549. package/dist/data/chat/Chat.runtime.js +4 -6
  550. package/dist/data/chat/Chat.runtime.js.map +1 -1
  551. package/dist/data/chat/ContextMeter.bar.cjs +150 -0
  552. package/dist/data/chat/ContextMeter.bar.cjs.map +1 -0
  553. package/dist/data/chat/ContextMeter.bar.d.ts +16 -0
  554. package/dist/data/chat/ContextMeter.bar.d.ts.map +1 -0
  555. package/dist/data/chat/ContextMeter.bar.js +150 -0
  556. package/dist/data/chat/ContextMeter.bar.js.map +1 -0
  557. package/dist/data/chat/ContextMeter.cjs +33 -58
  558. package/dist/data/chat/ContextMeter.cjs.map +1 -1
  559. package/dist/data/chat/ContextMeter.d.ts.map +1 -1
  560. package/dist/data/chat/ContextMeter.js +28 -53
  561. package/dist/data/chat/ContextMeter.js.map +1 -1
  562. package/dist/data/chat/ContextMeter.model.cjs +42 -0
  563. package/dist/data/chat/ContextMeter.model.cjs.map +1 -0
  564. package/dist/data/chat/ContextMeter.model.d.ts +2 -0
  565. package/dist/data/chat/ContextMeter.model.d.ts.map +1 -0
  566. package/dist/data/chat/ContextMeter.model.js +42 -0
  567. package/dist/data/chat/ContextMeter.model.js.map +1 -0
  568. package/dist/data/chat/ContextMeter.styles.cjs +21 -0
  569. package/dist/data/chat/ContextMeter.styles.cjs.map +1 -0
  570. package/dist/data/chat/ContextMeter.styles.d.ts +7 -0
  571. package/dist/data/chat/ContextMeter.styles.d.ts.map +1 -0
  572. package/dist/data/chat/ContextMeter.styles.js +21 -0
  573. package/dist/data/chat/ContextMeter.styles.js.map +1 -0
  574. package/dist/data/chat/Message.cjs +2 -29
  575. package/dist/data/chat/Message.cjs.map +1 -1
  576. package/dist/data/chat/Message.d.ts.map +1 -1
  577. package/dist/data/chat/Message.js +2 -29
  578. package/dist/data/chat/Message.js.map +1 -1
  579. package/dist/data/chat/MessageFilePart.cjs +36 -0
  580. package/dist/data/chat/MessageFilePart.cjs.map +1 -0
  581. package/dist/data/chat/MessageFilePart.d.ts +9 -0
  582. package/dist/data/chat/MessageFilePart.d.ts.map +1 -0
  583. package/dist/data/chat/MessageFilePart.js +36 -0
  584. package/dist/data/chat/MessageFilePart.js.map +1 -0
  585. package/dist/data/code-block-actions.cjs +4 -3
  586. package/dist/data/code-block-actions.cjs.map +1 -1
  587. package/dist/data/code-block-actions.d.ts +3 -1
  588. package/dist/data/code-block-actions.d.ts.map +1 -1
  589. package/dist/data/code-block-actions.js +4 -3
  590. package/dist/data/code-block-actions.js.map +1 -1
  591. package/dist/data/code-highlight.cjs +59 -9
  592. package/dist/data/code-highlight.cjs.map +1 -1
  593. package/dist/data/code-highlight.d.ts.map +1 -1
  594. package/dist/data/code-highlight.js +59 -9
  595. package/dist/data/code-highlight.js.map +1 -1
  596. package/dist/data/data-table-filter-values.cjs +68 -8
  597. package/dist/data/data-table-filter-values.cjs.map +1 -1
  598. package/dist/data/data-table-filter-values.d.ts +13 -4
  599. package/dist/data/data-table-filter-values.d.ts.map +1 -1
  600. package/dist/data/data-table-filter-values.js +68 -8
  601. package/dist/data/data-table-filter-values.js.map +1 -1
  602. package/dist/data/data-table-server-filters.cjs +52 -11
  603. package/dist/data/data-table-server-filters.cjs.map +1 -1
  604. package/dist/data/data-table-server-filters.d.ts.map +1 -1
  605. package/dist/data/data-table-server-filters.js +53 -12
  606. package/dist/data/data-table-server-filters.js.map +1 -1
  607. package/dist/data/data-table-utils.cjs +9 -0
  608. package/dist/data/data-table-utils.cjs.map +1 -1
  609. package/dist/data/data-table-utils.d.ts +2 -0
  610. package/dist/data/data-table-utils.d.ts.map +1 -1
  611. package/dist/data/data-table-utils.js +9 -0
  612. package/dist/data/data-table-utils.js.map +1 -1
  613. package/dist/data/dataTableMenuPosition.cjs +64 -0
  614. package/dist/data/dataTableMenuPosition.cjs.map +1 -0
  615. package/dist/data/dataTableMenuPosition.d.ts +32 -0
  616. package/dist/data/dataTableMenuPosition.d.ts.map +1 -0
  617. package/dist/data/dataTableMenuPosition.js +64 -0
  618. package/dist/data/dataTableMenuPosition.js.map +1 -0
  619. package/dist/data/diagnostics/FrameSourceWindow.cjs +7 -4
  620. package/dist/data/diagnostics/FrameSourceWindow.cjs.map +1 -1
  621. package/dist/data/diagnostics/FrameSourceWindow.d.ts +8 -1
  622. package/dist/data/diagnostics/FrameSourceWindow.d.ts.map +1 -1
  623. package/dist/data/diagnostics/FrameSourceWindow.js +7 -4
  624. package/dist/data/diagnostics/FrameSourceWindow.js.map +1 -1
  625. package/dist/data/diagnostics/FrameSourceWindow.utils.cjs.map +1 -1
  626. package/dist/data/diagnostics/FrameSourceWindow.utils.d.ts +3 -1
  627. package/dist/data/diagnostics/FrameSourceWindow.utils.d.ts.map +1 -1
  628. package/dist/data/diagnostics/FrameSourceWindow.utils.js.map +1 -1
  629. package/dist/data/diagnostics/RenderedStackTrace.cjs +19 -11
  630. package/dist/data/diagnostics/RenderedStackTrace.cjs.map +1 -1
  631. package/dist/data/diagnostics/RenderedStackTrace.d.ts +13 -2
  632. package/dist/data/diagnostics/RenderedStackTrace.d.ts.map +1 -1
  633. package/dist/data/diagnostics/RenderedStackTrace.js +19 -11
  634. package/dist/data/diagnostics/RenderedStackTrace.js.map +1 -1
  635. package/dist/data/diagnostics/StackFrameRow.cjs +20 -6
  636. package/dist/data/diagnostics/StackFrameRow.cjs.map +1 -1
  637. package/dist/data/diagnostics/StackFrameRow.d.ts +11 -1
  638. package/dist/data/diagnostics/StackFrameRow.d.ts.map +1 -1
  639. package/dist/data/diagnostics/StackFrameRow.js +20 -6
  640. package/dist/data/diagnostics/StackFrameRow.js.map +1 -1
  641. package/dist/data/graph-layout.cjs +128 -0
  642. package/dist/data/graph-layout.cjs.map +1 -0
  643. package/dist/data/graph-layout.d.ts +64 -0
  644. package/dist/data/graph-layout.d.ts.map +1 -0
  645. package/dist/data/graph-layout.js +128 -0
  646. package/dist/data/graph-layout.js.map +1 -0
  647. package/dist/data/runtime/RuntimeBar.cjs +61 -26
  648. package/dist/data/runtime/RuntimeBar.cjs.map +1 -1
  649. package/dist/data/runtime/RuntimeBar.context.cjs +8 -0
  650. package/dist/data/runtime/RuntimeBar.context.cjs.map +1 -0
  651. package/dist/data/runtime/RuntimeBar.context.d.ts +2 -0
  652. package/dist/data/runtime/RuntimeBar.context.d.ts.map +1 -0
  653. package/dist/data/runtime/RuntimeBar.context.js +8 -0
  654. package/dist/data/runtime/RuntimeBar.context.js.map +1 -0
  655. package/dist/data/runtime/RuntimeBar.d.ts +11 -1
  656. package/dist/data/runtime/RuntimeBar.d.ts.map +1 -1
  657. package/dist/data/runtime/RuntimeBar.js +62 -27
  658. package/dist/data/runtime/RuntimeBar.js.map +1 -1
  659. package/dist/data/runtime/RuntimeBar.limits.cjs +34 -0
  660. package/dist/data/runtime/RuntimeBar.limits.cjs.map +1 -0
  661. package/dist/data/runtime/RuntimeBar.limits.d.ts +14 -0
  662. package/dist/data/runtime/RuntimeBar.limits.d.ts.map +1 -0
  663. package/dist/data/runtime/RuntimeBar.limits.js +34 -0
  664. package/dist/data/runtime/RuntimeBar.limits.js.map +1 -0
  665. package/dist/data/runtime/RuntimeBarActions.cjs +74 -0
  666. package/dist/data/runtime/RuntimeBarActions.cjs.map +1 -0
  667. package/dist/data/runtime/RuntimeBarActions.d.ts +39 -0
  668. package/dist/data/runtime/RuntimeBarActions.d.ts.map +1 -0
  669. package/dist/data/runtime/RuntimeBarActions.js +74 -0
  670. package/dist/data/runtime/RuntimeBarActions.js.map +1 -0
  671. package/dist/data/runtime/RuntimeBarCombo.cjs +99 -49
  672. package/dist/data/runtime/RuntimeBarCombo.cjs.map +1 -1
  673. package/dist/data/runtime/RuntimeBarCombo.d.ts +8 -1
  674. package/dist/data/runtime/RuntimeBarCombo.d.ts.map +1 -1
  675. package/dist/data/runtime/RuntimeBarCombo.js +100 -50
  676. package/dist/data/runtime/RuntimeBarCombo.js.map +1 -1
  677. package/dist/data/runtime/RuntimeBarLimits.cjs +262 -0
  678. package/dist/data/runtime/RuntimeBarLimits.cjs.map +1 -0
  679. package/dist/data/runtime/RuntimeBarLimits.d.ts +17 -0
  680. package/dist/data/runtime/RuntimeBarLimits.d.ts.map +1 -0
  681. package/dist/data/runtime/RuntimeBarLimits.js +262 -0
  682. package/dist/data/runtime/RuntimeBarLimits.js.map +1 -0
  683. package/dist/data/runtime/RuntimeBarSegment.cjs +83 -0
  684. package/dist/data/runtime/RuntimeBarSegment.cjs.map +1 -0
  685. package/dist/data/runtime/RuntimeBarSegment.d.ts +22 -0
  686. package/dist/data/runtime/RuntimeBarSegment.d.ts.map +1 -0
  687. package/dist/data/runtime/RuntimeBarSegment.js +83 -0
  688. package/dist/data/runtime/RuntimeBarSegment.js.map +1 -0
  689. package/dist/data/runtime/RuntimeBarSegments.cjs +182 -187
  690. package/dist/data/runtime/RuntimeBarSegments.cjs.map +1 -1
  691. package/dist/data/runtime/RuntimeBarSegments.d.ts +10 -1
  692. package/dist/data/runtime/RuntimeBarSegments.d.ts.map +1 -1
  693. package/dist/data/runtime/RuntimeBarSegments.js +183 -188
  694. package/dist/data/runtime/RuntimeBarSegments.js.map +1 -1
  695. package/dist/data/runtime/model-capabilities.cjs +6 -5
  696. package/dist/data/runtime/model-capabilities.cjs.map +1 -1
  697. package/dist/data/runtime/model-capabilities.d.ts +9 -2
  698. package/dist/data/runtime/model-capabilities.d.ts.map +1 -1
  699. package/dist/data/runtime/model-capabilities.js +6 -5
  700. package/dist/data/runtime/model-capabilities.js.map +1 -1
  701. package/dist/data/runtime/runtime-mode.cjs +11 -1
  702. package/dist/data/runtime/runtime-mode.cjs.map +1 -1
  703. package/dist/data/runtime/runtime-mode.d.ts +3 -0
  704. package/dist/data/runtime/runtime-mode.d.ts.map +1 -1
  705. package/dist/data/runtime/runtime-mode.js +13 -2
  706. package/dist/data/runtime/runtime-mode.js.map +1 -1
  707. package/dist/data/runtime/unspecified.cjs +16 -0
  708. package/dist/data/runtime/unspecified.cjs.map +1 -0
  709. package/dist/data/runtime/unspecified.d.ts +7 -0
  710. package/dist/data/runtime/unspecified.d.ts.map +1 -0
  711. package/dist/data/runtime/unspecified.js +16 -0
  712. package/dist/data/runtime/unspecified.js.map +1 -0
  713. package/dist/data/task-copy.cjs +19 -2
  714. package/dist/data/task-copy.cjs.map +1 -1
  715. package/dist/data/task-copy.d.ts.map +1 -1
  716. package/dist/data/task-copy.js +19 -2
  717. package/dist/data/task-copy.js.map +1 -1
  718. package/dist/data/version-info.cjs +3 -3
  719. package/dist/data/version-info.js +3 -3
  720. package/dist/data.cjs +695 -0
  721. package/dist/data.cjs.map +1 -1
  722. package/dist/data.d.ts +4 -2
  723. package/dist/data.d.ts.map +1 -1
  724. package/dist/data.js +696 -1
  725. package/dist/data.js.map +1 -1
  726. package/dist/expressions/playground/ExpressionPlayground.cjs +44 -16
  727. package/dist/expressions/playground/ExpressionPlayground.cjs.map +1 -1
  728. package/dist/expressions/playground/ExpressionPlayground.d.ts +23 -2
  729. package/dist/expressions/playground/ExpressionPlayground.d.ts.map +1 -1
  730. package/dist/expressions/playground/ExpressionPlayground.js +44 -16
  731. package/dist/expressions/playground/ExpressionPlayground.js.map +1 -1
  732. package/dist/expressions/playground/RunControls.cjs +8 -6
  733. package/dist/expressions/playground/RunControls.cjs.map +1 -1
  734. package/dist/expressions/playground/RunControls.d.ts +3 -1
  735. package/dist/expressions/playground/RunControls.d.ts.map +1 -1
  736. package/dist/expressions/playground/RunControls.js +8 -6
  737. package/dist/expressions/playground/RunControls.js.map +1 -1
  738. package/dist/expressions/playground/api.cjs.map +1 -1
  739. package/dist/expressions/playground/api.d.ts +24 -0
  740. package/dist/expressions/playground/api.d.ts.map +1 -1
  741. package/dist/expressions/playground/api.js.map +1 -1
  742. package/dist/expressions/playground/panels/ExpectationStrip.cjs +62 -0
  743. package/dist/expressions/playground/panels/ExpectationStrip.cjs.map +1 -0
  744. package/dist/expressions/playground/panels/ExpectationStrip.d.ts +18 -0
  745. package/dist/expressions/playground/panels/ExpectationStrip.d.ts.map +1 -0
  746. package/dist/expressions/playground/panels/ExpectationStrip.js +62 -0
  747. package/dist/expressions/playground/panels/ExpectationStrip.js.map +1 -0
  748. package/dist/expressions/playground/panels/GraphPanel.cjs +3 -2
  749. package/dist/expressions/playground/panels/GraphPanel.cjs.map +1 -1
  750. package/dist/expressions/playground/panels/GraphPanel.d.ts +2 -1
  751. package/dist/expressions/playground/panels/GraphPanel.d.ts.map +1 -1
  752. package/dist/expressions/playground/panels/GraphPanel.js +3 -2
  753. package/dist/expressions/playground/panels/GraphPanel.js.map +1 -1
  754. package/dist/expressions/playground/panels/ResultPanel.cjs +61 -36
  755. package/dist/expressions/playground/panels/ResultPanel.cjs.map +1 -1
  756. package/dist/expressions/playground/panels/ResultPanel.d.ts +18 -2
  757. package/dist/expressions/playground/panels/ResultPanel.d.ts.map +1 -1
  758. package/dist/expressions/playground/panels/ResultPanel.js +62 -37
  759. package/dist/expressions/playground/panels/ResultPanel.js.map +1 -1
  760. package/dist/expressions/playground/panels/ResultView.cjs +45 -0
  761. package/dist/expressions/playground/panels/ResultView.cjs.map +1 -0
  762. package/dist/expressions/playground/panels/ResultView.d.ts +17 -0
  763. package/dist/expressions/playground/panels/ResultView.d.ts.map +1 -0
  764. package/dist/expressions/playground/panels/ResultView.js +45 -0
  765. package/dist/expressions/playground/panels/ResultView.js.map +1 -0
  766. package/dist/expressions/playground/panels/SamplesPanel.cjs +165 -0
  767. package/dist/expressions/playground/panels/SamplesPanel.cjs.map +1 -0
  768. package/dist/expressions/playground/panels/SamplesPanel.d.ts +19 -0
  769. package/dist/expressions/playground/panels/SamplesPanel.d.ts.map +1 -0
  770. package/dist/expressions/playground/panels/SamplesPanel.js +165 -0
  771. package/dist/expressions/playground/panels/SamplesPanel.js.map +1 -0
  772. package/dist/expressions/playground/sampleOutcome.cjs +29 -0
  773. package/dist/expressions/playground/sampleOutcome.cjs.map +1 -0
  774. package/dist/expressions/playground/sampleOutcome.d.ts +20 -0
  775. package/dist/expressions/playground/sampleOutcome.d.ts.map +1 -0
  776. package/dist/expressions/playground/sampleOutcome.js +29 -0
  777. package/dist/expressions/playground/sampleOutcome.js.map +1 -0
  778. package/dist/expressions/playground/useEvaluator.cjs +39 -18
  779. package/dist/expressions/playground/useEvaluator.cjs.map +1 -1
  780. package/dist/expressions/playground/useEvaluator.d.ts +9 -2
  781. package/dist/expressions/playground/useEvaluator.d.ts.map +1 -1
  782. package/dist/expressions/playground/useEvaluator.js +39 -18
  783. package/dist/expressions/playground/useEvaluator.js.map +1 -1
  784. package/dist/expressions/playground/useSampleRuns.cjs +73 -0
  785. package/dist/expressions/playground/useSampleRuns.cjs.map +1 -0
  786. package/dist/expressions/playground/useSampleRuns.d.ts +34 -0
  787. package/dist/expressions/playground/useSampleRuns.d.ts.map +1 -0
  788. package/dist/expressions/playground/useSampleRuns.js +73 -0
  789. package/dist/expressions/playground/useSampleRuns.js.map +1 -0
  790. package/dist/expressions/playground.cjs +6 -0
  791. package/dist/expressions/playground.cjs.map +1 -1
  792. package/dist/expressions/playground.d.ts +6 -2
  793. package/dist/expressions/playground.d.ts.map +1 -1
  794. package/dist/expressions/playground.js +7 -1
  795. package/dist/expressions/playground.js.map +1 -1
  796. package/dist/hooks/theme-provider.cjs +5 -7
  797. package/dist/hooks/theme-provider.cjs.map +1 -1
  798. package/dist/hooks/theme-provider.d.ts.map +1 -1
  799. package/dist/hooks/theme-provider.js +6 -8
  800. package/dist/hooks/theme-provider.js.map +1 -1
  801. package/dist/hooks/use-container-width.cjs +31 -0
  802. package/dist/hooks/use-container-width.cjs.map +1 -0
  803. package/dist/hooks/use-container-width.d.ts +18 -0
  804. package/dist/hooks/use-container-width.d.ts.map +1 -0
  805. package/dist/hooks/use-container-width.js +31 -0
  806. package/dist/hooks/use-container-width.js.map +1 -0
  807. package/dist/hooks/use-log-tail.cjs +49 -66
  808. package/dist/hooks/use-log-tail.cjs.map +1 -1
  809. package/dist/hooks/use-log-tail.d.ts +38 -10
  810. package/dist/hooks/use-log-tail.d.ts.map +1 -1
  811. package/dist/hooks/use-log-tail.js +49 -66
  812. package/dist/hooks/use-log-tail.js.map +1 -1
  813. package/dist/hooks/use-media-query.cjs +41 -0
  814. package/dist/hooks/use-media-query.cjs.map +1 -0
  815. package/dist/hooks/use-media-query.d.ts +33 -0
  816. package/dist/hooks/use-media-query.d.ts.map +1 -0
  817. package/dist/hooks/use-media-query.js +41 -0
  818. package/dist/hooks/use-media-query.js.map +1 -0
  819. package/dist/hooks/use-task-run.cjs +8 -4
  820. package/dist/hooks/use-task-run.cjs.map +1 -1
  821. package/dist/hooks/use-task-run.d.ts.map +1 -1
  822. package/dist/hooks/use-task-run.js +8 -4
  823. package/dist/hooks/use-task-run.js.map +1 -1
  824. package/dist/hooks/use-theme.cjs +11 -9
  825. package/dist/hooks/use-theme.cjs.map +1 -1
  826. package/dist/hooks/use-theme.d.ts +1 -0
  827. package/dist/hooks/use-theme.d.ts.map +1 -1
  828. package/dist/hooks/use-theme.js +11 -9
  829. package/dist/hooks/use-theme.js.map +1 -1
  830. package/dist/hooks.cjs +6 -1
  831. package/dist/hooks.cjs.map +1 -1
  832. package/dist/hooks.d.ts +3 -1
  833. package/dist/hooks.d.ts.map +1 -1
  834. package/dist/hooks.js +7 -2
  835. package/dist/hooks.js.map +1 -1
  836. package/dist/icons/components/UiAccessProtected.cjs +15 -0
  837. package/dist/icons/components/UiAccessProtected.cjs.map +1 -0
  838. package/dist/icons/components/UiAccessProtected.d.ts +15 -0
  839. package/dist/icons/components/UiAccessProtected.d.ts.map +1 -0
  840. package/dist/icons/components/UiAccessProtected.js +15 -0
  841. package/dist/icons/components/UiAccessProtected.js.map +1 -0
  842. package/dist/icons/components/UiAccessPublic.cjs +23 -0
  843. package/dist/icons/components/UiAccessPublic.cjs.map +1 -0
  844. package/dist/icons/components/UiAccessPublic.d.ts +15 -0
  845. package/dist/icons/components/UiAccessPublic.d.ts.map +1 -0
  846. package/dist/icons/components/UiAccessPublic.js +23 -0
  847. package/dist/icons/components/UiAccessPublic.js.map +1 -0
  848. package/dist/icons/components/UiAddChangeset.cjs +29 -0
  849. package/dist/icons/components/UiAddChangeset.cjs.map +1 -0
  850. package/dist/icons/components/UiAddChangeset.d.ts +15 -0
  851. package/dist/icons/components/UiAddChangeset.d.ts.map +1 -0
  852. package/dist/icons/components/UiAddChangeset.js +29 -0
  853. package/dist/icons/components/UiAddChangeset.js.map +1 -0
  854. package/dist/icons/components/UiAggregate.cjs +21 -0
  855. package/dist/icons/components/UiAggregate.cjs.map +1 -0
  856. package/dist/icons/components/UiAggregate.d.ts +15 -0
  857. package/dist/icons/components/UiAggregate.d.ts.map +1 -0
  858. package/dist/icons/components/UiAggregate.js +21 -0
  859. package/dist/icons/components/UiAggregate.js.map +1 -0
  860. package/dist/icons/components/UiAlias.cjs +25 -0
  861. package/dist/icons/components/UiAlias.cjs.map +1 -0
  862. package/dist/icons/components/UiAlias.d.ts +15 -0
  863. package/dist/icons/components/UiAlias.d.ts.map +1 -0
  864. package/dist/icons/components/UiAlias.js +25 -0
  865. package/dist/icons/components/UiAlias.js.map +1 -0
  866. package/dist/icons/components/UiAnnotation.cjs +21 -0
  867. package/dist/icons/components/UiAnnotation.cjs.map +1 -0
  868. package/dist/icons/components/UiAnnotation.d.ts +15 -0
  869. package/dist/icons/components/UiAnnotation.d.ts.map +1 -0
  870. package/dist/icons/components/UiAnnotation.js +21 -0
  871. package/dist/icons/components/UiAnnotation.js.map +1 -0
  872. package/dist/icons/components/UiAopAroundAdvice.cjs +15 -0
  873. package/dist/icons/components/UiAopAroundAdvice.cjs.map +1 -0
  874. package/dist/icons/components/UiAopAroundAdvice.d.ts +9 -0
  875. package/dist/icons/components/UiAopAroundAdvice.d.ts.map +1 -0
  876. package/dist/icons/components/UiAopAroundAdvice.js +15 -0
  877. package/dist/icons/components/UiAopAroundAdvice.js.map +1 -0
  878. package/dist/icons/components/UiAopBeforeAdvice.cjs +15 -0
  879. package/dist/icons/components/UiAopBeforeAdvice.cjs.map +1 -0
  880. package/dist/icons/components/UiAopBeforeAdvice.d.ts +9 -0
  881. package/dist/icons/components/UiAopBeforeAdvice.d.ts.map +1 -0
  882. package/dist/icons/components/UiAopBeforeAdvice.js +15 -0
  883. package/dist/icons/components/UiAopBeforeAdvice.js.map +1 -0
  884. package/dist/icons/components/UiAopPointcut.cjs +13 -0
  885. package/dist/icons/components/UiAopPointcut.cjs.map +1 -0
  886. package/dist/icons/components/UiAopPointcut.d.ts +9 -0
  887. package/dist/icons/components/UiAopPointcut.d.ts.map +1 -0
  888. package/dist/icons/components/UiAopPointcut.js +13 -0
  889. package/dist/icons/components/UiAopPointcut.js.map +1 -0
  890. package/dist/icons/components/UiArtifact.cjs +31 -0
  891. package/dist/icons/components/UiArtifact.cjs.map +1 -0
  892. package/dist/icons/components/UiArtifact.d.ts +15 -0
  893. package/dist/icons/components/UiArtifact.d.ts.map +1 -0
  894. package/dist/icons/components/UiArtifact.js +31 -0
  895. package/dist/icons/components/UiArtifact.js.map +1 -0
  896. package/dist/icons/components/UiAttachDebugger.cjs +21 -0
  897. package/dist/icons/components/UiAttachDebugger.cjs.map +1 -0
  898. package/dist/icons/components/UiAttachDebugger.d.ts +15 -0
  899. package/dist/icons/components/UiAttachDebugger.d.ts.map +1 -0
  900. package/dist/icons/components/UiAttachDebugger.js +21 -0
  901. package/dist/icons/components/UiAttachDebugger.js.map +1 -0
  902. package/dist/icons/components/UiAttachToProcess.cjs +25 -0
  903. package/dist/icons/components/UiAttachToProcess.cjs.map +1 -0
  904. package/dist/icons/components/UiAttachToProcess.d.ts +15 -0
  905. package/dist/icons/components/UiAttachToProcess.d.ts.map +1 -0
  906. package/dist/icons/components/UiAttachToProcess.js +25 -0
  907. package/dist/icons/components/UiAttachToProcess.js.map +1 -0
  908. package/dist/icons/components/UiAuditLog.cjs +14 -0
  909. package/dist/icons/components/UiAuditLog.cjs.map +1 -0
  910. package/dist/icons/components/UiAuditLog.d.ts +9 -0
  911. package/dist/icons/components/UiAuditLog.d.ts.map +1 -0
  912. package/dist/icons/components/UiAuditLog.js +14 -0
  913. package/dist/icons/components/UiAuditLog.js.map +1 -0
  914. package/dist/icons/components/UiBlueKey.cjs +15 -0
  915. package/dist/icons/components/UiBlueKey.cjs.map +1 -0
  916. package/dist/icons/components/UiBlueKey.d.ts +15 -0
  917. package/dist/icons/components/UiBlueKey.d.ts.map +1 -0
  918. package/dist/icons/components/UiBlueKey.js +15 -0
  919. package/dist/icons/components/UiBlueKey.js.map +1 -0
  920. package/dist/icons/components/UiBoolean.cjs +15 -0
  921. package/dist/icons/components/UiBoolean.cjs.map +1 -0
  922. package/dist/icons/components/UiBoolean.d.ts +9 -0
  923. package/dist/icons/components/UiBoolean.d.ts.map +1 -0
  924. package/dist/icons/components/UiBoolean.js +15 -0
  925. package/dist/icons/components/UiBoolean.js.map +1 -0
  926. package/dist/icons/components/UiBreakpoint.cjs +10 -0
  927. package/dist/icons/components/UiBreakpoint.cjs.map +1 -0
  928. package/dist/icons/components/UiBreakpoint.d.ts +9 -0
  929. package/dist/icons/components/UiBreakpoint.d.ts.map +1 -0
  930. package/dist/icons/components/UiBreakpoint.js +10 -0
  931. package/dist/icons/components/UiBreakpoint.js.map +1 -0
  932. package/dist/icons/components/UiBreakpoint1.cjs +21 -0
  933. package/dist/icons/components/UiBreakpoint1.cjs.map +1 -0
  934. package/dist/icons/components/UiBreakpoint1.d.ts +15 -0
  935. package/dist/icons/components/UiBreakpoint1.d.ts.map +1 -0
  936. package/dist/icons/components/UiBreakpoint1.js +21 -0
  937. package/dist/icons/components/UiBreakpoint1.js.map +1 -0
  938. package/dist/icons/components/UiBreakpoint2.cjs +15 -0
  939. package/dist/icons/components/UiBreakpoint2.cjs.map +1 -0
  940. package/dist/icons/components/UiBreakpoint2.d.ts +15 -0
  941. package/dist/icons/components/UiBreakpoint2.d.ts.map +1 -0
  942. package/dist/icons/components/UiBreakpoint2.js +15 -0
  943. package/dist/icons/components/UiBreakpoint2.js.map +1 -0
  944. package/dist/icons/components/UiBreakpoint3.cjs +15 -0
  945. package/dist/icons/components/UiBreakpoint3.cjs.map +1 -0
  946. package/dist/icons/components/UiBreakpoint3.d.ts +15 -0
  947. package/dist/icons/components/UiBreakpoint3.d.ts.map +1 -0
  948. package/dist/icons/components/UiBreakpoint3.js +15 -0
  949. package/dist/icons/components/UiBreakpoint3.js.map +1 -0
  950. package/dist/icons/components/UiBreakpoint4.cjs +23 -0
  951. package/dist/icons/components/UiBreakpoint4.cjs.map +1 -0
  952. package/dist/icons/components/UiBreakpoint4.d.ts +15 -0
  953. package/dist/icons/components/UiBreakpoint4.d.ts.map +1 -0
  954. package/dist/icons/components/UiBreakpoint4.js +23 -0
  955. package/dist/icons/components/UiBreakpoint4.js.map +1 -0
  956. package/dist/icons/components/UiBreakpointDisabled.cjs +10 -0
  957. package/dist/icons/components/UiBreakpointDisabled.cjs.map +1 -0
  958. package/dist/icons/components/UiBreakpointDisabled.d.ts +9 -0
  959. package/dist/icons/components/UiBreakpointDisabled.d.ts.map +1 -0
  960. package/dist/icons/components/UiBreakpointDisabled.js +10 -0
  961. package/dist/icons/components/UiBreakpointDisabled.js.map +1 -0
  962. package/dist/icons/components/UiBreakpointField.cjs +13 -0
  963. package/dist/icons/components/UiBreakpointField.cjs.map +1 -0
  964. package/dist/icons/components/UiBreakpointField.d.ts +9 -0
  965. package/dist/icons/components/UiBreakpointField.d.ts.map +1 -0
  966. package/dist/icons/components/UiBreakpointField.js +13 -0
  967. package/dist/icons/components/UiBreakpointField.js.map +1 -0
  968. package/dist/icons/components/UiBreakpointMethod.cjs +10 -0
  969. package/dist/icons/components/UiBreakpointMethod.cjs.map +1 -0
  970. package/dist/icons/components/UiBreakpointMethod.d.ts +9 -0
  971. package/dist/icons/components/UiBreakpointMethod.d.ts.map +1 -0
  972. package/dist/icons/components/UiBreakpointMethod.js +10 -0
  973. package/dist/icons/components/UiBreakpointMethod.js.map +1 -0
  974. package/dist/icons/components/UiCache.cjs +15 -0
  975. package/dist/icons/components/UiCache.cjs.map +1 -0
  976. package/dist/icons/components/UiCache.d.ts +9 -0
  977. package/dist/icons/components/UiCache.d.ts.map +1 -0
  978. package/dist/icons/components/UiCache.js +15 -0
  979. package/dist/icons/components/UiCache.js.map +1 -0
  980. package/dist/icons/components/UiCheckConstraint.cjs +25 -0
  981. package/dist/icons/components/UiCheckConstraint.cjs.map +1 -0
  982. package/dist/icons/components/UiCheckConstraint.d.ts +15 -0
  983. package/dist/icons/components/UiCheckConstraint.d.ts.map +1 -0
  984. package/dist/icons/components/UiCheckConstraint.js +25 -0
  985. package/dist/icons/components/UiCheckConstraint.js.map +1 -0
  986. package/dist/icons/components/UiClass1.cjs +33 -0
  987. package/dist/icons/components/UiClass1.cjs.map +1 -0
  988. package/dist/icons/components/UiClass1.d.ts +15 -0
  989. package/dist/icons/components/UiClass1.d.ts.map +1 -0
  990. package/dist/icons/components/UiClass1.js +33 -0
  991. package/dist/icons/components/UiClass1.js.map +1 -0
  992. package/dist/icons/components/UiClass2.cjs +21 -0
  993. package/dist/icons/components/UiClass2.cjs.map +1 -0
  994. package/dist/icons/components/UiClass2.d.ts +15 -0
  995. package/dist/icons/components/UiClass2.d.ts.map +1 -0
  996. package/dist/icons/components/UiClass2.js +21 -0
  997. package/dist/icons/components/UiClass2.js.map +1 -0
  998. package/dist/icons/components/UiClass3.cjs +21 -0
  999. package/dist/icons/components/UiClass3.cjs.map +1 -0
  1000. package/dist/icons/components/UiClass3.d.ts +15 -0
  1001. package/dist/icons/components/UiClass3.d.ts.map +1 -0
  1002. package/dist/icons/components/UiClass3.js +21 -0
  1003. package/dist/icons/components/UiClass3.js.map +1 -0
  1004. package/dist/icons/components/UiClass4.cjs +23 -0
  1005. package/dist/icons/components/UiClass4.cjs.map +1 -0
  1006. package/dist/icons/components/UiClass4.d.ts +15 -0
  1007. package/dist/icons/components/UiClass4.d.ts.map +1 -0
  1008. package/dist/icons/components/UiClass4.js +23 -0
  1009. package/dist/icons/components/UiClass4.js.map +1 -0
  1010. package/dist/icons/components/UiClass5.cjs +23 -0
  1011. package/dist/icons/components/UiClass5.cjs.map +1 -0
  1012. package/dist/icons/components/UiClass5.d.ts +15 -0
  1013. package/dist/icons/components/UiClass5.d.ts.map +1 -0
  1014. package/dist/icons/components/UiClass5.js +23 -0
  1015. package/dist/icons/components/UiClass5.js.map +1 -0
  1016. package/dist/icons/components/UiClass6.cjs +21 -0
  1017. package/dist/icons/components/UiClass6.cjs.map +1 -0
  1018. package/dist/icons/components/UiClass6.d.ts +15 -0
  1019. package/dist/icons/components/UiClass6.d.ts.map +1 -0
  1020. package/dist/icons/components/UiClass6.js +21 -0
  1021. package/dist/icons/components/UiClass6.js.map +1 -0
  1022. package/dist/icons/components/UiClass7.cjs +23 -0
  1023. package/dist/icons/components/UiClass7.cjs.map +1 -0
  1024. package/dist/icons/components/UiClass7.d.ts +15 -0
  1025. package/dist/icons/components/UiClass7.d.ts.map +1 -0
  1026. package/dist/icons/components/UiClass7.js +23 -0
  1027. package/dist/icons/components/UiClass7.js.map +1 -0
  1028. package/dist/icons/components/UiClearCash.cjs +23 -0
  1029. package/dist/icons/components/UiClearCash.cjs.map +1 -0
  1030. package/dist/icons/components/UiClearCash.d.ts +15 -0
  1031. package/dist/icons/components/UiClearCash.d.ts.map +1 -0
  1032. package/dist/icons/components/UiClearCash.js +23 -0
  1033. package/dist/icons/components/UiClearCash.js.map +1 -0
  1034. package/dist/icons/components/UiCollection.cjs +27 -0
  1035. package/dist/icons/components/UiCollection.cjs.map +1 -0
  1036. package/dist/icons/components/UiCollection.d.ts +15 -0
  1037. package/dist/icons/components/UiCollection.d.ts.map +1 -0
  1038. package/dist/icons/components/UiCollection.js +27 -0
  1039. package/dist/icons/components/UiCollection.js.map +1 -0
  1040. package/dist/icons/components/UiCollectionType.cjs +27 -0
  1041. package/dist/icons/components/UiCollectionType.cjs.map +1 -0
  1042. package/dist/icons/components/UiCollectionType.d.ts +15 -0
  1043. package/dist/icons/components/UiCollectionType.d.ts.map +1 -0
  1044. package/dist/icons/components/UiCollectionType.js +27 -0
  1045. package/dist/icons/components/UiCollectionType.js.map +1 -0
  1046. package/dist/icons/components/UiColumn.cjs +21 -0
  1047. package/dist/icons/components/UiColumn.cjs.map +1 -0
  1048. package/dist/icons/components/UiColumn.d.ts +15 -0
  1049. package/dist/icons/components/UiColumn.d.ts.map +1 -0
  1050. package/dist/icons/components/UiColumn.js +21 -0
  1051. package/dist/icons/components/UiColumn.js.map +1 -0
  1052. package/dist/icons/components/UiColumn1.cjs +26 -0
  1053. package/dist/icons/components/UiColumn1.cjs.map +1 -0
  1054. package/dist/icons/components/UiColumn1.d.ts +15 -0
  1055. package/dist/icons/components/UiColumn1.d.ts.map +1 -0
  1056. package/dist/icons/components/UiColumn1.js +26 -0
  1057. package/dist/icons/components/UiColumn1.js.map +1 -0
  1058. package/dist/icons/components/UiColumn2.cjs +28 -0
  1059. package/dist/icons/components/UiColumn2.cjs.map +1 -0
  1060. package/dist/icons/components/UiColumn2.d.ts +15 -0
  1061. package/dist/icons/components/UiColumn2.d.ts.map +1 -0
  1062. package/dist/icons/components/UiColumn2.js +28 -0
  1063. package/dist/icons/components/UiColumn2.js.map +1 -0
  1064. package/dist/icons/components/UiColumn3.cjs +26 -0
  1065. package/dist/icons/components/UiColumn3.cjs.map +1 -0
  1066. package/dist/icons/components/UiColumn3.d.ts +15 -0
  1067. package/dist/icons/components/UiColumn3.d.ts.map +1 -0
  1068. package/dist/icons/components/UiColumn3.js +26 -0
  1069. package/dist/icons/components/UiColumn3.js.map +1 -0
  1070. package/dist/icons/components/UiColumn4.cjs +26 -0
  1071. package/dist/icons/components/UiColumn4.cjs.map +1 -0
  1072. package/dist/icons/components/UiColumn4.d.ts +15 -0
  1073. package/dist/icons/components/UiColumn4.d.ts.map +1 -0
  1074. package/dist/icons/components/UiColumn4.js +26 -0
  1075. package/dist/icons/components/UiColumn4.js.map +1 -0
  1076. package/dist/icons/components/UiColumn5.cjs +21 -0
  1077. package/dist/icons/components/UiColumn5.cjs.map +1 -0
  1078. package/dist/icons/components/UiColumn5.d.ts +15 -0
  1079. package/dist/icons/components/UiColumn5.d.ts.map +1 -0
  1080. package/dist/icons/components/UiColumn5.js +21 -0
  1081. package/dist/icons/components/UiColumn5.js.map +1 -0
  1082. package/dist/icons/components/UiConfigMap.cjs +31 -0
  1083. package/dist/icons/components/UiConfigMap.cjs.map +1 -0
  1084. package/dist/icons/components/UiConfigMap.d.ts +15 -0
  1085. package/dist/icons/components/UiConfigMap.d.ts.map +1 -0
  1086. package/dist/icons/components/UiConfigMap.js +31 -0
  1087. package/dist/icons/components/UiConfigMap.js.map +1 -0
  1088. package/dist/icons/components/UiConnector.cjs +15 -0
  1089. package/dist/icons/components/UiConnector.cjs.map +1 -0
  1090. package/dist/icons/components/UiConnector.d.ts +15 -0
  1091. package/dist/icons/components/UiConnector.d.ts.map +1 -0
  1092. package/dist/icons/components/UiConnector.js +15 -0
  1093. package/dist/icons/components/UiConnector.js.map +1 -0
  1094. package/dist/icons/components/UiConstant1.cjs +23 -0
  1095. package/dist/icons/components/UiConstant1.cjs.map +1 -0
  1096. package/dist/icons/components/UiConstant1.d.ts +15 -0
  1097. package/dist/icons/components/UiConstant1.d.ts.map +1 -0
  1098. package/dist/icons/components/UiConstant1.js +23 -0
  1099. package/dist/icons/components/UiConstant1.js.map +1 -0
  1100. package/dist/icons/components/UiConverter.cjs +23 -0
  1101. package/dist/icons/components/UiConverter.cjs.map +1 -0
  1102. package/dist/icons/components/UiConverter.d.ts +15 -0
  1103. package/dist/icons/components/UiConverter.d.ts.map +1 -0
  1104. package/dist/icons/components/UiConverter.js +23 -0
  1105. package/dist/icons/components/UiConverter.js.map +1 -0
  1106. package/dist/icons/components/UiConverter1.cjs +23 -0
  1107. package/dist/icons/components/UiConverter1.cjs.map +1 -0
  1108. package/dist/icons/components/UiConverter1.d.ts +15 -0
  1109. package/dist/icons/components/UiConverter1.d.ts.map +1 -0
  1110. package/dist/icons/components/UiConverter1.js +23 -0
  1111. package/dist/icons/components/UiConverter1.js.map +1 -0
  1112. package/dist/icons/components/UiCreateConstraint.cjs +23 -0
  1113. package/dist/icons/components/UiCreateConstraint.cjs.map +1 -0
  1114. package/dist/icons/components/UiCreateConstraint.d.ts +15 -0
  1115. package/dist/icons/components/UiCreateConstraint.d.ts.map +1 -0
  1116. package/dist/icons/components/UiCreateConstraint.js +23 -0
  1117. package/dist/icons/components/UiCreateConstraint.js.map +1 -0
  1118. package/dist/icons/components/UiCustomResource.cjs +21 -0
  1119. package/dist/icons/components/UiCustomResource.cjs.map +1 -0
  1120. package/dist/icons/components/UiCustomResource.d.ts +15 -0
  1121. package/dist/icons/components/UiCustomResource.d.ts.map +1 -0
  1122. package/dist/icons/components/UiCustomResource.js +21 -0
  1123. package/dist/icons/components/UiCustomResource.js.map +1 -0
  1124. package/dist/icons/components/UiDataSchema.cjs +23 -0
  1125. package/dist/icons/components/UiDataSchema.cjs.map +1 -0
  1126. package/dist/icons/components/UiDataSchema.d.ts +15 -0
  1127. package/dist/icons/components/UiDataSchema.d.ts.map +1 -0
  1128. package/dist/icons/components/UiDataSchema.js +23 -0
  1129. package/dist/icons/components/UiDataSchema.js.map +1 -0
  1130. package/dist/icons/components/UiDataShare.cjs +21 -0
  1131. package/dist/icons/components/UiDataShare.cjs.map +1 -0
  1132. package/dist/icons/components/UiDataShare.d.ts +15 -0
  1133. package/dist/icons/components/UiDataShare.d.ts.map +1 -0
  1134. package/dist/icons/components/UiDataShare.js +21 -0
  1135. package/dist/icons/components/UiDataShare.js.map +1 -0
  1136. package/dist/icons/components/UiDatabaseEventStream.cjs +17 -0
  1137. package/dist/icons/components/UiDatabaseEventStream.cjs.map +1 -0
  1138. package/dist/icons/components/UiDatabaseEventStream.d.ts +9 -0
  1139. package/dist/icons/components/UiDatabaseEventStream.d.ts.map +1 -0
  1140. package/dist/icons/components/UiDatabaseEventStream.js +17 -0
  1141. package/dist/icons/components/UiDatabaseEventStream.js.map +1 -0
  1142. package/dist/icons/components/UiDatabaseLink.cjs +21 -0
  1143. package/dist/icons/components/UiDatabaseLink.cjs.map +1 -0
  1144. package/dist/icons/components/UiDatabaseLink.d.ts +15 -0
  1145. package/dist/icons/components/UiDatabaseLink.d.ts.map +1 -0
  1146. package/dist/icons/components/UiDatabaseLink.js +21 -0
  1147. package/dist/icons/components/UiDatabaseLink.js.map +1 -0
  1148. package/dist/icons/components/UiDebugDisabled.cjs +23 -0
  1149. package/dist/icons/components/UiDebugDisabled.cjs.map +1 -0
  1150. package/dist/icons/components/UiDebugDisabled.d.ts +15 -0
  1151. package/dist/icons/components/UiDebugDisabled.d.ts.map +1 -0
  1152. package/dist/icons/components/UiDebugDisabled.js +23 -0
  1153. package/dist/icons/components/UiDebugDisabled.js.map +1 -0
  1154. package/dist/icons/components/UiDebugSelection.cjs +31 -0
  1155. package/dist/icons/components/UiDebugSelection.cjs.map +1 -0
  1156. package/dist/icons/components/UiDebugSelection.d.ts +15 -0
  1157. package/dist/icons/components/UiDebugSelection.d.ts.map +1 -0
  1158. package/dist/icons/components/UiDebugSelection.js +31 -0
  1159. package/dist/icons/components/UiDebugSelection.js.map +1 -0
  1160. package/dist/icons/components/UiDeploy.cjs +23 -0
  1161. package/dist/icons/components/UiDeploy.cjs.map +1 -0
  1162. package/dist/icons/components/UiDeploy.d.ts +15 -0
  1163. package/dist/icons/components/UiDeploy.d.ts.map +1 -0
  1164. package/dist/icons/components/UiDeploy.js +23 -0
  1165. package/dist/icons/components/UiDeploy.js.map +1 -0
  1166. package/dist/icons/components/UiDetach.cjs +21 -0
  1167. package/dist/icons/components/UiDetach.cjs.map +1 -0
  1168. package/dist/icons/components/UiDetach.d.ts +15 -0
  1169. package/dist/icons/components/UiDetach.d.ts.map +1 -0
  1170. package/dist/icons/components/UiDetach.js +21 -0
  1171. package/dist/icons/components/UiDetach.js.map +1 -0
  1172. package/dist/icons/components/UiDiagramDiff.cjs +21 -0
  1173. package/dist/icons/components/UiDiagramDiff.cjs.map +1 -0
  1174. package/dist/icons/components/UiDiagramDiff.d.ts +15 -0
  1175. package/dist/icons/components/UiDiagramDiff.d.ts.map +1 -0
  1176. package/dist/icons/components/UiDiagramDiff.js +21 -0
  1177. package/dist/icons/components/UiDiagramDiff.js.map +1 -0
  1178. package/dist/icons/components/UiDumpThreads.cjs +23 -0
  1179. package/dist/icons/components/UiDumpThreads.cjs.map +1 -0
  1180. package/dist/icons/components/UiDumpThreads.d.ts +15 -0
  1181. package/dist/icons/components/UiDumpThreads.d.ts.map +1 -0
  1182. package/dist/icons/components/UiDumpThreads.js +23 -0
  1183. package/dist/icons/components/UiDumpThreads.js.map +1 -0
  1184. package/dist/icons/components/UiEditMode.cjs +41 -0
  1185. package/dist/icons/components/UiEditMode.cjs.map +1 -0
  1186. package/dist/icons/components/UiEditMode.d.ts +15 -0
  1187. package/dist/icons/components/UiEditMode.d.ts.map +1 -0
  1188. package/dist/icons/components/UiEditMode.js +41 -0
  1189. package/dist/icons/components/UiEditMode.js.map +1 -0
  1190. package/dist/icons/components/UiEvaluateExpression.cjs +33 -0
  1191. package/dist/icons/components/UiEvaluateExpression.cjs.map +1 -0
  1192. package/dist/icons/components/UiEvaluateExpression.d.ts +15 -0
  1193. package/dist/icons/components/UiEvaluateExpression.d.ts.map +1 -0
  1194. package/dist/icons/components/UiEvaluateExpression.js +33 -0
  1195. package/dist/icons/components/UiEvaluateExpression.js.map +1 -0
  1196. package/dist/icons/components/UiException.cjs +21 -0
  1197. package/dist/icons/components/UiException.cjs.map +1 -0
  1198. package/dist/icons/components/UiException.d.ts +15 -0
  1199. package/dist/icons/components/UiException.d.ts.map +1 -0
  1200. package/dist/icons/components/UiException.js +21 -0
  1201. package/dist/icons/components/UiException.js.map +1 -0
  1202. package/dist/icons/components/UiExceptionAnalyzerImportant.cjs +21 -0
  1203. package/dist/icons/components/UiExceptionAnalyzerImportant.cjs.map +1 -0
  1204. package/dist/icons/components/UiExceptionAnalyzerImportant.d.ts +15 -0
  1205. package/dist/icons/components/UiExceptionAnalyzerImportant.d.ts.map +1 -0
  1206. package/dist/icons/components/UiExceptionAnalyzerImportant.js +21 -0
  1207. package/dist/icons/components/UiExceptionAnalyzerImportant.js.map +1 -0
  1208. package/dist/icons/components/UiExcludedGenerated.cjs +35 -0
  1209. package/dist/icons/components/UiExcludedGenerated.cjs.map +1 -0
  1210. package/dist/icons/components/UiExcludedGenerated.d.ts +15 -0
  1211. package/dist/icons/components/UiExcludedGenerated.d.ts.map +1 -0
  1212. package/dist/icons/components/UiExcludedGenerated.js +35 -0
  1213. package/dist/icons/components/UiExcludedGenerated.js.map +1 -0
  1214. package/dist/icons/components/UiExtension.cjs +15 -0
  1215. package/dist/icons/components/UiExtension.cjs.map +1 -0
  1216. package/dist/icons/components/UiExtension.d.ts +15 -0
  1217. package/dist/icons/components/UiExtension.d.ts.map +1 -0
  1218. package/dist/icons/components/UiExtension.js +15 -0
  1219. package/dist/icons/components/UiExtension.js.map +1 -0
  1220. package/dist/icons/components/UiFailedInProgress.cjs +29 -0
  1221. package/dist/icons/components/UiFailedInProgress.cjs.map +1 -0
  1222. package/dist/icons/components/UiFailedInProgress.d.ts +15 -0
  1223. package/dist/icons/components/UiFailedInProgress.d.ts.map +1 -0
  1224. package/dist/icons/components/UiFailedInProgress.js +29 -0
  1225. package/dist/icons/components/UiFailedInProgress.js.map +1 -0
  1226. package/dist/icons/components/UiField.cjs +1 -1
  1227. package/dist/icons/components/UiField.cjs.map +1 -1
  1228. package/dist/icons/components/UiField.js +1 -1
  1229. package/dist/icons/components/UiField.js.map +1 -1
  1230. package/dist/icons/components/UiField1.cjs +21 -0
  1231. package/dist/icons/components/UiField1.cjs.map +1 -0
  1232. package/dist/icons/components/UiField1.d.ts +15 -0
  1233. package/dist/icons/components/UiField1.d.ts.map +1 -0
  1234. package/dist/icons/components/UiField1.js +21 -0
  1235. package/dist/icons/components/UiField1.js.map +1 -0
  1236. package/dist/icons/components/UiField2.cjs +21 -0
  1237. package/dist/icons/components/UiField2.cjs.map +1 -0
  1238. package/dist/icons/components/UiField2.d.ts +15 -0
  1239. package/dist/icons/components/UiField2.d.ts.map +1 -0
  1240. package/dist/icons/components/UiField2.js +21 -0
  1241. package/dist/icons/components/UiField2.js.map +1 -0
  1242. package/dist/icons/components/UiField3.cjs +21 -0
  1243. package/dist/icons/components/UiField3.cjs.map +1 -0
  1244. package/dist/icons/components/UiField3.d.ts +15 -0
  1245. package/dist/icons/components/UiField3.d.ts.map +1 -0
  1246. package/dist/icons/components/UiField3.js +21 -0
  1247. package/dist/icons/components/UiField3.js.map +1 -0
  1248. package/dist/icons/components/UiField4.cjs +21 -0
  1249. package/dist/icons/components/UiField4.cjs.map +1 -0
  1250. package/dist/icons/components/UiField4.d.ts +15 -0
  1251. package/dist/icons/components/UiField4.d.ts.map +1 -0
  1252. package/dist/icons/components/UiField4.js +21 -0
  1253. package/dist/icons/components/UiField4.js.map +1 -0
  1254. package/dist/icons/components/UiField5.cjs +21 -0
  1255. package/dist/icons/components/UiField5.cjs.map +1 -0
  1256. package/dist/icons/components/UiField5.d.ts +15 -0
  1257. package/dist/icons/components/UiField5.d.ts.map +1 -0
  1258. package/dist/icons/components/UiField5.js +21 -0
  1259. package/dist/icons/components/UiField5.js.map +1 -0
  1260. package/dist/icons/components/UiField6.cjs +21 -0
  1261. package/dist/icons/components/UiField6.cjs.map +1 -0
  1262. package/dist/icons/components/UiField6.d.ts +15 -0
  1263. package/dist/icons/components/UiField6.d.ts.map +1 -0
  1264. package/dist/icons/components/UiField6.js +21 -0
  1265. package/dist/icons/components/UiField6.js.map +1 -0
  1266. package/dist/icons/components/UiFieldProtected.cjs +10 -0
  1267. package/dist/icons/components/UiFieldProtected.cjs.map +1 -0
  1268. package/dist/icons/components/UiFieldProtected.d.ts +9 -0
  1269. package/dist/icons/components/UiFieldProtected.d.ts.map +1 -0
  1270. package/dist/icons/components/UiFieldProtected.js +10 -0
  1271. package/dist/icons/components/UiFieldProtected.js.map +1 -0
  1272. package/dist/icons/components/UiFieldReadAccess.cjs +13 -0
  1273. package/dist/icons/components/UiFieldReadAccess.cjs.map +1 -0
  1274. package/dist/icons/components/UiFieldReadAccess.d.ts +9 -0
  1275. package/dist/icons/components/UiFieldReadAccess.d.ts.map +1 -0
  1276. package/dist/icons/components/UiFieldReadAccess.js +13 -0
  1277. package/dist/icons/components/UiFieldReadAccess.js.map +1 -0
  1278. package/dist/icons/components/UiFieldType.cjs +14 -0
  1279. package/dist/icons/components/UiFieldType.cjs.map +1 -0
  1280. package/dist/icons/components/UiFieldType.d.ts +9 -0
  1281. package/dist/icons/components/UiFieldType.d.ts.map +1 -0
  1282. package/dist/icons/components/UiFieldType.js +14 -0
  1283. package/dist/icons/components/UiFieldType.js.map +1 -0
  1284. package/dist/icons/components/UiFieldWriteAccess.cjs +13 -0
  1285. package/dist/icons/components/UiFieldWriteAccess.cjs.map +1 -0
  1286. package/dist/icons/components/UiFieldWriteAccess.d.ts +9 -0
  1287. package/dist/icons/components/UiFieldWriteAccess.d.ts.map +1 -0
  1288. package/dist/icons/components/UiFieldWriteAccess.js +13 -0
  1289. package/dist/icons/components/UiFieldWriteAccess.js.map +1 -0
  1290. package/dist/icons/components/UiFileFormat.cjs +23 -0
  1291. package/dist/icons/components/UiFileFormat.cjs.map +1 -0
  1292. package/dist/icons/components/UiFileFormat.d.ts +15 -0
  1293. package/dist/icons/components/UiFileFormat.d.ts.map +1 -0
  1294. package/dist/icons/components/UiFileFormat.js +23 -0
  1295. package/dist/icons/components/UiFileFormat.js.map +1 -0
  1296. package/dist/icons/components/UiForeignServer.cjs +21 -0
  1297. package/dist/icons/components/UiForeignServer.cjs.map +1 -0
  1298. package/dist/icons/components/UiForeignServer.d.ts +15 -0
  1299. package/dist/icons/components/UiForeignServer.d.ts.map +1 -0
  1300. package/dist/icons/components/UiForeignServer.js +21 -0
  1301. package/dist/icons/components/UiForeignServer.js.map +1 -0
  1302. package/dist/icons/components/UiFreemarker.cjs +15 -0
  1303. package/dist/icons/components/UiFreemarker.cjs.map +1 -0
  1304. package/dist/icons/components/UiFreemarker.d.ts +15 -0
  1305. package/dist/icons/components/UiFreemarker.d.ts.map +1 -0
  1306. package/dist/icons/components/UiFreemarker.js +15 -0
  1307. package/dist/icons/components/UiFreemarker.js.map +1 -0
  1308. package/dist/icons/components/UiFunction1.cjs +25 -0
  1309. package/dist/icons/components/UiFunction1.cjs.map +1 -0
  1310. package/dist/icons/components/UiFunction1.d.ts +15 -0
  1311. package/dist/icons/components/UiFunction1.d.ts.map +1 -0
  1312. package/dist/icons/components/UiFunction1.js +25 -0
  1313. package/dist/icons/components/UiFunction1.js.map +1 -0
  1314. package/dist/icons/components/UiFunction2.cjs +27 -0
  1315. package/dist/icons/components/UiFunction2.cjs.map +1 -0
  1316. package/dist/icons/components/UiFunction2.d.ts +15 -0
  1317. package/dist/icons/components/UiFunction2.d.ts.map +1 -0
  1318. package/dist/icons/components/UiFunction2.js +27 -0
  1319. package/dist/icons/components/UiFunction2.js.map +1 -0
  1320. package/dist/icons/components/UiFunction3.cjs +31 -0
  1321. package/dist/icons/components/UiFunction3.cjs.map +1 -0
  1322. package/dist/icons/components/UiFunction3.d.ts +15 -0
  1323. package/dist/icons/components/UiFunction3.d.ts.map +1 -0
  1324. package/dist/icons/components/UiFunction3.js +31 -0
  1325. package/dist/icons/components/UiFunction3.js.map +1 -0
  1326. package/dist/icons/components/UiFunction4.cjs +21 -0
  1327. package/dist/icons/components/UiFunction4.cjs.map +1 -0
  1328. package/dist/icons/components/UiFunction4.d.ts +15 -0
  1329. package/dist/icons/components/UiFunction4.d.ts.map +1 -0
  1330. package/dist/icons/components/UiFunction4.js +21 -0
  1331. package/dist/icons/components/UiFunction4.js.map +1 -0
  1332. package/dist/icons/components/UiGreyKey.cjs +15 -0
  1333. package/dist/icons/components/UiGreyKey.cjs.map +1 -0
  1334. package/dist/icons/components/UiGreyKey.d.ts +15 -0
  1335. package/dist/icons/components/UiGreyKey.d.ts.map +1 -0
  1336. package/dist/icons/components/UiGreyKey.js +15 -0
  1337. package/dist/icons/components/UiGreyKey.js.map +1 -0
  1338. package/dist/icons/components/UiGroupByModuleGroup.cjs +29 -0
  1339. package/dist/icons/components/UiGroupByModuleGroup.cjs.map +1 -0
  1340. package/dist/icons/components/UiGroupByModuleGroup.d.ts +15 -0
  1341. package/dist/icons/components/UiGroupByModuleGroup.d.ts.map +1 -0
  1342. package/dist/icons/components/UiGroupByModuleGroup.js +29 -0
  1343. package/dist/icons/components/UiGroupByModuleGroup.js.map +1 -0
  1344. package/dist/icons/components/UiGroupByPackage.cjs +23 -0
  1345. package/dist/icons/components/UiGroupByPackage.cjs.map +1 -0
  1346. package/dist/icons/components/UiGroupByPackage.d.ts +15 -0
  1347. package/dist/icons/components/UiGroupByPackage.d.ts.map +1 -0
  1348. package/dist/icons/components/UiGroupByPackage.js +23 -0
  1349. package/dist/icons/components/UiGroupByPackage.js.map +1 -0
  1350. package/dist/icons/components/UiGroupByTestProduction.cjs +25 -0
  1351. package/dist/icons/components/UiGroupByTestProduction.cjs.map +1 -0
  1352. package/dist/icons/components/UiGroupByTestProduction.d.ts +15 -0
  1353. package/dist/icons/components/UiGroupByTestProduction.d.ts.map +1 -0
  1354. package/dist/icons/components/UiGroupByTestProduction.js +25 -0
  1355. package/dist/icons/components/UiGroupByTestProduction.js.map +1 -0
  1356. package/dist/icons/components/UiHibernate.cjs +25 -0
  1357. package/dist/icons/components/UiHibernate.cjs.map +1 -0
  1358. package/dist/icons/components/UiHibernate.d.ts +15 -0
  1359. package/dist/icons/components/UiHibernate.d.ts.map +1 -0
  1360. package/dist/icons/components/UiHibernate.js +25 -0
  1361. package/dist/icons/components/UiHibernate.js.map +1 -0
  1362. package/dist/icons/components/UiHibernateEvent.cjs +21 -0
  1363. package/dist/icons/components/UiHibernateEvent.cjs.map +1 -0
  1364. package/dist/icons/components/UiHibernateEvent.d.ts +15 -0
  1365. package/dist/icons/components/UiHibernateEvent.d.ts.map +1 -0
  1366. package/dist/icons/components/UiHibernateEvent.js +21 -0
  1367. package/dist/icons/components/UiHibernateEvent.js.map +1 -0
  1368. package/dist/icons/components/UiId.cjs +23 -0
  1369. package/dist/icons/components/UiId.cjs.map +1 -0
  1370. package/dist/icons/components/UiId.d.ts +15 -0
  1371. package/dist/icons/components/UiId.d.ts.map +1 -0
  1372. package/dist/icons/components/UiId.js +23 -0
  1373. package/dist/icons/components/UiId.js.map +1 -0
  1374. package/dist/icons/components/UiIndex.cjs +21 -0
  1375. package/dist/icons/components/UiIndex.cjs.map +1 -0
  1376. package/dist/icons/components/UiIndex.d.ts +15 -0
  1377. package/dist/icons/components/UiIndex.d.ts.map +1 -0
  1378. package/dist/icons/components/UiIndex.js +21 -0
  1379. package/dist/icons/components/UiIndex.js.map +1 -0
  1380. package/dist/icons/components/UiIndex1.cjs +28 -0
  1381. package/dist/icons/components/UiIndex1.cjs.map +1 -0
  1382. package/dist/icons/components/UiIndex1.d.ts +15 -0
  1383. package/dist/icons/components/UiIndex1.d.ts.map +1 -0
  1384. package/dist/icons/components/UiIndex1.js +28 -0
  1385. package/dist/icons/components/UiIndex1.js.map +1 -0
  1386. package/dist/icons/components/UiIndex2.cjs +26 -0
  1387. package/dist/icons/components/UiIndex2.cjs.map +1 -0
  1388. package/dist/icons/components/UiIndex2.d.ts +15 -0
  1389. package/dist/icons/components/UiIndex2.d.ts.map +1 -0
  1390. package/dist/icons/components/UiIndex2.js +26 -0
  1391. package/dist/icons/components/UiIndex2.js.map +1 -0
  1392. package/dist/icons/components/UiIndex3.cjs +21 -0
  1393. package/dist/icons/components/UiIndex3.cjs.map +1 -0
  1394. package/dist/icons/components/UiIndex3.d.ts +15 -0
  1395. package/dist/icons/components/UiIndex3.d.ts.map +1 -0
  1396. package/dist/icons/components/UiIndex3.js +21 -0
  1397. package/dist/icons/components/UiIndex3.js.map +1 -0
  1398. package/dist/icons/components/UiIndex4.cjs +21 -0
  1399. package/dist/icons/components/UiIndex4.cjs.map +1 -0
  1400. package/dist/icons/components/UiIndex4.d.ts +15 -0
  1401. package/dist/icons/components/UiIndex4.d.ts.map +1 -0
  1402. package/dist/icons/components/UiIndex4.js +21 -0
  1403. package/dist/icons/components/UiIndex4.js.map +1 -0
  1404. package/dist/icons/components/UiIndex5.cjs +23 -0
  1405. package/dist/icons/components/UiIndex5.cjs.map +1 -0
  1406. package/dist/icons/components/UiIndex5.d.ts +15 -0
  1407. package/dist/icons/components/UiIndex5.d.ts.map +1 -0
  1408. package/dist/icons/components/UiIndex5.js +23 -0
  1409. package/dist/icons/components/UiIndex5.js.map +1 -0
  1410. package/dist/icons/components/UiIndex6.cjs +23 -0
  1411. package/dist/icons/components/UiIndex6.cjs.map +1 -0
  1412. package/dist/icons/components/UiIndex6.d.ts +15 -0
  1413. package/dist/icons/components/UiIndex6.d.ts.map +1 -0
  1414. package/dist/icons/components/UiIndex6.js +23 -0
  1415. package/dist/icons/components/UiIndex6.js.map +1 -0
  1416. package/dist/icons/components/UiInspectionsGrammar.cjs +21 -0
  1417. package/dist/icons/components/UiInspectionsGrammar.cjs.map +1 -0
  1418. package/dist/icons/components/UiInspectionsGrammar.d.ts +15 -0
  1419. package/dist/icons/components/UiInspectionsGrammar.d.ts.map +1 -0
  1420. package/dist/icons/components/UiInspectionsGrammar.js +21 -0
  1421. package/dist/icons/components/UiInspectionsGrammar.js.map +1 -0
  1422. package/dist/icons/components/UiJpaAttribute.cjs +13 -0
  1423. package/dist/icons/components/UiJpaAttribute.cjs.map +1 -0
  1424. package/dist/icons/components/UiJpaAttribute.d.ts +9 -0
  1425. package/dist/icons/components/UiJpaAttribute.d.ts.map +1 -0
  1426. package/dist/icons/components/UiJpaAttribute.js +13 -0
  1427. package/dist/icons/components/UiJpaAttribute.js.map +1 -0
  1428. package/dist/icons/components/UiJpaId.cjs +15 -0
  1429. package/dist/icons/components/UiJpaId.cjs.map +1 -0
  1430. package/dist/icons/components/UiJpaId.d.ts +9 -0
  1431. package/dist/icons/components/UiJpaId.d.ts.map +1 -0
  1432. package/dist/icons/components/UiJpaId.js +15 -0
  1433. package/dist/icons/components/UiJpaId.js.map +1 -0
  1434. package/dist/icons/components/UiJpaRelationship.cjs +14 -0
  1435. package/dist/icons/components/UiJpaRelationship.cjs.map +1 -0
  1436. package/dist/icons/components/UiJpaRelationship.d.ts +9 -0
  1437. package/dist/icons/components/UiJpaRelationship.d.ts.map +1 -0
  1438. package/dist/icons/components/UiJpaRelationship.js +14 -0
  1439. package/dist/icons/components/UiJpaRelationship.js.map +1 -0
  1440. package/dist/icons/components/UiKillDataSourceProcess.cjs +21 -0
  1441. package/dist/icons/components/UiKillDataSourceProcess.cjs.map +1 -0
  1442. package/dist/icons/components/UiKillDataSourceProcess.d.ts +15 -0
  1443. package/dist/icons/components/UiKillDataSourceProcess.d.ts.map +1 -0
  1444. package/dist/icons/components/UiKillDataSourceProcess.js +21 -0
  1445. package/dist/icons/components/UiKillDataSourceProcess.js.map +1 -0
  1446. package/dist/icons/components/UiKubeConfigMap.cjs +18 -0
  1447. package/dist/icons/components/UiKubeConfigMap.cjs.map +1 -0
  1448. package/dist/icons/components/UiKubeConfigMap.d.ts +9 -0
  1449. package/dist/icons/components/UiKubeConfigMap.d.ts.map +1 -0
  1450. package/dist/icons/components/UiKubeConfigMap.js +18 -0
  1451. package/dist/icons/components/UiKubeConfigMap.js.map +1 -0
  1452. package/dist/icons/components/UiKubeDeployment.cjs +10 -0
  1453. package/dist/icons/components/UiKubeDeployment.cjs.map +1 -0
  1454. package/dist/icons/components/UiKubeDeployment.d.ts +9 -0
  1455. package/dist/icons/components/UiKubeDeployment.d.ts.map +1 -0
  1456. package/dist/icons/components/UiKubeDeployment.js +10 -0
  1457. package/dist/icons/components/UiKubeDeployment.js.map +1 -0
  1458. package/dist/icons/components/UiKubeJob.cjs +25 -0
  1459. package/dist/icons/components/UiKubeJob.cjs.map +1 -0
  1460. package/dist/icons/components/UiKubeJob.d.ts +9 -0
  1461. package/dist/icons/components/UiKubeJob.d.ts.map +1 -0
  1462. package/dist/icons/components/UiKubeJob.js +25 -0
  1463. package/dist/icons/components/UiKubeJob.js.map +1 -0
  1464. package/dist/icons/components/UiKubeNamespace.cjs +15 -0
  1465. package/dist/icons/components/UiKubeNamespace.cjs.map +1 -0
  1466. package/dist/icons/components/UiKubeNamespace.d.ts +9 -0
  1467. package/dist/icons/components/UiKubeNamespace.d.ts.map +1 -0
  1468. package/dist/icons/components/UiKubeNamespace.js +15 -0
  1469. package/dist/icons/components/UiKubeNamespace.js.map +1 -0
  1470. package/dist/icons/components/UiKubePod.cjs +13 -0
  1471. package/dist/icons/components/UiKubePod.cjs.map +1 -0
  1472. package/dist/icons/components/UiKubePod.d.ts +9 -0
  1473. package/dist/icons/components/UiKubePod.d.ts.map +1 -0
  1474. package/dist/icons/components/UiKubePod.js +13 -0
  1475. package/dist/icons/components/UiKubePod.js.map +1 -0
  1476. package/dist/icons/components/UiLangJava.cjs +14 -0
  1477. package/dist/icons/components/UiLangJava.cjs.map +1 -0
  1478. package/dist/icons/components/UiLangJava.d.ts +9 -0
  1479. package/dist/icons/components/UiLangJava.d.ts.map +1 -0
  1480. package/dist/icons/components/UiLangJava.js +14 -0
  1481. package/dist/icons/components/UiLangJava.js.map +1 -0
  1482. package/dist/icons/components/UiLangJavascript.cjs +14 -0
  1483. package/dist/icons/components/UiLangJavascript.cjs.map +1 -0
  1484. package/dist/icons/components/UiLangJavascript.d.ts +9 -0
  1485. package/dist/icons/components/UiLangJavascript.d.ts.map +1 -0
  1486. package/dist/icons/components/UiLangJavascript.js +14 -0
  1487. package/dist/icons/components/UiLangJavascript.js.map +1 -0
  1488. package/dist/icons/components/UiLangPython.cjs +13 -0
  1489. package/dist/icons/components/UiLangPython.cjs.map +1 -0
  1490. package/dist/icons/components/UiLangPython.d.ts +9 -0
  1491. package/dist/icons/components/UiLangPython.d.ts.map +1 -0
  1492. package/dist/icons/components/UiLangPython.js +13 -0
  1493. package/dist/icons/components/UiLangPython.js.map +1 -0
  1494. package/dist/icons/components/UiMaterializedLog.cjs +15 -0
  1495. package/dist/icons/components/UiMaterializedLog.cjs.map +1 -0
  1496. package/dist/icons/components/UiMaterializedLog.d.ts +15 -0
  1497. package/dist/icons/components/UiMaterializedLog.d.ts.map +1 -0
  1498. package/dist/icons/components/UiMaterializedLog.js +15 -0
  1499. package/dist/icons/components/UiMaterializedLog.js.map +1 -0
  1500. package/dist/icons/components/UiMemoryProfile.cjs +15 -0
  1501. package/dist/icons/components/UiMemoryProfile.cjs.map +1 -0
  1502. package/dist/icons/components/UiMemoryProfile.d.ts +9 -0
  1503. package/dist/icons/components/UiMemoryProfile.d.ts.map +1 -0
  1504. package/dist/icons/components/UiMemoryProfile.js +15 -0
  1505. package/dist/icons/components/UiMemoryProfile.js.map +1 -0
  1506. package/dist/icons/components/UiMessageQueue.cjs +13 -0
  1507. package/dist/icons/components/UiMessageQueue.cjs.map +1 -0
  1508. package/dist/icons/components/UiMessageQueue.d.ts +9 -0
  1509. package/dist/icons/components/UiMessageQueue.d.ts.map +1 -0
  1510. package/dist/icons/components/UiMessageQueue.js +13 -0
  1511. package/dist/icons/components/UiMessageQueue.js.map +1 -0
  1512. package/dist/icons/components/UiMessageQueue1.cjs +25 -0
  1513. package/dist/icons/components/UiMessageQueue1.cjs.map +1 -0
  1514. package/dist/icons/components/UiMessageQueue1.d.ts +15 -0
  1515. package/dist/icons/components/UiMessageQueue1.d.ts.map +1 -0
  1516. package/dist/icons/components/UiMessageQueue1.js +25 -0
  1517. package/dist/icons/components/UiMessageQueue1.js.map +1 -0
  1518. package/dist/icons/components/UiMethod1.cjs +27 -0
  1519. package/dist/icons/components/UiMethod1.cjs.map +1 -0
  1520. package/dist/icons/components/UiMethod1.d.ts +15 -0
  1521. package/dist/icons/components/UiMethod1.d.ts.map +1 -0
  1522. package/dist/icons/components/UiMethod1.js +27 -0
  1523. package/dist/icons/components/UiMethod1.js.map +1 -0
  1524. package/dist/icons/components/UiMethod10.cjs +25 -0
  1525. package/dist/icons/components/UiMethod10.cjs.map +1 -0
  1526. package/dist/icons/components/UiMethod10.d.ts +15 -0
  1527. package/dist/icons/components/UiMethod10.d.ts.map +1 -0
  1528. package/dist/icons/components/UiMethod10.js +25 -0
  1529. package/dist/icons/components/UiMethod10.js.map +1 -0
  1530. package/dist/icons/components/UiMethod11.cjs +21 -0
  1531. package/dist/icons/components/UiMethod11.cjs.map +1 -0
  1532. package/dist/icons/components/UiMethod11.d.ts +15 -0
  1533. package/dist/icons/components/UiMethod11.d.ts.map +1 -0
  1534. package/dist/icons/components/UiMethod11.js +21 -0
  1535. package/dist/icons/components/UiMethod11.js.map +1 -0
  1536. package/dist/icons/components/UiMethod2.cjs +25 -0
  1537. package/dist/icons/components/UiMethod2.cjs.map +1 -0
  1538. package/dist/icons/components/UiMethod2.d.ts +15 -0
  1539. package/dist/icons/components/UiMethod2.d.ts.map +1 -0
  1540. package/dist/icons/components/UiMethod2.js +25 -0
  1541. package/dist/icons/components/UiMethod2.js.map +1 -0
  1542. package/dist/icons/components/UiMethod3.cjs +23 -0
  1543. package/dist/icons/components/UiMethod3.cjs.map +1 -0
  1544. package/dist/icons/components/UiMethod3.d.ts +15 -0
  1545. package/dist/icons/components/UiMethod3.d.ts.map +1 -0
  1546. package/dist/icons/components/UiMethod3.js +23 -0
  1547. package/dist/icons/components/UiMethod3.js.map +1 -0
  1548. package/dist/icons/components/UiMethod4.cjs +25 -0
  1549. package/dist/icons/components/UiMethod4.cjs.map +1 -0
  1550. package/dist/icons/components/UiMethod4.d.ts +15 -0
  1551. package/dist/icons/components/UiMethod4.d.ts.map +1 -0
  1552. package/dist/icons/components/UiMethod4.js +25 -0
  1553. package/dist/icons/components/UiMethod4.js.map +1 -0
  1554. package/dist/icons/components/UiMethod5.cjs +25 -0
  1555. package/dist/icons/components/UiMethod5.cjs.map +1 -0
  1556. package/dist/icons/components/UiMethod5.d.ts +15 -0
  1557. package/dist/icons/components/UiMethod5.d.ts.map +1 -0
  1558. package/dist/icons/components/UiMethod5.js +25 -0
  1559. package/dist/icons/components/UiMethod5.js.map +1 -0
  1560. package/dist/icons/components/UiMethod6.cjs +21 -0
  1561. package/dist/icons/components/UiMethod6.cjs.map +1 -0
  1562. package/dist/icons/components/UiMethod6.d.ts +15 -0
  1563. package/dist/icons/components/UiMethod6.d.ts.map +1 -0
  1564. package/dist/icons/components/UiMethod6.js +21 -0
  1565. package/dist/icons/components/UiMethod6.js.map +1 -0
  1566. package/dist/icons/components/UiMethod7.cjs +23 -0
  1567. package/dist/icons/components/UiMethod7.cjs.map +1 -0
  1568. package/dist/icons/components/UiMethod7.d.ts +15 -0
  1569. package/dist/icons/components/UiMethod7.d.ts.map +1 -0
  1570. package/dist/icons/components/UiMethod7.js +23 -0
  1571. package/dist/icons/components/UiMethod7.js.map +1 -0
  1572. package/dist/icons/components/UiMethod8.cjs +23 -0
  1573. package/dist/icons/components/UiMethod8.cjs.map +1 -0
  1574. package/dist/icons/components/UiMethod8.d.ts +15 -0
  1575. package/dist/icons/components/UiMethod8.d.ts.map +1 -0
  1576. package/dist/icons/components/UiMethod8.js +23 -0
  1577. package/dist/icons/components/UiMethod8.js.map +1 -0
  1578. package/dist/icons/components/UiMethod9.cjs +25 -0
  1579. package/dist/icons/components/UiMethod9.cjs.map +1 -0
  1580. package/dist/icons/components/UiMethod9.d.ts +15 -0
  1581. package/dist/icons/components/UiMethod9.d.ts.map +1 -0
  1582. package/dist/icons/components/UiMethod9.js +25 -0
  1583. package/dist/icons/components/UiMethod9.js.map +1 -0
  1584. package/dist/icons/components/UiModels.cjs +25 -0
  1585. package/dist/icons/components/UiModels.cjs.map +1 -0
  1586. package/dist/icons/components/UiModels.d.ts +15 -0
  1587. package/dist/icons/components/UiModels.d.ts.map +1 -0
  1588. package/dist/icons/components/UiModels.js +25 -0
  1589. package/dist/icons/components/UiModels.js.map +1 -0
  1590. package/dist/icons/components/UiModule1.cjs +23 -0
  1591. package/dist/icons/components/UiModule1.cjs.map +1 -0
  1592. package/dist/icons/components/UiModule1.d.ts +15 -0
  1593. package/dist/icons/components/UiModule1.d.ts.map +1 -0
  1594. package/dist/icons/components/UiModule1.js +23 -0
  1595. package/dist/icons/components/UiModule1.js.map +1 -0
  1596. package/dist/icons/components/UiName.cjs +21 -0
  1597. package/dist/icons/components/UiName.cjs.map +1 -0
  1598. package/dist/icons/components/UiName.d.ts +15 -0
  1599. package/dist/icons/components/UiName.d.ts.map +1 -0
  1600. package/dist/icons/components/UiName.js +21 -0
  1601. package/dist/icons/components/UiName.js.map +1 -0
  1602. package/dist/icons/components/UiOpenBlock.cjs +23 -0
  1603. package/dist/icons/components/UiOpenBlock.cjs.map +1 -0
  1604. package/dist/icons/components/UiOpenBlock.d.ts +15 -0
  1605. package/dist/icons/components/UiOpenBlock.d.ts.map +1 -0
  1606. package/dist/icons/components/UiOpenBlock.js +23 -0
  1607. package/dist/icons/components/UiOpenBlock.js.map +1 -0
  1608. package/dist/icons/components/UiOperator1.cjs +21 -0
  1609. package/dist/icons/components/UiOperator1.cjs.map +1 -0
  1610. package/dist/icons/components/UiOperator1.d.ts +15 -0
  1611. package/dist/icons/components/UiOperator1.d.ts.map +1 -0
  1612. package/dist/icons/components/UiOperator1.js +21 -0
  1613. package/dist/icons/components/UiOperator1.js.map +1 -0
  1614. package/dist/icons/components/UiPartition.cjs +23 -0
  1615. package/dist/icons/components/UiPartition.cjs.map +1 -0
  1616. package/dist/icons/components/UiPartition.d.ts +15 -0
  1617. package/dist/icons/components/UiPartition.d.ts.map +1 -0
  1618. package/dist/icons/components/UiPartition.js +23 -0
  1619. package/dist/icons/components/UiPartition.js.map +1 -0
  1620. package/dist/icons/components/UiPending.cjs +21 -0
  1621. package/dist/icons/components/UiPending.cjs.map +1 -0
  1622. package/dist/icons/components/UiPending.d.ts +15 -0
  1623. package/dist/icons/components/UiPending.d.ts.map +1 -0
  1624. package/dist/icons/components/UiPending.js +21 -0
  1625. package/dist/icons/components/UiPending.js.map +1 -0
  1626. package/dist/icons/components/UiPercent.cjs +10 -0
  1627. package/dist/icons/components/UiPercent.cjs.map +1 -0
  1628. package/dist/icons/components/UiPercent.d.ts +9 -0
  1629. package/dist/icons/components/UiPercent.d.ts.map +1 -0
  1630. package/dist/icons/components/UiPercent.js +10 -0
  1631. package/dist/icons/components/UiPercent.js.map +1 -0
  1632. package/dist/icons/components/UiPluginModule.cjs +25 -0
  1633. package/dist/icons/components/UiPluginModule.cjs.map +1 -0
  1634. package/dist/icons/components/UiPluginModule.d.ts +15 -0
  1635. package/dist/icons/components/UiPluginModule.d.ts.map +1 -0
  1636. package/dist/icons/components/UiPluginModule.js +25 -0
  1637. package/dist/icons/components/UiPluginModule.js.map +1 -0
  1638. package/dist/icons/components/UiPluginV2.cjs +25 -0
  1639. package/dist/icons/components/UiPluginV2.cjs.map +1 -0
  1640. package/dist/icons/components/UiPluginV2.d.ts +15 -0
  1641. package/dist/icons/components/UiPluginV2.d.ts.map +1 -0
  1642. package/dist/icons/components/UiPluginV2.js +25 -0
  1643. package/dist/icons/components/UiPluginV2.js.map +1 -0
  1644. package/dist/icons/components/UiPointcut.cjs +21 -0
  1645. package/dist/icons/components/UiPointcut.cjs.map +1 -0
  1646. package/dist/icons/components/UiPointcut.d.ts +15 -0
  1647. package/dist/icons/components/UiPointcut.d.ts.map +1 -0
  1648. package/dist/icons/components/UiPointcut.js +21 -0
  1649. package/dist/icons/components/UiPointcut.js.map +1 -0
  1650. package/dist/icons/components/UiProcedure.cjs +21 -0
  1651. package/dist/icons/components/UiProcedure.cjs.map +1 -0
  1652. package/dist/icons/components/UiProcedure.d.ts +15 -0
  1653. package/dist/icons/components/UiProcedure.d.ts.map +1 -0
  1654. package/dist/icons/components/UiProcedure.js +21 -0
  1655. package/dist/icons/components/UiProcedure.js.map +1 -0
  1656. package/dist/icons/components/UiProfile.cjs +25 -0
  1657. package/dist/icons/components/UiProfile.cjs.map +1 -0
  1658. package/dist/icons/components/UiProfile.d.ts +15 -0
  1659. package/dist/icons/components/UiProfile.d.ts.map +1 -0
  1660. package/dist/icons/components/UiProfile.js +25 -0
  1661. package/dist/icons/components/UiProfile.js.map +1 -0
  1662. package/dist/icons/components/UiProfile1.cjs +21 -0
  1663. package/dist/icons/components/UiProfile1.cjs.map +1 -0
  1664. package/dist/icons/components/UiProfile1.d.ts +15 -0
  1665. package/dist/icons/components/UiProfile1.d.ts.map +1 -0
  1666. package/dist/icons/components/UiProfile1.js +21 -0
  1667. package/dist/icons/components/UiProfile1.js.map +1 -0
  1668. package/dist/icons/components/UiProfile2.cjs +25 -0
  1669. package/dist/icons/components/UiProfile2.cjs.map +1 -0
  1670. package/dist/icons/components/UiProfile2.d.ts +15 -0
  1671. package/dist/icons/components/UiProfile2.d.ts.map +1 -0
  1672. package/dist/icons/components/UiProfile2.js +25 -0
  1673. package/dist/icons/components/UiProfile2.js.map +1 -0
  1674. package/dist/icons/components/UiProfile3.cjs +33 -0
  1675. package/dist/icons/components/UiProfile3.cjs.map +1 -0
  1676. package/dist/icons/components/UiProfile3.d.ts +15 -0
  1677. package/dist/icons/components/UiProfile3.d.ts.map +1 -0
  1678. package/dist/icons/components/UiProfile3.js +33 -0
  1679. package/dist/icons/components/UiProfile3.js.map +1 -0
  1680. package/dist/icons/components/UiProfile4.cjs +25 -0
  1681. package/dist/icons/components/UiProfile4.cjs.map +1 -0
  1682. package/dist/icons/components/UiProfile4.d.ts +15 -0
  1683. package/dist/icons/components/UiProfile4.d.ts.map +1 -0
  1684. package/dist/icons/components/UiProfile4.js +25 -0
  1685. package/dist/icons/components/UiProfile4.js.map +1 -0
  1686. package/dist/icons/components/UiProfiler.cjs +13 -0
  1687. package/dist/icons/components/UiProfiler.cjs.map +1 -0
  1688. package/dist/icons/components/UiProfiler.d.ts +9 -0
  1689. package/dist/icons/components/UiProfiler.d.ts.map +1 -0
  1690. package/dist/icons/components/UiProfiler.js +13 -0
  1691. package/dist/icons/components/UiProfiler.js.map +1 -0
  1692. package/dist/icons/components/UiProfilerBackTrace.cjs +10 -0
  1693. package/dist/icons/components/UiProfilerBackTrace.cjs.map +1 -0
  1694. package/dist/icons/components/UiProfilerBackTrace.d.ts +9 -0
  1695. package/dist/icons/components/UiProfilerBackTrace.d.ts.map +1 -0
  1696. package/dist/icons/components/UiProfilerBackTrace.js +10 -0
  1697. package/dist/icons/components/UiProfilerBackTrace.js.map +1 -0
  1698. package/dist/icons/components/UiProfilerMergeCallees.cjs +10 -0
  1699. package/dist/icons/components/UiProfilerMergeCallees.cjs.map +1 -0
  1700. package/dist/icons/components/UiProfilerMergeCallees.d.ts +9 -0
  1701. package/dist/icons/components/UiProfilerMergeCallees.d.ts.map +1 -0
  1702. package/dist/icons/components/UiProfilerMergeCallees.js +10 -0
  1703. package/dist/icons/components/UiProfilerMergeCallees.js.map +1 -0
  1704. package/dist/icons/components/UiProjectStructure.cjs +23 -0
  1705. package/dist/icons/components/UiProjectStructure.cjs.map +1 -0
  1706. package/dist/icons/components/UiProjectStructure.d.ts +15 -0
  1707. package/dist/icons/components/UiProjectStructure.d.ts.map +1 -0
  1708. package/dist/icons/components/UiProjectStructure.js +23 -0
  1709. package/dist/icons/components/UiProjectStructure.js.map +1 -0
  1710. package/dist/icons/components/UiProjection.cjs +21 -0
  1711. package/dist/icons/components/UiProjection.cjs.map +1 -0
  1712. package/dist/icons/components/UiProjection.d.ts +15 -0
  1713. package/dist/icons/components/UiProjection.d.ts.map +1 -0
  1714. package/dist/icons/components/UiProjection.js +21 -0
  1715. package/dist/icons/components/UiProjection.js.map +1 -0
  1716. package/dist/icons/components/UiReadAccess.cjs +21 -0
  1717. package/dist/icons/components/UiReadAccess.cjs.map +1 -0
  1718. package/dist/icons/components/UiReadAccess.d.ts +15 -0
  1719. package/dist/icons/components/UiReadAccess.d.ts.map +1 -0
  1720. package/dist/icons/components/UiReadAccess.js +21 -0
  1721. package/dist/icons/components/UiReadAccess.js.map +1 -0
  1722. package/dist/icons/components/UiRecord1.cjs +21 -0
  1723. package/dist/icons/components/UiRecord1.cjs.map +1 -0
  1724. package/dist/icons/components/UiRecord1.d.ts +15 -0
  1725. package/dist/icons/components/UiRecord1.d.ts.map +1 -0
  1726. package/dist/icons/components/UiRecord1.js +21 -0
  1727. package/dist/icons/components/UiRecord1.js.map +1 -0
  1728. package/dist/icons/components/UiRegex.cjs +21 -0
  1729. package/dist/icons/components/UiRegex.cjs.map +1 -0
  1730. package/dist/icons/components/UiRegex.d.ts +15 -0
  1731. package/dist/icons/components/UiRegex.d.ts.map +1 -0
  1732. package/dist/icons/components/UiRegex.js +21 -0
  1733. package/dist/icons/components/UiRegex.js.map +1 -0
  1734. package/dist/icons/components/UiRelationship.cjs +23 -0
  1735. package/dist/icons/components/UiRelationship.cjs.map +1 -0
  1736. package/dist/icons/components/UiRelationship.d.ts +15 -0
  1737. package/dist/icons/components/UiRelationship.d.ts.map +1 -0
  1738. package/dist/icons/components/UiRelationship.js +23 -0
  1739. package/dist/icons/components/UiRelationship.js.map +1 -0
  1740. package/dist/icons/components/UiRelay.cjs +15 -0
  1741. package/dist/icons/components/UiRelay.cjs.map +1 -0
  1742. package/dist/icons/components/UiRelay.d.ts +15 -0
  1743. package/dist/icons/components/UiRelay.d.ts.map +1 -0
  1744. package/dist/icons/components/UiRelay.js +15 -0
  1745. package/dist/icons/components/UiRelay.js.map +1 -0
  1746. package/dist/icons/components/UiRole.cjs +25 -0
  1747. package/dist/icons/components/UiRole.cjs.map +1 -0
  1748. package/dist/icons/components/UiRole.d.ts +15 -0
  1749. package/dist/icons/components/UiRole.d.ts.map +1 -0
  1750. package/dist/icons/components/UiRole.js +25 -0
  1751. package/dist/icons/components/UiRole.js.map +1 -0
  1752. package/dist/icons/components/UiRollback.cjs +15 -0
  1753. package/dist/icons/components/UiRollback.cjs.map +1 -0
  1754. package/dist/icons/components/UiRollback.d.ts +15 -0
  1755. package/dist/icons/components/UiRollback.d.ts.map +1 -0
  1756. package/dist/icons/components/UiRollback.js +15 -0
  1757. package/dist/icons/components/UiRollback.js.map +1 -0
  1758. package/dist/icons/components/UiRoutine.cjs +21 -0
  1759. package/dist/icons/components/UiRoutine.cjs.map +1 -0
  1760. package/dist/icons/components/UiRoutine.d.ts +15 -0
  1761. package/dist/icons/components/UiRoutine.d.ts.map +1 -0
  1762. package/dist/icons/components/UiRoutine.js +21 -0
  1763. package/dist/icons/components/UiRoutine.js.map +1 -0
  1764. package/dist/icons/components/UiRun.cjs +15 -0
  1765. package/dist/icons/components/UiRun.cjs.map +1 -0
  1766. package/dist/icons/components/UiRun.d.ts +15 -0
  1767. package/dist/icons/components/UiRun.d.ts.map +1 -0
  1768. package/dist/icons/components/UiRun.js +15 -0
  1769. package/dist/icons/components/UiRun.js.map +1 -0
  1770. package/dist/icons/components/UiRun1.cjs +23 -0
  1771. package/dist/icons/components/UiRun1.cjs.map +1 -0
  1772. package/dist/icons/components/UiRun1.d.ts +15 -0
  1773. package/dist/icons/components/UiRun1.d.ts.map +1 -0
  1774. package/dist/icons/components/UiRun1.js +23 -0
  1775. package/dist/icons/components/UiRun1.js.map +1 -0
  1776. package/dist/icons/components/UiRun10.cjs +27 -0
  1777. package/dist/icons/components/UiRun10.cjs.map +1 -0
  1778. package/dist/icons/components/UiRun10.d.ts +15 -0
  1779. package/dist/icons/components/UiRun10.d.ts.map +1 -0
  1780. package/dist/icons/components/UiRun10.js +27 -0
  1781. package/dist/icons/components/UiRun10.js.map +1 -0
  1782. package/dist/icons/components/UiRun11.cjs +23 -0
  1783. package/dist/icons/components/UiRun11.cjs.map +1 -0
  1784. package/dist/icons/components/UiRun11.d.ts +15 -0
  1785. package/dist/icons/components/UiRun11.d.ts.map +1 -0
  1786. package/dist/icons/components/UiRun11.js +23 -0
  1787. package/dist/icons/components/UiRun11.js.map +1 -0
  1788. package/dist/icons/components/UiRun12.cjs +25 -0
  1789. package/dist/icons/components/UiRun12.cjs.map +1 -0
  1790. package/dist/icons/components/UiRun12.d.ts +15 -0
  1791. package/dist/icons/components/UiRun12.d.ts.map +1 -0
  1792. package/dist/icons/components/UiRun12.js +25 -0
  1793. package/dist/icons/components/UiRun12.js.map +1 -0
  1794. package/dist/icons/components/UiRun13.cjs +15 -0
  1795. package/dist/icons/components/UiRun13.cjs.map +1 -0
  1796. package/dist/icons/components/UiRun13.d.ts +15 -0
  1797. package/dist/icons/components/UiRun13.d.ts.map +1 -0
  1798. package/dist/icons/components/UiRun13.js +15 -0
  1799. package/dist/icons/components/UiRun13.js.map +1 -0
  1800. package/dist/icons/components/UiRun14.cjs +25 -0
  1801. package/dist/icons/components/UiRun14.cjs.map +1 -0
  1802. package/dist/icons/components/UiRun14.d.ts +15 -0
  1803. package/dist/icons/components/UiRun14.d.ts.map +1 -0
  1804. package/dist/icons/components/UiRun14.js +25 -0
  1805. package/dist/icons/components/UiRun14.js.map +1 -0
  1806. package/dist/icons/components/UiRun2.cjs +27 -0
  1807. package/dist/icons/components/UiRun2.cjs.map +1 -0
  1808. package/dist/icons/components/UiRun2.d.ts +15 -0
  1809. package/dist/icons/components/UiRun2.d.ts.map +1 -0
  1810. package/dist/icons/components/UiRun2.js +27 -0
  1811. package/dist/icons/components/UiRun2.js.map +1 -0
  1812. package/dist/icons/components/UiRun3.cjs +23 -0
  1813. package/dist/icons/components/UiRun3.cjs.map +1 -0
  1814. package/dist/icons/components/UiRun3.d.ts +15 -0
  1815. package/dist/icons/components/UiRun3.d.ts.map +1 -0
  1816. package/dist/icons/components/UiRun3.js +23 -0
  1817. package/dist/icons/components/UiRun3.js.map +1 -0
  1818. package/dist/icons/components/UiRun4.cjs +23 -0
  1819. package/dist/icons/components/UiRun4.cjs.map +1 -0
  1820. package/dist/icons/components/UiRun4.d.ts +15 -0
  1821. package/dist/icons/components/UiRun4.d.ts.map +1 -0
  1822. package/dist/icons/components/UiRun4.js +23 -0
  1823. package/dist/icons/components/UiRun4.js.map +1 -0
  1824. package/dist/icons/components/UiRun5.cjs +25 -0
  1825. package/dist/icons/components/UiRun5.cjs.map +1 -0
  1826. package/dist/icons/components/UiRun5.d.ts +15 -0
  1827. package/dist/icons/components/UiRun5.d.ts.map +1 -0
  1828. package/dist/icons/components/UiRun5.js +25 -0
  1829. package/dist/icons/components/UiRun5.js.map +1 -0
  1830. package/dist/icons/components/UiRun6.cjs +34 -0
  1831. package/dist/icons/components/UiRun6.cjs.map +1 -0
  1832. package/dist/icons/components/UiRun6.d.ts +15 -0
  1833. package/dist/icons/components/UiRun6.d.ts.map +1 -0
  1834. package/dist/icons/components/UiRun6.js +34 -0
  1835. package/dist/icons/components/UiRun6.js.map +1 -0
  1836. package/dist/icons/components/UiRun7.cjs +21 -0
  1837. package/dist/icons/components/UiRun7.cjs.map +1 -0
  1838. package/dist/icons/components/UiRun7.d.ts +15 -0
  1839. package/dist/icons/components/UiRun7.d.ts.map +1 -0
  1840. package/dist/icons/components/UiRun7.js +21 -0
  1841. package/dist/icons/components/UiRun7.js.map +1 -0
  1842. package/dist/icons/components/UiRun8.cjs +23 -0
  1843. package/dist/icons/components/UiRun8.cjs.map +1 -0
  1844. package/dist/icons/components/UiRun8.d.ts +15 -0
  1845. package/dist/icons/components/UiRun8.d.ts.map +1 -0
  1846. package/dist/icons/components/UiRun8.js +23 -0
  1847. package/dist/icons/components/UiRun8.js.map +1 -0
  1848. package/dist/icons/components/UiRun9.cjs +29 -0
  1849. package/dist/icons/components/UiRun9.cjs.map +1 -0
  1850. package/dist/icons/components/UiRun9.d.ts +15 -0
  1851. package/dist/icons/components/UiRun9.d.ts.map +1 -0
  1852. package/dist/icons/components/UiRun9.js +29 -0
  1853. package/dist/icons/components/UiRun9.js.map +1 -0
  1854. package/dist/icons/components/UiSecurityRole.cjs +15 -0
  1855. package/dist/icons/components/UiSecurityRole.cjs.map +1 -0
  1856. package/dist/icons/components/UiSecurityRole.d.ts +15 -0
  1857. package/dist/icons/components/UiSecurityRole.d.ts.map +1 -0
  1858. package/dist/icons/components/UiSecurityRole.js +15 -0
  1859. package/dist/icons/components/UiSecurityRole.js.map +1 -0
  1860. package/dist/icons/components/UiSequence.cjs +23 -0
  1861. package/dist/icons/components/UiSequence.cjs.map +1 -0
  1862. package/dist/icons/components/UiSequence.d.ts +15 -0
  1863. package/dist/icons/components/UiSequence.d.ts.map +1 -0
  1864. package/dist/icons/components/UiSequence.js +23 -0
  1865. package/dist/icons/components/UiSequence.js.map +1 -0
  1866. package/dist/icons/components/UiSequence1.cjs +31 -0
  1867. package/dist/icons/components/UiSequence1.cjs.map +1 -0
  1868. package/dist/icons/components/UiSequence1.d.ts +15 -0
  1869. package/dist/icons/components/UiSequence1.d.ts.map +1 -0
  1870. package/dist/icons/components/UiSequence1.js +31 -0
  1871. package/dist/icons/components/UiSequence1.js.map +1 -0
  1872. package/dist/icons/components/UiSequence2.cjs +29 -0
  1873. package/dist/icons/components/UiSequence2.cjs.map +1 -0
  1874. package/dist/icons/components/UiSequence2.d.ts +15 -0
  1875. package/dist/icons/components/UiSequence2.d.ts.map +1 -0
  1876. package/dist/icons/components/UiSequence2.js +29 -0
  1877. package/dist/icons/components/UiSequence2.js.map +1 -0
  1878. package/dist/icons/components/UiSequence3.cjs +23 -0
  1879. package/dist/icons/components/UiSequence3.cjs.map +1 -0
  1880. package/dist/icons/components/UiSequence3.d.ts +15 -0
  1881. package/dist/icons/components/UiSequence3.d.ts.map +1 -0
  1882. package/dist/icons/components/UiSequence3.js +23 -0
  1883. package/dist/icons/components/UiSequence3.js.map +1 -0
  1884. package/dist/icons/components/UiSequence4.cjs +23 -0
  1885. package/dist/icons/components/UiSequence4.cjs.map +1 -0
  1886. package/dist/icons/components/UiSequence4.d.ts +15 -0
  1887. package/dist/icons/components/UiSequence4.d.ts.map +1 -0
  1888. package/dist/icons/components/UiSequence4.js +23 -0
  1889. package/dist/icons/components/UiSequence4.js.map +1 -0
  1890. package/dist/icons/components/UiSetKey.cjs +29 -0
  1891. package/dist/icons/components/UiSetKey.cjs.map +1 -0
  1892. package/dist/icons/components/UiSetKey.d.ts +15 -0
  1893. package/dist/icons/components/UiSetKey.d.ts.map +1 -0
  1894. package/dist/icons/components/UiSetKey.js +29 -0
  1895. package/dist/icons/components/UiSetKey.js.map +1 -0
  1896. package/dist/icons/components/UiShortcutFilter.cjs +25 -0
  1897. package/dist/icons/components/UiShortcutFilter.cjs.map +1 -0
  1898. package/dist/icons/components/UiShortcutFilter.d.ts +15 -0
  1899. package/dist/icons/components/UiShortcutFilter.d.ts.map +1 -0
  1900. package/dist/icons/components/UiShortcutFilter.js +25 -0
  1901. package/dist/icons/components/UiShortcutFilter.js.map +1 -0
  1902. package/dist/icons/components/UiShowCurrentFrame.cjs +23 -0
  1903. package/dist/icons/components/UiShowCurrentFrame.cjs.map +1 -0
  1904. package/dist/icons/components/UiShowCurrentFrame.d.ts +15 -0
  1905. package/dist/icons/components/UiShowCurrentFrame.d.ts.map +1 -0
  1906. package/dist/icons/components/UiShowCurrentFrame.js +23 -0
  1907. package/dist/icons/components/UiShowCurrentFrame.js.map +1 -0
  1908. package/dist/icons/components/UiShowMembers.cjs +27 -0
  1909. package/dist/icons/components/UiShowMembers.cjs.map +1 -0
  1910. package/dist/icons/components/UiShowMembers.d.ts +15 -0
  1911. package/dist/icons/components/UiShowMembers.d.ts.map +1 -0
  1912. package/dist/icons/components/UiShowMembers.js +27 -0
  1913. package/dist/icons/components/UiShowMembers.js.map +1 -0
  1914. package/dist/icons/components/UiShowToImplement.cjs +27 -0
  1915. package/dist/icons/components/UiShowToImplement.cjs.map +1 -0
  1916. package/dist/icons/components/UiShowToImplement.d.ts +15 -0
  1917. package/dist/icons/components/UiShowToImplement.d.ts.map +1 -0
  1918. package/dist/icons/components/UiShowToImplement.js +27 -0
  1919. package/dist/icons/components/UiShowToImplement.js.map +1 -0
  1920. package/dist/icons/components/UiSortAlphabetically.cjs +23 -0
  1921. package/dist/icons/components/UiSortAlphabetically.cjs.map +1 -0
  1922. package/dist/icons/components/UiSortAlphabetically.d.ts +15 -0
  1923. package/dist/icons/components/UiSortAlphabetically.d.ts.map +1 -0
  1924. package/dist/icons/components/UiSortAlphabetically.js +23 -0
  1925. package/dist/icons/components/UiSortAlphabetically.js.map +1 -0
  1926. package/dist/icons/components/UiSortByType.cjs +23 -0
  1927. package/dist/icons/components/UiSortByType.cjs.map +1 -0
  1928. package/dist/icons/components/UiSortByType.d.ts +15 -0
  1929. package/dist/icons/components/UiSortByType.d.ts.map +1 -0
  1930. package/dist/icons/components/UiSortByType.js +23 -0
  1931. package/dist/icons/components/UiSortByType.js.map +1 -0
  1932. package/dist/icons/components/UiSortByUsage.cjs +21 -0
  1933. package/dist/icons/components/UiSortByUsage.cjs.map +1 -0
  1934. package/dist/icons/components/UiSortByUsage.d.ts +15 -0
  1935. package/dist/icons/components/UiSortByUsage.d.ts.map +1 -0
  1936. package/dist/icons/components/UiSortByUsage.js +21 -0
  1937. package/dist/icons/components/UiSortByUsage.js.map +1 -0
  1938. package/dist/icons/components/UiSortByVisibility.cjs +23 -0
  1939. package/dist/icons/components/UiSortByVisibility.cjs.map +1 -0
  1940. package/dist/icons/components/UiSortByVisibility.d.ts +15 -0
  1941. package/dist/icons/components/UiSortByVisibility.d.ts.map +1 -0
  1942. package/dist/icons/components/UiSortByVisibility.js +23 -0
  1943. package/dist/icons/components/UiSortByVisibility.js.map +1 -0
  1944. package/dist/icons/components/UiSpringBoot.cjs +29 -0
  1945. package/dist/icons/components/UiSpringBoot.cjs.map +1 -0
  1946. package/dist/icons/components/UiSpringBoot.d.ts +15 -0
  1947. package/dist/icons/components/UiSpringBoot.d.ts.map +1 -0
  1948. package/dist/icons/components/UiSpringBoot.js +29 -0
  1949. package/dist/icons/components/UiSpringBoot.js.map +1 -0
  1950. package/dist/icons/components/UiSqlColumn.cjs +1 -1
  1951. package/dist/icons/components/UiSqlColumn.cjs.map +1 -1
  1952. package/dist/icons/components/UiSqlColumn.js +1 -1
  1953. package/dist/icons/components/UiSqlColumn.js.map +1 -1
  1954. package/dist/icons/components/UiSqlConstraint.cjs +7 -2
  1955. package/dist/icons/components/UiSqlConstraint.cjs.map +1 -1
  1956. package/dist/icons/components/UiSqlConstraint.js +8 -3
  1957. package/dist/icons/components/UiSqlConstraint.js.map +1 -1
  1958. package/dist/icons/components/UiSqlDatabase.cjs +3 -4
  1959. package/dist/icons/components/UiSqlDatabase.cjs.map +1 -1
  1960. package/dist/icons/components/UiSqlDatabase.js +3 -4
  1961. package/dist/icons/components/UiSqlDatabase.js.map +1 -1
  1962. package/dist/icons/components/UiSqlForeignKey.cjs +4 -3
  1963. package/dist/icons/components/UiSqlForeignKey.cjs.map +1 -1
  1964. package/dist/icons/components/UiSqlForeignKey.js +4 -3
  1965. package/dist/icons/components/UiSqlForeignKey.js.map +1 -1
  1966. package/dist/icons/components/UiSqlFunction.cjs +3 -3
  1967. package/dist/icons/components/UiSqlFunction.cjs.map +1 -1
  1968. package/dist/icons/components/UiSqlFunction.js +3 -3
  1969. package/dist/icons/components/UiSqlFunction.js.map +1 -1
  1970. package/dist/icons/components/UiSqlIndex.cjs +3 -3
  1971. package/dist/icons/components/UiSqlIndex.cjs.map +1 -1
  1972. package/dist/icons/components/UiSqlIndex.js +3 -3
  1973. package/dist/icons/components/UiSqlIndex.js.map +1 -1
  1974. package/dist/icons/components/UiSqlPrimaryKey.cjs +3 -2
  1975. package/dist/icons/components/UiSqlPrimaryKey.cjs.map +1 -1
  1976. package/dist/icons/components/UiSqlPrimaryKey.js +3 -2
  1977. package/dist/icons/components/UiSqlPrimaryKey.js.map +1 -1
  1978. package/dist/icons/components/UiSqlQuery.cjs +10 -2
  1979. package/dist/icons/components/UiSqlQuery.cjs.map +1 -1
  1980. package/dist/icons/components/UiSqlQuery.js +11 -3
  1981. package/dist/icons/components/UiSqlQuery.js.map +1 -1
  1982. package/dist/icons/components/UiSqlSchema.cjs +6 -3
  1983. package/dist/icons/components/UiSqlSchema.cjs.map +1 -1
  1984. package/dist/icons/components/UiSqlSchema.js +6 -3
  1985. package/dist/icons/components/UiSqlSchema.js.map +1 -1
  1986. package/dist/icons/components/UiSqlSequence.cjs +4 -4
  1987. package/dist/icons/components/UiSqlSequence.cjs.map +1 -1
  1988. package/dist/icons/components/UiSqlSequence.js +4 -4
  1989. package/dist/icons/components/UiSqlSequence.js.map +1 -1
  1990. package/dist/icons/components/UiSqlStoredProc.cjs +3 -3
  1991. package/dist/icons/components/UiSqlStoredProc.cjs.map +1 -1
  1992. package/dist/icons/components/UiSqlStoredProc.js +3 -3
  1993. package/dist/icons/components/UiSqlStoredProc.js.map +1 -1
  1994. package/dist/icons/components/UiSqlTable.cjs +7 -2
  1995. package/dist/icons/components/UiSqlTable.cjs.map +1 -1
  1996. package/dist/icons/components/UiSqlTable.js +7 -2
  1997. package/dist/icons/components/UiSqlTable.js.map +1 -1
  1998. package/dist/icons/components/UiSqlTrigger.cjs +6 -2
  1999. package/dist/icons/components/UiSqlTrigger.cjs.map +1 -1
  2000. package/dist/icons/components/UiSqlTrigger.js +7 -3
  2001. package/dist/icons/components/UiSqlTrigger.js.map +1 -1
  2002. package/dist/icons/components/UiSqlView.cjs +4 -5
  2003. package/dist/icons/components/UiSqlView.cjs.map +1 -1
  2004. package/dist/icons/components/UiSqlView.js +4 -5
  2005. package/dist/icons/components/UiSqlView.js.map +1 -1
  2006. package/dist/icons/components/UiStackTrace.cjs +15 -0
  2007. package/dist/icons/components/UiStackTrace.cjs.map +1 -0
  2008. package/dist/icons/components/UiStackTrace.d.ts +9 -0
  2009. package/dist/icons/components/UiStackTrace.d.ts.map +1 -0
  2010. package/dist/icons/components/UiStackTrace.js +15 -0
  2011. package/dist/icons/components/UiStackTrace.js.map +1 -0
  2012. package/dist/icons/components/UiStartTimer.cjs +27 -0
  2013. package/dist/icons/components/UiStartTimer.cjs.map +1 -0
  2014. package/dist/icons/components/UiStartTimer.d.ts +15 -0
  2015. package/dist/icons/components/UiStartTimer.d.ts.map +1 -0
  2016. package/dist/icons/components/UiStartTimer.js +27 -0
  2017. package/dist/icons/components/UiStartTimer.js.map +1 -0
  2018. package/dist/icons/components/UiStatic.cjs +21 -0
  2019. package/dist/icons/components/UiStatic.cjs.map +1 -0
  2020. package/dist/icons/components/UiStatic.d.ts +15 -0
  2021. package/dist/icons/components/UiStatic.d.ts.map +1 -0
  2022. package/dist/icons/components/UiStatic.js +21 -0
  2023. package/dist/icons/components/UiStatic.js.map +1 -0
  2024. package/dist/icons/components/UiStep.cjs +21 -0
  2025. package/dist/icons/components/UiStep.cjs.map +1 -0
  2026. package/dist/icons/components/UiStep.d.ts +15 -0
  2027. package/dist/icons/components/UiStep.d.ts.map +1 -0
  2028. package/dist/icons/components/UiStep.js +21 -0
  2029. package/dist/icons/components/UiStep.js.map +1 -0
  2030. package/dist/icons/components/UiStep1.cjs +29 -0
  2031. package/dist/icons/components/UiStep1.cjs.map +1 -0
  2032. package/dist/icons/components/UiStep1.d.ts +15 -0
  2033. package/dist/icons/components/UiStep1.d.ts.map +1 -0
  2034. package/dist/icons/components/UiStep1.js +29 -0
  2035. package/dist/icons/components/UiStep1.js.map +1 -0
  2036. package/dist/icons/components/UiStep2.cjs +21 -0
  2037. package/dist/icons/components/UiStep2.cjs.map +1 -0
  2038. package/dist/icons/components/UiStep2.d.ts +15 -0
  2039. package/dist/icons/components/UiStep2.d.ts.map +1 -0
  2040. package/dist/icons/components/UiStep2.js +21 -0
  2041. package/dist/icons/components/UiStep2.js.map +1 -0
  2042. package/dist/icons/components/UiStep3.cjs +21 -0
  2043. package/dist/icons/components/UiStep3.cjs.map +1 -0
  2044. package/dist/icons/components/UiStep3.d.ts +15 -0
  2045. package/dist/icons/components/UiStep3.d.ts.map +1 -0
  2046. package/dist/icons/components/UiStep3.js +21 -0
  2047. package/dist/icons/components/UiStep3.js.map +1 -0
  2048. package/dist/icons/components/UiStep4.cjs +31 -0
  2049. package/dist/icons/components/UiStep4.cjs.map +1 -0
  2050. package/dist/icons/components/UiStep4.d.ts +15 -0
  2051. package/dist/icons/components/UiStep4.d.ts.map +1 -0
  2052. package/dist/icons/components/UiStep4.js +31 -0
  2053. package/dist/icons/components/UiStep4.js.map +1 -0
  2054. package/dist/icons/components/UiStep5.cjs +27 -0
  2055. package/dist/icons/components/UiStep5.cjs.map +1 -0
  2056. package/dist/icons/components/UiStep5.d.ts +15 -0
  2057. package/dist/icons/components/UiStep5.d.ts.map +1 -0
  2058. package/dist/icons/components/UiStep5.js +27 -0
  2059. package/dist/icons/components/UiStep5.js.map +1 -0
  2060. package/dist/icons/components/UiStep6.cjs +23 -0
  2061. package/dist/icons/components/UiStep6.cjs.map +1 -0
  2062. package/dist/icons/components/UiStep6.d.ts +15 -0
  2063. package/dist/icons/components/UiStep6.d.ts.map +1 -0
  2064. package/dist/icons/components/UiStep6.js +23 -0
  2065. package/dist/icons/components/UiStep6.js.map +1 -0
  2066. package/dist/icons/components/UiStep7.cjs +21 -0
  2067. package/dist/icons/components/UiStep7.cjs.map +1 -0
  2068. package/dist/icons/components/UiStep7.d.ts +15 -0
  2069. package/dist/icons/components/UiStep7.d.ts.map +1 -0
  2070. package/dist/icons/components/UiStep7.js +21 -0
  2071. package/dist/icons/components/UiStep7.js.map +1 -0
  2072. package/dist/icons/components/UiStep8.cjs +28 -0
  2073. package/dist/icons/components/UiStep8.cjs.map +1 -0
  2074. package/dist/icons/components/UiStep8.d.ts +15 -0
  2075. package/dist/icons/components/UiStep8.d.ts.map +1 -0
  2076. package/dist/icons/components/UiStep8.js +28 -0
  2077. package/dist/icons/components/UiStep8.js.map +1 -0
  2078. package/dist/icons/components/UiStep9.cjs +21 -0
  2079. package/dist/icons/components/UiStep9.cjs.map +1 -0
  2080. package/dist/icons/components/UiStep9.d.ts +15 -0
  2081. package/dist/icons/components/UiStep9.d.ts.map +1 -0
  2082. package/dist/icons/components/UiStep9.js +21 -0
  2083. package/dist/icons/components/UiStep9.js.map +1 -0
  2084. package/dist/icons/components/UiStream.cjs +23 -0
  2085. package/dist/icons/components/UiStream.cjs.map +1 -0
  2086. package/dist/icons/components/UiStream.d.ts +15 -0
  2087. package/dist/icons/components/UiStream.d.ts.map +1 -0
  2088. package/dist/icons/components/UiStream.js +23 -0
  2089. package/dist/icons/components/UiStream.js.map +1 -0
  2090. package/dist/icons/components/UiStreamKey.cjs +31 -0
  2091. package/dist/icons/components/UiStreamKey.cjs.map +1 -0
  2092. package/dist/icons/components/UiStreamKey.d.ts +15 -0
  2093. package/dist/icons/components/UiStreamKey.d.ts.map +1 -0
  2094. package/dist/icons/components/UiStreamKey.js +31 -0
  2095. package/dist/icons/components/UiStreamKey.js.map +1 -0
  2096. package/dist/icons/components/UiSubmitDB.cjs +15 -0
  2097. package/dist/icons/components/UiSubmitDB.cjs.map +1 -0
  2098. package/dist/icons/components/UiSubmitDB.d.ts +15 -0
  2099. package/dist/icons/components/UiSubmitDB.d.ts.map +1 -0
  2100. package/dist/icons/components/UiSubmitDB.js +15 -0
  2101. package/dist/icons/components/UiSubmitDB.js.map +1 -0
  2102. package/dist/icons/components/UiSubscription.cjs +21 -0
  2103. package/dist/icons/components/UiSubscription.cjs.map +1 -0
  2104. package/dist/icons/components/UiSubscription.d.ts +15 -0
  2105. package/dist/icons/components/UiSubscription.d.ts.map +1 -0
  2106. package/dist/icons/components/UiSubscription.js +21 -0
  2107. package/dist/icons/components/UiSubscription.js.map +1 -0
  2108. package/dist/icons/components/UiSymbol.cjs +25 -0
  2109. package/dist/icons/components/UiSymbol.cjs.map +1 -0
  2110. package/dist/icons/components/UiSymbol.d.ts +15 -0
  2111. package/dist/icons/components/UiSymbol.d.ts.map +1 -0
  2112. package/dist/icons/components/UiSymbol.js +25 -0
  2113. package/dist/icons/components/UiSymbol.js.map +1 -0
  2114. package/dist/icons/components/UiTable1.cjs +23 -0
  2115. package/dist/icons/components/UiTable1.cjs.map +1 -0
  2116. package/dist/icons/components/UiTable1.d.ts +15 -0
  2117. package/dist/icons/components/UiTable1.d.ts.map +1 -0
  2118. package/dist/icons/components/UiTable1.js +23 -0
  2119. package/dist/icons/components/UiTable1.js.map +1 -0
  2120. package/dist/icons/components/UiTable10.cjs +25 -0
  2121. package/dist/icons/components/UiTable10.cjs.map +1 -0
  2122. package/dist/icons/components/UiTable10.d.ts +15 -0
  2123. package/dist/icons/components/UiTable10.d.ts.map +1 -0
  2124. package/dist/icons/components/UiTable10.js +25 -0
  2125. package/dist/icons/components/UiTable10.js.map +1 -0
  2126. package/dist/icons/components/UiTable11.cjs +25 -0
  2127. package/dist/icons/components/UiTable11.cjs.map +1 -0
  2128. package/dist/icons/components/UiTable11.d.ts +15 -0
  2129. package/dist/icons/components/UiTable11.d.ts.map +1 -0
  2130. package/dist/icons/components/UiTable11.js +25 -0
  2131. package/dist/icons/components/UiTable11.js.map +1 -0
  2132. package/dist/icons/components/UiTable12.cjs +23 -0
  2133. package/dist/icons/components/UiTable12.cjs.map +1 -0
  2134. package/dist/icons/components/UiTable12.d.ts +15 -0
  2135. package/dist/icons/components/UiTable12.d.ts.map +1 -0
  2136. package/dist/icons/components/UiTable12.js +23 -0
  2137. package/dist/icons/components/UiTable12.js.map +1 -0
  2138. package/dist/icons/components/UiTable2.cjs +21 -0
  2139. package/dist/icons/components/UiTable2.cjs.map +1 -0
  2140. package/dist/icons/components/UiTable2.d.ts +15 -0
  2141. package/dist/icons/components/UiTable2.d.ts.map +1 -0
  2142. package/dist/icons/components/UiTable2.js +21 -0
  2143. package/dist/icons/components/UiTable2.js.map +1 -0
  2144. package/dist/icons/components/UiTable3.cjs +33 -0
  2145. package/dist/icons/components/UiTable3.cjs.map +1 -0
  2146. package/dist/icons/components/UiTable3.d.ts +15 -0
  2147. package/dist/icons/components/UiTable3.d.ts.map +1 -0
  2148. package/dist/icons/components/UiTable3.js +33 -0
  2149. package/dist/icons/components/UiTable3.js.map +1 -0
  2150. package/dist/icons/components/UiTable4.cjs +55 -0
  2151. package/dist/icons/components/UiTable4.cjs.map +1 -0
  2152. package/dist/icons/components/UiTable4.d.ts +15 -0
  2153. package/dist/icons/components/UiTable4.d.ts.map +1 -0
  2154. package/dist/icons/components/UiTable4.js +55 -0
  2155. package/dist/icons/components/UiTable4.js.map +1 -0
  2156. package/dist/icons/components/UiTable5.cjs +25 -0
  2157. package/dist/icons/components/UiTable5.cjs.map +1 -0
  2158. package/dist/icons/components/UiTable5.d.ts +15 -0
  2159. package/dist/icons/components/UiTable5.d.ts.map +1 -0
  2160. package/dist/icons/components/UiTable5.js +25 -0
  2161. package/dist/icons/components/UiTable5.js.map +1 -0
  2162. package/dist/icons/components/UiTable6.cjs +31 -0
  2163. package/dist/icons/components/UiTable6.cjs.map +1 -0
  2164. package/dist/icons/components/UiTable6.d.ts +15 -0
  2165. package/dist/icons/components/UiTable6.d.ts.map +1 -0
  2166. package/dist/icons/components/UiTable6.js +31 -0
  2167. package/dist/icons/components/UiTable6.js.map +1 -0
  2168. package/dist/icons/components/UiTable7.cjs +24 -0
  2169. package/dist/icons/components/UiTable7.cjs.map +1 -0
  2170. package/dist/icons/components/UiTable7.d.ts +15 -0
  2171. package/dist/icons/components/UiTable7.d.ts.map +1 -0
  2172. package/dist/icons/components/UiTable7.js +24 -0
  2173. package/dist/icons/components/UiTable7.js.map +1 -0
  2174. package/dist/icons/components/UiTable8.cjs +25 -0
  2175. package/dist/icons/components/UiTable8.cjs.map +1 -0
  2176. package/dist/icons/components/UiTable8.d.ts +15 -0
  2177. package/dist/icons/components/UiTable8.d.ts.map +1 -0
  2178. package/dist/icons/components/UiTable8.js +25 -0
  2179. package/dist/icons/components/UiTable8.js.map +1 -0
  2180. package/dist/icons/components/UiTable9.cjs +25 -0
  2181. package/dist/icons/components/UiTable9.cjs.map +1 -0
  2182. package/dist/icons/components/UiTable9.d.ts +15 -0
  2183. package/dist/icons/components/UiTable9.d.ts.map +1 -0
  2184. package/dist/icons/components/UiTable9.js +25 -0
  2185. package/dist/icons/components/UiTable9.js.map +1 -0
  2186. package/dist/icons/components/UiTemplate.cjs +21 -0
  2187. package/dist/icons/components/UiTemplate.cjs.map +1 -0
  2188. package/dist/icons/components/UiTemplate.d.ts +15 -0
  2189. package/dist/icons/components/UiTemplate.d.ts.map +1 -0
  2190. package/dist/icons/components/UiTemplate.js +21 -0
  2191. package/dist/icons/components/UiTemplate.js.map +1 -0
  2192. package/dist/icons/components/UiTest1.cjs +24 -0
  2193. package/dist/icons/components/UiTest1.cjs.map +1 -0
  2194. package/dist/icons/components/UiTest1.d.ts +15 -0
  2195. package/dist/icons/components/UiTest1.d.ts.map +1 -0
  2196. package/dist/icons/components/UiTest1.js +24 -0
  2197. package/dist/icons/components/UiTest1.js.map +1 -0
  2198. package/dist/icons/components/UiTest2.cjs +21 -0
  2199. package/dist/icons/components/UiTest2.cjs.map +1 -0
  2200. package/dist/icons/components/UiTest2.d.ts +15 -0
  2201. package/dist/icons/components/UiTest2.d.ts.map +1 -0
  2202. package/dist/icons/components/UiTest2.js +21 -0
  2203. package/dist/icons/components/UiTest2.js.map +1 -0
  2204. package/dist/icons/components/UiTest3.cjs +21 -0
  2205. package/dist/icons/components/UiTest3.cjs.map +1 -0
  2206. package/dist/icons/components/UiTest3.d.ts +15 -0
  2207. package/dist/icons/components/UiTest3.d.ts.map +1 -0
  2208. package/dist/icons/components/UiTest3.js +21 -0
  2209. package/dist/icons/components/UiTest3.js.map +1 -0
  2210. package/dist/icons/components/UiTest4.cjs +15 -0
  2211. package/dist/icons/components/UiTest4.cjs.map +1 -0
  2212. package/dist/icons/components/UiTest4.d.ts +15 -0
  2213. package/dist/icons/components/UiTest4.d.ts.map +1 -0
  2214. package/dist/icons/components/UiTest4.js +15 -0
  2215. package/dist/icons/components/UiTest4.js.map +1 -0
  2216. package/dist/icons/components/UiTest5.cjs +25 -0
  2217. package/dist/icons/components/UiTest5.cjs.map +1 -0
  2218. package/dist/icons/components/UiTest5.d.ts +15 -0
  2219. package/dist/icons/components/UiTest5.d.ts.map +1 -0
  2220. package/dist/icons/components/UiTest5.js +25 -0
  2221. package/dist/icons/components/UiTest5.js.map +1 -0
  2222. package/dist/icons/components/UiTest6.cjs +30 -0
  2223. package/dist/icons/components/UiTest6.cjs.map +1 -0
  2224. package/dist/icons/components/UiTest6.d.ts +15 -0
  2225. package/dist/icons/components/UiTest6.d.ts.map +1 -0
  2226. package/dist/icons/components/UiTest6.js +30 -0
  2227. package/dist/icons/components/UiTest6.js.map +1 -0
  2228. package/dist/icons/components/UiTest7.cjs +25 -0
  2229. package/dist/icons/components/UiTest7.cjs.map +1 -0
  2230. package/dist/icons/components/UiTest7.d.ts +15 -0
  2231. package/dist/icons/components/UiTest7.d.ts.map +1 -0
  2232. package/dist/icons/components/UiTest7.js +25 -0
  2233. package/dist/icons/components/UiTest7.js.map +1 -0
  2234. package/dist/icons/components/UiText.cjs +21 -0
  2235. package/dist/icons/components/UiText.cjs.map +1 -0
  2236. package/dist/icons/components/UiText.d.ts +15 -0
  2237. package/dist/icons/components/UiText.d.ts.map +1 -0
  2238. package/dist/icons/components/UiText.js +21 -0
  2239. package/dist/icons/components/UiText.js.map +1 -0
  2240. package/dist/icons/components/UiTransactionStart.cjs +31 -0
  2241. package/dist/icons/components/UiTransactionStart.cjs.map +1 -0
  2242. package/dist/icons/components/UiTransactionStart.d.ts +15 -0
  2243. package/dist/icons/components/UiTransactionStart.d.ts.map +1 -0
  2244. package/dist/icons/components/UiTransactionStart.js +31 -0
  2245. package/dist/icons/components/UiTransactionStart.js.map +1 -0
  2246. package/dist/icons/components/UiTypeScriptIndexSignature.cjs +29 -0
  2247. package/dist/icons/components/UiTypeScriptIndexSignature.cjs.map +1 -0
  2248. package/dist/icons/components/UiTypeScriptIndexSignature.d.ts +15 -0
  2249. package/dist/icons/components/UiTypeScriptIndexSignature.d.ts.map +1 -0
  2250. package/dist/icons/components/UiTypeScriptIndexSignature.js +29 -0
  2251. package/dist/icons/components/UiTypeScriptIndexSignature.js.map +1 -0
  2252. package/dist/icons/components/UiUndeploy.cjs +29 -0
  2253. package/dist/icons/components/UiUndeploy.cjs.map +1 -0
  2254. package/dist/icons/components/UiUndeploy.d.ts +15 -0
  2255. package/dist/icons/components/UiUndeploy.d.ts.map +1 -0
  2256. package/dist/icons/components/UiUndeploy.js +29 -0
  2257. package/dist/icons/components/UiUndeploy.js.map +1 -0
  2258. package/dist/icons/components/UiVariable1.cjs +29 -0
  2259. package/dist/icons/components/UiVariable1.cjs.map +1 -0
  2260. package/dist/icons/components/UiVariable1.d.ts +15 -0
  2261. package/dist/icons/components/UiVariable1.d.ts.map +1 -0
  2262. package/dist/icons/components/UiVariable1.js +29 -0
  2263. package/dist/icons/components/UiVariable1.js.map +1 -0
  2264. package/dist/icons/components/UiVariable2.cjs +21 -0
  2265. package/dist/icons/components/UiVariable2.cjs.map +1 -0
  2266. package/dist/icons/components/UiVariable2.d.ts +15 -0
  2267. package/dist/icons/components/UiVariable2.d.ts.map +1 -0
  2268. package/dist/icons/components/UiVariable2.js +21 -0
  2269. package/dist/icons/components/UiVariable2.js.map +1 -0
  2270. package/dist/icons/components/UiVariable3.cjs +25 -0
  2271. package/dist/icons/components/UiVariable3.cjs.map +1 -0
  2272. package/dist/icons/components/UiVariable3.d.ts +15 -0
  2273. package/dist/icons/components/UiVariable3.d.ts.map +1 -0
  2274. package/dist/icons/components/UiVariable3.js +25 -0
  2275. package/dist/icons/components/UiVariable3.js.map +1 -0
  2276. package/dist/icons/components/UiVariable4.cjs +31 -0
  2277. package/dist/icons/components/UiVariable4.cjs.map +1 -0
  2278. package/dist/icons/components/UiVariable4.d.ts +15 -0
  2279. package/dist/icons/components/UiVariable4.d.ts.map +1 -0
  2280. package/dist/icons/components/UiVariable4.js +31 -0
  2281. package/dist/icons/components/UiVariable4.js.map +1 -0
  2282. package/dist/icons/components/UiVariable5.cjs +21 -0
  2283. package/dist/icons/components/UiVariable5.cjs.map +1 -0
  2284. package/dist/icons/components/UiVariable5.d.ts +15 -0
  2285. package/dist/icons/components/UiVariable5.d.ts.map +1 -0
  2286. package/dist/icons/components/UiVariable5.js +21 -0
  2287. package/dist/icons/components/UiVariable5.js.map +1 -0
  2288. package/dist/icons/components/UiVariable6.cjs +21 -0
  2289. package/dist/icons/components/UiVariable6.cjs.map +1 -0
  2290. package/dist/icons/components/UiVariable6.d.ts +15 -0
  2291. package/dist/icons/components/UiVariable6.d.ts.map +1 -0
  2292. package/dist/icons/components/UiVariable6.js +21 -0
  2293. package/dist/icons/components/UiVariable6.js.map +1 -0
  2294. package/dist/icons/components/UiVirtualForeignKey.cjs +25 -0
  2295. package/dist/icons/components/UiVirtualForeignKey.cjs.map +1 -0
  2296. package/dist/icons/components/UiVirtualForeignKey.d.ts +15 -0
  2297. package/dist/icons/components/UiVirtualForeignKey.d.ts.map +1 -0
  2298. package/dist/icons/components/UiVirtualForeignKey.js +25 -0
  2299. package/dist/icons/components/UiVirtualForeignKey.js.map +1 -0
  2300. package/dist/icons/components/UiWebArtifact.cjs +47 -0
  2301. package/dist/icons/components/UiWebArtifact.cjs.map +1 -0
  2302. package/dist/icons/components/UiWebArtifact.d.ts +15 -0
  2303. package/dist/icons/components/UiWebArtifact.d.ts.map +1 -0
  2304. package/dist/icons/components/UiWebArtifact.js +47 -0
  2305. package/dist/icons/components/UiWebArtifact.js.map +1 -0
  2306. package/dist/icons/components/UiWebServiceClient.cjs +27 -0
  2307. package/dist/icons/components/UiWebServiceClient.cjs.map +1 -0
  2308. package/dist/icons/components/UiWebServiceClient.d.ts +15 -0
  2309. package/dist/icons/components/UiWebServiceClient.d.ts.map +1 -0
  2310. package/dist/icons/components/UiWebServiceClient.js +27 -0
  2311. package/dist/icons/components/UiWebServiceClient.js.map +1 -0
  2312. package/dist/icons/components/UiWriteAccess.cjs +21 -0
  2313. package/dist/icons/components/UiWriteAccess.cjs.map +1 -0
  2314. package/dist/icons/components/UiWriteAccess.d.ts +15 -0
  2315. package/dist/icons/components/UiWriteAccess.d.ts.map +1 -0
  2316. package/dist/icons/components/UiWriteAccess.js +21 -0
  2317. package/dist/icons/components/UiWriteAccess.js.map +1 -0
  2318. package/dist/icons/components/UiXpath.cjs +21 -0
  2319. package/dist/icons/components/UiXpath.cjs.map +1 -0
  2320. package/dist/icons/components/UiXpath.d.ts +15 -0
  2321. package/dist/icons/components/UiXpath.d.ts.map +1 -0
  2322. package/dist/icons/components/UiXpath.js +21 -0
  2323. package/dist/icons/components/UiXpath.js.map +1 -0
  2324. package/dist/icons/components/UiXpath1.cjs +21 -0
  2325. package/dist/icons/components/UiXpath1.cjs.map +1 -0
  2326. package/dist/icons/components/UiXpath1.d.ts +15 -0
  2327. package/dist/icons/components/UiXpath1.d.ts.map +1 -0
  2328. package/dist/icons/components/UiXpath1.js +21 -0
  2329. package/dist/icons/components/UiXpath1.js.map +1 -0
  2330. package/dist/icons/index.d.ts +447 -0
  2331. package/dist/icons/index.d.ts.map +1 -1
  2332. package/dist/icons/programmingCatalog.cjs +418 -0
  2333. package/dist/icons/programmingCatalog.cjs.map +1 -0
  2334. package/dist/icons/programmingCatalog.d.ts +16 -0
  2335. package/dist/icons/programmingCatalog.d.ts.map +1 -0
  2336. package/dist/icons/programmingCatalog.js +418 -0
  2337. package/dist/icons/programmingCatalog.js.map +1 -0
  2338. package/dist/icons/registry.cjs +479 -1
  2339. package/dist/icons/registry.cjs.map +1 -1
  2340. package/dist/icons/registry.d.ts.map +1 -1
  2341. package/dist/icons/registry.js +479 -1
  2342. package/dist/icons/registry.js.map +1 -1
  2343. package/dist/icons.cjs +686 -0
  2344. package/dist/icons.cjs.map +1 -1
  2345. package/dist/icons.js +687 -1
  2346. package/dist/icons.js.map +1 -1
  2347. package/dist/index.cjs +752 -1
  2348. package/dist/index.cjs.map +1 -1
  2349. package/dist/index.js +749 -4
  2350. package/dist/index.js.map +1 -1
  2351. package/dist/jotai.d.ts +1 -1
  2352. package/dist/jotai.d.ts.map +1 -1
  2353. package/dist/layout/AppShell.cjs +6 -0
  2354. package/dist/layout/AppShell.cjs.map +1 -1
  2355. package/dist/layout/AppShell.d.ts.map +1 -1
  2356. package/dist/layout/AppShell.js +6 -0
  2357. package/dist/layout/AppShell.js.map +1 -1
  2358. package/dist/layout/Workspace.model.cjs +5 -0
  2359. package/dist/layout/Workspace.model.cjs.map +1 -1
  2360. package/dist/layout/Workspace.model.d.ts +2 -0
  2361. package/dist/layout/Workspace.model.d.ts.map +1 -1
  2362. package/dist/layout/Workspace.model.js +5 -0
  2363. package/dist/layout/Workspace.model.js.map +1 -1
  2364. package/dist/layout/Workspace.regions.cjs +2 -2
  2365. package/dist/layout/Workspace.regions.cjs.map +1 -1
  2366. package/dist/layout/Workspace.regions.d.ts.map +1 -1
  2367. package/dist/layout/Workspace.regions.js +2 -2
  2368. package/dist/layout/Workspace.regions.js.map +1 -1
  2369. package/dist/lib/duration.cjs +67 -0
  2370. package/dist/lib/duration.cjs.map +1 -0
  2371. package/dist/lib/duration.d.ts +15 -0
  2372. package/dist/lib/duration.d.ts.map +1 -0
  2373. package/dist/lib/duration.js +67 -0
  2374. package/dist/lib/duration.js.map +1 -0
  2375. package/dist/lib/runtime-profile-model.cjs +1 -1
  2376. package/dist/lib/runtime-profile-model.cjs.map +1 -1
  2377. package/dist/lib/runtime-profile-model.d.ts.map +1 -1
  2378. package/dist/lib/runtime-profile-model.js +1 -1
  2379. package/dist/lib/runtime-profile-model.js.map +1 -1
  2380. package/dist/lib/shell-command.cjs +17 -0
  2381. package/dist/lib/shell-command.cjs.map +1 -0
  2382. package/dist/lib/shell-command.d.ts +7 -0
  2383. package/dist/lib/shell-command.d.ts.map +1 -0
  2384. package/dist/lib/shell-command.js +17 -0
  2385. package/dist/lib/shell-command.js.map +1 -0
  2386. package/dist/lib/string.cjs +29 -4
  2387. package/dist/lib/string.cjs.map +1 -1
  2388. package/dist/lib/string.d.ts +3 -1
  2389. package/dist/lib/string.d.ts.map +1 -1
  2390. package/dist/lib/string.js +29 -4
  2391. package/dist/lib/string.js.map +1 -1
  2392. package/dist/monaco/MonacoEditor.cjs +7 -1
  2393. package/dist/monaco/MonacoEditor.cjs.map +1 -1
  2394. package/dist/monaco/MonacoEditor.d.ts.map +1 -1
  2395. package/dist/monaco/MonacoEditor.js +7 -1
  2396. package/dist/monaco/MonacoEditor.js.map +1 -1
  2397. package/dist/overlay/ConfirmDialog.cjs +70 -0
  2398. package/dist/overlay/ConfirmDialog.cjs.map +1 -0
  2399. package/dist/overlay/ConfirmDialog.d.ts +40 -0
  2400. package/dist/overlay/ConfirmDialog.d.ts.map +1 -0
  2401. package/dist/overlay/ConfirmDialog.js +70 -0
  2402. package/dist/overlay/ConfirmDialog.js.map +1 -0
  2403. package/dist/overlay/Modal.cjs +2 -1
  2404. package/dist/overlay/Modal.cjs.map +1 -1
  2405. package/dist/overlay/Modal.d.ts.map +1 -1
  2406. package/dist/overlay/Modal.js +2 -1
  2407. package/dist/overlay/Modal.js.map +1 -1
  2408. package/dist/overlay/confirmMemory.cjs +50 -0
  2409. package/dist/overlay/confirmMemory.cjs.map +1 -0
  2410. package/dist/overlay/confirmMemory.d.ts +8 -0
  2411. package/dist/overlay/confirmMemory.d.ts.map +1 -0
  2412. package/dist/overlay/confirmMemory.js +50 -0
  2413. package/dist/overlay/confirmMemory.js.map +1 -0
  2414. package/dist/overlay/useConfirm.cjs +45 -0
  2415. package/dist/overlay/useConfirm.cjs.map +1 -0
  2416. package/dist/overlay/useConfirm.d.ts +19 -0
  2417. package/dist/overlay/useConfirm.d.ts.map +1 -0
  2418. package/dist/overlay/useConfirm.js +45 -0
  2419. package/dist/overlay/useConfirm.js.map +1 -0
  2420. package/dist/profiles/cel/celEditor.cjs +44 -134
  2421. package/dist/profiles/cel/celEditor.cjs.map +1 -1
  2422. package/dist/profiles/cel/celEditor.d.ts +4 -3
  2423. package/dist/profiles/cel/celEditor.d.ts.map +1 -1
  2424. package/dist/profiles/cel/celEditor.js +45 -135
  2425. package/dist/profiles/cel/celEditor.js.map +1 -1
  2426. package/dist/profiles/cel/celEditorResults.cjs +133 -0
  2427. package/dist/profiles/cel/celEditorResults.cjs.map +1 -0
  2428. package/dist/profiles/cel/celEditorResults.d.ts +37 -0
  2429. package/dist/profiles/cel/celEditorResults.d.ts.map +1 -0
  2430. package/dist/profiles/cel/celEditorResults.js +133 -0
  2431. package/dist/profiles/cel/celEditorResults.js.map +1 -0
  2432. package/dist/profiles/cel/celExamples.cjs +134 -0
  2433. package/dist/profiles/cel/celExamples.cjs.map +1 -0
  2434. package/dist/profiles/cel/celExamples.d.ts +30 -0
  2435. package/dist/profiles/cel/celExamples.d.ts.map +1 -0
  2436. package/dist/profiles/cel/celExamples.js +134 -0
  2437. package/dist/profiles/cel/celExamples.js.map +1 -0
  2438. package/dist/profiles/cel/celExpression.cjs +16 -63
  2439. package/dist/profiles/cel/celExpression.cjs.map +1 -1
  2440. package/dist/profiles/cel/celExpression.d.ts +36 -21
  2441. package/dist/profiles/cel/celExpression.d.ts.map +1 -1
  2442. package/dist/profiles/cel/celExpression.js +16 -63
  2443. package/dist/profiles/cel/celExpression.js.map +1 -1
  2444. package/dist/profiles/cel/celPath.cjs +2 -1
  2445. package/dist/profiles/cel/celPath.cjs.map +1 -1
  2446. package/dist/profiles/cel/celPath.d.ts +3 -0
  2447. package/dist/profiles/cel/celPath.d.ts.map +1 -1
  2448. package/dist/profiles/cel/celPath.js +2 -1
  2449. package/dist/profiles/cel/celPath.js.map +1 -1
  2450. package/dist/profiles/cel/index.d.ts +1 -0
  2451. package/dist/profiles/cel/index.d.ts.map +1 -1
  2452. package/dist/profiles/connections/catalogTree.cjs +4 -4
  2453. package/dist/profiles/connections/catalogTree.cjs.map +1 -1
  2454. package/dist/profiles/connections/catalogTree.js +4 -4
  2455. package/dist/profiles/connections/catalogTree.js.map +1 -1
  2456. package/dist/profiles/editor/profileEditor.cjs +106 -79
  2457. package/dist/profiles/editor/profileEditor.cjs.map +1 -1
  2458. package/dist/profiles/editor/profileEditor.d.ts +2 -2
  2459. package/dist/profiles/editor/profileEditor.d.ts.map +1 -1
  2460. package/dist/profiles/editor/profileEditor.js +110 -83
  2461. package/dist/profiles/editor/profileEditor.js.map +1 -1
  2462. package/dist/profiles/editor/profileEditorModel.cjs +3 -2
  2463. package/dist/profiles/editor/profileEditorModel.cjs.map +1 -1
  2464. package/dist/profiles/editor/profileEditorModel.d.ts.map +1 -1
  2465. package/dist/profiles/editor/profileEditorModel.js +4 -3
  2466. package/dist/profiles/editor/profileEditorModel.js.map +1 -1
  2467. package/dist/profiles/editor/profileEditorRail.cjs +85 -28
  2468. package/dist/profiles/editor/profileEditorRail.cjs.map +1 -1
  2469. package/dist/profiles/editor/profileEditorRail.d.ts +5 -2
  2470. package/dist/profiles/editor/profileEditorRail.d.ts.map +1 -1
  2471. package/dist/profiles/editor/profileEditorRail.js +85 -28
  2472. package/dist/profiles/editor/profileEditorRail.js.map +1 -1
  2473. package/dist/profiles/editor/profileParameterEditor.cjs +228 -0
  2474. package/dist/profiles/editor/profileParameterEditor.cjs.map +1 -0
  2475. package/dist/profiles/editor/profileParameterEditor.d.ts +12 -0
  2476. package/dist/profiles/editor/profileParameterEditor.d.ts.map +1 -0
  2477. package/dist/profiles/editor/profileParameterEditor.js +228 -0
  2478. package/dist/profiles/editor/profileParameterEditor.js.map +1 -0
  2479. package/dist/profiles/editor/profileYaml.cjs +1 -1
  2480. package/dist/profiles/editor/profileYaml.cjs.map +1 -1
  2481. package/dist/profiles/editor/profileYaml.js +2 -2
  2482. package/dist/profiles/editor/profileYaml.js.map +1 -1
  2483. package/dist/profiles/editor/testSchema.d.ts.map +1 -1
  2484. package/dist/profiles/fields/profileFieldControls.cjs +26 -13
  2485. package/dist/profiles/fields/profileFieldControls.cjs.map +1 -1
  2486. package/dist/profiles/fields/profileFieldControls.d.ts +3 -6
  2487. package/dist/profiles/fields/profileFieldControls.d.ts.map +1 -1
  2488. package/dist/profiles/fields/profileFieldControls.js +26 -13
  2489. package/dist/profiles/fields/profileFieldControls.js.map +1 -1
  2490. package/dist/profiles/fields/profileFieldEditor.cjs +0 -1
  2491. package/dist/profiles/fields/profileFieldEditor.cjs.map +1 -1
  2492. package/dist/profiles/fields/profileFieldEditor.d.ts.map +1 -1
  2493. package/dist/profiles/fields/profileFieldEditor.js +0 -1
  2494. package/dist/profiles/fields/profileFieldEditor.js.map +1 -1
  2495. package/dist/profiles/fields/profileFieldList.cjs +229 -12
  2496. package/dist/profiles/fields/profileFieldList.cjs.map +1 -1
  2497. package/dist/profiles/fields/profileFieldList.d.ts +10 -0
  2498. package/dist/profiles/fields/profileFieldList.d.ts.map +1 -1
  2499. package/dist/profiles/fields/profileFieldList.js +230 -13
  2500. package/dist/profiles/fields/profileFieldList.js.map +1 -1
  2501. package/dist/profiles/processor/processorPipeline.cjs +126 -78
  2502. package/dist/profiles/processor/processorPipeline.cjs.map +1 -1
  2503. package/dist/profiles/processor/processorPipeline.d.ts +6 -1
  2504. package/dist/profiles/processor/processorPipeline.d.ts.map +1 -1
  2505. package/dist/profiles/processor/processorPipeline.js +126 -78
  2506. package/dist/profiles/processor/processorPipeline.js.map +1 -1
  2507. package/dist/profiles.cjs +4 -1
  2508. package/dist/profiles.cjs.map +1 -1
  2509. package/dist/profiles.js +5 -2
  2510. package/dist/profiles.js.map +1 -1
  2511. package/dist/rpc/CommandOutput.cjs +29 -1
  2512. package/dist/rpc/CommandOutput.cjs.map +1 -1
  2513. package/dist/rpc/CommandOutput.d.ts +10 -2
  2514. package/dist/rpc/CommandOutput.d.ts.map +1 -1
  2515. package/dist/rpc/CommandOutput.js +29 -1
  2516. package/dist/rpc/CommandOutput.js.map +1 -1
  2517. package/dist/rpc/EndpointList.cjs.map +1 -1
  2518. package/dist/rpc/EndpointList.d.ts +7 -1
  2519. package/dist/rpc/EndpointList.d.ts.map +1 -1
  2520. package/dist/rpc/EndpointList.js.map +1 -1
  2521. package/dist/rpc/FilterFormFields.cjs +25 -4
  2522. package/dist/rpc/FilterFormFields.cjs.map +1 -1
  2523. package/dist/rpc/FilterFormFields.d.ts.map +1 -1
  2524. package/dist/rpc/FilterFormFields.js +25 -4
  2525. package/dist/rpc/FilterFormFields.js.map +1 -1
  2526. package/dist/rpc/OperationCatalog.cjs +201 -91
  2527. package/dist/rpc/OperationCatalog.cjs.map +1 -1
  2528. package/dist/rpc/OperationCatalog.d.ts +71 -2
  2529. package/dist/rpc/OperationCatalog.d.ts.map +1 -1
  2530. package/dist/rpc/OperationCatalog.js +202 -92
  2531. package/dist/rpc/OperationCatalog.js.map +1 -1
  2532. package/dist/rpc/OperationCatalogFollowStatus.cjs +61 -0
  2533. package/dist/rpc/OperationCatalogFollowStatus.cjs.map +1 -0
  2534. package/dist/rpc/OperationCatalogFollowStatus.d.ts +20 -0
  2535. package/dist/rpc/OperationCatalogFollowStatus.d.ts.map +1 -0
  2536. package/dist/rpc/OperationCatalogFollowStatus.js +61 -0
  2537. package/dist/rpc/OperationCatalogFollowStatus.js.map +1 -0
  2538. package/dist/rpc/OperationPicker.cjs +45 -0
  2539. package/dist/rpc/OperationPicker.cjs.map +1 -0
  2540. package/dist/rpc/OperationPicker.d.ts +11 -0
  2541. package/dist/rpc/OperationPicker.d.ts.map +1 -0
  2542. package/dist/rpc/OperationPicker.js +45 -0
  2543. package/dist/rpc/OperationPicker.js.map +1 -0
  2544. package/dist/rpc/OperationResultView.cjs +16 -2
  2545. package/dist/rpc/OperationResultView.cjs.map +1 -1
  2546. package/dist/rpc/OperationResultView.d.ts +25 -2
  2547. package/dist/rpc/OperationResultView.d.ts.map +1 -1
  2548. package/dist/rpc/OperationResultView.js +16 -2
  2549. package/dist/rpc/OperationResultView.js.map +1 -1
  2550. package/dist/rpc/OperationScheduleDialog.cjs +207 -0
  2551. package/dist/rpc/OperationScheduleDialog.cjs.map +1 -0
  2552. package/dist/rpc/OperationScheduleDialog.d.ts +13 -0
  2553. package/dist/rpc/OperationScheduleDialog.d.ts.map +1 -0
  2554. package/dist/rpc/OperationScheduleDialog.js +207 -0
  2555. package/dist/rpc/OperationScheduleDialog.js.map +1 -0
  2556. package/dist/rpc/OperationSchedules.cjs +216 -0
  2557. package/dist/rpc/OperationSchedules.cjs.map +1 -0
  2558. package/dist/rpc/OperationSchedules.d.ts +3 -0
  2559. package/dist/rpc/OperationSchedules.d.ts.map +1 -0
  2560. package/dist/rpc/OperationSchedules.js +216 -0
  2561. package/dist/rpc/OperationSchedules.js.map +1 -0
  2562. package/dist/rpc/SessionHeader.cjs +149 -0
  2563. package/dist/rpc/SessionHeader.cjs.map +1 -0
  2564. package/dist/rpc/SessionHeader.d.ts +37 -0
  2565. package/dist/rpc/SessionHeader.d.ts.map +1 -0
  2566. package/dist/rpc/SessionHeader.js +149 -0
  2567. package/dist/rpc/SessionHeader.js.map +1 -0
  2568. package/dist/rpc/SessionHeaderControls.cjs +161 -0
  2569. package/dist/rpc/SessionHeaderControls.cjs.map +1 -0
  2570. package/dist/rpc/SessionHeaderControls.d.ts +25 -0
  2571. package/dist/rpc/SessionHeaderControls.d.ts.map +1 -0
  2572. package/dist/rpc/SessionHeaderControls.js +161 -0
  2573. package/dist/rpc/SessionHeaderControls.js.map +1 -0
  2574. package/dist/rpc/SessionsCatalog.cjs +64 -0
  2575. package/dist/rpc/SessionsCatalog.cjs.map +1 -0
  2576. package/dist/rpc/SessionsCatalog.d.ts +37 -0
  2577. package/dist/rpc/SessionsCatalog.d.ts.map +1 -0
  2578. package/dist/rpc/SessionsCatalog.js +64 -0
  2579. package/dist/rpc/SessionsCatalog.js.map +1 -0
  2580. package/dist/rpc/executionPages.cjs +3 -0
  2581. package/dist/rpc/executionPages.cjs.map +1 -1
  2582. package/dist/rpc/executionPages.d.ts +13 -0
  2583. package/dist/rpc/executionPages.d.ts.map +1 -1
  2584. package/dist/rpc/executionPages.js +3 -0
  2585. package/dist/rpc/executionPages.js.map +1 -1
  2586. package/dist/rpc/formMetadata.cjs +56 -5
  2587. package/dist/rpc/formMetadata.cjs.map +1 -1
  2588. package/dist/rpc/formMetadata.d.ts +1 -0
  2589. package/dist/rpc/formMetadata.d.ts.map +1 -1
  2590. package/dist/rpc/formMetadata.js +57 -6
  2591. package/dist/rpc/formMetadata.js.map +1 -1
  2592. package/dist/rpc/operation-cli-command.cjs +43 -0
  2593. package/dist/rpc/operation-cli-command.cjs.map +1 -0
  2594. package/dist/rpc/operation-cli-command.d.ts +4 -0
  2595. package/dist/rpc/operation-cli-command.d.ts.map +1 -0
  2596. package/dist/rpc/operation-cli-command.js +43 -0
  2597. package/dist/rpc/operation-cli-command.js.map +1 -0
  2598. package/dist/rpc/operation-schedule-model.cjs +56 -0
  2599. package/dist/rpc/operation-schedule-model.cjs.map +1 -0
  2600. package/dist/rpc/operation-schedule-model.d.ts +11 -0
  2601. package/dist/rpc/operation-schedule-model.d.ts.map +1 -0
  2602. package/dist/rpc/operation-schedule-model.js +56 -0
  2603. package/dist/rpc/operation-schedule-model.js.map +1 -0
  2604. package/dist/rpc/operation-schedule-types.d.ts +31 -0
  2605. package/dist/rpc/operation-schedule-types.d.ts.map +1 -0
  2606. package/dist/rpc/operationCatalogFilterState.cjs +34 -0
  2607. package/dist/rpc/operationCatalogFilterState.cjs.map +1 -0
  2608. package/dist/rpc/operationCatalogFilterState.d.ts +44 -0
  2609. package/dist/rpc/operationCatalogFilterState.d.ts.map +1 -0
  2610. package/dist/rpc/operationCatalogFilterState.js +34 -0
  2611. package/dist/rpc/operationCatalogFilterState.js.map +1 -0
  2612. package/dist/rpc/operationCatalogFollow.cjs +93 -0
  2613. package/dist/rpc/operationCatalogFollow.cjs.map +1 -0
  2614. package/dist/rpc/operationCatalogFollow.d.ts +85 -0
  2615. package/dist/rpc/operationCatalogFollow.d.ts.map +1 -0
  2616. package/dist/rpc/operationCatalogFollow.js +93 -0
  2617. package/dist/rpc/operationCatalogFollow.js.map +1 -0
  2618. package/dist/rpc/operationCatalogUrl.cjs +19 -4
  2619. package/dist/rpc/operationCatalogUrl.cjs.map +1 -1
  2620. package/dist/rpc/operationCatalogUrl.d.ts +2 -2
  2621. package/dist/rpc/operationCatalogUrl.d.ts.map +1 -1
  2622. package/dist/rpc/operationCatalogUrl.js +19 -4
  2623. package/dist/rpc/operationCatalogUrl.js.map +1 -1
  2624. package/dist/rpc/router.cjs +6 -2
  2625. package/dist/rpc/router.cjs.map +1 -1
  2626. package/dist/rpc/router.d.ts.map +1 -1
  2627. package/dist/rpc/router.js +6 -2
  2628. package/dist/rpc/router.js.map +1 -1
  2629. package/dist/rpc/session-story.fixtures.d.ts +13 -0
  2630. package/dist/rpc/session-story.fixtures.d.ts.map +1 -0
  2631. package/dist/rpc/sessionHeaderModel.cjs +54 -0
  2632. package/dist/rpc/sessionHeaderModel.cjs.map +1 -0
  2633. package/dist/rpc/sessionHeaderModel.d.ts +39 -0
  2634. package/dist/rpc/sessionHeaderModel.d.ts.map +1 -0
  2635. package/dist/rpc/sessionHeaderModel.js +54 -0
  2636. package/dist/rpc/sessionHeaderModel.js.map +1 -0
  2637. package/dist/rpc/sessionTypes.cjs +108 -0
  2638. package/dist/rpc/sessionTypes.cjs.map +1 -0
  2639. package/dist/rpc/sessionTypes.d.ts +99 -0
  2640. package/dist/rpc/sessionTypes.d.ts.map +1 -0
  2641. package/dist/rpc/sessionTypes.js +108 -0
  2642. package/dist/rpc/sessionTypes.js.map +1 -0
  2643. package/dist/rpc/types.cjs.map +1 -1
  2644. package/dist/rpc/types.d.ts +17 -3
  2645. package/dist/rpc/types.d.ts.map +1 -1
  2646. package/dist/rpc/types.js.map +1 -1
  2647. package/dist/rpc/useOperationCatalogFollow.cjs +37 -0
  2648. package/dist/rpc/useOperationCatalogFollow.cjs.map +1 -0
  2649. package/dist/rpc/useOperationCatalogFollow.d.ts +37 -0
  2650. package/dist/rpc/useOperationCatalogFollow.d.ts.map +1 -0
  2651. package/dist/rpc/useOperationCatalogFollow.js +37 -0
  2652. package/dist/rpc/useOperationCatalogFollow.js.map +1 -0
  2653. package/dist/rpc/useOperationPages.cjs +13 -6
  2654. package/dist/rpc/useOperationPages.cjs.map +1 -1
  2655. package/dist/rpc/useOperationPages.d.ts +10 -6
  2656. package/dist/rpc/useOperationPages.d.ts.map +1 -1
  2657. package/dist/rpc/useOperationPages.js +13 -6
  2658. package/dist/rpc/useOperationPages.js.map +1 -1
  2659. package/dist/rpc/useSession.cjs +86 -0
  2660. package/dist/rpc/useSession.cjs.map +1 -0
  2661. package/dist/rpc/useSession.d.ts +37 -0
  2662. package/dist/rpc/useSession.d.ts.map +1 -0
  2663. package/dist/rpc/useSession.js +86 -0
  2664. package/dist/rpc/useSession.js.map +1 -0
  2665. package/dist/rpc.cjs +37 -0
  2666. package/dist/rpc.cjs.map +1 -1
  2667. package/dist/rpc.d.ts +11 -0
  2668. package/dist/rpc.d.ts.map +1 -1
  2669. package/dist/rpc.js +31 -0
  2670. package/dist/rpc.js.map +1 -1
  2671. package/dist/styles.css +1 -1
  2672. package/dist/utils.cjs +3 -0
  2673. package/dist/utils.cjs.map +1 -1
  2674. package/dist/utils.d.ts +1 -0
  2675. package/dist/utils.d.ts.map +1 -1
  2676. package/dist/utils.js +3 -0
  2677. package/dist/utils.js.map +1 -1
  2678. package/package.json +1 -1
  2679. package/dist/data/ai/SpecRuntimeEditor/PresetCards.d.ts +0 -8
  2680. package/dist/data/ai/SpecRuntimeEditor/PresetCards.d.ts.map +0 -1
  2681. package/dist/data/ai/SpecRuntimeEditor/permission-preset-storage.cjs +0 -35
  2682. package/dist/data/ai/SpecRuntimeEditor/permission-preset-storage.cjs.map +0 -1
  2683. package/dist/data/ai/SpecRuntimeEditor/permission-preset-storage.d.ts +0 -5
  2684. package/dist/data/ai/SpecRuntimeEditor/permission-preset-storage.d.ts.map +0 -1
  2685. package/dist/data/ai/SpecRuntimeEditor/permission-preset-storage.js +0 -35
  2686. package/dist/data/ai/SpecRuntimeEditor/permission-preset-storage.js.map +0 -1
  2687. package/dist/data/ai/SpecRuntimeEditor/presets.cjs +0 -207
  2688. package/dist/data/ai/SpecRuntimeEditor/presets.cjs.map +0 -1
  2689. package/dist/data/ai/SpecRuntimeEditor/presets.d.ts +0 -34
  2690. package/dist/data/ai/SpecRuntimeEditor/presets.d.ts.map +0 -1
  2691. package/dist/data/ai/SpecRuntimeEditor/presets.js +0 -207
  2692. package/dist/data/ai/SpecRuntimeEditor/presets.js.map +0 -1
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/jotai.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export { JotaiFilterBar, JotaiJsonSchemaForm, } from './components/jotai-bindings';
2
2
  export { useJotaiFilterBarProps, useJotaiJsonSchemaFormProps, } from './components/jotai-bindings-core';
3
- export type { JotaiFilterBarBooleanFilter, JotaiFilterBarEnumFilter, JotaiFilterBarFilter, JotaiFilterBarLookupFilter, JotaiFilterBarLookupMultiFilter, JotaiFilterBarMultiFilter, JotaiFilterBarNestedMultiFilter, JotaiFilterBarNumberFilter, JotaiFilterBarProps, JotaiFilterBarRangeProps, JotaiFilterBarRangeValue, JotaiFilterBarSearchProps, JotaiFilterBarSelectMultiFilter, JotaiFilterBarTextFilter, JotaiFilterBarWorkloadFilter, JotaiJsonSchemaFormAtom, JotaiJsonSchemaFormProps, JotaiWritableAtom, } from './components/jotai-bindings-core';
3
+ export type { JotaiFilterBarBooleanFilter, JotaiFilterBarDurationFilter, JotaiFilterBarEnumFilter, JotaiFilterBarFilter, JotaiFilterBarLookupFilter, JotaiFilterBarLookupMultiFilter, JotaiFilterBarMultiFilter, JotaiFilterBarNestedMultiFilter, JotaiFilterBarNumberFilter, JotaiFilterBarProps, JotaiFilterBarRangeProps, JotaiFilterBarRangeValue, JotaiFilterBarSearchProps, JotaiFilterBarSelectMultiFilter, JotaiFilterBarTextFilter, JotaiFilterBarWorkloadFilter, JotaiJsonSchemaFormAtom, JotaiJsonSchemaFormProps, JotaiWritableAtom, } from './components/jotai-bindings-core';
4
4
  //# sourceMappingURL=jotai.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"jotai.d.ts","sourceRoot":"","sources":["../src/jotai.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACV,2BAA2B,EAC3B,wBAAwB,EACxB,oBAAoB,EACpB,0BAA0B,EAC1B,+BAA+B,EAC/B,yBAAyB,EACzB,+BAA+B,EAC/B,0BAA0B,EAC1B,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"jotai.d.ts","sourceRoot":"","sources":["../src/jotai.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACV,2BAA2B,EAC3B,4BAA4B,EAC5B,wBAAwB,EACxB,oBAAoB,EACpB,0BAA0B,EAC1B,+BAA+B,EAC/B,yBAAyB,EACzB,+BAA+B,EAC/B,0BAA0B,EAC1B,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,kCAAkC,CAAC"}
@@ -262,6 +262,12 @@ function AppShell(props) {
262
262
  "data-slot": "app-shell-actions",
263
263
  className: utils.cn(
264
264
  "flex shrink-0 items-center gap-density-2",
265
+ // Below md the cluster must never be wider than the
266
+ // phone: a shrink-0 row that overflows widens the layout
267
+ // viewport, and then every fixed overlay on the page
268
+ // loses its right edge. Let it shrink and scroll its own
269
+ // contents instead, the same guard the nav slot has.
270
+ "max-md:min-w-0 max-md:max-w-full max-md:shrink max-md:overflow-x-auto",
265
271
  hasSidebar && "order-1 ml-auto md:order-none md:ml-0"
266
272
  ),
267
273
  children: !hasSidebar || mobileActions === void 0 ? actions : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -1 +1 @@
1
- {"version":3,"file":"AppShell.cjs","sources":["../../src/layout/AppShell.tsx"],"sourcesContent":["import { useEffect, useState, type ReactNode } from \"react\";\nimport { cn } from \"../lib/utils\";\nimport { Icon, type StaticIconComponent } from \"../data/Icon\";\nimport { UiClose, UiMenu, UiSidebar } from \"../icons\";\nimport { useEscapeLayer } from \"../overlay/modalStack\";\nimport type { DropdownMenuItem } from \"../overlay/DropdownMenu\";\nimport { SplitPane } from \"./SplitPane\";\nimport { AppShellSlotOutlines } from \"./AppShell.debug\";\nimport { NavSections, type GroupState } from \"./AppShell.nav\";\nimport type { AppShellNavDrag } from \"./AppShell.nav.drag\";\nimport { contentWidthClassName, type ContentWidth } from \"./content-width\";\n\n// AppShell is a sidebar-first application shell. The full-height DARK nav rail\n// owns the brand + collapse toggle and renders grouped nav sections; the top bar\n// (search, actions) sits to the RIGHT of the rail — there is no full-width top\n// bar when a rail is present. With no rail, the top bar spans full width. The\n// body carries a fixed bodyHeader + bodyActions row over an optional\n// bodySidebar | body-main split (body-main scrolls; bodySidebar — e.g. a tree —\n// scrolls independently via a resizable SplitPane).\n\nexport type AppShellNavItem = {\n /** Stable key; also the React key. */\n key: string;\n /** Visible label (hidden when the rail is collapsed). */\n label: ReactNode;\n /** Leading icon (icon name or component). */\n icon?: string | StaticIconComponent;\n /** Highlights the item as the current location. */\n active?: boolean;\n /** Routing destination; rendered as an anchor via the RouterAdapter. */\n to: string;\n /** Opens `to` in a new tab. */\n external?: boolean;\n /** Trailing adornment (count, status dot). */\n badge?: ReactNode;\n /** Actions opened by right-click, the Context Menu key, or Shift+F10. */\n contextMenu?: DropdownMenuItem[];\n /** Accessible label for the context menu. Defaults to `<label> actions`. */\n contextMenuLabel?: string;\n};\n\nexport type AppShellNavGroup = {\n /** Stable key; also the key its collapsed state persists under. */\n key: string;\n /** Group heading rendered on the toggle row. */\n label: string;\n /** Leading icon (icon name or component). */\n icon?: string | StaticIconComponent;\n /** Trailing adornment (aggregate count, status dot). */\n badge?: ReactNode;\n /** Actions opened from the group heading's context menu. */\n contextMenu?: DropdownMenuItem[];\n /** Accessible label for the context menu. Defaults to `<label> actions`. */\n contextMenuLabel?: string;\n /** Folded on first render until the user toggles it. */\n defaultCollapsed?: boolean;\n /**\n * Keeps the group open regardless of stored state, so a deep-linked\n * destination can never hide under a folder the user collapsed earlier.\n * Mirrors `Tree.revealSelected`: set it on the active item's ancestors.\n */\n forceExpanded?: boolean;\n items: AppShellNavItem[];\n /**\n * Nested sub-groups, rendered after `items` at one further indent. Groups\n * nest arbitrarily, so a backend hierarchy deeper than two levels does not\n * have to be flattened to fit the rail.\n */\n groups?: AppShellNavGroup[];\n /**\n * Makes the group's own heading row a destination as well as a disclosure:\n * the label becomes a nav link and the chevron sits beside it as a separate\n * control. Needed wherever a node is both a folder and a leaf — e.g. a\n * profile named `jms` that is runnable *and* the parent of `jms.incoming`.\n */\n item?: AppShellNavItem;\n};\n\nexport type AppShellNavSection = {\n /** Section heading; collapses to a divider when the rail is collapsed. */\n label?: string;\n items?: AppShellNavItem[];\n /** Collapsible groups rendered after the flat items. High-cardinality\n * clusters (provider surfaces, per-ledger journals) belong here so they can\n * be folded away; a collapsed rail flattens them back to plain items. */\n groups?: AppShellNavGroup[];\n /**\n * How the groups read.\n *\n * `\"list\"` (the default) styles each group heading as a small uppercase\n * cluster label — right for a handful of named clusters under one section.\n *\n * `\"tree\"` styles headings as ordinary nav rows, because in a tree a folder\n * sits at the same level as its sibling destinations: a group carrying an\n * `item` renders as a link either way, so an uppercase heading beside it\n * would make two nodes of the same kind look like different things.\n */\n variant?: \"list\" | \"tree\";\n /**\n * Makes the section's rows draggable onto one another, so a hierarchy can be\n * rearranged in place. The section stays the boundary — a row never lands in\n * a different section — and the consumer owns what a move means. Ignored\n * while the rail is collapsed, where there are no folder rows to aim at.\n */\n drag?: AppShellNavDrag;\n};\n\nexport type AppShellProps = {\n // ── Top bar (right of the rail; full width when no rail) ─\n /** Brand mark / wordmark. Shown in the rail header when a rail is present, else in the top bar. */\n brand?: ReactNode;\n /** Inline primary nav (e.g. tabs) shown after the brand in the top bar. */\n nav?: ReactNode;\n /** Centered search slot; grows to fill and is width-capped. */\n search?: ReactNode;\n /** Right-aligned cluster (icon buttons, settings/org picker, …). */\n actions?: ReactNode;\n /** Compact action cluster used in the mobile header. Defaults to `actions`. */\n mobileActions?: ReactNode;\n /** Optional second top-bar row for filters / bulk actions. */\n toolbar?: ReactNode;\n /** Max width of the centered search slot. Defaults to 28rem. */\n searchMaxWidth?: string | number;\n\n // ── Left nav rail (dark, collapsible, fixed width) ───────\n /** Declarative nav sections rendered into the rail (collapse-aware). */\n navSections?: AppShellNavSection[];\n /** Custom sidebar content; receives the collapsed flag. Overrides navSections. */\n sidebar?: ReactNode | ((collapsed: boolean) => ReactNode);\n /** Pinned below the rail header (e.g. a context switcher). */\n sidebarHeader?: ReactNode;\n /** Pinned to the bottom of the rail (version, account). */\n sidebarFooter?: ReactNode;\n /** Show the collapse toggle. Defaults to true when a rail is present. */\n collapsible?: boolean;\n /** Initial collapsed state (uncontrolled). */\n defaultCollapsed?: boolean;\n /** localStorage key persisting the collapsed state. */\n collapsedStorageKey?: string;\n /** localStorage key persisting per-group collapsed state. */\n groupCollapsedStorageKey?: string;\n /** Expanded rail width in px. Defaults to 240. */\n sidebarWidth?: number;\n /** Collapsed rail width in px. Defaults to 56. */\n collapsedWidth?: number;\n /** Accessible label for the mobile navigation drawer. Defaults to \"Navigation\". */\n mobileSidebarLabel?: string;\n\n // ── Body ─────────────────────────────────────────────────\n /** Fixed header row, left side (breadcrumb, title, tabs). */\n bodyHeader?: ReactNode;\n /** Fixed header row, right side (entity actions) — same row as bodyHeader. */\n bodyActions?: ReactNode;\n /** Optional independent-scroll pane (e.g. a tree). Renders a SplitPane vs body-main. */\n bodySidebar?: ReactNode;\n /** bodySidebar width as a percent when present. Defaults to 24. */\n bodySplit?: number;\n /** Main content (body-main); fills the remaining space and scrolls. */\n children: ReactNode;\n /** Centers content at responsive wide breakpoints, or allows it to fill the workspace. */\n contentWidth?: ContentWidth;\n\n /**\n * Outlines every slot in its own colour and labels it with its `data-slot`\n * name — a layout-debugging aid for working out which region owns a given\n * area or scrollbar. Uses `outline`, so enabling it does not shift layout.\n */\n debugSlots?: boolean;\n\n className?: string;\n headerClassName?: string;\n toolbarClassName?: string;\n sidebarClassName?: string;\n bodyHeaderClassName?: string;\n contentClassName?: string;\n};\n\nfunction readStored(key: string | undefined): string | null {\n if (!key || typeof window === \"undefined\") return null;\n return window.localStorage.getItem(key);\n}\n\nconst DEFAULT_GROUP_COLLAPSE_KEY = \"clicky-ui:app-shell:groups\";\n\nfunction readGroupState(storageKey: string): Record<string, boolean> {\n if (typeof window === \"undefined\") return {};\n try {\n const raw = window.localStorage.getItem(storageKey);\n if (!raw) return {};\n const parsed = JSON.parse(raw);\n return parsed && typeof parsed === \"object\"\n ? (parsed as Record<string, boolean>)\n : {};\n } catch {\n return {};\n }\n}\n\n// Lives here rather than in AppShell.nav so a single instance can be shared by\n// both NavSections renders (rail + mobile drawer).\nfunction useGroupCollapsed(storageKey: string): GroupState {\n const [state, setState] = useState<Record<string, boolean>>(() =>\n readGroupState(storageKey),\n );\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n try {\n window.localStorage.setItem(storageKey, JSON.stringify(state));\n } catch {\n // Rail state is a UX nicety; private-mode storage failures are safe to swallow.\n }\n }, [state, storageKey]);\n return {\n isCollapsed: (key, fallback) => state[key] ?? fallback,\n toggle: (key, fallback) =>\n setState((prev) => ({ ...prev, [key]: !(prev[key] ?? fallback) })),\n };\n}\n\nexport function AppShell(props: AppShellProps) {\n const {\n brand,\n nav,\n search,\n actions,\n mobileActions,\n toolbar,\n searchMaxWidth = \"28rem\",\n navSections,\n sidebar,\n sidebarHeader,\n sidebarFooter,\n collapsible = true,\n defaultCollapsed = false,\n collapsedStorageKey,\n groupCollapsedStorageKey,\n sidebarWidth = 240,\n collapsedWidth = 56,\n mobileSidebarLabel = \"Navigation\",\n bodyHeader,\n bodyActions,\n bodySidebar,\n bodySplit = 24,\n children,\n contentWidth = \"contained\",\n debugSlots = false,\n className,\n headerClassName,\n toolbarClassName,\n sidebarClassName,\n bodyHeaderClassName,\n contentClassName,\n } = props;\n\n const hasSidebar = sidebar !== undefined || (navSections?.length ?? 0) > 0;\n const [mobileSidebarOpen, setMobileSidebarOpen] = useState(false);\n\n const [collapsed, setCollapsed] = useState(\n () =>\n readStored(collapsedStorageKey) === \"true\" ||\n (readStored(collapsedStorageKey) === null && defaultCollapsed),\n );\n\n useEffect(() => {\n if (collapsedStorageKey && typeof window !== \"undefined\")\n window.localStorage.setItem(collapsedStorageKey, String(collapsed));\n }, [collapsed, collapsedStorageKey]);\n\n useEscapeLayer(mobileSidebarOpen, () => setMobileSidebarOpen(false));\n\n // One instance for the rail AND the mobile drawer: both render NavSections,\n // and per-render state behind a shared storage key would desync.\n const groupState = useGroupCollapsed(\n groupCollapsedStorageKey ?? DEFAULT_GROUP_COLLAPSE_KEY,\n );\n\n const railWidth = collapsed ? collapsedWidth : sidebarWidth;\n const hasTopBar =\n (!hasSidebar && brand !== undefined) ||\n nav !== undefined ||\n search !== undefined ||\n actions !== undefined ||\n mobileActions !== undefined ||\n toolbar !== undefined;\n const hasMobileHeader = hasSidebar;\n const hasBodyHeader = bodyHeader !== undefined || bodyActions !== undefined;\n const effectiveContentWidth =\n bodySidebar === undefined ? contentWidth : \"full\";\n const renderSidebarContent = (\n collapsedValue: boolean,\n onNavigate?: () => void,\n ) =>\n typeof sidebar === \"function\"\n ? sidebar(collapsedValue)\n : sidebar !== undefined\n ? sidebar\n : navSections && (\n <NavSections\n sections={navSections}\n collapsed={collapsedValue}\n groupState={groupState}\n {...(onNavigate ? { onNavigate } : {})}\n />\n );\n\n return (\n <div\n className={cn(\"flex h-full min-h-0 w-full bg-background\", className)}\n {...(debugSlots ? { \"data-debug-slots\": \"true\" } : {})}\n >\n {debugSlots && <AppShellSlotOutlines />}\n {hasSidebar && (\n <aside\n data-slot=\"app-shell-sidebar\"\n style={{ width: railWidth }}\n className={cn(\n \"hidden shrink-0 flex-col overflow-hidden border-r border-sidebar-border bg-sidebar text-sidebar-foreground transition-[width] duration-200 md:flex\",\n sidebarClassName,\n )}\n >\n <div\n className={cn(\n \"flex h-14 shrink-0 items-center border-b border-sidebar-border\",\n collapsed\n ? \"justify-center px-2\"\n : \"justify-between px-density-3\",\n )}\n >\n {!collapsed && brand && (\n <div\n data-slot=\"app-shell-brand\"\n className=\"flex min-w-0 items-center gap-2\"\n >\n {brand}\n </div>\n )}\n {collapsible && (\n <button\n type=\"button\"\n onClick={() => setCollapsed((c) => !c)}\n aria-label={collapsed ? \"Expand sidebar\" : \"Collapse sidebar\"}\n title={collapsed ? \"Expand sidebar\" : \"Collapse sidebar\"}\n className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/70 transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\"\n >\n <Icon icon={UiSidebar} className=\"h-4 w-4\" />\n </button>\n )}\n </div>\n {sidebarHeader && (\n <div\n data-slot=\"app-shell-sidebar-header\"\n className=\"shrink-0 border-b border-sidebar-border px-density-3 py-density-2\"\n >\n {sidebarHeader}\n </div>\n )}\n <div className=\"min-h-0 flex-1 overflow-y-auto py-density-2\">\n {renderSidebarContent(collapsed)}\n </div>\n {sidebarFooter && (\n <div\n data-slot=\"app-shell-sidebar-footer\"\n className=\"mt-auto shrink-0 border-t border-sidebar-border px-density-3 py-density-2\"\n >\n {sidebarFooter}\n </div>\n )}\n </aside>\n )}\n\n <div\n data-slot=\"app-shell-column\"\n className=\"@container/app-content flex min-h-0 min-w-0 flex-1 flex-col\"\n >\n {(hasTopBar || hasMobileHeader) && (\n <header\n data-slot=\"app-shell-header\"\n className=\"shrink-0 border-b border-border bg-card\"\n >\n <div\n className={cn(\n hasSidebar\n ? \"flex flex-wrap items-center gap-density-2 px-density-3 py-density-2 md:h-14 md:flex-nowrap md:gap-density-3 md:px-density-4 md:py-0\"\n : // Wraps rather than squeezing. The nav shrinks and the\n // actions cluster does not, so on a laptop a full actions\n // row left the nav a sliver — every tab but the first\n // scrolled out of sight. A second line costs 44px and only\n // appears when the row genuinely cannot fit.\n \"flex min-h-14 flex-wrap items-center gap-density-3 px-density-4\",\n headerClassName,\n )}\n >\n {hasSidebar && (\n <button\n type=\"button\"\n aria-label={`Open ${mobileSidebarLabel}`}\n title={mobileSidebarLabel}\n className=\"inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-border bg-background text-foreground transition-colors hover:bg-accent md:hidden\"\n onClick={() => setMobileSidebarOpen(true)}\n >\n <Icon icon={UiMenu} className=\"h-4 w-4\" />\n </button>\n )}\n {brand && (\n <div\n data-slot=\"app-shell-brand\"\n className={cn(\n \"min-w-0 items-center gap-density-2\",\n hasSidebar ? \"flex flex-1 md:hidden\" : \"flex shrink-0\",\n )}\n >\n {brand}\n </div>\n )}\n {nav && (\n <div\n data-slot=\"app-shell-nav\"\n className={cn(\n // The nav is the only header slot that both shrinks\n // (min-w-0) and holds wide content, while the actions\n // cluster beside it is shrink-0. Give a full actions row\n // and this box collapses to a sliver — so it needs a guard,\n // or its tabs paint straight over the toolbar next to it\n // and both become unreadable. Scrolling keeps every tab\n // reachable; overflowing keeps none of them.\n \"flex min-w-0 items-center overflow-x-auto\",\n hasSidebar && \"order-3 basis-full md:order-none md:basis-auto\",\n )}\n >\n {nav}\n </div>\n )}\n {search !== undefined && (\n <div\n data-slot=\"app-shell-search\"\n className={cn(\n \"flex min-w-0 flex-1 justify-center\",\n hasSidebar &&\n \"order-2 basis-full md:order-none md:basis-auto md:flex-1\",\n )}\n >\n <div className=\"w-full\" style={{ maxWidth: searchMaxWidth }}>\n {search}\n </div>\n </div>\n )}\n {search === undefined && (\n <div\n className={cn(\"flex-1\", hasSidebar && \"hidden md:block\")}\n />\n )}\n {(actions !== undefined ||\n (hasSidebar && mobileActions !== undefined)) && (\n <div\n data-slot=\"app-shell-actions\"\n className={cn(\n \"flex shrink-0 items-center gap-density-2\",\n hasSidebar && \"order-1 ml-auto md:order-none md:ml-0\",\n )}\n >\n {!hasSidebar || mobileActions === undefined ? (\n actions\n ) : (\n <>\n <div className=\"hidden items-center gap-density-2 md:flex\">\n {actions}\n </div>\n <div className=\"flex items-center gap-density-2 md:hidden\">\n {mobileActions}\n </div>\n </>\n )}\n </div>\n )}\n </div>\n {toolbar && (\n <div\n data-slot=\"app-shell-toolbar\"\n className={cn(\n \"flex flex-wrap items-center gap-density-2 border-t border-border bg-muted px-density-3 py-density-2 md:px-density-4\",\n toolbarClassName,\n )}\n >\n {toolbar}\n </div>\n )}\n </header>\n )}\n\n {hasBodyHeader && (\n <div\n data-slot=\"app-shell-body-header\"\n className={cn(\n \"shrink-0 border-b border-border bg-card\",\n bodyHeaderClassName,\n )}\n >\n <div\n data-slot=\"app-shell-body-header-content\"\n data-content-width={effectiveContentWidth}\n className={cn(\n \"flex flex-col items-stretch gap-density-2 px-density-3 py-density-2 md:flex-row md:items-start md:justify-between md:gap-density-3 md:px-density-4\",\n contentWidthClassName(effectiveContentWidth),\n )}\n >\n <div className=\"min-w-0 flex-1\">{bodyHeader}</div>\n {bodyActions && (\n <div\n data-slot=\"app-shell-body-actions\"\n className=\"flex shrink-0 flex-wrap items-center gap-density-2\"\n >\n {bodyActions}\n </div>\n )}\n </div>\n </div>\n )}\n\n {bodySidebar !== undefined ? (\n <SplitPane\n stackOnMobile\n className=\"min-h-0 flex-1\"\n defaultSplit={bodySplit}\n minLeft={12}\n minRight={30}\n left={\n <div data-slot=\"app-shell-body-sidebar\" className=\"h-full\">\n {bodySidebar}\n </div>\n }\n right={\n <main\n data-slot=\"app-shell-main\"\n className={cn(\n \"h-full min-h-0 min-w-0 overflow-auto\",\n contentClassName,\n )}\n >\n {children}\n </main>\n }\n leftClass=\"max-h-[40vh] shrink-0 border-b border-border md:max-h-none md:border-b-0\"\n rightClass=\"min-h-0 flex-1 md:flex-none\"\n />\n ) : (\n <main\n data-slot=\"app-shell-main\"\n className={cn(\n \"min-h-0 min-w-0 flex-1 overflow-auto\",\n contentClassName,\n )}\n >\n <div\n data-slot=\"app-shell-content\"\n data-content-width={contentWidth}\n className={cn(contentWidthClassName(contentWidth), \"h-full\")}\n >\n {children}\n </div>\n </main>\n )}\n </div>\n {hasSidebar && mobileSidebarOpen && (\n <div\n className=\"fixed inset-0 z-50 md:hidden\"\n role=\"presentation\"\n onClick={() => setMobileSidebarOpen(false)}\n >\n <div className=\"absolute inset-0 bg-black/40\" />\n <aside\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={mobileSidebarLabel}\n className={cn(\n \"relative z-10 flex h-full w-[min(20rem,85vw)] flex-col overflow-hidden border-r border-sidebar-border bg-sidebar text-sidebar-foreground shadow-xl\",\n sidebarClassName,\n )}\n onClick={(event) => event.stopPropagation()}\n >\n <div className=\"flex h-14 shrink-0 items-center justify-between border-b border-sidebar-border px-density-3\">\n {brand && (\n <div className=\"flex min-w-0 items-center gap-2\">{brand}</div>\n )}\n <button\n type=\"button\"\n aria-label={`Close ${mobileSidebarLabel}`}\n title=\"Close\"\n className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/70 transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\"\n onClick={() => setMobileSidebarOpen(false)}\n >\n <Icon icon={UiClose} className=\"h-4 w-4\" />\n </button>\n </div>\n {sidebarHeader && (\n <div className=\"shrink-0 border-b border-sidebar-border px-density-3 py-density-2\">\n {sidebarHeader}\n </div>\n )}\n <div className=\"min-h-0 flex-1 overflow-y-auto py-density-2\">\n {renderSidebarContent(false, () => setMobileSidebarOpen(false))}\n </div>\n {sidebarFooter && (\n <div className=\"mt-auto shrink-0 border-t border-sidebar-border px-density-3 py-density-2\">\n {sidebarFooter}\n </div>\n )}\n </aside>\n </div>\n )}\n </div>\n );\n}\n"],"names":["useState","useEffect","contentWidth","useEscapeLayer","jsx","NavSections","jsxs","cn","AppShellSlotOutlines","Icon","UiSidebar","UiMenu","Fragment","contentWidthClassName","SplitPane","UiClose"],"mappings":"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"}
1
+ {"version":3,"file":"AppShell.cjs","sources":["../../src/layout/AppShell.tsx"],"sourcesContent":["import { useEffect, useState, type ReactNode } from \"react\";\nimport { cn } from \"../lib/utils\";\nimport { Icon, type StaticIconComponent } from \"../data/Icon\";\nimport { UiClose, UiMenu, UiSidebar } from \"../icons\";\nimport { useEscapeLayer } from \"../overlay/modalStack\";\nimport type { DropdownMenuItem } from \"../overlay/DropdownMenu\";\nimport { SplitPane } from \"./SplitPane\";\nimport { AppShellSlotOutlines } from \"./AppShell.debug\";\nimport { NavSections, type GroupState } from \"./AppShell.nav\";\nimport type { AppShellNavDrag } from \"./AppShell.nav.drag\";\nimport { contentWidthClassName, type ContentWidth } from \"./content-width\";\n\n// AppShell is a sidebar-first application shell. The full-height DARK nav rail\n// owns the brand + collapse toggle and renders grouped nav sections; the top bar\n// (search, actions) sits to the RIGHT of the rail — there is no full-width top\n// bar when a rail is present. With no rail, the top bar spans full width. The\n// body carries a fixed bodyHeader + bodyActions row over an optional\n// bodySidebar | body-main split (body-main scrolls; bodySidebar — e.g. a tree —\n// scrolls independently via a resizable SplitPane).\n\nexport type AppShellNavItem = {\n /** Stable key; also the React key. */\n key: string;\n /** Visible label (hidden when the rail is collapsed). */\n label: ReactNode;\n /** Leading icon (icon name or component). */\n icon?: string | StaticIconComponent;\n /** Highlights the item as the current location. */\n active?: boolean;\n /** Routing destination; rendered as an anchor via the RouterAdapter. */\n to: string;\n /** Opens `to` in a new tab. */\n external?: boolean;\n /** Trailing adornment (count, status dot). */\n badge?: ReactNode;\n /** Actions opened by right-click, the Context Menu key, or Shift+F10. */\n contextMenu?: DropdownMenuItem[];\n /** Accessible label for the context menu. Defaults to `<label> actions`. */\n contextMenuLabel?: string;\n};\n\nexport type AppShellNavGroup = {\n /** Stable key; also the key its collapsed state persists under. */\n key: string;\n /** Group heading rendered on the toggle row. */\n label: string;\n /** Leading icon (icon name or component). */\n icon?: string | StaticIconComponent;\n /** Trailing adornment (aggregate count, status dot). */\n badge?: ReactNode;\n /** Actions opened from the group heading's context menu. */\n contextMenu?: DropdownMenuItem[];\n /** Accessible label for the context menu. Defaults to `<label> actions`. */\n contextMenuLabel?: string;\n /** Folded on first render until the user toggles it. */\n defaultCollapsed?: boolean;\n /**\n * Keeps the group open regardless of stored state, so a deep-linked\n * destination can never hide under a folder the user collapsed earlier.\n * Mirrors `Tree.revealSelected`: set it on the active item's ancestors.\n */\n forceExpanded?: boolean;\n items: AppShellNavItem[];\n /**\n * Nested sub-groups, rendered after `items` at one further indent. Groups\n * nest arbitrarily, so a backend hierarchy deeper than two levels does not\n * have to be flattened to fit the rail.\n */\n groups?: AppShellNavGroup[];\n /**\n * Makes the group's own heading row a destination as well as a disclosure:\n * the label becomes a nav link and the chevron sits beside it as a separate\n * control. Needed wherever a node is both a folder and a leaf — e.g. a\n * profile named `jms` that is runnable *and* the parent of `jms.incoming`.\n */\n item?: AppShellNavItem;\n};\n\nexport type AppShellNavSection = {\n /** Section heading; collapses to a divider when the rail is collapsed. */\n label?: string;\n items?: AppShellNavItem[];\n /** Collapsible groups rendered after the flat items. High-cardinality\n * clusters (provider surfaces, per-ledger journals) belong here so they can\n * be folded away; a collapsed rail flattens them back to plain items. */\n groups?: AppShellNavGroup[];\n /**\n * How the groups read.\n *\n * `\"list\"` (the default) styles each group heading as a small uppercase\n * cluster label — right for a handful of named clusters under one section.\n *\n * `\"tree\"` styles headings as ordinary nav rows, because in a tree a folder\n * sits at the same level as its sibling destinations: a group carrying an\n * `item` renders as a link either way, so an uppercase heading beside it\n * would make two nodes of the same kind look like different things.\n */\n variant?: \"list\" | \"tree\";\n /**\n * Makes the section's rows draggable onto one another, so a hierarchy can be\n * rearranged in place. The section stays the boundary — a row never lands in\n * a different section — and the consumer owns what a move means. Ignored\n * while the rail is collapsed, where there are no folder rows to aim at.\n */\n drag?: AppShellNavDrag;\n};\n\nexport type AppShellProps = {\n // ── Top bar (right of the rail; full width when no rail) ─\n /** Brand mark / wordmark. Shown in the rail header when a rail is present, else in the top bar. */\n brand?: ReactNode;\n /** Inline primary nav (e.g. tabs) shown after the brand in the top bar. */\n nav?: ReactNode;\n /** Centered search slot; grows to fill and is width-capped. */\n search?: ReactNode;\n /** Right-aligned cluster (icon buttons, settings/org picker, …). */\n actions?: ReactNode;\n /** Compact action cluster used in the mobile header. Defaults to `actions`. */\n mobileActions?: ReactNode;\n /** Optional second top-bar row for filters / bulk actions. */\n toolbar?: ReactNode;\n /** Max width of the centered search slot. Defaults to 28rem. */\n searchMaxWidth?: string | number;\n\n // ── Left nav rail (dark, collapsible, fixed width) ───────\n /** Declarative nav sections rendered into the rail (collapse-aware). */\n navSections?: AppShellNavSection[];\n /** Custom sidebar content; receives the collapsed flag. Overrides navSections. */\n sidebar?: ReactNode | ((collapsed: boolean) => ReactNode);\n /** Pinned below the rail header (e.g. a context switcher). */\n sidebarHeader?: ReactNode;\n /** Pinned to the bottom of the rail (version, account). */\n sidebarFooter?: ReactNode;\n /** Show the collapse toggle. Defaults to true when a rail is present. */\n collapsible?: boolean;\n /** Initial collapsed state (uncontrolled). */\n defaultCollapsed?: boolean;\n /** localStorage key persisting the collapsed state. */\n collapsedStorageKey?: string;\n /** localStorage key persisting per-group collapsed state. */\n groupCollapsedStorageKey?: string;\n /** Expanded rail width in px. Defaults to 240. */\n sidebarWidth?: number;\n /** Collapsed rail width in px. Defaults to 56. */\n collapsedWidth?: number;\n /** Accessible label for the mobile navigation drawer. Defaults to \"Navigation\". */\n mobileSidebarLabel?: string;\n\n // ── Body ─────────────────────────────────────────────────\n /** Fixed header row, left side (breadcrumb, title, tabs). */\n bodyHeader?: ReactNode;\n /** Fixed header row, right side (entity actions) — same row as bodyHeader. */\n bodyActions?: ReactNode;\n /** Optional independent-scroll pane (e.g. a tree). Renders a SplitPane vs body-main. */\n bodySidebar?: ReactNode;\n /** bodySidebar width as a percent when present. Defaults to 24. */\n bodySplit?: number;\n /** Main content (body-main); fills the remaining space and scrolls. */\n children: ReactNode;\n /** Centers content at responsive wide breakpoints, or allows it to fill the workspace. */\n contentWidth?: ContentWidth;\n\n /**\n * Outlines every slot in its own colour and labels it with its `data-slot`\n * name — a layout-debugging aid for working out which region owns a given\n * area or scrollbar. Uses `outline`, so enabling it does not shift layout.\n */\n debugSlots?: boolean;\n\n className?: string;\n headerClassName?: string;\n toolbarClassName?: string;\n sidebarClassName?: string;\n bodyHeaderClassName?: string;\n contentClassName?: string;\n};\n\nfunction readStored(key: string | undefined): string | null {\n if (!key || typeof window === \"undefined\") return null;\n return window.localStorage.getItem(key);\n}\n\nconst DEFAULT_GROUP_COLLAPSE_KEY = \"clicky-ui:app-shell:groups\";\n\nfunction readGroupState(storageKey: string): Record<string, boolean> {\n if (typeof window === \"undefined\") return {};\n try {\n const raw = window.localStorage.getItem(storageKey);\n if (!raw) return {};\n const parsed = JSON.parse(raw);\n return parsed && typeof parsed === \"object\"\n ? (parsed as Record<string, boolean>)\n : {};\n } catch {\n return {};\n }\n}\n\n// Lives here rather than in AppShell.nav so a single instance can be shared by\n// both NavSections renders (rail + mobile drawer).\nfunction useGroupCollapsed(storageKey: string): GroupState {\n const [state, setState] = useState<Record<string, boolean>>(() =>\n readGroupState(storageKey),\n );\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n try {\n window.localStorage.setItem(storageKey, JSON.stringify(state));\n } catch {\n // Rail state is a UX nicety; private-mode storage failures are safe to swallow.\n }\n }, [state, storageKey]);\n return {\n isCollapsed: (key, fallback) => state[key] ?? fallback,\n toggle: (key, fallback) =>\n setState((prev) => ({ ...prev, [key]: !(prev[key] ?? fallback) })),\n };\n}\n\nexport function AppShell(props: AppShellProps) {\n const {\n brand,\n nav,\n search,\n actions,\n mobileActions,\n toolbar,\n searchMaxWidth = \"28rem\",\n navSections,\n sidebar,\n sidebarHeader,\n sidebarFooter,\n collapsible = true,\n defaultCollapsed = false,\n collapsedStorageKey,\n groupCollapsedStorageKey,\n sidebarWidth = 240,\n collapsedWidth = 56,\n mobileSidebarLabel = \"Navigation\",\n bodyHeader,\n bodyActions,\n bodySidebar,\n bodySplit = 24,\n children,\n contentWidth = \"contained\",\n debugSlots = false,\n className,\n headerClassName,\n toolbarClassName,\n sidebarClassName,\n bodyHeaderClassName,\n contentClassName,\n } = props;\n\n const hasSidebar = sidebar !== undefined || (navSections?.length ?? 0) > 0;\n const [mobileSidebarOpen, setMobileSidebarOpen] = useState(false);\n\n const [collapsed, setCollapsed] = useState(\n () =>\n readStored(collapsedStorageKey) === \"true\" ||\n (readStored(collapsedStorageKey) === null && defaultCollapsed),\n );\n\n useEffect(() => {\n if (collapsedStorageKey && typeof window !== \"undefined\")\n window.localStorage.setItem(collapsedStorageKey, String(collapsed));\n }, [collapsed, collapsedStorageKey]);\n\n useEscapeLayer(mobileSidebarOpen, () => setMobileSidebarOpen(false));\n\n // One instance for the rail AND the mobile drawer: both render NavSections,\n // and per-render state behind a shared storage key would desync.\n const groupState = useGroupCollapsed(\n groupCollapsedStorageKey ?? DEFAULT_GROUP_COLLAPSE_KEY,\n );\n\n const railWidth = collapsed ? collapsedWidth : sidebarWidth;\n const hasTopBar =\n (!hasSidebar && brand !== undefined) ||\n nav !== undefined ||\n search !== undefined ||\n actions !== undefined ||\n mobileActions !== undefined ||\n toolbar !== undefined;\n const hasMobileHeader = hasSidebar;\n const hasBodyHeader = bodyHeader !== undefined || bodyActions !== undefined;\n const effectiveContentWidth =\n bodySidebar === undefined ? contentWidth : \"full\";\n const renderSidebarContent = (\n collapsedValue: boolean,\n onNavigate?: () => void,\n ) =>\n typeof sidebar === \"function\"\n ? sidebar(collapsedValue)\n : sidebar !== undefined\n ? sidebar\n : navSections && (\n <NavSections\n sections={navSections}\n collapsed={collapsedValue}\n groupState={groupState}\n {...(onNavigate ? { onNavigate } : {})}\n />\n );\n\n return (\n <div\n className={cn(\"flex h-full min-h-0 w-full bg-background\", className)}\n {...(debugSlots ? { \"data-debug-slots\": \"true\" } : {})}\n >\n {debugSlots && <AppShellSlotOutlines />}\n {hasSidebar && (\n <aside\n data-slot=\"app-shell-sidebar\"\n style={{ width: railWidth }}\n className={cn(\n \"hidden shrink-0 flex-col overflow-hidden border-r border-sidebar-border bg-sidebar text-sidebar-foreground transition-[width] duration-200 md:flex\",\n sidebarClassName,\n )}\n >\n <div\n className={cn(\n \"flex h-14 shrink-0 items-center border-b border-sidebar-border\",\n collapsed\n ? \"justify-center px-2\"\n : \"justify-between px-density-3\",\n )}\n >\n {!collapsed && brand && (\n <div\n data-slot=\"app-shell-brand\"\n className=\"flex min-w-0 items-center gap-2\"\n >\n {brand}\n </div>\n )}\n {collapsible && (\n <button\n type=\"button\"\n onClick={() => setCollapsed((c) => !c)}\n aria-label={collapsed ? \"Expand sidebar\" : \"Collapse sidebar\"}\n title={collapsed ? \"Expand sidebar\" : \"Collapse sidebar\"}\n className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/70 transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\"\n >\n <Icon icon={UiSidebar} className=\"h-4 w-4\" />\n </button>\n )}\n </div>\n {sidebarHeader && (\n <div\n data-slot=\"app-shell-sidebar-header\"\n className=\"shrink-0 border-b border-sidebar-border px-density-3 py-density-2\"\n >\n {sidebarHeader}\n </div>\n )}\n <div className=\"min-h-0 flex-1 overflow-y-auto py-density-2\">\n {renderSidebarContent(collapsed)}\n </div>\n {sidebarFooter && (\n <div\n data-slot=\"app-shell-sidebar-footer\"\n className=\"mt-auto shrink-0 border-t border-sidebar-border px-density-3 py-density-2\"\n >\n {sidebarFooter}\n </div>\n )}\n </aside>\n )}\n\n <div\n data-slot=\"app-shell-column\"\n className=\"@container/app-content flex min-h-0 min-w-0 flex-1 flex-col\"\n >\n {(hasTopBar || hasMobileHeader) && (\n <header\n data-slot=\"app-shell-header\"\n className=\"shrink-0 border-b border-border bg-card\"\n >\n <div\n className={cn(\n hasSidebar\n ? \"flex flex-wrap items-center gap-density-2 px-density-3 py-density-2 md:h-14 md:flex-nowrap md:gap-density-3 md:px-density-4 md:py-0\"\n : // Wraps rather than squeezing. The nav shrinks and the\n // actions cluster does not, so on a laptop a full actions\n // row left the nav a sliver — every tab but the first\n // scrolled out of sight. A second line costs 44px and only\n // appears when the row genuinely cannot fit.\n \"flex min-h-14 flex-wrap items-center gap-density-3 px-density-4\",\n headerClassName,\n )}\n >\n {hasSidebar && (\n <button\n type=\"button\"\n aria-label={`Open ${mobileSidebarLabel}`}\n title={mobileSidebarLabel}\n className=\"inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-border bg-background text-foreground transition-colors hover:bg-accent md:hidden\"\n onClick={() => setMobileSidebarOpen(true)}\n >\n <Icon icon={UiMenu} className=\"h-4 w-4\" />\n </button>\n )}\n {brand && (\n <div\n data-slot=\"app-shell-brand\"\n className={cn(\n \"min-w-0 items-center gap-density-2\",\n hasSidebar ? \"flex flex-1 md:hidden\" : \"flex shrink-0\",\n )}\n >\n {brand}\n </div>\n )}\n {nav && (\n <div\n data-slot=\"app-shell-nav\"\n className={cn(\n // The nav is the only header slot that both shrinks\n // (min-w-0) and holds wide content, while the actions\n // cluster beside it is shrink-0. Give a full actions row\n // and this box collapses to a sliver — so it needs a guard,\n // or its tabs paint straight over the toolbar next to it\n // and both become unreadable. Scrolling keeps every tab\n // reachable; overflowing keeps none of them.\n \"flex min-w-0 items-center overflow-x-auto\",\n hasSidebar && \"order-3 basis-full md:order-none md:basis-auto\",\n )}\n >\n {nav}\n </div>\n )}\n {search !== undefined && (\n <div\n data-slot=\"app-shell-search\"\n className={cn(\n \"flex min-w-0 flex-1 justify-center\",\n hasSidebar &&\n \"order-2 basis-full md:order-none md:basis-auto md:flex-1\",\n )}\n >\n <div className=\"w-full\" style={{ maxWidth: searchMaxWidth }}>\n {search}\n </div>\n </div>\n )}\n {search === undefined && (\n <div\n className={cn(\"flex-1\", hasSidebar && \"hidden md:block\")}\n />\n )}\n {(actions !== undefined ||\n (hasSidebar && mobileActions !== undefined)) && (\n <div\n data-slot=\"app-shell-actions\"\n className={cn(\n \"flex shrink-0 items-center gap-density-2\",\n // Below md the cluster must never be wider than the\n // phone: a shrink-0 row that overflows widens the layout\n // viewport, and then every fixed overlay on the page\n // loses its right edge. Let it shrink and scroll its own\n // contents instead, the same guard the nav slot has.\n \"max-md:min-w-0 max-md:max-w-full max-md:shrink max-md:overflow-x-auto\",\n hasSidebar && \"order-1 ml-auto md:order-none md:ml-0\",\n )}\n >\n {!hasSidebar || mobileActions === undefined ? (\n actions\n ) : (\n <>\n <div className=\"hidden items-center gap-density-2 md:flex\">\n {actions}\n </div>\n <div className=\"flex items-center gap-density-2 md:hidden\">\n {mobileActions}\n </div>\n </>\n )}\n </div>\n )}\n </div>\n {toolbar && (\n <div\n data-slot=\"app-shell-toolbar\"\n className={cn(\n \"flex flex-wrap items-center gap-density-2 border-t border-border bg-muted px-density-3 py-density-2 md:px-density-4\",\n toolbarClassName,\n )}\n >\n {toolbar}\n </div>\n )}\n </header>\n )}\n\n {hasBodyHeader && (\n <div\n data-slot=\"app-shell-body-header\"\n className={cn(\n \"shrink-0 border-b border-border bg-card\",\n bodyHeaderClassName,\n )}\n >\n <div\n data-slot=\"app-shell-body-header-content\"\n data-content-width={effectiveContentWidth}\n className={cn(\n \"flex flex-col items-stretch gap-density-2 px-density-3 py-density-2 md:flex-row md:items-start md:justify-between md:gap-density-3 md:px-density-4\",\n contentWidthClassName(effectiveContentWidth),\n )}\n >\n <div className=\"min-w-0 flex-1\">{bodyHeader}</div>\n {bodyActions && (\n <div\n data-slot=\"app-shell-body-actions\"\n className=\"flex shrink-0 flex-wrap items-center gap-density-2\"\n >\n {bodyActions}\n </div>\n )}\n </div>\n </div>\n )}\n\n {bodySidebar !== undefined ? (\n <SplitPane\n stackOnMobile\n className=\"min-h-0 flex-1\"\n defaultSplit={bodySplit}\n minLeft={12}\n minRight={30}\n left={\n <div data-slot=\"app-shell-body-sidebar\" className=\"h-full\">\n {bodySidebar}\n </div>\n }\n right={\n <main\n data-slot=\"app-shell-main\"\n className={cn(\n \"h-full min-h-0 min-w-0 overflow-auto\",\n contentClassName,\n )}\n >\n {children}\n </main>\n }\n leftClass=\"max-h-[40vh] shrink-0 border-b border-border md:max-h-none md:border-b-0\"\n rightClass=\"min-h-0 flex-1 md:flex-none\"\n />\n ) : (\n <main\n data-slot=\"app-shell-main\"\n className={cn(\n \"min-h-0 min-w-0 flex-1 overflow-auto\",\n contentClassName,\n )}\n >\n <div\n data-slot=\"app-shell-content\"\n data-content-width={contentWidth}\n className={cn(contentWidthClassName(contentWidth), \"h-full\")}\n >\n {children}\n </div>\n </main>\n )}\n </div>\n {hasSidebar && mobileSidebarOpen && (\n <div\n className=\"fixed inset-0 z-50 md:hidden\"\n role=\"presentation\"\n onClick={() => setMobileSidebarOpen(false)}\n >\n <div className=\"absolute inset-0 bg-black/40\" />\n <aside\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={mobileSidebarLabel}\n className={cn(\n \"relative z-10 flex h-full w-[min(20rem,85vw)] flex-col overflow-hidden border-r border-sidebar-border bg-sidebar text-sidebar-foreground shadow-xl\",\n sidebarClassName,\n )}\n onClick={(event) => event.stopPropagation()}\n >\n <div className=\"flex h-14 shrink-0 items-center justify-between border-b border-sidebar-border px-density-3\">\n {brand && (\n <div className=\"flex min-w-0 items-center gap-2\">{brand}</div>\n )}\n <button\n type=\"button\"\n aria-label={`Close ${mobileSidebarLabel}`}\n title=\"Close\"\n className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/70 transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\"\n onClick={() => setMobileSidebarOpen(false)}\n >\n <Icon icon={UiClose} className=\"h-4 w-4\" />\n </button>\n </div>\n {sidebarHeader && (\n <div className=\"shrink-0 border-b border-sidebar-border px-density-3 py-density-2\">\n {sidebarHeader}\n </div>\n )}\n <div className=\"min-h-0 flex-1 overflow-y-auto py-density-2\">\n {renderSidebarContent(false, () => setMobileSidebarOpen(false))}\n </div>\n {sidebarFooter && (\n <div className=\"mt-auto shrink-0 border-t border-sidebar-border px-density-3 py-density-2\">\n {sidebarFooter}\n </div>\n )}\n </aside>\n </div>\n )}\n </div>\n );\n}\n"],"names":["useState","useEffect","contentWidth","useEscapeLayer","jsx","NavSections","jsxs","cn","AppShellSlotOutlines","Icon","UiSidebar","UiMenu","Fragment","contentWidthClassName","SplitPane","UiClose"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../../src/layout/AppShell.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../../src/layout/AppShell.tsx"],"names":[],"mappings":"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"}
@@ -260,6 +260,12 @@ function AppShell(props) {
260
260
  "data-slot": "app-shell-actions",
261
261
  className: cn(
262
262
  "flex shrink-0 items-center gap-density-2",
263
+ // Below md the cluster must never be wider than the
264
+ // phone: a shrink-0 row that overflows widens the layout
265
+ // viewport, and then every fixed overlay on the page
266
+ // loses its right edge. Let it shrink and scroll its own
267
+ // contents instead, the same guard the nav slot has.
268
+ "max-md:min-w-0 max-md:max-w-full max-md:shrink max-md:overflow-x-auto",
263
269
  hasSidebar && "order-1 ml-auto md:order-none md:ml-0"
264
270
  ),
265
271
  children: !hasSidebar || mobileActions === void 0 ? actions : /* @__PURE__ */ jsxs(Fragment, { children: [
@@ -1 +1 @@
1
- {"version":3,"file":"AppShell.js","sources":["../../src/layout/AppShell.tsx"],"sourcesContent":["import { useEffect, useState, type ReactNode } from \"react\";\nimport { cn } from \"../lib/utils\";\nimport { Icon, type StaticIconComponent } from \"../data/Icon\";\nimport { UiClose, UiMenu, UiSidebar } from \"../icons\";\nimport { useEscapeLayer } from \"../overlay/modalStack\";\nimport type { DropdownMenuItem } from \"../overlay/DropdownMenu\";\nimport { SplitPane } from \"./SplitPane\";\nimport { AppShellSlotOutlines } from \"./AppShell.debug\";\nimport { NavSections, type GroupState } from \"./AppShell.nav\";\nimport type { AppShellNavDrag } from \"./AppShell.nav.drag\";\nimport { contentWidthClassName, type ContentWidth } from \"./content-width\";\n\n// AppShell is a sidebar-first application shell. The full-height DARK nav rail\n// owns the brand + collapse toggle and renders grouped nav sections; the top bar\n// (search, actions) sits to the RIGHT of the rail — there is no full-width top\n// bar when a rail is present. With no rail, the top bar spans full width. The\n// body carries a fixed bodyHeader + bodyActions row over an optional\n// bodySidebar | body-main split (body-main scrolls; bodySidebar — e.g. a tree —\n// scrolls independently via a resizable SplitPane).\n\nexport type AppShellNavItem = {\n /** Stable key; also the React key. */\n key: string;\n /** Visible label (hidden when the rail is collapsed). */\n label: ReactNode;\n /** Leading icon (icon name or component). */\n icon?: string | StaticIconComponent;\n /** Highlights the item as the current location. */\n active?: boolean;\n /** Routing destination; rendered as an anchor via the RouterAdapter. */\n to: string;\n /** Opens `to` in a new tab. */\n external?: boolean;\n /** Trailing adornment (count, status dot). */\n badge?: ReactNode;\n /** Actions opened by right-click, the Context Menu key, or Shift+F10. */\n contextMenu?: DropdownMenuItem[];\n /** Accessible label for the context menu. Defaults to `<label> actions`. */\n contextMenuLabel?: string;\n};\n\nexport type AppShellNavGroup = {\n /** Stable key; also the key its collapsed state persists under. */\n key: string;\n /** Group heading rendered on the toggle row. */\n label: string;\n /** Leading icon (icon name or component). */\n icon?: string | StaticIconComponent;\n /** Trailing adornment (aggregate count, status dot). */\n badge?: ReactNode;\n /** Actions opened from the group heading's context menu. */\n contextMenu?: DropdownMenuItem[];\n /** Accessible label for the context menu. Defaults to `<label> actions`. */\n contextMenuLabel?: string;\n /** Folded on first render until the user toggles it. */\n defaultCollapsed?: boolean;\n /**\n * Keeps the group open regardless of stored state, so a deep-linked\n * destination can never hide under a folder the user collapsed earlier.\n * Mirrors `Tree.revealSelected`: set it on the active item's ancestors.\n */\n forceExpanded?: boolean;\n items: AppShellNavItem[];\n /**\n * Nested sub-groups, rendered after `items` at one further indent. Groups\n * nest arbitrarily, so a backend hierarchy deeper than two levels does not\n * have to be flattened to fit the rail.\n */\n groups?: AppShellNavGroup[];\n /**\n * Makes the group's own heading row a destination as well as a disclosure:\n * the label becomes a nav link and the chevron sits beside it as a separate\n * control. Needed wherever a node is both a folder and a leaf — e.g. a\n * profile named `jms` that is runnable *and* the parent of `jms.incoming`.\n */\n item?: AppShellNavItem;\n};\n\nexport type AppShellNavSection = {\n /** Section heading; collapses to a divider when the rail is collapsed. */\n label?: string;\n items?: AppShellNavItem[];\n /** Collapsible groups rendered after the flat items. High-cardinality\n * clusters (provider surfaces, per-ledger journals) belong here so they can\n * be folded away; a collapsed rail flattens them back to plain items. */\n groups?: AppShellNavGroup[];\n /**\n * How the groups read.\n *\n * `\"list\"` (the default) styles each group heading as a small uppercase\n * cluster label — right for a handful of named clusters under one section.\n *\n * `\"tree\"` styles headings as ordinary nav rows, because in a tree a folder\n * sits at the same level as its sibling destinations: a group carrying an\n * `item` renders as a link either way, so an uppercase heading beside it\n * would make two nodes of the same kind look like different things.\n */\n variant?: \"list\" | \"tree\";\n /**\n * Makes the section's rows draggable onto one another, so a hierarchy can be\n * rearranged in place. The section stays the boundary — a row never lands in\n * a different section — and the consumer owns what a move means. Ignored\n * while the rail is collapsed, where there are no folder rows to aim at.\n */\n drag?: AppShellNavDrag;\n};\n\nexport type AppShellProps = {\n // ── Top bar (right of the rail; full width when no rail) ─\n /** Brand mark / wordmark. Shown in the rail header when a rail is present, else in the top bar. */\n brand?: ReactNode;\n /** Inline primary nav (e.g. tabs) shown after the brand in the top bar. */\n nav?: ReactNode;\n /** Centered search slot; grows to fill and is width-capped. */\n search?: ReactNode;\n /** Right-aligned cluster (icon buttons, settings/org picker, …). */\n actions?: ReactNode;\n /** Compact action cluster used in the mobile header. Defaults to `actions`. */\n mobileActions?: ReactNode;\n /** Optional second top-bar row for filters / bulk actions. */\n toolbar?: ReactNode;\n /** Max width of the centered search slot. Defaults to 28rem. */\n searchMaxWidth?: string | number;\n\n // ── Left nav rail (dark, collapsible, fixed width) ───────\n /** Declarative nav sections rendered into the rail (collapse-aware). */\n navSections?: AppShellNavSection[];\n /** Custom sidebar content; receives the collapsed flag. Overrides navSections. */\n sidebar?: ReactNode | ((collapsed: boolean) => ReactNode);\n /** Pinned below the rail header (e.g. a context switcher). */\n sidebarHeader?: ReactNode;\n /** Pinned to the bottom of the rail (version, account). */\n sidebarFooter?: ReactNode;\n /** Show the collapse toggle. Defaults to true when a rail is present. */\n collapsible?: boolean;\n /** Initial collapsed state (uncontrolled). */\n defaultCollapsed?: boolean;\n /** localStorage key persisting the collapsed state. */\n collapsedStorageKey?: string;\n /** localStorage key persisting per-group collapsed state. */\n groupCollapsedStorageKey?: string;\n /** Expanded rail width in px. Defaults to 240. */\n sidebarWidth?: number;\n /** Collapsed rail width in px. Defaults to 56. */\n collapsedWidth?: number;\n /** Accessible label for the mobile navigation drawer. Defaults to \"Navigation\". */\n mobileSidebarLabel?: string;\n\n // ── Body ─────────────────────────────────────────────────\n /** Fixed header row, left side (breadcrumb, title, tabs). */\n bodyHeader?: ReactNode;\n /** Fixed header row, right side (entity actions) — same row as bodyHeader. */\n bodyActions?: ReactNode;\n /** Optional independent-scroll pane (e.g. a tree). Renders a SplitPane vs body-main. */\n bodySidebar?: ReactNode;\n /** bodySidebar width as a percent when present. Defaults to 24. */\n bodySplit?: number;\n /** Main content (body-main); fills the remaining space and scrolls. */\n children: ReactNode;\n /** Centers content at responsive wide breakpoints, or allows it to fill the workspace. */\n contentWidth?: ContentWidth;\n\n /**\n * Outlines every slot in its own colour and labels it with its `data-slot`\n * name — a layout-debugging aid for working out which region owns a given\n * area or scrollbar. Uses `outline`, so enabling it does not shift layout.\n */\n debugSlots?: boolean;\n\n className?: string;\n headerClassName?: string;\n toolbarClassName?: string;\n sidebarClassName?: string;\n bodyHeaderClassName?: string;\n contentClassName?: string;\n};\n\nfunction readStored(key: string | undefined): string | null {\n if (!key || typeof window === \"undefined\") return null;\n return window.localStorage.getItem(key);\n}\n\nconst DEFAULT_GROUP_COLLAPSE_KEY = \"clicky-ui:app-shell:groups\";\n\nfunction readGroupState(storageKey: string): Record<string, boolean> {\n if (typeof window === \"undefined\") return {};\n try {\n const raw = window.localStorage.getItem(storageKey);\n if (!raw) return {};\n const parsed = JSON.parse(raw);\n return parsed && typeof parsed === \"object\"\n ? (parsed as Record<string, boolean>)\n : {};\n } catch {\n return {};\n }\n}\n\n// Lives here rather than in AppShell.nav so a single instance can be shared by\n// both NavSections renders (rail + mobile drawer).\nfunction useGroupCollapsed(storageKey: string): GroupState {\n const [state, setState] = useState<Record<string, boolean>>(() =>\n readGroupState(storageKey),\n );\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n try {\n window.localStorage.setItem(storageKey, JSON.stringify(state));\n } catch {\n // Rail state is a UX nicety; private-mode storage failures are safe to swallow.\n }\n }, [state, storageKey]);\n return {\n isCollapsed: (key, fallback) => state[key] ?? fallback,\n toggle: (key, fallback) =>\n setState((prev) => ({ ...prev, [key]: !(prev[key] ?? fallback) })),\n };\n}\n\nexport function AppShell(props: AppShellProps) {\n const {\n brand,\n nav,\n search,\n actions,\n mobileActions,\n toolbar,\n searchMaxWidth = \"28rem\",\n navSections,\n sidebar,\n sidebarHeader,\n sidebarFooter,\n collapsible = true,\n defaultCollapsed = false,\n collapsedStorageKey,\n groupCollapsedStorageKey,\n sidebarWidth = 240,\n collapsedWidth = 56,\n mobileSidebarLabel = \"Navigation\",\n bodyHeader,\n bodyActions,\n bodySidebar,\n bodySplit = 24,\n children,\n contentWidth = \"contained\",\n debugSlots = false,\n className,\n headerClassName,\n toolbarClassName,\n sidebarClassName,\n bodyHeaderClassName,\n contentClassName,\n } = props;\n\n const hasSidebar = sidebar !== undefined || (navSections?.length ?? 0) > 0;\n const [mobileSidebarOpen, setMobileSidebarOpen] = useState(false);\n\n const [collapsed, setCollapsed] = useState(\n () =>\n readStored(collapsedStorageKey) === \"true\" ||\n (readStored(collapsedStorageKey) === null && defaultCollapsed),\n );\n\n useEffect(() => {\n if (collapsedStorageKey && typeof window !== \"undefined\")\n window.localStorage.setItem(collapsedStorageKey, String(collapsed));\n }, [collapsed, collapsedStorageKey]);\n\n useEscapeLayer(mobileSidebarOpen, () => setMobileSidebarOpen(false));\n\n // One instance for the rail AND the mobile drawer: both render NavSections,\n // and per-render state behind a shared storage key would desync.\n const groupState = useGroupCollapsed(\n groupCollapsedStorageKey ?? DEFAULT_GROUP_COLLAPSE_KEY,\n );\n\n const railWidth = collapsed ? collapsedWidth : sidebarWidth;\n const hasTopBar =\n (!hasSidebar && brand !== undefined) ||\n nav !== undefined ||\n search !== undefined ||\n actions !== undefined ||\n mobileActions !== undefined ||\n toolbar !== undefined;\n const hasMobileHeader = hasSidebar;\n const hasBodyHeader = bodyHeader !== undefined || bodyActions !== undefined;\n const effectiveContentWidth =\n bodySidebar === undefined ? contentWidth : \"full\";\n const renderSidebarContent = (\n collapsedValue: boolean,\n onNavigate?: () => void,\n ) =>\n typeof sidebar === \"function\"\n ? sidebar(collapsedValue)\n : sidebar !== undefined\n ? sidebar\n : navSections && (\n <NavSections\n sections={navSections}\n collapsed={collapsedValue}\n groupState={groupState}\n {...(onNavigate ? { onNavigate } : {})}\n />\n );\n\n return (\n <div\n className={cn(\"flex h-full min-h-0 w-full bg-background\", className)}\n {...(debugSlots ? { \"data-debug-slots\": \"true\" } : {})}\n >\n {debugSlots && <AppShellSlotOutlines />}\n {hasSidebar && (\n <aside\n data-slot=\"app-shell-sidebar\"\n style={{ width: railWidth }}\n className={cn(\n \"hidden shrink-0 flex-col overflow-hidden border-r border-sidebar-border bg-sidebar text-sidebar-foreground transition-[width] duration-200 md:flex\",\n sidebarClassName,\n )}\n >\n <div\n className={cn(\n \"flex h-14 shrink-0 items-center border-b border-sidebar-border\",\n collapsed\n ? \"justify-center px-2\"\n : \"justify-between px-density-3\",\n )}\n >\n {!collapsed && brand && (\n <div\n data-slot=\"app-shell-brand\"\n className=\"flex min-w-0 items-center gap-2\"\n >\n {brand}\n </div>\n )}\n {collapsible && (\n <button\n type=\"button\"\n onClick={() => setCollapsed((c) => !c)}\n aria-label={collapsed ? \"Expand sidebar\" : \"Collapse sidebar\"}\n title={collapsed ? \"Expand sidebar\" : \"Collapse sidebar\"}\n className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/70 transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\"\n >\n <Icon icon={UiSidebar} className=\"h-4 w-4\" />\n </button>\n )}\n </div>\n {sidebarHeader && (\n <div\n data-slot=\"app-shell-sidebar-header\"\n className=\"shrink-0 border-b border-sidebar-border px-density-3 py-density-2\"\n >\n {sidebarHeader}\n </div>\n )}\n <div className=\"min-h-0 flex-1 overflow-y-auto py-density-2\">\n {renderSidebarContent(collapsed)}\n </div>\n {sidebarFooter && (\n <div\n data-slot=\"app-shell-sidebar-footer\"\n className=\"mt-auto shrink-0 border-t border-sidebar-border px-density-3 py-density-2\"\n >\n {sidebarFooter}\n </div>\n )}\n </aside>\n )}\n\n <div\n data-slot=\"app-shell-column\"\n className=\"@container/app-content flex min-h-0 min-w-0 flex-1 flex-col\"\n >\n {(hasTopBar || hasMobileHeader) && (\n <header\n data-slot=\"app-shell-header\"\n className=\"shrink-0 border-b border-border bg-card\"\n >\n <div\n className={cn(\n hasSidebar\n ? \"flex flex-wrap items-center gap-density-2 px-density-3 py-density-2 md:h-14 md:flex-nowrap md:gap-density-3 md:px-density-4 md:py-0\"\n : // Wraps rather than squeezing. The nav shrinks and the\n // actions cluster does not, so on a laptop a full actions\n // row left the nav a sliver — every tab but the first\n // scrolled out of sight. A second line costs 44px and only\n // appears when the row genuinely cannot fit.\n \"flex min-h-14 flex-wrap items-center gap-density-3 px-density-4\",\n headerClassName,\n )}\n >\n {hasSidebar && (\n <button\n type=\"button\"\n aria-label={`Open ${mobileSidebarLabel}`}\n title={mobileSidebarLabel}\n className=\"inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-border bg-background text-foreground transition-colors hover:bg-accent md:hidden\"\n onClick={() => setMobileSidebarOpen(true)}\n >\n <Icon icon={UiMenu} className=\"h-4 w-4\" />\n </button>\n )}\n {brand && (\n <div\n data-slot=\"app-shell-brand\"\n className={cn(\n \"min-w-0 items-center gap-density-2\",\n hasSidebar ? \"flex flex-1 md:hidden\" : \"flex shrink-0\",\n )}\n >\n {brand}\n </div>\n )}\n {nav && (\n <div\n data-slot=\"app-shell-nav\"\n className={cn(\n // The nav is the only header slot that both shrinks\n // (min-w-0) and holds wide content, while the actions\n // cluster beside it is shrink-0. Give a full actions row\n // and this box collapses to a sliver — so it needs a guard,\n // or its tabs paint straight over the toolbar next to it\n // and both become unreadable. Scrolling keeps every tab\n // reachable; overflowing keeps none of them.\n \"flex min-w-0 items-center overflow-x-auto\",\n hasSidebar && \"order-3 basis-full md:order-none md:basis-auto\",\n )}\n >\n {nav}\n </div>\n )}\n {search !== undefined && (\n <div\n data-slot=\"app-shell-search\"\n className={cn(\n \"flex min-w-0 flex-1 justify-center\",\n hasSidebar &&\n \"order-2 basis-full md:order-none md:basis-auto md:flex-1\",\n )}\n >\n <div className=\"w-full\" style={{ maxWidth: searchMaxWidth }}>\n {search}\n </div>\n </div>\n )}\n {search === undefined && (\n <div\n className={cn(\"flex-1\", hasSidebar && \"hidden md:block\")}\n />\n )}\n {(actions !== undefined ||\n (hasSidebar && mobileActions !== undefined)) && (\n <div\n data-slot=\"app-shell-actions\"\n className={cn(\n \"flex shrink-0 items-center gap-density-2\",\n hasSidebar && \"order-1 ml-auto md:order-none md:ml-0\",\n )}\n >\n {!hasSidebar || mobileActions === undefined ? (\n actions\n ) : (\n <>\n <div className=\"hidden items-center gap-density-2 md:flex\">\n {actions}\n </div>\n <div className=\"flex items-center gap-density-2 md:hidden\">\n {mobileActions}\n </div>\n </>\n )}\n </div>\n )}\n </div>\n {toolbar && (\n <div\n data-slot=\"app-shell-toolbar\"\n className={cn(\n \"flex flex-wrap items-center gap-density-2 border-t border-border bg-muted px-density-3 py-density-2 md:px-density-4\",\n toolbarClassName,\n )}\n >\n {toolbar}\n </div>\n )}\n </header>\n )}\n\n {hasBodyHeader && (\n <div\n data-slot=\"app-shell-body-header\"\n className={cn(\n \"shrink-0 border-b border-border bg-card\",\n bodyHeaderClassName,\n )}\n >\n <div\n data-slot=\"app-shell-body-header-content\"\n data-content-width={effectiveContentWidth}\n className={cn(\n \"flex flex-col items-stretch gap-density-2 px-density-3 py-density-2 md:flex-row md:items-start md:justify-between md:gap-density-3 md:px-density-4\",\n contentWidthClassName(effectiveContentWidth),\n )}\n >\n <div className=\"min-w-0 flex-1\">{bodyHeader}</div>\n {bodyActions && (\n <div\n data-slot=\"app-shell-body-actions\"\n className=\"flex shrink-0 flex-wrap items-center gap-density-2\"\n >\n {bodyActions}\n </div>\n )}\n </div>\n </div>\n )}\n\n {bodySidebar !== undefined ? (\n <SplitPane\n stackOnMobile\n className=\"min-h-0 flex-1\"\n defaultSplit={bodySplit}\n minLeft={12}\n minRight={30}\n left={\n <div data-slot=\"app-shell-body-sidebar\" className=\"h-full\">\n {bodySidebar}\n </div>\n }\n right={\n <main\n data-slot=\"app-shell-main\"\n className={cn(\n \"h-full min-h-0 min-w-0 overflow-auto\",\n contentClassName,\n )}\n >\n {children}\n </main>\n }\n leftClass=\"max-h-[40vh] shrink-0 border-b border-border md:max-h-none md:border-b-0\"\n rightClass=\"min-h-0 flex-1 md:flex-none\"\n />\n ) : (\n <main\n data-slot=\"app-shell-main\"\n className={cn(\n \"min-h-0 min-w-0 flex-1 overflow-auto\",\n contentClassName,\n )}\n >\n <div\n data-slot=\"app-shell-content\"\n data-content-width={contentWidth}\n className={cn(contentWidthClassName(contentWidth), \"h-full\")}\n >\n {children}\n </div>\n </main>\n )}\n </div>\n {hasSidebar && mobileSidebarOpen && (\n <div\n className=\"fixed inset-0 z-50 md:hidden\"\n role=\"presentation\"\n onClick={() => setMobileSidebarOpen(false)}\n >\n <div className=\"absolute inset-0 bg-black/40\" />\n <aside\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={mobileSidebarLabel}\n className={cn(\n \"relative z-10 flex h-full w-[min(20rem,85vw)] flex-col overflow-hidden border-r border-sidebar-border bg-sidebar text-sidebar-foreground shadow-xl\",\n sidebarClassName,\n )}\n onClick={(event) => event.stopPropagation()}\n >\n <div className=\"flex h-14 shrink-0 items-center justify-between border-b border-sidebar-border px-density-3\">\n {brand && (\n <div className=\"flex min-w-0 items-center gap-2\">{brand}</div>\n )}\n <button\n type=\"button\"\n aria-label={`Close ${mobileSidebarLabel}`}\n title=\"Close\"\n className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/70 transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\"\n onClick={() => setMobileSidebarOpen(false)}\n >\n <Icon icon={UiClose} className=\"h-4 w-4\" />\n </button>\n </div>\n {sidebarHeader && (\n <div className=\"shrink-0 border-b border-sidebar-border px-density-3 py-density-2\">\n {sidebarHeader}\n </div>\n )}\n <div className=\"min-h-0 flex-1 overflow-y-auto py-density-2\">\n {renderSidebarContent(false, () => setMobileSidebarOpen(false))}\n </div>\n {sidebarFooter && (\n <div className=\"mt-auto shrink-0 border-t border-sidebar-border px-density-3 py-density-2\">\n {sidebarFooter}\n </div>\n )}\n </aside>\n </div>\n )}\n </div>\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AppShell.js","sources":["../../src/layout/AppShell.tsx"],"sourcesContent":["import { useEffect, useState, type ReactNode } from \"react\";\nimport { cn } from \"../lib/utils\";\nimport { Icon, type StaticIconComponent } from \"../data/Icon\";\nimport { UiClose, UiMenu, UiSidebar } from \"../icons\";\nimport { useEscapeLayer } from \"../overlay/modalStack\";\nimport type { DropdownMenuItem } from \"../overlay/DropdownMenu\";\nimport { SplitPane } from \"./SplitPane\";\nimport { AppShellSlotOutlines } from \"./AppShell.debug\";\nimport { NavSections, type GroupState } from \"./AppShell.nav\";\nimport type { AppShellNavDrag } from \"./AppShell.nav.drag\";\nimport { contentWidthClassName, type ContentWidth } from \"./content-width\";\n\n// AppShell is a sidebar-first application shell. The full-height DARK nav rail\n// owns the brand + collapse toggle and renders grouped nav sections; the top bar\n// (search, actions) sits to the RIGHT of the rail — there is no full-width top\n// bar when a rail is present. With no rail, the top bar spans full width. The\n// body carries a fixed bodyHeader + bodyActions row over an optional\n// bodySidebar | body-main split (body-main scrolls; bodySidebar — e.g. a tree —\n// scrolls independently via a resizable SplitPane).\n\nexport type AppShellNavItem = {\n /** Stable key; also the React key. */\n key: string;\n /** Visible label (hidden when the rail is collapsed). */\n label: ReactNode;\n /** Leading icon (icon name or component). */\n icon?: string | StaticIconComponent;\n /** Highlights the item as the current location. */\n active?: boolean;\n /** Routing destination; rendered as an anchor via the RouterAdapter. */\n to: string;\n /** Opens `to` in a new tab. */\n external?: boolean;\n /** Trailing adornment (count, status dot). */\n badge?: ReactNode;\n /** Actions opened by right-click, the Context Menu key, or Shift+F10. */\n contextMenu?: DropdownMenuItem[];\n /** Accessible label for the context menu. Defaults to `<label> actions`. */\n contextMenuLabel?: string;\n};\n\nexport type AppShellNavGroup = {\n /** Stable key; also the key its collapsed state persists under. */\n key: string;\n /** Group heading rendered on the toggle row. */\n label: string;\n /** Leading icon (icon name or component). */\n icon?: string | StaticIconComponent;\n /** Trailing adornment (aggregate count, status dot). */\n badge?: ReactNode;\n /** Actions opened from the group heading's context menu. */\n contextMenu?: DropdownMenuItem[];\n /** Accessible label for the context menu. Defaults to `<label> actions`. */\n contextMenuLabel?: string;\n /** Folded on first render until the user toggles it. */\n defaultCollapsed?: boolean;\n /**\n * Keeps the group open regardless of stored state, so a deep-linked\n * destination can never hide under a folder the user collapsed earlier.\n * Mirrors `Tree.revealSelected`: set it on the active item's ancestors.\n */\n forceExpanded?: boolean;\n items: AppShellNavItem[];\n /**\n * Nested sub-groups, rendered after `items` at one further indent. Groups\n * nest arbitrarily, so a backend hierarchy deeper than two levels does not\n * have to be flattened to fit the rail.\n */\n groups?: AppShellNavGroup[];\n /**\n * Makes the group's own heading row a destination as well as a disclosure:\n * the label becomes a nav link and the chevron sits beside it as a separate\n * control. Needed wherever a node is both a folder and a leaf — e.g. a\n * profile named `jms` that is runnable *and* the parent of `jms.incoming`.\n */\n item?: AppShellNavItem;\n};\n\nexport type AppShellNavSection = {\n /** Section heading; collapses to a divider when the rail is collapsed. */\n label?: string;\n items?: AppShellNavItem[];\n /** Collapsible groups rendered after the flat items. High-cardinality\n * clusters (provider surfaces, per-ledger journals) belong here so they can\n * be folded away; a collapsed rail flattens them back to plain items. */\n groups?: AppShellNavGroup[];\n /**\n * How the groups read.\n *\n * `\"list\"` (the default) styles each group heading as a small uppercase\n * cluster label — right for a handful of named clusters under one section.\n *\n * `\"tree\"` styles headings as ordinary nav rows, because in a tree a folder\n * sits at the same level as its sibling destinations: a group carrying an\n * `item` renders as a link either way, so an uppercase heading beside it\n * would make two nodes of the same kind look like different things.\n */\n variant?: \"list\" | \"tree\";\n /**\n * Makes the section's rows draggable onto one another, so a hierarchy can be\n * rearranged in place. The section stays the boundary — a row never lands in\n * a different section — and the consumer owns what a move means. Ignored\n * while the rail is collapsed, where there are no folder rows to aim at.\n */\n drag?: AppShellNavDrag;\n};\n\nexport type AppShellProps = {\n // ── Top bar (right of the rail; full width when no rail) ─\n /** Brand mark / wordmark. Shown in the rail header when a rail is present, else in the top bar. */\n brand?: ReactNode;\n /** Inline primary nav (e.g. tabs) shown after the brand in the top bar. */\n nav?: ReactNode;\n /** Centered search slot; grows to fill and is width-capped. */\n search?: ReactNode;\n /** Right-aligned cluster (icon buttons, settings/org picker, …). */\n actions?: ReactNode;\n /** Compact action cluster used in the mobile header. Defaults to `actions`. */\n mobileActions?: ReactNode;\n /** Optional second top-bar row for filters / bulk actions. */\n toolbar?: ReactNode;\n /** Max width of the centered search slot. Defaults to 28rem. */\n searchMaxWidth?: string | number;\n\n // ── Left nav rail (dark, collapsible, fixed width) ───────\n /** Declarative nav sections rendered into the rail (collapse-aware). */\n navSections?: AppShellNavSection[];\n /** Custom sidebar content; receives the collapsed flag. Overrides navSections. */\n sidebar?: ReactNode | ((collapsed: boolean) => ReactNode);\n /** Pinned below the rail header (e.g. a context switcher). */\n sidebarHeader?: ReactNode;\n /** Pinned to the bottom of the rail (version, account). */\n sidebarFooter?: ReactNode;\n /** Show the collapse toggle. Defaults to true when a rail is present. */\n collapsible?: boolean;\n /** Initial collapsed state (uncontrolled). */\n defaultCollapsed?: boolean;\n /** localStorage key persisting the collapsed state. */\n collapsedStorageKey?: string;\n /** localStorage key persisting per-group collapsed state. */\n groupCollapsedStorageKey?: string;\n /** Expanded rail width in px. Defaults to 240. */\n sidebarWidth?: number;\n /** Collapsed rail width in px. Defaults to 56. */\n collapsedWidth?: number;\n /** Accessible label for the mobile navigation drawer. Defaults to \"Navigation\". */\n mobileSidebarLabel?: string;\n\n // ── Body ─────────────────────────────────────────────────\n /** Fixed header row, left side (breadcrumb, title, tabs). */\n bodyHeader?: ReactNode;\n /** Fixed header row, right side (entity actions) — same row as bodyHeader. */\n bodyActions?: ReactNode;\n /** Optional independent-scroll pane (e.g. a tree). Renders a SplitPane vs body-main. */\n bodySidebar?: ReactNode;\n /** bodySidebar width as a percent when present. Defaults to 24. */\n bodySplit?: number;\n /** Main content (body-main); fills the remaining space and scrolls. */\n children: ReactNode;\n /** Centers content at responsive wide breakpoints, or allows it to fill the workspace. */\n contentWidth?: ContentWidth;\n\n /**\n * Outlines every slot in its own colour and labels it with its `data-slot`\n * name — a layout-debugging aid for working out which region owns a given\n * area or scrollbar. Uses `outline`, so enabling it does not shift layout.\n */\n debugSlots?: boolean;\n\n className?: string;\n headerClassName?: string;\n toolbarClassName?: string;\n sidebarClassName?: string;\n bodyHeaderClassName?: string;\n contentClassName?: string;\n};\n\nfunction readStored(key: string | undefined): string | null {\n if (!key || typeof window === \"undefined\") return null;\n return window.localStorage.getItem(key);\n}\n\nconst DEFAULT_GROUP_COLLAPSE_KEY = \"clicky-ui:app-shell:groups\";\n\nfunction readGroupState(storageKey: string): Record<string, boolean> {\n if (typeof window === \"undefined\") return {};\n try {\n const raw = window.localStorage.getItem(storageKey);\n if (!raw) return {};\n const parsed = JSON.parse(raw);\n return parsed && typeof parsed === \"object\"\n ? (parsed as Record<string, boolean>)\n : {};\n } catch {\n return {};\n }\n}\n\n// Lives here rather than in AppShell.nav so a single instance can be shared by\n// both NavSections renders (rail + mobile drawer).\nfunction useGroupCollapsed(storageKey: string): GroupState {\n const [state, setState] = useState<Record<string, boolean>>(() =>\n readGroupState(storageKey),\n );\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n try {\n window.localStorage.setItem(storageKey, JSON.stringify(state));\n } catch {\n // Rail state is a UX nicety; private-mode storage failures are safe to swallow.\n }\n }, [state, storageKey]);\n return {\n isCollapsed: (key, fallback) => state[key] ?? fallback,\n toggle: (key, fallback) =>\n setState((prev) => ({ ...prev, [key]: !(prev[key] ?? fallback) })),\n };\n}\n\nexport function AppShell(props: AppShellProps) {\n const {\n brand,\n nav,\n search,\n actions,\n mobileActions,\n toolbar,\n searchMaxWidth = \"28rem\",\n navSections,\n sidebar,\n sidebarHeader,\n sidebarFooter,\n collapsible = true,\n defaultCollapsed = false,\n collapsedStorageKey,\n groupCollapsedStorageKey,\n sidebarWidth = 240,\n collapsedWidth = 56,\n mobileSidebarLabel = \"Navigation\",\n bodyHeader,\n bodyActions,\n bodySidebar,\n bodySplit = 24,\n children,\n contentWidth = \"contained\",\n debugSlots = false,\n className,\n headerClassName,\n toolbarClassName,\n sidebarClassName,\n bodyHeaderClassName,\n contentClassName,\n } = props;\n\n const hasSidebar = sidebar !== undefined || (navSections?.length ?? 0) > 0;\n const [mobileSidebarOpen, setMobileSidebarOpen] = useState(false);\n\n const [collapsed, setCollapsed] = useState(\n () =>\n readStored(collapsedStorageKey) === \"true\" ||\n (readStored(collapsedStorageKey) === null && defaultCollapsed),\n );\n\n useEffect(() => {\n if (collapsedStorageKey && typeof window !== \"undefined\")\n window.localStorage.setItem(collapsedStorageKey, String(collapsed));\n }, [collapsed, collapsedStorageKey]);\n\n useEscapeLayer(mobileSidebarOpen, () => setMobileSidebarOpen(false));\n\n // One instance for the rail AND the mobile drawer: both render NavSections,\n // and per-render state behind a shared storage key would desync.\n const groupState = useGroupCollapsed(\n groupCollapsedStorageKey ?? DEFAULT_GROUP_COLLAPSE_KEY,\n );\n\n const railWidth = collapsed ? collapsedWidth : sidebarWidth;\n const hasTopBar =\n (!hasSidebar && brand !== undefined) ||\n nav !== undefined ||\n search !== undefined ||\n actions !== undefined ||\n mobileActions !== undefined ||\n toolbar !== undefined;\n const hasMobileHeader = hasSidebar;\n const hasBodyHeader = bodyHeader !== undefined || bodyActions !== undefined;\n const effectiveContentWidth =\n bodySidebar === undefined ? contentWidth : \"full\";\n const renderSidebarContent = (\n collapsedValue: boolean,\n onNavigate?: () => void,\n ) =>\n typeof sidebar === \"function\"\n ? sidebar(collapsedValue)\n : sidebar !== undefined\n ? sidebar\n : navSections && (\n <NavSections\n sections={navSections}\n collapsed={collapsedValue}\n groupState={groupState}\n {...(onNavigate ? { onNavigate } : {})}\n />\n );\n\n return (\n <div\n className={cn(\"flex h-full min-h-0 w-full bg-background\", className)}\n {...(debugSlots ? { \"data-debug-slots\": \"true\" } : {})}\n >\n {debugSlots && <AppShellSlotOutlines />}\n {hasSidebar && (\n <aside\n data-slot=\"app-shell-sidebar\"\n style={{ width: railWidth }}\n className={cn(\n \"hidden shrink-0 flex-col overflow-hidden border-r border-sidebar-border bg-sidebar text-sidebar-foreground transition-[width] duration-200 md:flex\",\n sidebarClassName,\n )}\n >\n <div\n className={cn(\n \"flex h-14 shrink-0 items-center border-b border-sidebar-border\",\n collapsed\n ? \"justify-center px-2\"\n : \"justify-between px-density-3\",\n )}\n >\n {!collapsed && brand && (\n <div\n data-slot=\"app-shell-brand\"\n className=\"flex min-w-0 items-center gap-2\"\n >\n {brand}\n </div>\n )}\n {collapsible && (\n <button\n type=\"button\"\n onClick={() => setCollapsed((c) => !c)}\n aria-label={collapsed ? \"Expand sidebar\" : \"Collapse sidebar\"}\n title={collapsed ? \"Expand sidebar\" : \"Collapse sidebar\"}\n className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/70 transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\"\n >\n <Icon icon={UiSidebar} className=\"h-4 w-4\" />\n </button>\n )}\n </div>\n {sidebarHeader && (\n <div\n data-slot=\"app-shell-sidebar-header\"\n className=\"shrink-0 border-b border-sidebar-border px-density-3 py-density-2\"\n >\n {sidebarHeader}\n </div>\n )}\n <div className=\"min-h-0 flex-1 overflow-y-auto py-density-2\">\n {renderSidebarContent(collapsed)}\n </div>\n {sidebarFooter && (\n <div\n data-slot=\"app-shell-sidebar-footer\"\n className=\"mt-auto shrink-0 border-t border-sidebar-border px-density-3 py-density-2\"\n >\n {sidebarFooter}\n </div>\n )}\n </aside>\n )}\n\n <div\n data-slot=\"app-shell-column\"\n className=\"@container/app-content flex min-h-0 min-w-0 flex-1 flex-col\"\n >\n {(hasTopBar || hasMobileHeader) && (\n <header\n data-slot=\"app-shell-header\"\n className=\"shrink-0 border-b border-border bg-card\"\n >\n <div\n className={cn(\n hasSidebar\n ? \"flex flex-wrap items-center gap-density-2 px-density-3 py-density-2 md:h-14 md:flex-nowrap md:gap-density-3 md:px-density-4 md:py-0\"\n : // Wraps rather than squeezing. The nav shrinks and the\n // actions cluster does not, so on a laptop a full actions\n // row left the nav a sliver — every tab but the first\n // scrolled out of sight. A second line costs 44px and only\n // appears when the row genuinely cannot fit.\n \"flex min-h-14 flex-wrap items-center gap-density-3 px-density-4\",\n headerClassName,\n )}\n >\n {hasSidebar && (\n <button\n type=\"button\"\n aria-label={`Open ${mobileSidebarLabel}`}\n title={mobileSidebarLabel}\n className=\"inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-border bg-background text-foreground transition-colors hover:bg-accent md:hidden\"\n onClick={() => setMobileSidebarOpen(true)}\n >\n <Icon icon={UiMenu} className=\"h-4 w-4\" />\n </button>\n )}\n {brand && (\n <div\n data-slot=\"app-shell-brand\"\n className={cn(\n \"min-w-0 items-center gap-density-2\",\n hasSidebar ? \"flex flex-1 md:hidden\" : \"flex shrink-0\",\n )}\n >\n {brand}\n </div>\n )}\n {nav && (\n <div\n data-slot=\"app-shell-nav\"\n className={cn(\n // The nav is the only header slot that both shrinks\n // (min-w-0) and holds wide content, while the actions\n // cluster beside it is shrink-0. Give a full actions row\n // and this box collapses to a sliver — so it needs a guard,\n // or its tabs paint straight over the toolbar next to it\n // and both become unreadable. Scrolling keeps every tab\n // reachable; overflowing keeps none of them.\n \"flex min-w-0 items-center overflow-x-auto\",\n hasSidebar && \"order-3 basis-full md:order-none md:basis-auto\",\n )}\n >\n {nav}\n </div>\n )}\n {search !== undefined && (\n <div\n data-slot=\"app-shell-search\"\n className={cn(\n \"flex min-w-0 flex-1 justify-center\",\n hasSidebar &&\n \"order-2 basis-full md:order-none md:basis-auto md:flex-1\",\n )}\n >\n <div className=\"w-full\" style={{ maxWidth: searchMaxWidth }}>\n {search}\n </div>\n </div>\n )}\n {search === undefined && (\n <div\n className={cn(\"flex-1\", hasSidebar && \"hidden md:block\")}\n />\n )}\n {(actions !== undefined ||\n (hasSidebar && mobileActions !== undefined)) && (\n <div\n data-slot=\"app-shell-actions\"\n className={cn(\n \"flex shrink-0 items-center gap-density-2\",\n // Below md the cluster must never be wider than the\n // phone: a shrink-0 row that overflows widens the layout\n // viewport, and then every fixed overlay on the page\n // loses its right edge. Let it shrink and scroll its own\n // contents instead, the same guard the nav slot has.\n \"max-md:min-w-0 max-md:max-w-full max-md:shrink max-md:overflow-x-auto\",\n hasSidebar && \"order-1 ml-auto md:order-none md:ml-0\",\n )}\n >\n {!hasSidebar || mobileActions === undefined ? (\n actions\n ) : (\n <>\n <div className=\"hidden items-center gap-density-2 md:flex\">\n {actions}\n </div>\n <div className=\"flex items-center gap-density-2 md:hidden\">\n {mobileActions}\n </div>\n </>\n )}\n </div>\n )}\n </div>\n {toolbar && (\n <div\n data-slot=\"app-shell-toolbar\"\n className={cn(\n \"flex flex-wrap items-center gap-density-2 border-t border-border bg-muted px-density-3 py-density-2 md:px-density-4\",\n toolbarClassName,\n )}\n >\n {toolbar}\n </div>\n )}\n </header>\n )}\n\n {hasBodyHeader && (\n <div\n data-slot=\"app-shell-body-header\"\n className={cn(\n \"shrink-0 border-b border-border bg-card\",\n bodyHeaderClassName,\n )}\n >\n <div\n data-slot=\"app-shell-body-header-content\"\n data-content-width={effectiveContentWidth}\n className={cn(\n \"flex flex-col items-stretch gap-density-2 px-density-3 py-density-2 md:flex-row md:items-start md:justify-between md:gap-density-3 md:px-density-4\",\n contentWidthClassName(effectiveContentWidth),\n )}\n >\n <div className=\"min-w-0 flex-1\">{bodyHeader}</div>\n {bodyActions && (\n <div\n data-slot=\"app-shell-body-actions\"\n className=\"flex shrink-0 flex-wrap items-center gap-density-2\"\n >\n {bodyActions}\n </div>\n )}\n </div>\n </div>\n )}\n\n {bodySidebar !== undefined ? (\n <SplitPane\n stackOnMobile\n className=\"min-h-0 flex-1\"\n defaultSplit={bodySplit}\n minLeft={12}\n minRight={30}\n left={\n <div data-slot=\"app-shell-body-sidebar\" className=\"h-full\">\n {bodySidebar}\n </div>\n }\n right={\n <main\n data-slot=\"app-shell-main\"\n className={cn(\n \"h-full min-h-0 min-w-0 overflow-auto\",\n contentClassName,\n )}\n >\n {children}\n </main>\n }\n leftClass=\"max-h-[40vh] shrink-0 border-b border-border md:max-h-none md:border-b-0\"\n rightClass=\"min-h-0 flex-1 md:flex-none\"\n />\n ) : (\n <main\n data-slot=\"app-shell-main\"\n className={cn(\n \"min-h-0 min-w-0 flex-1 overflow-auto\",\n contentClassName,\n )}\n >\n <div\n data-slot=\"app-shell-content\"\n data-content-width={contentWidth}\n className={cn(contentWidthClassName(contentWidth), \"h-full\")}\n >\n {children}\n </div>\n </main>\n )}\n </div>\n {hasSidebar && mobileSidebarOpen && (\n <div\n className=\"fixed inset-0 z-50 md:hidden\"\n role=\"presentation\"\n onClick={() => setMobileSidebarOpen(false)}\n >\n <div className=\"absolute inset-0 bg-black/40\" />\n <aside\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={mobileSidebarLabel}\n className={cn(\n \"relative z-10 flex h-full w-[min(20rem,85vw)] flex-col overflow-hidden border-r border-sidebar-border bg-sidebar text-sidebar-foreground shadow-xl\",\n sidebarClassName,\n )}\n onClick={(event) => event.stopPropagation()}\n >\n <div className=\"flex h-14 shrink-0 items-center justify-between border-b border-sidebar-border px-density-3\">\n {brand && (\n <div className=\"flex min-w-0 items-center gap-2\">{brand}</div>\n )}\n <button\n type=\"button\"\n aria-label={`Close ${mobileSidebarLabel}`}\n title=\"Close\"\n className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-sidebar-foreground/70 transition-colors hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\"\n onClick={() => setMobileSidebarOpen(false)}\n >\n <Icon icon={UiClose} className=\"h-4 w-4\" />\n </button>\n </div>\n {sidebarHeader && (\n <div className=\"shrink-0 border-b border-sidebar-border px-density-3 py-density-2\">\n {sidebarHeader}\n </div>\n )}\n <div className=\"min-h-0 flex-1 overflow-y-auto py-density-2\">\n {renderSidebarContent(false, () => setMobileSidebarOpen(false))}\n </div>\n {sidebarFooter && (\n <div className=\"mt-auto shrink-0 border-t border-sidebar-border px-density-3 py-density-2\">\n {sidebarFooter}\n </div>\n )}\n </aside>\n </div>\n )}\n </div>\n );\n}\n"],"names":[],"mappings":"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"}
@@ -12,6 +12,11 @@ function validateWorkspacePanes(panes) {
12
12
  if (ids.has(pane.id))
13
13
  throw new Error(`Workspace pane id ${pane.id} is duplicated`);
14
14
  ids.add(pane.id);
15
+ if (pane.showHeader === false && pane.collapsible !== false) {
16
+ throw new Error(
17
+ `Workspace pane ${pane.id} headerless panes must not be collapsible`
18
+ );
19
+ }
15
20
  validatePaneDimensions(pane);
16
21
  }
17
22
  if (panes.filter((pane) => pane.location === "center").length !== 1) {
@@ -1 +1 @@
1
- {"version":3,"file":"Workspace.model.cjs","sources":["../../src/layout/Workspace.model.ts"],"sourcesContent":["import type { ReactNode } from \"react\";\n\nexport type WorkspacePaneLocation = \"left\" | \"center\" | \"right\" | \"bottom\";\nexport type WorkspaceSideLocation = \"left\" | \"right\";\n\nexport type WorkspacePaneSlots = {\n headerLeading?: ReactNode;\n headerTrailing?: ReactNode;\n};\n\nexport type WorkspacePaneSpec = {\n id: string;\n label: ReactNode;\n icon?: ReactNode;\n location: WorkspacePaneLocation;\n content: ReactNode;\n slots?: WorkspacePaneSlots;\n width?: number;\n height?: number;\n minWidth?: number;\n maxWidth?: number;\n minHeight?: number;\n maxHeight?: number;\n collapsible?: boolean;\n resizable?: boolean;\n defaultCollapsed?: boolean;\n className?: string;\n contentClassName?: string;\n};\n\nexport type WorkspaceLayoutState = {\n leftWidth: number;\n rightWidth: number;\n bottomHeight: number;\n stackHeights: Record<string, number>;\n collapsed: Record<string, boolean>;\n sideCollapsed: Record<WorkspaceSideLocation, boolean>;\n};\n\nexport type WorkspaceLayoutDefaults = Partial<WorkspaceLayoutState>;\n\nexport const WORKSPACE_DEFAULT_SIDE_WIDTH = 320;\nexport const WORKSPACE_DEFAULT_BOTTOM_HEIGHT = 240;\nexport const WORKSPACE_COLLAPSED_RAIL_WIDTH = 40;\n\nconst STORAGE_VERSION = 2;\n\nexport function validateWorkspacePanes(panes: WorkspacePaneSpec[]) {\n const ids = new Set<string>();\n for (const pane of panes) {\n if (!pane.id.trim())\n throw new Error(\"Workspace pane ids must not be empty\");\n if (ids.has(pane.id))\n throw new Error(`Workspace pane id ${pane.id} is duplicated`);\n ids.add(pane.id);\n validatePaneDimensions(pane);\n }\n\n if (panes.filter((pane) => pane.location === \"center\").length !== 1) {\n throw new Error(\"Workspace requires exactly one center pane\");\n }\n if (panes.filter((pane) => pane.location === \"bottom\").length > 1) {\n throw new Error(\"Workspace allows at most one bottom pane\");\n }\n validateSharedSideWidth(panes, \"left\");\n validateSharedSideWidth(panes, \"right\");\n}\n\nfunction validatePaneDimensions(pane: WorkspacePaneSpec) {\n const values = [\n pane.width,\n pane.height,\n pane.minWidth,\n pane.maxWidth,\n pane.minHeight,\n pane.maxHeight,\n ];\n if (\n values.some(\n (value) => value !== undefined && (!Number.isFinite(value) || value <= 0),\n )\n ) {\n throw new Error(\n `Workspace pane ${pane.id} dimensions must be positive finite numbers`,\n );\n }\n if (\n pane.minWidth !== undefined &&\n pane.maxWidth !== undefined &&\n pane.minWidth > pane.maxWidth\n ) {\n throw new Error(`Workspace pane ${pane.id} minWidth exceeds maxWidth`);\n }\n if (\n pane.minHeight !== undefined &&\n pane.maxHeight !== undefined &&\n pane.minHeight > pane.maxHeight\n ) {\n throw new Error(`Workspace pane ${pane.id} minHeight exceeds maxHeight`);\n }\n}\n\nfunction validateSharedSideWidth(\n panes: WorkspacePaneSpec[],\n location: \"left\" | \"right\",\n) {\n const widths = new Set(\n panes\n .filter((pane) => pane.location === location && pane.width !== undefined)\n .map((pane) => pane.width),\n );\n if (widths.size > 1) {\n throw new Error(\n `Workspace panes stacked on the ${location} share one width`,\n );\n }\n}\n\nexport function createWorkspaceLayoutState(\n panes: WorkspacePaneSpec[],\n defaults: WorkspaceLayoutDefaults = {},\n): WorkspaceLayoutState {\n const left = panes.find((pane) => pane.location === \"left\");\n const right = panes.find((pane) => pane.location === \"right\");\n const bottom = panes.find((pane) => pane.location === \"bottom\");\n const stackHeights = Object.fromEntries(\n panes\n .filter(\n (pane) =>\n (pane.location === \"left\" || pane.location === \"right\") &&\n pane.height !== undefined,\n )\n .map((pane) => [pane.id, pane.height as number]),\n );\n const collapsed = Object.fromEntries(\n panes.map((pane) => [pane.id, pane.defaultCollapsed ?? false]),\n );\n\n return {\n leftWidth:\n defaults.leftWidth ?? left?.width ?? WORKSPACE_DEFAULT_SIDE_WIDTH,\n rightWidth:\n defaults.rightWidth ?? right?.width ?? WORKSPACE_DEFAULT_SIDE_WIDTH,\n bottomHeight:\n defaults.bottomHeight ??\n bottom?.height ??\n WORKSPACE_DEFAULT_BOTTOM_HEIGHT,\n stackHeights: { ...stackHeights, ...defaults.stackHeights },\n collapsed: { ...collapsed, ...defaults.collapsed },\n sideCollapsed: { left: false, right: false, ...defaults.sideCollapsed },\n };\n}\n\nexport function readWorkspaceLayoutState(\n storageKey: string,\n panes: WorkspacePaneSpec[],\n defaults: WorkspaceLayoutDefaults,\n): WorkspaceLayoutState {\n const fallback = createWorkspaceLayoutState(panes, defaults);\n if (typeof window === \"undefined\") return fallback;\n const saved = window.localStorage.getItem(storageKey);\n if (!saved) return fallback;\n\n try {\n const parsed = JSON.parse(saved) as unknown;\n if (!isStoredWorkspaceState(parsed))\n throw new Error(\"unsupported workspace layout state\");\n const paneIds = new Set(panes.map((pane) => pane.id));\n return createWorkspaceLayoutState(panes, {\n leftWidth: parsed.state.leftWidth,\n rightWidth: parsed.state.rightWidth,\n bottomHeight: parsed.state.bottomHeight,\n stackHeights: filterPaneRecord(parsed.state.stackHeights, paneIds),\n collapsed: filterPaneRecord(parsed.state.collapsed, paneIds),\n sideCollapsed: parsed.state.sideCollapsed,\n });\n } catch (error) {\n console.warn(`Resetting invalid Workspace state for ${storageKey}`, error);\n window.localStorage.removeItem(storageKey);\n return fallback;\n }\n}\n\nexport function writeWorkspaceLayoutState(\n storageKey: string,\n state: WorkspaceLayoutState,\n) {\n if (typeof window === \"undefined\") return;\n window.localStorage.setItem(\n storageKey,\n JSON.stringify({ version: STORAGE_VERSION, state }),\n );\n}\n\nfunction filterPaneRecord<T>(\n record: Record<string, T>,\n paneIds: Set<string>,\n): Record<string, T> {\n return Object.fromEntries(\n Object.entries(record).filter(([id]) => paneIds.has(id)),\n );\n}\n\nfunction isStoredWorkspaceState(\n value: unknown,\n): value is { version: 2; state: WorkspaceLayoutState } {\n if (!value || typeof value !== \"object\") return false;\n const stored = value as {\n version?: unknown;\n state?: Partial<WorkspaceLayoutState>;\n };\n const state = stored.state;\n return (\n stored.version === STORAGE_VERSION &&\n Boolean(state) &&\n isPositiveNumber(state?.leftWidth) &&\n isPositiveNumber(state?.rightWidth) &&\n isPositiveNumber(state?.bottomHeight) &&\n isRecord(state?.stackHeights, \"number\") &&\n isRecord(state?.collapsed, \"boolean\") &&\n isSideCollapsed(state?.sideCollapsed)\n );\n}\n\nfunction isSideCollapsed(\n value: unknown,\n): value is WorkspaceLayoutState[\"sideCollapsed\"] {\n if (!value || typeof value !== \"object\") return false;\n const sides = value as Partial<WorkspaceLayoutState[\"sideCollapsed\"]>;\n return typeof sides.left === \"boolean\" && typeof sides.right === \"boolean\";\n}\n\nfunction isPositiveNumber(value: unknown): value is number {\n return typeof value === \"number\" && Number.isFinite(value) && value > 0;\n}\n\nfunction isRecord(\n value: unknown,\n valueType: \"number\" | \"boolean\",\n): value is Record<string, never> {\n return (\n Boolean(value) &&\n typeof value === \"object\" &&\n Object.values(value as Record<string, unknown>).every(\n (entry) => typeof entry === valueType,\n )\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Workspace.model.cjs","sources":["../../src/layout/Workspace.model.ts"],"sourcesContent":["import type { ReactNode } from \"react\";\n\nexport type WorkspacePaneLocation = \"left\" | \"center\" | \"right\" | \"bottom\";\nexport type WorkspaceSideLocation = \"left\" | \"right\";\n\nexport type WorkspacePaneSlots = {\n headerLeading?: ReactNode;\n headerTrailing?: ReactNode;\n};\n\nexport type WorkspacePaneSpec = {\n id: string;\n label: ReactNode;\n icon?: ReactNode;\n location: WorkspacePaneLocation;\n content: ReactNode;\n slots?: WorkspacePaneSlots;\n width?: number;\n height?: number;\n minWidth?: number;\n maxWidth?: number;\n minHeight?: number;\n maxHeight?: number;\n collapsible?: boolean;\n /** Omits the pane chrome when the content already owns its heading. */\n showHeader?: boolean;\n resizable?: boolean;\n defaultCollapsed?: boolean;\n className?: string;\n contentClassName?: string;\n};\n\nexport type WorkspaceLayoutState = {\n leftWidth: number;\n rightWidth: number;\n bottomHeight: number;\n stackHeights: Record<string, number>;\n collapsed: Record<string, boolean>;\n sideCollapsed: Record<WorkspaceSideLocation, boolean>;\n};\n\nexport type WorkspaceLayoutDefaults = Partial<WorkspaceLayoutState>;\n\nexport const WORKSPACE_DEFAULT_SIDE_WIDTH = 320;\nexport const WORKSPACE_DEFAULT_BOTTOM_HEIGHT = 240;\nexport const WORKSPACE_COLLAPSED_RAIL_WIDTH = 40;\n\nconst STORAGE_VERSION = 2;\n\nexport function validateWorkspacePanes(panes: WorkspacePaneSpec[]) {\n const ids = new Set<string>();\n for (const pane of panes) {\n if (!pane.id.trim())\n throw new Error(\"Workspace pane ids must not be empty\");\n if (ids.has(pane.id))\n throw new Error(`Workspace pane id ${pane.id} is duplicated`);\n ids.add(pane.id);\n if (pane.showHeader === false && pane.collapsible !== false) {\n throw new Error(\n `Workspace pane ${pane.id} headerless panes must not be collapsible`,\n );\n }\n validatePaneDimensions(pane);\n }\n\n if (panes.filter((pane) => pane.location === \"center\").length !== 1) {\n throw new Error(\"Workspace requires exactly one center pane\");\n }\n if (panes.filter((pane) => pane.location === \"bottom\").length > 1) {\n throw new Error(\"Workspace allows at most one bottom pane\");\n }\n validateSharedSideWidth(panes, \"left\");\n validateSharedSideWidth(panes, \"right\");\n}\n\nfunction validatePaneDimensions(pane: WorkspacePaneSpec) {\n const values = [\n pane.width,\n pane.height,\n pane.minWidth,\n pane.maxWidth,\n pane.minHeight,\n pane.maxHeight,\n ];\n if (\n values.some(\n (value) => value !== undefined && (!Number.isFinite(value) || value <= 0),\n )\n ) {\n throw new Error(\n `Workspace pane ${pane.id} dimensions must be positive finite numbers`,\n );\n }\n if (\n pane.minWidth !== undefined &&\n pane.maxWidth !== undefined &&\n pane.minWidth > pane.maxWidth\n ) {\n throw new Error(`Workspace pane ${pane.id} minWidth exceeds maxWidth`);\n }\n if (\n pane.minHeight !== undefined &&\n pane.maxHeight !== undefined &&\n pane.minHeight > pane.maxHeight\n ) {\n throw new Error(`Workspace pane ${pane.id} minHeight exceeds maxHeight`);\n }\n}\n\nfunction validateSharedSideWidth(\n panes: WorkspacePaneSpec[],\n location: \"left\" | \"right\",\n) {\n const widths = new Set(\n panes\n .filter((pane) => pane.location === location && pane.width !== undefined)\n .map((pane) => pane.width),\n );\n if (widths.size > 1) {\n throw new Error(\n `Workspace panes stacked on the ${location} share one width`,\n );\n }\n}\n\nexport function createWorkspaceLayoutState(\n panes: WorkspacePaneSpec[],\n defaults: WorkspaceLayoutDefaults = {},\n): WorkspaceLayoutState {\n const left = panes.find((pane) => pane.location === \"left\");\n const right = panes.find((pane) => pane.location === \"right\");\n const bottom = panes.find((pane) => pane.location === \"bottom\");\n const stackHeights = Object.fromEntries(\n panes\n .filter(\n (pane) =>\n (pane.location === \"left\" || pane.location === \"right\") &&\n pane.height !== undefined,\n )\n .map((pane) => [pane.id, pane.height as number]),\n );\n const collapsed = Object.fromEntries(\n panes.map((pane) => [pane.id, pane.defaultCollapsed ?? false]),\n );\n\n return {\n leftWidth:\n defaults.leftWidth ?? left?.width ?? WORKSPACE_DEFAULT_SIDE_WIDTH,\n rightWidth:\n defaults.rightWidth ?? right?.width ?? WORKSPACE_DEFAULT_SIDE_WIDTH,\n bottomHeight:\n defaults.bottomHeight ??\n bottom?.height ??\n WORKSPACE_DEFAULT_BOTTOM_HEIGHT,\n stackHeights: { ...stackHeights, ...defaults.stackHeights },\n collapsed: { ...collapsed, ...defaults.collapsed },\n sideCollapsed: { left: false, right: false, ...defaults.sideCollapsed },\n };\n}\n\nexport function readWorkspaceLayoutState(\n storageKey: string,\n panes: WorkspacePaneSpec[],\n defaults: WorkspaceLayoutDefaults,\n): WorkspaceLayoutState {\n const fallback = createWorkspaceLayoutState(panes, defaults);\n if (typeof window === \"undefined\") return fallback;\n const saved = window.localStorage.getItem(storageKey);\n if (!saved) return fallback;\n\n try {\n const parsed = JSON.parse(saved) as unknown;\n if (!isStoredWorkspaceState(parsed))\n throw new Error(\"unsupported workspace layout state\");\n const paneIds = new Set(panes.map((pane) => pane.id));\n return createWorkspaceLayoutState(panes, {\n leftWidth: parsed.state.leftWidth,\n rightWidth: parsed.state.rightWidth,\n bottomHeight: parsed.state.bottomHeight,\n stackHeights: filterPaneRecord(parsed.state.stackHeights, paneIds),\n collapsed: filterPaneRecord(parsed.state.collapsed, paneIds),\n sideCollapsed: parsed.state.sideCollapsed,\n });\n } catch (error) {\n console.warn(`Resetting invalid Workspace state for ${storageKey}`, error);\n window.localStorage.removeItem(storageKey);\n return fallback;\n }\n}\n\nexport function writeWorkspaceLayoutState(\n storageKey: string,\n state: WorkspaceLayoutState,\n) {\n if (typeof window === \"undefined\") return;\n window.localStorage.setItem(\n storageKey,\n JSON.stringify({ version: STORAGE_VERSION, state }),\n );\n}\n\nfunction filterPaneRecord<T>(\n record: Record<string, T>,\n paneIds: Set<string>,\n): Record<string, T> {\n return Object.fromEntries(\n Object.entries(record).filter(([id]) => paneIds.has(id)),\n );\n}\n\nfunction isStoredWorkspaceState(\n value: unknown,\n): value is { version: 2; state: WorkspaceLayoutState } {\n if (!value || typeof value !== \"object\") return false;\n const stored = value as {\n version?: unknown;\n state?: Partial<WorkspaceLayoutState>;\n };\n const state = stored.state;\n return (\n stored.version === STORAGE_VERSION &&\n Boolean(state) &&\n isPositiveNumber(state?.leftWidth) &&\n isPositiveNumber(state?.rightWidth) &&\n isPositiveNumber(state?.bottomHeight) &&\n isRecord(state?.stackHeights, \"number\") &&\n isRecord(state?.collapsed, \"boolean\") &&\n isSideCollapsed(state?.sideCollapsed)\n );\n}\n\nfunction isSideCollapsed(\n value: unknown,\n): value is WorkspaceLayoutState[\"sideCollapsed\"] {\n if (!value || typeof value !== \"object\") return false;\n const sides = value as Partial<WorkspaceLayoutState[\"sideCollapsed\"]>;\n return typeof sides.left === \"boolean\" && typeof sides.right === \"boolean\";\n}\n\nfunction isPositiveNumber(value: unknown): value is number {\n return typeof value === \"number\" && Number.isFinite(value) && value > 0;\n}\n\nfunction isRecord(\n value: unknown,\n valueType: \"number\" | \"boolean\",\n): value is Record<string, never> {\n return (\n Boolean(value) &&\n typeof value === \"object\" &&\n Object.values(value as Record<string, unknown>).every(\n (entry) => typeof entry === valueType,\n )\n );\n}\n"],"names":[],"mappings":"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"}
@@ -19,6 +19,8 @@ export type WorkspacePaneSpec = {
19
19
  minHeight?: number;
20
20
  maxHeight?: number;
21
21
  collapsible?: boolean;
22
+ /** Omits the pane chrome when the content already owns its heading. */
23
+ showHeader?: boolean;
22
24
  resizable?: boolean;
23
25
  defaultCollapsed?: boolean;
24
26
  className?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Workspace.model.d.ts","sourceRoot":"","sources":["../../src/layout/Workspace.model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;AAC3E,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,OAAO,CAAC;AAErD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,cAAc,CAAC,EAAE,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,aAAa,EAAE,MAAM,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEpE,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAChD,eAAO,MAAM,+BAA+B,MAAM,CAAC;AACnD,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAIjD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAmBhE;AAoDD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,iBAAiB,EAAE,EAC1B,QAAQ,GAAE,uBAA4B,GACrC,oBAAoB,CA8BtB;AAED,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,iBAAiB,EAAE,EAC1B,QAAQ,EAAE,uBAAuB,GAChC,oBAAoB,CAwBtB;AAED,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,oBAAoB,QAO5B"}
1
+ {"version":3,"file":"Workspace.model.d.ts","sourceRoot":"","sources":["../../src/layout/Workspace.model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;AAC3E,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,OAAO,CAAC;AAErD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,cAAc,CAAC,EAAE,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uEAAuE;IACvE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,aAAa,EAAE,MAAM,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEpE,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAChD,eAAO,MAAM,+BAA+B,MAAM,CAAC;AACnD,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAIjD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAwBhE;AAoDD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,iBAAiB,EAAE,EAC1B,QAAQ,GAAE,uBAA4B,GACrC,oBAAoB,CA8BtB;AAED,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,iBAAiB,EAAE,EAC1B,QAAQ,EAAE,uBAAuB,GAChC,oBAAoB,CAwBtB;AAED,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,oBAAoB,QAO5B"}
@@ -10,6 +10,11 @@ function validateWorkspacePanes(panes) {
10
10
  if (ids.has(pane.id))
11
11
  throw new Error(`Workspace pane id ${pane.id} is duplicated`);
12
12
  ids.add(pane.id);
13
+ if (pane.showHeader === false && pane.collapsible !== false) {
14
+ throw new Error(
15
+ `Workspace pane ${pane.id} headerless panes must not be collapsible`
16
+ );
17
+ }
13
18
  validatePaneDimensions(pane);
14
19
  }
15
20
  if (panes.filter((pane) => pane.location === "center").length !== 1) {
@@ -1 +1 @@
1
- {"version":3,"file":"Workspace.model.js","sources":["../../src/layout/Workspace.model.ts"],"sourcesContent":["import type { ReactNode } from \"react\";\n\nexport type WorkspacePaneLocation = \"left\" | \"center\" | \"right\" | \"bottom\";\nexport type WorkspaceSideLocation = \"left\" | \"right\";\n\nexport type WorkspacePaneSlots = {\n headerLeading?: ReactNode;\n headerTrailing?: ReactNode;\n};\n\nexport type WorkspacePaneSpec = {\n id: string;\n label: ReactNode;\n icon?: ReactNode;\n location: WorkspacePaneLocation;\n content: ReactNode;\n slots?: WorkspacePaneSlots;\n width?: number;\n height?: number;\n minWidth?: number;\n maxWidth?: number;\n minHeight?: number;\n maxHeight?: number;\n collapsible?: boolean;\n resizable?: boolean;\n defaultCollapsed?: boolean;\n className?: string;\n contentClassName?: string;\n};\n\nexport type WorkspaceLayoutState = {\n leftWidth: number;\n rightWidth: number;\n bottomHeight: number;\n stackHeights: Record<string, number>;\n collapsed: Record<string, boolean>;\n sideCollapsed: Record<WorkspaceSideLocation, boolean>;\n};\n\nexport type WorkspaceLayoutDefaults = Partial<WorkspaceLayoutState>;\n\nexport const WORKSPACE_DEFAULT_SIDE_WIDTH = 320;\nexport const WORKSPACE_DEFAULT_BOTTOM_HEIGHT = 240;\nexport const WORKSPACE_COLLAPSED_RAIL_WIDTH = 40;\n\nconst STORAGE_VERSION = 2;\n\nexport function validateWorkspacePanes(panes: WorkspacePaneSpec[]) {\n const ids = new Set<string>();\n for (const pane of panes) {\n if (!pane.id.trim())\n throw new Error(\"Workspace pane ids must not be empty\");\n if (ids.has(pane.id))\n throw new Error(`Workspace pane id ${pane.id} is duplicated`);\n ids.add(pane.id);\n validatePaneDimensions(pane);\n }\n\n if (panes.filter((pane) => pane.location === \"center\").length !== 1) {\n throw new Error(\"Workspace requires exactly one center pane\");\n }\n if (panes.filter((pane) => pane.location === \"bottom\").length > 1) {\n throw new Error(\"Workspace allows at most one bottom pane\");\n }\n validateSharedSideWidth(panes, \"left\");\n validateSharedSideWidth(panes, \"right\");\n}\n\nfunction validatePaneDimensions(pane: WorkspacePaneSpec) {\n const values = [\n pane.width,\n pane.height,\n pane.minWidth,\n pane.maxWidth,\n pane.minHeight,\n pane.maxHeight,\n ];\n if (\n values.some(\n (value) => value !== undefined && (!Number.isFinite(value) || value <= 0),\n )\n ) {\n throw new Error(\n `Workspace pane ${pane.id} dimensions must be positive finite numbers`,\n );\n }\n if (\n pane.minWidth !== undefined &&\n pane.maxWidth !== undefined &&\n pane.minWidth > pane.maxWidth\n ) {\n throw new Error(`Workspace pane ${pane.id} minWidth exceeds maxWidth`);\n }\n if (\n pane.minHeight !== undefined &&\n pane.maxHeight !== undefined &&\n pane.minHeight > pane.maxHeight\n ) {\n throw new Error(`Workspace pane ${pane.id} minHeight exceeds maxHeight`);\n }\n}\n\nfunction validateSharedSideWidth(\n panes: WorkspacePaneSpec[],\n location: \"left\" | \"right\",\n) {\n const widths = new Set(\n panes\n .filter((pane) => pane.location === location && pane.width !== undefined)\n .map((pane) => pane.width),\n );\n if (widths.size > 1) {\n throw new Error(\n `Workspace panes stacked on the ${location} share one width`,\n );\n }\n}\n\nexport function createWorkspaceLayoutState(\n panes: WorkspacePaneSpec[],\n defaults: WorkspaceLayoutDefaults = {},\n): WorkspaceLayoutState {\n const left = panes.find((pane) => pane.location === \"left\");\n const right = panes.find((pane) => pane.location === \"right\");\n const bottom = panes.find((pane) => pane.location === \"bottom\");\n const stackHeights = Object.fromEntries(\n panes\n .filter(\n (pane) =>\n (pane.location === \"left\" || pane.location === \"right\") &&\n pane.height !== undefined,\n )\n .map((pane) => [pane.id, pane.height as number]),\n );\n const collapsed = Object.fromEntries(\n panes.map((pane) => [pane.id, pane.defaultCollapsed ?? false]),\n );\n\n return {\n leftWidth:\n defaults.leftWidth ?? left?.width ?? WORKSPACE_DEFAULT_SIDE_WIDTH,\n rightWidth:\n defaults.rightWidth ?? right?.width ?? WORKSPACE_DEFAULT_SIDE_WIDTH,\n bottomHeight:\n defaults.bottomHeight ??\n bottom?.height ??\n WORKSPACE_DEFAULT_BOTTOM_HEIGHT,\n stackHeights: { ...stackHeights, ...defaults.stackHeights },\n collapsed: { ...collapsed, ...defaults.collapsed },\n sideCollapsed: { left: false, right: false, ...defaults.sideCollapsed },\n };\n}\n\nexport function readWorkspaceLayoutState(\n storageKey: string,\n panes: WorkspacePaneSpec[],\n defaults: WorkspaceLayoutDefaults,\n): WorkspaceLayoutState {\n const fallback = createWorkspaceLayoutState(panes, defaults);\n if (typeof window === \"undefined\") return fallback;\n const saved = window.localStorage.getItem(storageKey);\n if (!saved) return fallback;\n\n try {\n const parsed = JSON.parse(saved) as unknown;\n if (!isStoredWorkspaceState(parsed))\n throw new Error(\"unsupported workspace layout state\");\n const paneIds = new Set(panes.map((pane) => pane.id));\n return createWorkspaceLayoutState(panes, {\n leftWidth: parsed.state.leftWidth,\n rightWidth: parsed.state.rightWidth,\n bottomHeight: parsed.state.bottomHeight,\n stackHeights: filterPaneRecord(parsed.state.stackHeights, paneIds),\n collapsed: filterPaneRecord(parsed.state.collapsed, paneIds),\n sideCollapsed: parsed.state.sideCollapsed,\n });\n } catch (error) {\n console.warn(`Resetting invalid Workspace state for ${storageKey}`, error);\n window.localStorage.removeItem(storageKey);\n return fallback;\n }\n}\n\nexport function writeWorkspaceLayoutState(\n storageKey: string,\n state: WorkspaceLayoutState,\n) {\n if (typeof window === \"undefined\") return;\n window.localStorage.setItem(\n storageKey,\n JSON.stringify({ version: STORAGE_VERSION, state }),\n );\n}\n\nfunction filterPaneRecord<T>(\n record: Record<string, T>,\n paneIds: Set<string>,\n): Record<string, T> {\n return Object.fromEntries(\n Object.entries(record).filter(([id]) => paneIds.has(id)),\n );\n}\n\nfunction isStoredWorkspaceState(\n value: unknown,\n): value is { version: 2; state: WorkspaceLayoutState } {\n if (!value || typeof value !== \"object\") return false;\n const stored = value as {\n version?: unknown;\n state?: Partial<WorkspaceLayoutState>;\n };\n const state = stored.state;\n return (\n stored.version === STORAGE_VERSION &&\n Boolean(state) &&\n isPositiveNumber(state?.leftWidth) &&\n isPositiveNumber(state?.rightWidth) &&\n isPositiveNumber(state?.bottomHeight) &&\n isRecord(state?.stackHeights, \"number\") &&\n isRecord(state?.collapsed, \"boolean\") &&\n isSideCollapsed(state?.sideCollapsed)\n );\n}\n\nfunction isSideCollapsed(\n value: unknown,\n): value is WorkspaceLayoutState[\"sideCollapsed\"] {\n if (!value || typeof value !== \"object\") return false;\n const sides = value as Partial<WorkspaceLayoutState[\"sideCollapsed\"]>;\n return typeof sides.left === \"boolean\" && typeof sides.right === \"boolean\";\n}\n\nfunction isPositiveNumber(value: unknown): value is number {\n return typeof value === \"number\" && Number.isFinite(value) && value > 0;\n}\n\nfunction isRecord(\n value: unknown,\n valueType: \"number\" | \"boolean\",\n): value is Record<string, never> {\n return (\n Boolean(value) &&\n typeof value === \"object\" &&\n Object.values(value as Record<string, unknown>).every(\n (entry) => typeof entry === valueType,\n )\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Workspace.model.js","sources":["../../src/layout/Workspace.model.ts"],"sourcesContent":["import type { ReactNode } from \"react\";\n\nexport type WorkspacePaneLocation = \"left\" | \"center\" | \"right\" | \"bottom\";\nexport type WorkspaceSideLocation = \"left\" | \"right\";\n\nexport type WorkspacePaneSlots = {\n headerLeading?: ReactNode;\n headerTrailing?: ReactNode;\n};\n\nexport type WorkspacePaneSpec = {\n id: string;\n label: ReactNode;\n icon?: ReactNode;\n location: WorkspacePaneLocation;\n content: ReactNode;\n slots?: WorkspacePaneSlots;\n width?: number;\n height?: number;\n minWidth?: number;\n maxWidth?: number;\n minHeight?: number;\n maxHeight?: number;\n collapsible?: boolean;\n /** Omits the pane chrome when the content already owns its heading. */\n showHeader?: boolean;\n resizable?: boolean;\n defaultCollapsed?: boolean;\n className?: string;\n contentClassName?: string;\n};\n\nexport type WorkspaceLayoutState = {\n leftWidth: number;\n rightWidth: number;\n bottomHeight: number;\n stackHeights: Record<string, number>;\n collapsed: Record<string, boolean>;\n sideCollapsed: Record<WorkspaceSideLocation, boolean>;\n};\n\nexport type WorkspaceLayoutDefaults = Partial<WorkspaceLayoutState>;\n\nexport const WORKSPACE_DEFAULT_SIDE_WIDTH = 320;\nexport const WORKSPACE_DEFAULT_BOTTOM_HEIGHT = 240;\nexport const WORKSPACE_COLLAPSED_RAIL_WIDTH = 40;\n\nconst STORAGE_VERSION = 2;\n\nexport function validateWorkspacePanes(panes: WorkspacePaneSpec[]) {\n const ids = new Set<string>();\n for (const pane of panes) {\n if (!pane.id.trim())\n throw new Error(\"Workspace pane ids must not be empty\");\n if (ids.has(pane.id))\n throw new Error(`Workspace pane id ${pane.id} is duplicated`);\n ids.add(pane.id);\n if (pane.showHeader === false && pane.collapsible !== false) {\n throw new Error(\n `Workspace pane ${pane.id} headerless panes must not be collapsible`,\n );\n }\n validatePaneDimensions(pane);\n }\n\n if (panes.filter((pane) => pane.location === \"center\").length !== 1) {\n throw new Error(\"Workspace requires exactly one center pane\");\n }\n if (panes.filter((pane) => pane.location === \"bottom\").length > 1) {\n throw new Error(\"Workspace allows at most one bottom pane\");\n }\n validateSharedSideWidth(panes, \"left\");\n validateSharedSideWidth(panes, \"right\");\n}\n\nfunction validatePaneDimensions(pane: WorkspacePaneSpec) {\n const values = [\n pane.width,\n pane.height,\n pane.minWidth,\n pane.maxWidth,\n pane.minHeight,\n pane.maxHeight,\n ];\n if (\n values.some(\n (value) => value !== undefined && (!Number.isFinite(value) || value <= 0),\n )\n ) {\n throw new Error(\n `Workspace pane ${pane.id} dimensions must be positive finite numbers`,\n );\n }\n if (\n pane.minWidth !== undefined &&\n pane.maxWidth !== undefined &&\n pane.minWidth > pane.maxWidth\n ) {\n throw new Error(`Workspace pane ${pane.id} minWidth exceeds maxWidth`);\n }\n if (\n pane.minHeight !== undefined &&\n pane.maxHeight !== undefined &&\n pane.minHeight > pane.maxHeight\n ) {\n throw new Error(`Workspace pane ${pane.id} minHeight exceeds maxHeight`);\n }\n}\n\nfunction validateSharedSideWidth(\n panes: WorkspacePaneSpec[],\n location: \"left\" | \"right\",\n) {\n const widths = new Set(\n panes\n .filter((pane) => pane.location === location && pane.width !== undefined)\n .map((pane) => pane.width),\n );\n if (widths.size > 1) {\n throw new Error(\n `Workspace panes stacked on the ${location} share one width`,\n );\n }\n}\n\nexport function createWorkspaceLayoutState(\n panes: WorkspacePaneSpec[],\n defaults: WorkspaceLayoutDefaults = {},\n): WorkspaceLayoutState {\n const left = panes.find((pane) => pane.location === \"left\");\n const right = panes.find((pane) => pane.location === \"right\");\n const bottom = panes.find((pane) => pane.location === \"bottom\");\n const stackHeights = Object.fromEntries(\n panes\n .filter(\n (pane) =>\n (pane.location === \"left\" || pane.location === \"right\") &&\n pane.height !== undefined,\n )\n .map((pane) => [pane.id, pane.height as number]),\n );\n const collapsed = Object.fromEntries(\n panes.map((pane) => [pane.id, pane.defaultCollapsed ?? false]),\n );\n\n return {\n leftWidth:\n defaults.leftWidth ?? left?.width ?? WORKSPACE_DEFAULT_SIDE_WIDTH,\n rightWidth:\n defaults.rightWidth ?? right?.width ?? WORKSPACE_DEFAULT_SIDE_WIDTH,\n bottomHeight:\n defaults.bottomHeight ??\n bottom?.height ??\n WORKSPACE_DEFAULT_BOTTOM_HEIGHT,\n stackHeights: { ...stackHeights, ...defaults.stackHeights },\n collapsed: { ...collapsed, ...defaults.collapsed },\n sideCollapsed: { left: false, right: false, ...defaults.sideCollapsed },\n };\n}\n\nexport function readWorkspaceLayoutState(\n storageKey: string,\n panes: WorkspacePaneSpec[],\n defaults: WorkspaceLayoutDefaults,\n): WorkspaceLayoutState {\n const fallback = createWorkspaceLayoutState(panes, defaults);\n if (typeof window === \"undefined\") return fallback;\n const saved = window.localStorage.getItem(storageKey);\n if (!saved) return fallback;\n\n try {\n const parsed = JSON.parse(saved) as unknown;\n if (!isStoredWorkspaceState(parsed))\n throw new Error(\"unsupported workspace layout state\");\n const paneIds = new Set(panes.map((pane) => pane.id));\n return createWorkspaceLayoutState(panes, {\n leftWidth: parsed.state.leftWidth,\n rightWidth: parsed.state.rightWidth,\n bottomHeight: parsed.state.bottomHeight,\n stackHeights: filterPaneRecord(parsed.state.stackHeights, paneIds),\n collapsed: filterPaneRecord(parsed.state.collapsed, paneIds),\n sideCollapsed: parsed.state.sideCollapsed,\n });\n } catch (error) {\n console.warn(`Resetting invalid Workspace state for ${storageKey}`, error);\n window.localStorage.removeItem(storageKey);\n return fallback;\n }\n}\n\nexport function writeWorkspaceLayoutState(\n storageKey: string,\n state: WorkspaceLayoutState,\n) {\n if (typeof window === \"undefined\") return;\n window.localStorage.setItem(\n storageKey,\n JSON.stringify({ version: STORAGE_VERSION, state }),\n );\n}\n\nfunction filterPaneRecord<T>(\n record: Record<string, T>,\n paneIds: Set<string>,\n): Record<string, T> {\n return Object.fromEntries(\n Object.entries(record).filter(([id]) => paneIds.has(id)),\n );\n}\n\nfunction isStoredWorkspaceState(\n value: unknown,\n): value is { version: 2; state: WorkspaceLayoutState } {\n if (!value || typeof value !== \"object\") return false;\n const stored = value as {\n version?: unknown;\n state?: Partial<WorkspaceLayoutState>;\n };\n const state = stored.state;\n return (\n stored.version === STORAGE_VERSION &&\n Boolean(state) &&\n isPositiveNumber(state?.leftWidth) &&\n isPositiveNumber(state?.rightWidth) &&\n isPositiveNumber(state?.bottomHeight) &&\n isRecord(state?.stackHeights, \"number\") &&\n isRecord(state?.collapsed, \"boolean\") &&\n isSideCollapsed(state?.sideCollapsed)\n );\n}\n\nfunction isSideCollapsed(\n value: unknown,\n): value is WorkspaceLayoutState[\"sideCollapsed\"] {\n if (!value || typeof value !== \"object\") return false;\n const sides = value as Partial<WorkspaceLayoutState[\"sideCollapsed\"]>;\n return typeof sides.left === \"boolean\" && typeof sides.right === \"boolean\";\n}\n\nfunction isPositiveNumber(value: unknown): value is number {\n return typeof value === \"number\" && Number.isFinite(value) && value > 0;\n}\n\nfunction isRecord(\n value: unknown,\n valueType: \"number\" | \"boolean\",\n): value is Record<string, never> {\n return (\n Boolean(value) &&\n typeof value === \"object\" &&\n Object.values(value as Record<string, unknown>).every(\n (entry) => typeof entry === valueType,\n )\n );\n}\n"],"names":[],"mappings":"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"}
@@ -109,7 +109,7 @@ function WorkspacePaneView({
109
109
  pane.className
110
110
  ),
111
111
  children: [
112
- /* @__PURE__ */ jsxRuntime.jsxs(
112
+ pane.showHeader !== false ? /* @__PURE__ */ jsxRuntime.jsxs(
113
113
  "header",
114
114
  {
115
115
  className: utils.cn(
@@ -134,7 +134,7 @@ function WorkspacePaneView({
134
134
  !compact && ((_b = pane.slots) == null ? void 0 : _b.headerTrailing) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex shrink-0 items-center gap-1", children: pane.slots.headerTrailing })
135
135
  ]
136
136
  }
137
- ),
137
+ ) : null,
138
138
  !collapsed && /* @__PURE__ */ jsxRuntime.jsx(
139
139
  "div",
140
140
  {