@corensystem/coren-ui 1.0.0-next.20260924.75108.887a9c2

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 (1671) hide show
  1. package/bin/intent.js +20 -0
  2. package/dist/accordion.d.mts +11 -0
  3. package/dist/accordion.d.mts.map +1 -0
  4. package/dist/accordion.mjs +42 -0
  5. package/dist/accordion.mjs.map +1 -0
  6. package/dist/activity-log.d.mts +29 -0
  7. package/dist/activity-log.d.mts.map +1 -0
  8. package/dist/activity-log.mjs +60 -0
  9. package/dist/activity-log.mjs.map +1 -0
  10. package/dist/activity-sheet.d.mts +18 -0
  11. package/dist/activity-sheet.d.mts.map +1 -0
  12. package/dist/activity-sheet.mjs +167 -0
  13. package/dist/activity-sheet.mjs.map +1 -0
  14. package/dist/add-clinic-location-dialog.d.mts +21 -0
  15. package/dist/add-clinic-location-dialog.d.mts.map +1 -0
  16. package/dist/add-clinic-location-dialog.mjs +96 -0
  17. package/dist/add-clinic-location-dialog.mjs.map +1 -0
  18. package/dist/add-clinic-visit-dialog.d.mts +51 -0
  19. package/dist/add-clinic-visit-dialog.d.mts.map +1 -0
  20. package/dist/add-clinic-visit-dialog.mjs +307 -0
  21. package/dist/add-clinic-visit-dialog.mjs.map +1 -0
  22. package/dist/add-observation-dialog.d.mts +36 -0
  23. package/dist/add-observation-dialog.d.mts.map +1 -0
  24. package/dist/add-observation-dialog.mjs +269 -0
  25. package/dist/add-observation-dialog.mjs.map +1 -0
  26. package/dist/alert-dialog.d.mts +24 -0
  27. package/dist/alert-dialog.d.mts.map +1 -0
  28. package/dist/alert-dialog.mjs +62 -0
  29. package/dist/alert-dialog.mjs.map +1 -0
  30. package/dist/alert.d.mts +12 -0
  31. package/dist/alert.d.mts.map +1 -0
  32. package/dist/alert.mjs +36 -0
  33. package/dist/alert.mjs.map +1 -0
  34. package/dist/app-card.d.mts +21 -0
  35. package/dist/app-card.d.mts.map +1 -0
  36. package/dist/app-card.mjs +49 -0
  37. package/dist/app-card.mjs.map +1 -0
  38. package/dist/app-shell.d.mts +39 -0
  39. package/dist/app-shell.d.mts.map +1 -0
  40. package/dist/app-shell.mjs +79 -0
  41. package/dist/app-shell.mjs.map +1 -0
  42. package/dist/aspect-ratio.d.mts +8 -0
  43. package/dist/aspect-ratio.d.mts.map +1 -0
  44. package/dist/aspect-ratio.mjs +14 -0
  45. package/dist/aspect-ratio.mjs.map +1 -0
  46. package/dist/asset-list-item.d.mts +36 -0
  47. package/dist/asset-list-item.d.mts.map +1 -0
  48. package/dist/asset-list-item.mjs +51 -0
  49. package/dist/asset-list-item.mjs.map +1 -0
  50. package/dist/assign-doctor-dialog.d.mts +28 -0
  51. package/dist/assign-doctor-dialog.d.mts.map +1 -0
  52. package/dist/assign-doctor-dialog.mjs +194 -0
  53. package/dist/assign-doctor-dialog.mjs.map +1 -0
  54. package/dist/attention-list.d.mts +29 -0
  55. package/dist/attention-list.d.mts.map +1 -0
  56. package/dist/attention-list.mjs +82 -0
  57. package/dist/attention-list.mjs.map +1 -0
  58. package/dist/avatar-status-dot.d.mts +22 -0
  59. package/dist/avatar-status-dot.d.mts.map +1 -0
  60. package/dist/avatar-status-dot.mjs +72 -0
  61. package/dist/avatar-status-dot.mjs.map +1 -0
  62. package/dist/avatar.d.mts +34 -0
  63. package/dist/avatar.d.mts.map +1 -0
  64. package/dist/avatar.mjs +103 -0
  65. package/dist/avatar.mjs.map +1 -0
  66. package/dist/badge.d.mts +18 -0
  67. package/dist/badge.d.mts.map +1 -0
  68. package/dist/badge.mjs +39 -0
  69. package/dist/badge.mjs.map +1 -0
  70. package/dist/banner.d.mts +18 -0
  71. package/dist/banner.d.mts.map +1 -0
  72. package/dist/banner.mjs +74 -0
  73. package/dist/banner.mjs.map +1 -0
  74. package/dist/blockquote.d.mts +13 -0
  75. package/dist/blockquote.d.mts.map +1 -0
  76. package/dist/blockquote.mjs +22 -0
  77. package/dist/blockquote.mjs.map +1 -0
  78. package/dist/blueprint-segment.d.mts +33 -0
  79. package/dist/blueprint-segment.d.mts.map +1 -0
  80. package/dist/blueprint-segment.mjs +59 -0
  81. package/dist/blueprint-segment.mjs.map +1 -0
  82. package/dist/bottom-sheet-switcher.d.mts +32 -0
  83. package/dist/bottom-sheet-switcher.d.mts.map +1 -0
  84. package/dist/bottom-sheet-switcher.mjs +40 -0
  85. package/dist/bottom-sheet-switcher.mjs.map +1 -0
  86. package/dist/bottom-sheet.d.mts +23 -0
  87. package/dist/bottom-sheet.d.mts.map +1 -0
  88. package/dist/bottom-sheet.mjs +91 -0
  89. package/dist/bottom-sheet.mjs.map +1 -0
  90. package/dist/breadcrumb.d.mts +39 -0
  91. package/dist/breadcrumb.d.mts.map +1 -0
  92. package/dist/breadcrumb.mjs +95 -0
  93. package/dist/breadcrumb.mjs.map +1 -0
  94. package/dist/breadcrumbs.d.mts +2 -0
  95. package/dist/breadcrumbs.mjs +2 -0
  96. package/dist/browser-tabs.d.mts +40 -0
  97. package/dist/browser-tabs.d.mts.map +1 -0
  98. package/dist/browser-tabs.mjs +127 -0
  99. package/dist/browser-tabs.mjs.map +1 -0
  100. package/dist/building-model-placeholder.d.mts +46 -0
  101. package/dist/building-model-placeholder.d.mts.map +1 -0
  102. package/dist/building-model-placeholder.mjs +175 -0
  103. package/dist/building-model-placeholder.mjs.map +1 -0
  104. package/dist/building-progress.d.mts +32 -0
  105. package/dist/building-progress.d.mts.map +1 -0
  106. package/dist/building-progress.mjs +74 -0
  107. package/dist/building-progress.mjs.map +1 -0
  108. package/dist/building-viewer.d.mts +91 -0
  109. package/dist/building-viewer.d.mts.map +1 -0
  110. package/dist/building-viewer.mjs +567 -0
  111. package/dist/building-viewer.mjs.map +1 -0
  112. package/dist/button-group.d.mts +8 -0
  113. package/dist/button-group.d.mts.map +1 -0
  114. package/dist/button-group.mjs +21 -0
  115. package/dist/button-group.mjs.map +1 -0
  116. package/dist/button.d.mts +21 -0
  117. package/dist/button.d.mts.map +1 -0
  118. package/dist/button.mjs +79 -0
  119. package/dist/button.mjs.map +1 -0
  120. package/dist/calendar-view.d.mts +47 -0
  121. package/dist/calendar-view.d.mts.map +1 -0
  122. package/dist/calendar-view.mjs +165 -0
  123. package/dist/calendar-view.mjs.map +1 -0
  124. package/dist/calendar.d.mts +15 -0
  125. package/dist/calendar.d.mts.map +1 -0
  126. package/dist/calendar.mjs +94 -0
  127. package/dist/calendar.mjs.map +1 -0
  128. package/dist/camera-detail-panel.d.mts +44 -0
  129. package/dist/camera-detail-panel.d.mts.map +1 -0
  130. package/dist/camera-detail-panel.mjs +105 -0
  131. package/dist/camera-detail-panel.mjs.map +1 -0
  132. package/dist/canvas-file-picker.d.mts +28 -0
  133. package/dist/canvas-file-picker.d.mts.map +1 -0
  134. package/dist/canvas-file-picker.mjs +90 -0
  135. package/dist/canvas-file-picker.mjs.map +1 -0
  136. package/dist/canvas-header.d.mts +28 -0
  137. package/dist/canvas-header.d.mts.map +1 -0
  138. package/dist/canvas-header.mjs +42 -0
  139. package/dist/canvas-header.mjs.map +1 -0
  140. package/dist/canvas-navigator.d.mts +87 -0
  141. package/dist/canvas-navigator.d.mts.map +1 -0
  142. package/dist/canvas-navigator.mjs +426 -0
  143. package/dist/canvas-navigator.mjs.map +1 -0
  144. package/dist/canvas-toolbar.d.mts +37 -0
  145. package/dist/canvas-toolbar.d.mts.map +1 -0
  146. package/dist/canvas-toolbar.mjs +65 -0
  147. package/dist/canvas-toolbar.mjs.map +1 -0
  148. package/dist/capture-route-minimap.d.mts +40 -0
  149. package/dist/capture-route-minimap.d.mts.map +1 -0
  150. package/dist/capture-route-minimap.mjs +438 -0
  151. package/dist/capture-route-minimap.mjs.map +1 -0
  152. package/dist/card.d.mts +17 -0
  153. package/dist/card.d.mts.map +1 -0
  154. package/dist/card.mjs +63 -0
  155. package/dist/card.mjs.map +1 -0
  156. package/dist/carousel.d.mts +23 -0
  157. package/dist/carousel.d.mts.map +1 -0
  158. package/dist/carousel.mjs +141 -0
  159. package/dist/carousel.mjs.map +1 -0
  160. package/dist/catalogue-view-toggle.d.mts +53 -0
  161. package/dist/catalogue-view-toggle.d.mts.map +1 -0
  162. package/dist/catalogue-view-toggle.mjs +54 -0
  163. package/dist/catalogue-view-toggle.mjs.map +1 -0
  164. package/dist/chart.d.mts +91 -0
  165. package/dist/chart.d.mts.map +1 -0
  166. package/dist/chart.mjs +254 -0
  167. package/dist/chart.mjs.map +1 -0
  168. package/dist/chat/core-ai-chat-header.d.mts +95 -0
  169. package/dist/chat/core-ai-chat-header.d.mts.map +1 -0
  170. package/dist/chat/core-ai-chat-header.mjs +237 -0
  171. package/dist/chat/core-ai-chat-header.mjs.map +1 -0
  172. package/dist/chat/core-ai-chat-message.d.mts +18 -0
  173. package/dist/chat/core-ai-chat-message.d.mts.map +1 -0
  174. package/dist/chat/core-ai-chat-message.mjs +82 -0
  175. package/dist/chat/core-ai-chat-message.mjs.map +1 -0
  176. package/dist/chat/core-ai-chat.d.mts +116 -0
  177. package/dist/chat/core-ai-chat.d.mts.map +1 -0
  178. package/dist/chat/core-ai-chat.mjs +325 -0
  179. package/dist/chat/core-ai-chat.mjs.map +1 -0
  180. package/dist/chat/core-chart-renderer.d.mts +10 -0
  181. package/dist/chat/core-chart-renderer.d.mts.map +1 -0
  182. package/dist/chat/core-chart-renderer.mjs +177 -0
  183. package/dist/chat/core-chart-renderer.mjs.map +1 -0
  184. package/dist/chat/core-chat-input.d.mts +9 -0
  185. package/dist/chat/core-chat-input.d.mts.map +1 -0
  186. package/dist/chat/core-chat-input.mjs +66 -0
  187. package/dist/chat/core-chat-input.mjs.map +1 -0
  188. package/dist/chat/core-chat-message.d.mts +11 -0
  189. package/dist/chat/core-chat-message.d.mts.map +1 -0
  190. package/dist/chat/core-chat-message.mjs +101 -0
  191. package/dist/chat/core-chat-message.mjs.map +1 -0
  192. package/dist/chat/core-chat-panel.d.mts +16 -0
  193. package/dist/chat/core-chat-panel.d.mts.map +1 -0
  194. package/dist/chat/core-chat-panel.mjs +139 -0
  195. package/dist/chat/core-chat-panel.mjs.map +1 -0
  196. package/dist/chat/core-chat-widget.d.mts +12 -0
  197. package/dist/chat/core-chat-widget.d.mts.map +1 -0
  198. package/dist/chat/core-chat-widget.mjs +116 -0
  199. package/dist/chat/core-chat-widget.mjs.map +1 -0
  200. package/dist/chat-layout.d.mts +38 -0
  201. package/dist/chat-layout.d.mts.map +1 -0
  202. package/dist/chat-layout.mjs +94 -0
  203. package/dist/chat-layout.mjs.map +1 -0
  204. package/dist/chat-message.d.mts +40 -0
  205. package/dist/chat-message.d.mts.map +1 -0
  206. package/dist/chat-message.mjs +84 -0
  207. package/dist/chat-message.mjs.map +1 -0
  208. package/dist/checkbox.d.mts +8 -0
  209. package/dist/checkbox.d.mts.map +1 -0
  210. package/dist/checkbox.mjs +22 -0
  211. package/dist/checkbox.mjs.map +1 -0
  212. package/dist/chip.d.mts +54 -0
  213. package/dist/chip.d.mts.map +1 -0
  214. package/dist/chip.mjs +142 -0
  215. package/dist/chip.mjs.map +1 -0
  216. package/dist/citation.d.mts +22 -0
  217. package/dist/citation.d.mts.map +1 -0
  218. package/dist/citation.mjs +70 -0
  219. package/dist/citation.mjs.map +1 -0
  220. package/dist/clickable-card.d.mts +28 -0
  221. package/dist/clickable-card.d.mts.map +1 -0
  222. package/dist/clickable-card.mjs +87 -0
  223. package/dist/clickable-card.mjs.map +1 -0
  224. package/dist/code.d.mts +21 -0
  225. package/dist/code.d.mts.map +1 -0
  226. package/dist/code.mjs +48 -0
  227. package/dist/code.mjs.map +1 -0
  228. package/dist/collapsible.d.mts +10 -0
  229. package/dist/collapsible.d.mts.map +1 -0
  230. package/dist/collapsible.mjs +16 -0
  231. package/dist/collapsible.mjs.map +1 -0
  232. package/dist/combobox.d.mts +116 -0
  233. package/dist/combobox.d.mts.map +1 -0
  234. package/dist/combobox.mjs +149 -0
  235. package/dist/combobox.mjs.map +1 -0
  236. package/dist/command-palette.d.mts +43 -0
  237. package/dist/command-palette.d.mts.map +1 -0
  238. package/dist/command-palette.mjs +70 -0
  239. package/dist/command-palette.mjs.map +1 -0
  240. package/dist/command.d.mts +91 -0
  241. package/dist/command.d.mts.map +1 -0
  242. package/dist/command.mjs +82 -0
  243. package/dist/command.mjs.map +1 -0
  244. package/dist/comment-composer.d.mts +29 -0
  245. package/dist/comment-composer.d.mts.map +1 -0
  246. package/dist/comment-composer.mjs +253 -0
  247. package/dist/comment-composer.mjs.map +1 -0
  248. package/dist/comment-thread.d.mts +66 -0
  249. package/dist/comment-thread.d.mts.map +1 -0
  250. package/dist/comment-thread.mjs +180 -0
  251. package/dist/comment-thread.mjs.map +1 -0
  252. package/dist/compare-bars.d.mts +29 -0
  253. package/dist/compare-bars.d.mts.map +1 -0
  254. package/dist/compare-bars.mjs +118 -0
  255. package/dist/compare-bars.mjs.map +1 -0
  256. package/dist/compare-view.d.mts +75 -0
  257. package/dist/compare-view.d.mts.map +1 -0
  258. package/dist/compare-view.mjs +383 -0
  259. package/dist/compare-view.mjs.map +1 -0
  260. package/dist/confirm-dialog.d.mts +37 -0
  261. package/dist/confirm-dialog.d.mts.map +1 -0
  262. package/dist/confirm-dialog.mjs +40 -0
  263. package/dist/confirm-dialog.mjs.map +1 -0
  264. package/dist/context-menu.d.mts +31 -0
  265. package/dist/context-menu.d.mts.map +1 -0
  266. package/dist/context-menu.mjs +84 -0
  267. package/dist/context-menu.mjs.map +1 -0
  268. package/dist/context-toolbar.d.mts +22 -0
  269. package/dist/context-toolbar.d.mts.map +1 -0
  270. package/dist/context-toolbar.mjs +81 -0
  271. package/dist/context-toolbar.mjs.map +1 -0
  272. package/dist/copy-button.d.mts +15 -0
  273. package/dist/copy-button.d.mts.map +1 -0
  274. package/dist/copy-button.mjs +33 -0
  275. package/dist/copy-button.mjs.map +1 -0
  276. package/dist/core-mark.d.mts +25 -0
  277. package/dist/core-mark.d.mts.map +1 -0
  278. package/dist/core-mark.mjs +74 -0
  279. package/dist/core-mark.mjs.map +1 -0
  280. package/dist/data/mock-data.d.mts +9 -0
  281. package/dist/data/mock-data.d.mts.map +1 -0
  282. package/dist/data/mock-data.mjs +159 -0
  283. package/dist/data/mock-data.mjs.map +1 -0
  284. package/dist/data/rnglf-zones.d.mts +17 -0
  285. package/dist/data/rnglf-zones.d.mts.map +1 -0
  286. package/dist/data/rnglf-zones.mjs +1400 -0
  287. package/dist/data/rnglf-zones.mjs.map +1 -0
  288. package/dist/data-table.d.mts +202 -0
  289. package/dist/data-table.d.mts.map +1 -0
  290. package/dist/data-table.mjs +520 -0
  291. package/dist/data-table.mjs.map +1 -0
  292. package/dist/date-picker.d.mts +111 -0
  293. package/dist/date-picker.d.mts.map +1 -0
  294. package/dist/date-picker.mjs +546 -0
  295. package/dist/date-picker.mjs.map +1 -0
  296. package/dist/date-range-input.d.mts +26 -0
  297. package/dist/date-range-input.d.mts.map +1 -0
  298. package/dist/date-range-input.mjs +60 -0
  299. package/dist/date-range-input.mjs.map +1 -0
  300. package/dist/date-time-input.d.mts +27 -0
  301. package/dist/date-time-input.d.mts.map +1 -0
  302. package/dist/date-time-input.mjs +110 -0
  303. package/dist/date-time-input.mjs.map +1 -0
  304. package/dist/detail-panel-shell.d.mts +37 -0
  305. package/dist/detail-panel-shell.d.mts.map +1 -0
  306. package/dist/detail-panel-shell.mjs +86 -0
  307. package/dist/detail-panel-shell.mjs.map +1 -0
  308. package/dist/dialog.d.mts +105 -0
  309. package/dist/dialog.d.mts.map +1 -0
  310. package/dist/dialog.mjs +137 -0
  311. package/dist/dialog.mjs.map +1 -0
  312. package/dist/divider.d.mts +8 -0
  313. package/dist/divider.d.mts.map +1 -0
  314. package/dist/divider.mjs +18 -0
  315. package/dist/divider.mjs.map +1 -0
  316. package/dist/drawer.d.mts +26 -0
  317. package/dist/drawer.d.mts.map +1 -0
  318. package/dist/drawer.mjs +53 -0
  319. package/dist/drawer.mjs.map +1 -0
  320. package/dist/drawing-actions.d.mts +29 -0
  321. package/dist/drawing-actions.d.mts.map +1 -0
  322. package/dist/drawing-actions.mjs +124 -0
  323. package/dist/drawing-actions.mjs.map +1 -0
  324. package/dist/dropdown-menu.d.mts +31 -0
  325. package/dist/dropdown-menu.d.mts.map +1 -0
  326. package/dist/dropdown-menu.mjs +84 -0
  327. package/dist/dropdown-menu.mjs.map +1 -0
  328. package/dist/empty.d.mts +34 -0
  329. package/dist/empty.d.mts.map +1 -0
  330. package/dist/empty.mjs +119 -0
  331. package/dist/empty.mjs.map +1 -0
  332. package/dist/error-page.d.mts +20 -0
  333. package/dist/error-page.d.mts.map +1 -0
  334. package/dist/error-page.mjs +96 -0
  335. package/dist/error-page.mjs.map +1 -0
  336. package/dist/export-dialog.d.mts +58 -0
  337. package/dist/export-dialog.d.mts.map +1 -0
  338. package/dist/export-dialog.mjs +248 -0
  339. package/dist/export-dialog.mjs.map +1 -0
  340. package/dist/field.d.mts +11 -0
  341. package/dist/field.d.mts.map +1 -0
  342. package/dist/field.mjs +34 -0
  343. package/dist/field.mjs.map +1 -0
  344. package/dist/file-input.d.mts +17 -0
  345. package/dist/file-input.d.mts.map +1 -0
  346. package/dist/file-input.mjs +114 -0
  347. package/dist/file-input.mjs.map +1 -0
  348. package/dist/file-system/context.d.mts +28 -0
  349. package/dist/file-system/context.d.mts.map +1 -0
  350. package/dist/file-system/context.mjs +42 -0
  351. package/dist/file-system/context.mjs.map +1 -0
  352. package/dist/file-system/file-system-details.d.mts +12 -0
  353. package/dist/file-system/file-system-details.d.mts.map +1 -0
  354. package/dist/file-system/file-system-details.mjs +166 -0
  355. package/dist/file-system/file-system-details.mjs.map +1 -0
  356. package/dist/file-system/file-system-filters.d.mts +16 -0
  357. package/dist/file-system/file-system-filters.d.mts.map +1 -0
  358. package/dist/file-system/file-system-filters.mjs +205 -0
  359. package/dist/file-system/file-system-filters.mjs.map +1 -0
  360. package/dist/file-system/file-system-new.d.mts +16 -0
  361. package/dist/file-system/file-system-new.d.mts.map +1 -0
  362. package/dist/file-system/file-system-new.mjs +204 -0
  363. package/dist/file-system/file-system-new.mjs.map +1 -0
  364. package/dist/file-system/file-system-path.d.mts +7 -0
  365. package/dist/file-system/file-system-path.d.mts.map +1 -0
  366. package/dist/file-system/file-system-path.mjs +22 -0
  367. package/dist/file-system/file-system-path.mjs.map +1 -0
  368. package/dist/file-system/file-system-project.d.mts +16 -0
  369. package/dist/file-system/file-system-project.d.mts.map +1 -0
  370. package/dist/file-system/file-system-project.mjs +253 -0
  371. package/dist/file-system/file-system-project.mjs.map +1 -0
  372. package/dist/file-system/file-system-table.d.mts +17 -0
  373. package/dist/file-system/file-system-table.d.mts.map +1 -0
  374. package/dist/file-system/file-system-table.mjs +95 -0
  375. package/dist/file-system/file-system-table.mjs.map +1 -0
  376. package/dist/file-system/file-system.d.mts +35 -0
  377. package/dist/file-system/file-system.d.mts.map +1 -0
  378. package/dist/file-system/file-system.mjs +179 -0
  379. package/dist/file-system/file-system.mjs.map +1 -0
  380. package/dist/file-system/index.d.mts +9 -0
  381. package/dist/file-system/index.mjs +9 -0
  382. package/dist/file-system/model.d.mts +156 -0
  383. package/dist/file-system/model.d.mts.map +1 -0
  384. package/dist/file-system/model.mjs +200 -0
  385. package/dist/file-system/model.mjs.map +1 -0
  386. package/dist/filter.d.mts +92 -0
  387. package/dist/filter.d.mts.map +1 -0
  388. package/dist/filter.mjs +267 -0
  389. package/dist/filter.mjs.map +1 -0
  390. package/dist/float-shadow.d.mts +10 -0
  391. package/dist/float-shadow.d.mts.map +1 -0
  392. package/dist/float-shadow.mjs +11 -0
  393. package/dist/float-shadow.mjs.map +1 -0
  394. package/dist/floating-assistant.d.mts +75 -0
  395. package/dist/floating-assistant.d.mts.map +1 -0
  396. package/dist/floating-assistant.mjs +114 -0
  397. package/dist/floating-assistant.mjs.map +1 -0
  398. package/dist/floor-progress-bar.d.mts +17 -0
  399. package/dist/floor-progress-bar.d.mts.map +1 -0
  400. package/dist/floor-progress-bar.mjs +38 -0
  401. package/dist/floor-progress-bar.mjs.map +1 -0
  402. package/dist/fonts/LICENSE.md +41 -0
  403. package/dist/fonts/figtree-italic-300-900-latin-ext.woff2 +0 -0
  404. package/dist/fonts/figtree-italic-300-900-latin.woff2 +0 -0
  405. package/dist/fonts/figtree-normal-300-900-latin-ext.woff2 +0 -0
  406. package/dist/fonts/figtree-normal-300-900-latin.woff2 +0 -0
  407. package/dist/fonts/ibm-plex-mono-italic-400-latin-ext.woff2 +0 -0
  408. package/dist/fonts/ibm-plex-mono-italic-400-latin.woff2 +0 -0
  409. package/dist/fonts/ibm-plex-mono-normal-400-latin-ext.woff2 +0 -0
  410. package/dist/fonts/ibm-plex-mono-normal-400-latin.woff2 +0 -0
  411. package/dist/fonts/ibm-plex-mono-normal-500-latin-ext.woff2 +0 -0
  412. package/dist/fonts/ibm-plex-mono-normal-500-latin.woff2 +0 -0
  413. package/dist/fonts/ibm-plex-mono-normal-600-latin-ext.woff2 +0 -0
  414. package/dist/fonts/ibm-plex-mono-normal-600-latin.woff2 +0 -0
  415. package/dist/fonts/lora-italic-400-700-latin-ext.woff2 +0 -0
  416. package/dist/fonts/lora-italic-400-700-latin.woff2 +0 -0
  417. package/dist/fonts/lora-normal-400-700-latin-ext.woff2 +0 -0
  418. package/dist/fonts/lora-normal-400-700-latin.woff2 +0 -0
  419. package/dist/footprint-viewer.d.mts +88 -0
  420. package/dist/footprint-viewer.d.mts.map +1 -0
  421. package/dist/footprint-viewer.mjs +657 -0
  422. package/dist/footprint-viewer.mjs.map +1 -0
  423. package/dist/form-action-bar.d.mts +32 -0
  424. package/dist/form-action-bar.d.mts.map +1 -0
  425. package/dist/form-action-bar.mjs +42 -0
  426. package/dist/form-action-bar.mjs.map +1 -0
  427. package/dist/form-dialog.d.mts +116 -0
  428. package/dist/form-dialog.d.mts.map +1 -0
  429. package/dist/form-dialog.mjs +149 -0
  430. package/dist/form-dialog.mjs.map +1 -0
  431. package/dist/form-layout.d.mts +33 -0
  432. package/dist/form-layout.d.mts.map +1 -0
  433. package/dist/form-layout.mjs +90 -0
  434. package/dist/form-layout.mjs.map +1 -0
  435. package/dist/form.d.mts +29 -0
  436. package/dist/form.d.mts.map +1 -0
  437. package/dist/form.mjs +93 -0
  438. package/dist/form.mjs.map +1 -0
  439. package/dist/fragment-viewer/cinematic.d.mts +76 -0
  440. package/dist/fragment-viewer/cinematic.d.mts.map +1 -0
  441. package/dist/fragment-viewer/cinematic.mjs +382 -0
  442. package/dist/fragment-viewer/cinematic.mjs.map +1 -0
  443. package/dist/fragment-viewer/context.d.mts +106 -0
  444. package/dist/fragment-viewer/context.d.mts.map +1 -0
  445. package/dist/fragment-viewer/context.mjs +168 -0
  446. package/dist/fragment-viewer/context.mjs.map +1 -0
  447. package/dist/fragment-viewer/runtime.d.mts +288 -0
  448. package/dist/fragment-viewer/runtime.d.mts.map +1 -0
  449. package/dist/fragment-viewer/runtime.mjs +782 -0
  450. package/dist/fragment-viewer/runtime.mjs.map +1 -0
  451. package/dist/fragment-viewer.d.mts +62 -0
  452. package/dist/fragment-viewer.d.mts.map +1 -0
  453. package/dist/fragment-viewer.mjs +144 -0
  454. package/dist/fragment-viewer.mjs.map +1 -0
  455. package/dist/gantt.d.mts +72 -0
  456. package/dist/gantt.d.mts.map +1 -0
  457. package/dist/gantt.mjs +281 -0
  458. package/dist/gantt.mjs.map +1 -0
  459. package/dist/graph-canvas.d.mts +60 -0
  460. package/dist/graph-canvas.d.mts.map +1 -0
  461. package/dist/graph-canvas.mjs +105 -0
  462. package/dist/graph-canvas.mjs.map +1 -0
  463. package/dist/grid.d.mts +16 -0
  464. package/dist/grid.d.mts.map +1 -0
  465. package/dist/grid.mjs +47 -0
  466. package/dist/grid.mjs.map +1 -0
  467. package/dist/heading.d.mts +16 -0
  468. package/dist/heading.d.mts.map +1 -0
  469. package/dist/heading.mjs +43 -0
  470. package/dist/heading.mjs.map +1 -0
  471. package/dist/house-shape.d.mts +22 -0
  472. package/dist/house-shape.d.mts.map +1 -0
  473. package/dist/house-shape.mjs +103 -0
  474. package/dist/house-shape.mjs.map +1 -0
  475. package/dist/hover-card.d.mts +10 -0
  476. package/dist/hover-card.d.mts.map +1 -0
  477. package/dist/hover-card.mjs +22 -0
  478. package/dist/hover-card.mjs.map +1 -0
  479. package/dist/icon-button.d.mts +20 -0
  480. package/dist/icon-button.d.mts.map +1 -0
  481. package/dist/icon-button.mjs +52 -0
  482. package/dist/icon-button.mjs.map +1 -0
  483. package/dist/icon.d.mts +16 -0
  484. package/dist/icon.d.mts.map +1 -0
  485. package/dist/icon.mjs +32 -0
  486. package/dist/icon.mjs.map +1 -0
  487. package/dist/image-zoom.d.mts +23 -0
  488. package/dist/image-zoom.d.mts.map +1 -0
  489. package/dist/image-zoom.mjs +51 -0
  490. package/dist/image-zoom.mjs.map +1 -0
  491. package/dist/index.d.mts +3 -0
  492. package/dist/index.mjs +2 -0
  493. package/dist/inline-comment-composer.d.mts +40 -0
  494. package/dist/inline-comment-composer.d.mts.map +1 -0
  495. package/dist/inline-comment-composer.mjs +174 -0
  496. package/dist/inline-comment-composer.mjs.map +1 -0
  497. package/dist/input-group.d.mts +8 -0
  498. package/dist/input-group.d.mts.map +1 -0
  499. package/dist/input-group.mjs +21 -0
  500. package/dist/input-group.mjs.map +1 -0
  501. package/dist/input-otp.d.mts +40 -0
  502. package/dist/input-otp.d.mts.map +1 -0
  503. package/dist/input-otp.mjs +44 -0
  504. package/dist/input-otp.mjs.map +1 -0
  505. package/dist/input.d.mts +7 -0
  506. package/dist/input.d.mts.map +1 -0
  507. package/dist/input.mjs +18 -0
  508. package/dist/input.mjs.map +1 -0
  509. package/dist/item.d.mts +10 -0
  510. package/dist/item.d.mts.map +1 -0
  511. package/dist/item.mjs +33 -0
  512. package/dist/item.mjs.map +1 -0
  513. package/dist/kbd.d.mts +8 -0
  514. package/dist/kbd.d.mts.map +1 -0
  515. package/dist/kbd.mjs +15 -0
  516. package/dist/kbd.mjs.map +1 -0
  517. package/dist/kiosk-body.d.mts +13 -0
  518. package/dist/kiosk-body.d.mts.map +1 -0
  519. package/dist/kiosk-body.mjs +352 -0
  520. package/dist/kiosk-body.mjs.map +1 -0
  521. package/dist/kpi-bar.d.mts +29 -0
  522. package/dist/kpi-bar.d.mts.map +1 -0
  523. package/dist/kpi-bar.mjs +46 -0
  524. package/dist/kpi-bar.mjs.map +1 -0
  525. package/dist/kpi-summary.d.mts +24 -0
  526. package/dist/kpi-summary.d.mts.map +1 -0
  527. package/dist/kpi-summary.mjs +22 -0
  528. package/dist/kpi-summary.mjs.map +1 -0
  529. package/dist/label.d.mts +19 -0
  530. package/dist/label.d.mts.map +1 -0
  531. package/dist/label.mjs +27 -0
  532. package/dist/label.mjs.map +1 -0
  533. package/dist/legend.d.mts +87 -0
  534. package/dist/legend.d.mts.map +1 -0
  535. package/dist/legend.mjs +210 -0
  536. package/dist/legend.mjs.map +1 -0
  537. package/dist/lightbox.d.mts +28 -0
  538. package/dist/lightbox.d.mts.map +1 -0
  539. package/dist/lightbox.mjs +142 -0
  540. package/dist/lightbox.mjs.map +1 -0
  541. package/dist/link-type-detail.d.mts +73 -0
  542. package/dist/link-type-detail.d.mts.map +1 -0
  543. package/dist/link-type-detail.mjs +628 -0
  544. package/dist/link-type-detail.mjs.map +1 -0
  545. package/dist/link-type-wizard.d.mts +35 -0
  546. package/dist/link-type-wizard.d.mts.map +1 -0
  547. package/dist/link-type-wizard.mjs +303 -0
  548. package/dist/link-type-wizard.mjs.map +1 -0
  549. package/dist/link.d.mts +14 -0
  550. package/dist/link.d.mts.map +1 -0
  551. package/dist/link.mjs +30 -0
  552. package/dist/link.mjs.map +1 -0
  553. package/dist/list.d.mts +19 -0
  554. package/dist/list.d.mts.map +1 -0
  555. package/dist/list.mjs +27 -0
  556. package/dist/list.mjs.map +1 -0
  557. package/dist/map-compare-layout.d.mts +53 -0
  558. package/dist/map-compare-layout.d.mts.map +1 -0
  559. package/dist/map-compare-layout.mjs +164 -0
  560. package/dist/map-compare-layout.mjs.map +1 -0
  561. package/dist/map-compass.d.mts +22 -0
  562. package/dist/map-compass.d.mts.map +1 -0
  563. package/dist/map-compass.mjs +56 -0
  564. package/dist/map-compass.mjs.map +1 -0
  565. package/dist/map-control-panel.d.mts +92 -0
  566. package/dist/map-control-panel.d.mts.map +1 -0
  567. package/dist/map-control-panel.mjs +153 -0
  568. package/dist/map-control-panel.mjs.map +1 -0
  569. package/dist/map-controls.d.mts +24 -0
  570. package/dist/map-controls.d.mts.map +1 -0
  571. package/dist/map-controls.mjs +322 -0
  572. package/dist/map-controls.mjs.map +1 -0
  573. package/dist/map-hover-card.d.mts +28 -0
  574. package/dist/map-hover-card.d.mts.map +1 -0
  575. package/dist/map-hover-card.mjs +56 -0
  576. package/dist/map-hover-card.mjs.map +1 -0
  577. package/dist/map-legend.d.mts +41 -0
  578. package/dist/map-legend.d.mts.map +1 -0
  579. package/dist/map-legend.mjs +97 -0
  580. package/dist/map-legend.mjs.map +1 -0
  581. package/dist/map-minimap.d.mts +44 -0
  582. package/dist/map-minimap.d.mts.map +1 -0
  583. package/dist/map-minimap.mjs +108 -0
  584. package/dist/map-minimap.mjs.map +1 -0
  585. package/dist/map-toolbar.d.mts +60 -0
  586. package/dist/map-toolbar.d.mts.map +1 -0
  587. package/dist/map-toolbar.mjs +195 -0
  588. package/dist/map-toolbar.mjs.map +1 -0
  589. package/dist/map-transition.d.mts +51 -0
  590. package/dist/map-transition.d.mts.map +1 -0
  591. package/dist/map-transition.mjs +59 -0
  592. package/dist/map-transition.mjs.map +1 -0
  593. package/dist/map.d.mts +14 -0
  594. package/dist/map.d.mts.map +1 -0
  595. package/dist/map.mjs +47 -0
  596. package/dist/map.mjs.map +1 -0
  597. package/dist/mapbox-token.d.mts +12 -0
  598. package/dist/mapbox-token.d.mts.map +1 -0
  599. package/dist/mapbox-token.mjs +15 -0
  600. package/dist/mapbox-token.mjs.map +1 -0
  601. package/dist/markdown.d.mts +18 -0
  602. package/dist/markdown.d.mts.map +1 -0
  603. package/dist/markdown.mjs +41 -0
  604. package/dist/markdown.mjs.map +1 -0
  605. package/dist/mega-menu.d.mts +36 -0
  606. package/dist/mega-menu.d.mts.map +1 -0
  607. package/dist/mega-menu.mjs +89 -0
  608. package/dist/mega-menu.mjs.map +1 -0
  609. package/dist/menubar.d.mts +32 -0
  610. package/dist/menubar.d.mts.map +1 -0
  611. package/dist/menubar.mjs +96 -0
  612. package/dist/menubar.mjs.map +1 -0
  613. package/dist/metadata-list.d.mts +2 -0
  614. package/dist/metadata-list.mjs +2 -0
  615. package/dist/metric-card.d.mts +28 -0
  616. package/dist/metric-card.d.mts.map +1 -0
  617. package/dist/metric-card.mjs +55 -0
  618. package/dist/metric-card.mjs.map +1 -0
  619. package/dist/milestone-table.d.mts +35 -0
  620. package/dist/milestone-table.d.mts.map +1 -0
  621. package/dist/milestone-table.mjs +84 -0
  622. package/dist/milestone-table.mjs.map +1 -0
  623. package/dist/minimap.d.mts +23 -0
  624. package/dist/minimap.d.mts.map +1 -0
  625. package/dist/minimap.mjs +64 -0
  626. package/dist/minimap.mjs.map +1 -0
  627. package/dist/more-menu.d.mts +27 -0
  628. package/dist/more-menu.d.mts.map +1 -0
  629. package/dist/more-menu.mjs +34 -0
  630. package/dist/more-menu.mjs.map +1 -0
  631. package/dist/multi-select.d.mts +38 -0
  632. package/dist/multi-select.d.mts.map +1 -0
  633. package/dist/multi-select.mjs +106 -0
  634. package/dist/multi-select.mjs.map +1 -0
  635. package/dist/navigation/core-app-sidebar.d.mts +461 -0
  636. package/dist/navigation/core-app-sidebar.d.mts.map +1 -0
  637. package/dist/navigation/core-app-sidebar.mjs +1288 -0
  638. package/dist/navigation/core-app-sidebar.mjs.map +1 -0
  639. package/dist/navigation/core-app-top-bar.d.mts +116 -0
  640. package/dist/navigation/core-app-top-bar.d.mts.map +1 -0
  641. package/dist/navigation/core-app-top-bar.mjs +224 -0
  642. package/dist/navigation/core-app-top-bar.mjs.map +1 -0
  643. package/dist/navigation/core-context-tabs.d.mts +12 -0
  644. package/dist/navigation/core-context-tabs.d.mts.map +1 -0
  645. package/dist/navigation/core-context-tabs.mjs +32 -0
  646. package/dist/navigation/core-context-tabs.mjs.map +1 -0
  647. package/dist/navigation/core-dashboard-header.d.mts +20 -0
  648. package/dist/navigation/core-dashboard-header.d.mts.map +1 -0
  649. package/dist/navigation/core-dashboard-header.mjs +227 -0
  650. package/dist/navigation/core-dashboard-header.mjs.map +1 -0
  651. package/dist/navigation/core-filter-strip.d.mts +12 -0
  652. package/dist/navigation/core-filter-strip.d.mts.map +1 -0
  653. package/dist/navigation/core-filter-strip.mjs +289 -0
  654. package/dist/navigation/core-filter-strip.mjs.map +1 -0
  655. package/dist/navigation/core-org-project-switcher.d.mts +12 -0
  656. package/dist/navigation/core-org-project-switcher.d.mts.map +1 -0
  657. package/dist/navigation/core-org-project-switcher.mjs +201 -0
  658. package/dist/navigation/core-org-project-switcher.mjs.map +1 -0
  659. package/dist/navigation/switcher.d.mts +38 -0
  660. package/dist/navigation/switcher.d.mts.map +1 -0
  661. package/dist/navigation/switcher.mjs +144 -0
  662. package/dist/navigation/switcher.mjs.map +1 -0
  663. package/dist/navigation-menu.d.mts +16 -0
  664. package/dist/navigation-menu.d.mts.map +1 -0
  665. package/dist/navigation-menu.mjs +64 -0
  666. package/dist/navigation-menu.mjs.map +1 -0
  667. package/dist/neighborhood-scene.d.mts +21 -0
  668. package/dist/neighborhood-scene.d.mts.map +1 -0
  669. package/dist/neighborhood-scene.mjs +285 -0
  670. package/dist/neighborhood-scene.mjs.map +1 -0
  671. package/dist/node-graph.d.mts +154 -0
  672. package/dist/node-graph.d.mts.map +1 -0
  673. package/dist/node-graph.mjs +349 -0
  674. package/dist/node-graph.mjs.map +1 -0
  675. package/dist/notification-center.d.mts +40 -0
  676. package/dist/notification-center.d.mts.map +1 -0
  677. package/dist/notification-center.mjs +224 -0
  678. package/dist/notification-center.mjs.map +1 -0
  679. package/dist/number-input.d.mts +23 -0
  680. package/dist/number-input.d.mts.map +1 -0
  681. package/dist/number-input.mjs +79 -0
  682. package/dist/number-input.mjs.map +1 -0
  683. package/dist/object-drawing-toolbar.d.mts +38 -0
  684. package/dist/object-drawing-toolbar.d.mts.map +1 -0
  685. package/dist/object-drawing-toolbar.mjs +172 -0
  686. package/dist/object-drawing-toolbar.mjs.map +1 -0
  687. package/dist/object-type-detail.d.mts +27 -0
  688. package/dist/object-type-detail.d.mts.map +1 -0
  689. package/dist/object-type-detail.mjs +1389 -0
  690. package/dist/object-type-detail.mjs.map +1 -0
  691. package/dist/object-type-wizard.d.mts +78 -0
  692. package/dist/object-type-wizard.d.mts.map +1 -0
  693. package/dist/object-type-wizard.mjs +885 -0
  694. package/dist/object-type-wizard.mjs.map +1 -0
  695. package/dist/observation-detail-panel.d.mts +89 -0
  696. package/dist/observation-detail-panel.d.mts.map +1 -0
  697. package/dist/observation-detail-panel.mjs +168 -0
  698. package/dist/observation-detail-panel.mjs.map +1 -0
  699. package/dist/observations-map.d.mts +288 -0
  700. package/dist/observations-map.d.mts.map +1 -0
  701. package/dist/observations-map.mjs +1087 -0
  702. package/dist/observations-map.mjs.map +1 -0
  703. package/dist/operations-drawer.d.mts +51 -0
  704. package/dist/operations-drawer.d.mts.map +1 -0
  705. package/dist/operations-drawer.mjs +193 -0
  706. package/dist/operations-drawer.mjs.map +1 -0
  707. package/dist/outline.d.mts +27 -0
  708. package/dist/outline.d.mts.map +1 -0
  709. package/dist/outline.mjs +47 -0
  710. package/dist/outline.mjs.map +1 -0
  711. package/dist/overflow-list.d.mts +23 -0
  712. package/dist/overflow-list.d.mts.map +1 -0
  713. package/dist/overflow-list.mjs +38 -0
  714. package/dist/overflow-list.mjs.map +1 -0
  715. package/dist/overlay.d.mts +17 -0
  716. package/dist/overlay.d.mts.map +1 -0
  717. package/dist/overlay.mjs +32 -0
  718. package/dist/overlay.mjs.map +1 -0
  719. package/dist/page-content-header.d.mts +43 -0
  720. package/dist/page-content-header.d.mts.map +1 -0
  721. package/dist/page-content-header.mjs +224 -0
  722. package/dist/page-content-header.mjs.map +1 -0
  723. package/dist/pages/almanar-blocks-data.d.mts +4 -0
  724. package/dist/pages/almanar-blocks-data.d.mts.map +1 -0
  725. package/dist/pages/almanar-blocks-data.mjs +691 -0
  726. package/dist/pages/almanar-blocks-data.mjs.map +1 -0
  727. package/dist/pages/almanar-hierarchy-data.d.mts +9 -0
  728. package/dist/pages/almanar-hierarchy-data.d.mts.map +1 -0
  729. package/dist/pages/almanar-hierarchy-data.mjs +816 -0
  730. package/dist/pages/almanar-hierarchy-data.mjs.map +1 -0
  731. package/dist/pages/almanar-villa-taxonomy.d.mts +9 -0
  732. package/dist/pages/almanar-villa-taxonomy.d.mts.map +1 -0
  733. package/dist/pages/almanar-villa-taxonomy.mjs +1569 -0
  734. package/dist/pages/almanar-villa-taxonomy.mjs.map +1 -0
  735. package/dist/pages/app-marketplace-shared.d.mts +146 -0
  736. package/dist/pages/app-marketplace-shared.d.mts.map +1 -0
  737. package/dist/pages/app-marketplace-shared.mjs +739 -0
  738. package/dist/pages/app-marketplace-shared.mjs.map +1 -0
  739. package/dist/pages/capture-ui-enhanced.d.mts +125 -0
  740. package/dist/pages/capture-ui-enhanced.d.mts.map +1 -0
  741. package/dist/pages/capture-ui-enhanced.mjs +915 -0
  742. package/dist/pages/capture-ui-enhanced.mjs.map +1 -0
  743. package/dist/pages/core-admin-panel.d.mts +10 -0
  744. package/dist/pages/core-admin-panel.d.mts.map +1 -0
  745. package/dist/pages/core-admin-panel.mjs +3076 -0
  746. package/dist/pages/core-admin-panel.mjs.map +1 -0
  747. package/dist/pages/core-analytics-overview.d.mts +10 -0
  748. package/dist/pages/core-analytics-overview.d.mts.map +1 -0
  749. package/dist/pages/core-analytics-overview.mjs +904 -0
  750. package/dist/pages/core-analytics-overview.mjs.map +1 -0
  751. package/dist/pages/core-app-installer.d.mts +17 -0
  752. package/dist/pages/core-app-installer.d.mts.map +1 -0
  753. package/dist/pages/core-app-installer.mjs +94 -0
  754. package/dist/pages/core-app-installer.mjs.map +1 -0
  755. package/dist/pages/core-blueprint-viewer-3.d.mts +25 -0
  756. package/dist/pages/core-blueprint-viewer-3.d.mts.map +1 -0
  757. package/dist/pages/core-blueprint-viewer-3.mjs +688 -0
  758. package/dist/pages/core-blueprint-viewer-3.mjs.map +1 -0
  759. package/dist/pages/core-blueprint-viewer.d.mts +14 -0
  760. package/dist/pages/core-blueprint-viewer.d.mts.map +1 -0
  761. package/dist/pages/core-blueprint-viewer.mjs +665 -0
  762. package/dist/pages/core-blueprint-viewer.mjs.map +1 -0
  763. package/dist/pages/core-building-viewer-capture.d.mts +18 -0
  764. package/dist/pages/core-building-viewer-capture.d.mts.map +1 -0
  765. package/dist/pages/core-building-viewer-capture.mjs +268 -0
  766. package/dist/pages/core-building-viewer-capture.mjs.map +1 -0
  767. package/dist/pages/core-building-viewer.d.mts +20 -0
  768. package/dist/pages/core-building-viewer.d.mts.map +1 -0
  769. package/dist/pages/core-building-viewer.mjs +299 -0
  770. package/dist/pages/core-building-viewer.mjs.map +1 -0
  771. package/dist/pages/core-clinic.d.mts +14 -0
  772. package/dist/pages/core-clinic.d.mts.map +1 -0
  773. package/dist/pages/core-clinic.mjs +2175 -0
  774. package/dist/pages/core-clinic.mjs.map +1 -0
  775. package/dist/pages/core-content-area.d.mts +15 -0
  776. package/dist/pages/core-content-area.d.mts.map +1 -0
  777. package/dist/pages/core-content-area.mjs +192 -0
  778. package/dist/pages/core-content-area.mjs.map +1 -0
  779. package/dist/pages/core-core-connect-v3.d.mts +16 -0
  780. package/dist/pages/core-core-connect-v3.d.mts.map +1 -0
  781. package/dist/pages/core-core-connect-v3.mjs +30 -0
  782. package/dist/pages/core-core-connect-v3.mjs.map +1 -0
  783. package/dist/pages/core-core-connect.d.mts +15 -0
  784. package/dist/pages/core-core-connect.d.mts.map +1 -0
  785. package/dist/pages/core-core-connect.mjs +21 -0
  786. package/dist/pages/core-core-connect.mjs.map +1 -0
  787. package/dist/pages/core-design-canvas.d.mts +10 -0
  788. package/dist/pages/core-design-canvas.d.mts.map +1 -0
  789. package/dist/pages/core-design-canvas.mjs +322 -0
  790. package/dist/pages/core-design-canvas.mjs.map +1 -0
  791. package/dist/pages/core-login-page.d.mts +8 -0
  792. package/dist/pages/core-login-page.d.mts.map +1 -0
  793. package/dist/pages/core-login-page.mjs +141 -0
  794. package/dist/pages/core-login-page.mjs.map +1 -0
  795. package/dist/pages/core-map-compare-layout.d.mts +20 -0
  796. package/dist/pages/core-map-compare-layout.d.mts.map +1 -0
  797. package/dist/pages/core-map-compare-layout.mjs +187 -0
  798. package/dist/pages/core-map-compare-layout.mjs.map +1 -0
  799. package/dist/pages/core-observations-map-view.d.mts +19 -0
  800. package/dist/pages/core-observations-map-view.d.mts.map +1 -0
  801. package/dist/pages/core-observations-map-view.mjs +1273 -0
  802. package/dist/pages/core-observations-map-view.mjs.map +1 -0
  803. package/dist/pages/core-org-ai-report.d.mts +9 -0
  804. package/dist/pages/core-org-ai-report.d.mts.map +1 -0
  805. package/dist/pages/core-org-ai-report.mjs +474 -0
  806. package/dist/pages/core-org-ai-report.mjs.map +1 -0
  807. package/dist/pages/core-org-overview.d.mts +11 -0
  808. package/dist/pages/core-org-overview.d.mts.map +1 -0
  809. package/dist/pages/core-org-overview.mjs +718 -0
  810. package/dist/pages/core-org-overview.mjs.map +1 -0
  811. package/dist/pages/core-org-performance.d.mts +11 -0
  812. package/dist/pages/core-org-performance.d.mts.map +1 -0
  813. package/dist/pages/core-org-performance.mjs +1398 -0
  814. package/dist/pages/core-org-performance.mjs.map +1 -0
  815. package/dist/pages/core-org-reality-capture.d.mts +10 -0
  816. package/dist/pages/core-org-reality-capture.d.mts.map +1 -0
  817. package/dist/pages/core-org-reality-capture.mjs +1962 -0
  818. package/dist/pages/core-org-reality-capture.mjs.map +1 -0
  819. package/dist/pages/core-org-workforce-intelligence.d.mts +12 -0
  820. package/dist/pages/core-org-workforce-intelligence.d.mts.map +1 -0
  821. package/dist/pages/core-org-workforce-intelligence.mjs +1215 -0
  822. package/dist/pages/core-org-workforce-intelligence.mjs.map +1 -0
  823. package/dist/pages/core-progress-details.d.mts +10 -0
  824. package/dist/pages/core-progress-details.d.mts.map +1 -0
  825. package/dist/pages/core-progress-details.mjs +758 -0
  826. package/dist/pages/core-progress-details.mjs.map +1 -0
  827. package/dist/pages/core-project-overview.d.mts +9 -0
  828. package/dist/pages/core-project-overview.d.mts.map +1 -0
  829. package/dist/pages/core-project-overview.mjs +246 -0
  830. package/dist/pages/core-project-overview.mjs.map +1 -0
  831. package/dist/pages/core-project-quality-issues.d.mts +9 -0
  832. package/dist/pages/core-project-quality-issues.d.mts.map +1 -0
  833. package/dist/pages/core-project-quality-issues.mjs +508 -0
  834. package/dist/pages/core-project-quality-issues.mjs.map +1 -0
  835. package/dist/pages/core-project-reality-capture.d.mts +9 -0
  836. package/dist/pages/core-project-reality-capture.d.mts.map +1 -0
  837. package/dist/pages/core-project-reality-capture.mjs +496 -0
  838. package/dist/pages/core-project-reality-capture.mjs.map +1 -0
  839. package/dist/pages/core-project-schedule-cost.d.mts +9 -0
  840. package/dist/pages/core-project-schedule-cost.d.mts.map +1 -0
  841. package/dist/pages/core-project-schedule-cost.mjs +548 -0
  842. package/dist/pages/core-project-schedule-cost.mjs.map +1 -0
  843. package/dist/pages/core-project-setup.d.mts +10 -0
  844. package/dist/pages/core-project-setup.d.mts.map +1 -0
  845. package/dist/pages/core-project-setup.mjs +283 -0
  846. package/dist/pages/core-project-setup.mjs.map +1 -0
  847. package/dist/pages/core-project-workforce-safety.d.mts +9 -0
  848. package/dist/pages/core-project-workforce-safety.d.mts.map +1 -0
  849. package/dist/pages/core-project-workforce-safety.mjs +465 -0
  850. package/dist/pages/core-project-workforce-safety.mjs.map +1 -0
  851. package/dist/pages/core-safety-manager.d.mts +14 -0
  852. package/dist/pages/core-safety-manager.d.mts.map +1 -0
  853. package/dist/pages/core-safety-manager.mjs +3081 -0
  854. package/dist/pages/core-safety-manager.mjs.map +1 -0
  855. package/dist/pages/core-site-reality.d.mts +25 -0
  856. package/dist/pages/core-site-reality.d.mts.map +1 -0
  857. package/dist/pages/core-site-reality.mjs +505 -0
  858. package/dist/pages/core-site-reality.mjs.map +1 -0
  859. package/dist/pages/core-task-monitor.d.mts +4 -0
  860. package/dist/pages/core-task-monitor.d.mts.map +1 -0
  861. package/dist/pages/core-task-monitor.mjs +587 -0
  862. package/dist/pages/core-task-monitor.mjs.map +1 -0
  863. package/dist/pages/core-timesheet.d.mts +2 -0
  864. package/dist/pages/core-timesheet.mjs +2 -0
  865. package/dist/pages/core-verifytime-command-center.d.mts +4 -0
  866. package/dist/pages/core-verifytime-command-center.d.mts.map +1 -0
  867. package/dist/pages/core-verifytime-command-center.mjs +1089 -0
  868. package/dist/pages/core-verifytime-command-center.mjs.map +1 -0
  869. package/dist/pages/core-wc3-workspace.d.mts +71 -0
  870. package/dist/pages/core-wc3-workspace.d.mts.map +1 -0
  871. package/dist/pages/core-wc3-workspace.mjs +1015 -0
  872. package/dist/pages/core-wc3-workspace.mjs.map +1 -0
  873. package/dist/pages/core-work-permit.d.mts +14 -0
  874. package/dist/pages/core-work-permit.d.mts.map +1 -0
  875. package/dist/pages/core-work-permit.mjs +281 -0
  876. package/dist/pages/core-work-permit.mjs.map +1 -0
  877. package/dist/pages/core-workforce.d.mts +24 -0
  878. package/dist/pages/core-workforce.d.mts.map +1 -0
  879. package/dist/pages/core-workforce.mjs +1253 -0
  880. package/dist/pages/core-workforce.mjs.map +1 -0
  881. package/dist/pages/org-logos.d.mts +9 -0
  882. package/dist/pages/org-logos.d.mts.map +1 -0
  883. package/dist/pages/org-logos.mjs +11 -0
  884. package/dist/pages/org-logos.mjs.map +1 -0
  885. package/dist/pages/state-machine-fixtures.d.mts +34 -0
  886. package/dist/pages/state-machine-fixtures.d.mts.map +1 -0
  887. package/dist/pages/state-machine-fixtures.mjs +73 -0
  888. package/dist/pages/state-machine-fixtures.mjs.map +1 -0
  889. package/dist/pages/state-machine.d.mts +407 -0
  890. package/dist/pages/state-machine.d.mts.map +1 -0
  891. package/dist/pages/state-machine.mjs +2254 -0
  892. package/dist/pages/state-machine.mjs.map +1 -0
  893. package/dist/pages/typeform/AttachmentInput.d.mts +11 -0
  894. package/dist/pages/typeform/AttachmentInput.d.mts.map +1 -0
  895. package/dist/pages/typeform/AttachmentInput.mjs +59 -0
  896. package/dist/pages/typeform/AttachmentInput.mjs.map +1 -0
  897. package/dist/pages/typeform/BuildMethodScreen.d.mts +10 -0
  898. package/dist/pages/typeform/BuildMethodScreen.d.mts.map +1 -0
  899. package/dist/pages/typeform/BuildMethodScreen.mjs +176 -0
  900. package/dist/pages/typeform/BuildMethodScreen.mjs.map +1 -0
  901. package/dist/pages/typeform/BuilderFlow.d.mts +29 -0
  902. package/dist/pages/typeform/BuilderFlow.d.mts.map +1 -0
  903. package/dist/pages/typeform/BuilderFlow.mjs +111 -0
  904. package/dist/pages/typeform/BuilderFlow.mjs.map +1 -0
  905. package/dist/pages/typeform/BuilderScreen.d.mts +14 -0
  906. package/dist/pages/typeform/BuilderScreen.d.mts.map +1 -0
  907. package/dist/pages/typeform/BuilderScreen.mjs +668 -0
  908. package/dist/pages/typeform/BuilderScreen.mjs.map +1 -0
  909. package/dist/pages/typeform/DataSourceSelect.d.mts +13 -0
  910. package/dist/pages/typeform/DataSourceSelect.d.mts.map +1 -0
  911. package/dist/pages/typeform/DataSourceSelect.mjs +36 -0
  912. package/dist/pages/typeform/DataSourceSelect.mjs.map +1 -0
  913. package/dist/pages/typeform/DerivedCountDisplay.d.mts +10 -0
  914. package/dist/pages/typeform/DerivedCountDisplay.d.mts.map +1 -0
  915. package/dist/pages/typeform/DerivedCountDisplay.mjs +20 -0
  916. package/dist/pages/typeform/DerivedCountDisplay.mjs.map +1 -0
  917. package/dist/pages/typeform/FillerRJSF.d.mts +10 -0
  918. package/dist/pages/typeform/FillerRJSF.d.mts.map +1 -0
  919. package/dist/pages/typeform/FillerRJSF.mjs +314 -0
  920. package/dist/pages/typeform/FillerRJSF.mjs.map +1 -0
  921. package/dist/pages/typeform/FormBuilderWidgetRJSF.d.mts +9 -0
  922. package/dist/pages/typeform/FormBuilderWidgetRJSF.d.mts.map +1 -0
  923. package/dist/pages/typeform/FormBuilderWidgetRJSF.mjs +22 -0
  924. package/dist/pages/typeform/FormBuilderWidgetRJSF.mjs.map +1 -0
  925. package/dist/pages/typeform/PublishScreen.d.mts +18 -0
  926. package/dist/pages/typeform/PublishScreen.d.mts.map +1 -0
  927. package/dist/pages/typeform/PublishScreen.mjs +163 -0
  928. package/dist/pages/typeform/PublishScreen.mjs.map +1 -0
  929. package/dist/pages/typeform/QuestionInspector.d.mts +7 -0
  930. package/dist/pages/typeform/QuestionInspector.d.mts.map +1 -0
  931. package/dist/pages/typeform/QuestionInspector.mjs +749 -0
  932. package/dist/pages/typeform/QuestionInspector.mjs.map +1 -0
  933. package/dist/pages/typeform/QuestionRenderer.d.mts +23 -0
  934. package/dist/pages/typeform/QuestionRenderer.d.mts.map +1 -0
  935. package/dist/pages/typeform/QuestionRenderer.mjs +170 -0
  936. package/dist/pages/typeform/QuestionRenderer.mjs.map +1 -0
  937. package/dist/pages/typeform/RatingInput.d.mts +14 -0
  938. package/dist/pages/typeform/RatingInput.d.mts.map +1 -0
  939. package/dist/pages/typeform/RatingInput.mjs +58 -0
  940. package/dist/pages/typeform/RatingInput.mjs.map +1 -0
  941. package/dist/pages/typeform/RuleGroupEditor.d.mts +9 -0
  942. package/dist/pages/typeform/RuleGroupEditor.d.mts.map +1 -0
  943. package/dist/pages/typeform/RuleGroupEditor.mjs +183 -0
  944. package/dist/pages/typeform/RuleGroupEditor.mjs.map +1 -0
  945. package/dist/pages/typeform/SignaturePad.d.mts +11 -0
  946. package/dist/pages/typeform/SignaturePad.d.mts.map +1 -0
  947. package/dist/pages/typeform/SignaturePad.mjs +111 -0
  948. package/dist/pages/typeform/SignaturePad.mjs.map +1 -0
  949. package/dist/pages/typeform/TableInput.d.mts +15 -0
  950. package/dist/pages/typeform/TableInput.d.mts.map +1 -0
  951. package/dist/pages/typeform/TableInput.mjs +73 -0
  952. package/dist/pages/typeform/TableInput.mjs.map +1 -0
  953. package/dist/pages/typeform/WorkspaceScreen.d.mts +20 -0
  954. package/dist/pages/typeform/WorkspaceScreen.d.mts.map +1 -0
  955. package/dist/pages/typeform/WorkspaceScreen.mjs +158 -0
  956. package/dist/pages/typeform/WorkspaceScreen.mjs.map +1 -0
  957. package/dist/pages/typeform/coreRjsfTheme.d.mts +4 -0
  958. package/dist/pages/typeform/coreRjsfTheme.d.mts.map +1 -0
  959. package/dist/pages/typeform/coreRjsfTheme.mjs +142 -0
  960. package/dist/pages/typeform/coreRjsfTheme.mjs.map +1 -0
  961. package/dist/pages/typeform/dataSources.d.mts +35 -0
  962. package/dist/pages/typeform/dataSources.d.mts.map +1 -0
  963. package/dist/pages/typeform/dataSources.mjs +210 -0
  964. package/dist/pages/typeform/dataSources.mjs.map +1 -0
  965. package/dist/pages/typeform/fillerShared.d.mts +21 -0
  966. package/dist/pages/typeform/fillerShared.d.mts.map +1 -0
  967. package/dist/pages/typeform/fillerShared.mjs +112 -0
  968. package/dist/pages/typeform/fillerShared.mjs.map +1 -0
  969. package/dist/pages/typeform/logic.d.mts +46 -0
  970. package/dist/pages/typeform/logic.d.mts.map +1 -0
  971. package/dist/pages/typeform/logic.mjs +193 -0
  972. package/dist/pages/typeform/logic.mjs.map +1 -0
  973. package/dist/pages/typeform/model.d.mts +144 -0
  974. package/dist/pages/typeform/model.d.mts.map +1 -0
  975. package/dist/pages/typeform/model.mjs +328 -0
  976. package/dist/pages/typeform/model.mjs.map +1 -0
  977. package/dist/pages/typeform/schemaToJsonSchema.d.mts +9 -0
  978. package/dist/pages/typeform/schemaToJsonSchema.d.mts.map +1 -0
  979. package/dist/pages/typeform/schemaToJsonSchema.mjs +119 -0
  980. package/dist/pages/typeform/schemaToJsonSchema.mjs.map +1 -0
  981. package/dist/pages/typeform/useFormBuilder.d.mts +34 -0
  982. package/dist/pages/typeform/useFormBuilder.d.mts.map +1 -0
  983. package/dist/pages/typeform/useFormBuilder.mjs +389 -0
  984. package/dist/pages/typeform/useFormBuilder.mjs.map +1 -0
  985. package/dist/pages/view-mode-thumbs.d.mts +6 -0
  986. package/dist/pages/view-mode-thumbs.d.mts.map +1 -0
  987. package/dist/pages/view-mode-thumbs.mjs +8 -0
  988. package/dist/pages/view-mode-thumbs.mjs.map +1 -0
  989. package/dist/pages/wc3-action-type-detail.d.mts +166 -0
  990. package/dist/pages/wc3-action-type-detail.d.mts.map +1 -0
  991. package/dist/pages/wc3-action-type-detail.mjs +2182 -0
  992. package/dist/pages/wc3-action-type-detail.mjs.map +1 -0
  993. package/dist/pages/wc3-action-type-run-dialog.d.mts +23 -0
  994. package/dist/pages/wc3-action-type-run-dialog.d.mts.map +1 -0
  995. package/dist/pages/wc3-action-type-run-dialog.mjs +383 -0
  996. package/dist/pages/wc3-action-type-run-dialog.mjs.map +1 -0
  997. package/dist/pages/wc3-action-type-wizard.d.mts +75 -0
  998. package/dist/pages/wc3-action-type-wizard.d.mts.map +1 -0
  999. package/dist/pages/wc3-action-type-wizard.mjs +702 -0
  1000. package/dist/pages/wc3-action-type-wizard.mjs.map +1 -0
  1001. package/dist/pages/wc3-analysis-data-view.d.mts +15 -0
  1002. package/dist/pages/wc3-analysis-data-view.d.mts.map +1 -0
  1003. package/dist/pages/wc3-analysis-data-view.mjs +129 -0
  1004. package/dist/pages/wc3-analysis-data-view.mjs.map +1 -0
  1005. package/dist/pages/wc3-analysis-data.d.mts +181 -0
  1006. package/dist/pages/wc3-analysis-data.d.mts.map +1 -0
  1007. package/dist/pages/wc3-analysis-data.mjs +4074 -0
  1008. package/dist/pages/wc3-analysis-data.mjs.map +1 -0
  1009. package/dist/pages/wc3-analysis-object-view.d.mts +12 -0
  1010. package/dist/pages/wc3-analysis-object-view.d.mts.map +1 -0
  1011. package/dist/pages/wc3-analysis-object-view.mjs +196 -0
  1012. package/dist/pages/wc3-analysis-object-view.mjs.map +1 -0
  1013. package/dist/pages/wc3-analysis-saved-view.d.mts +6 -0
  1014. package/dist/pages/wc3-analysis-saved-view.d.mts.map +1 -0
  1015. package/dist/pages/wc3-analysis-saved-view.mjs +540 -0
  1016. package/dist/pages/wc3-analysis-saved-view.mjs.map +1 -0
  1017. package/dist/pages/wc3-analysis-shared.d.mts +346 -0
  1018. package/dist/pages/wc3-analysis-shared.d.mts.map +1 -0
  1019. package/dist/pages/wc3-analysis-shared.mjs +1119 -0
  1020. package/dist/pages/wc3-analysis-shared.mjs.map +1 -0
  1021. package/dist/pages/wc3-analysis-views.d.mts +25 -0
  1022. package/dist/pages/wc3-analysis-views.d.mts.map +1 -0
  1023. package/dist/pages/wc3-analysis-views.mjs +48 -0
  1024. package/dist/pages/wc3-analysis-views.mjs.map +1 -0
  1025. package/dist/pages/wc3-fs-data.d.mts +12 -0
  1026. package/dist/pages/wc3-fs-data.d.mts.map +1 -0
  1027. package/dist/pages/wc3-fs-data.mjs +745 -0
  1028. package/dist/pages/wc3-fs-data.mjs.map +1 -0
  1029. package/dist/pages/wc3-fs-location-field.d.mts +13 -0
  1030. package/dist/pages/wc3-fs-location-field.d.mts.map +1 -0
  1031. package/dist/pages/wc3-fs-location-field.mjs +56 -0
  1032. package/dist/pages/wc3-fs-location-field.mjs.map +1 -0
  1033. package/dist/pages/wc3-fs-path-label.d.mts +12 -0
  1034. package/dist/pages/wc3-fs-path-label.d.mts.map +1 -0
  1035. package/dist/pages/wc3-fs-path-label.mjs +36 -0
  1036. package/dist/pages/wc3-fs-path-label.mjs.map +1 -0
  1037. package/dist/pages/wc3-fs-records.d.mts +17 -0
  1038. package/dist/pages/wc3-fs-records.d.mts.map +1 -0
  1039. package/dist/pages/wc3-fs-records.mjs +107 -0
  1040. package/dist/pages/wc3-fs-records.mjs.map +1 -0
  1041. package/dist/pages/wc3-fs-store.d.mts +43 -0
  1042. package/dist/pages/wc3-fs-store.d.mts.map +1 -0
  1043. package/dist/pages/wc3-fs-store.mjs +81 -0
  1044. package/dist/pages/wc3-fs-store.mjs.map +1 -0
  1045. package/dist/pages/wc3-fs-types.d.mts +19 -0
  1046. package/dist/pages/wc3-fs-types.d.mts.map +1 -0
  1047. package/dist/pages/wc3-fs-types.mjs +66 -0
  1048. package/dist/pages/wc3-fs-types.mjs.map +1 -0
  1049. package/dist/pages/wc3-graph-explorer-flow.d.mts +14 -0
  1050. package/dist/pages/wc3-graph-explorer-flow.d.mts.map +1 -0
  1051. package/dist/pages/wc3-graph-explorer-flow.mjs +275 -0
  1052. package/dist/pages/wc3-graph-explorer-flow.mjs.map +1 -0
  1053. package/dist/pages/wc3-group-detail.d.mts +26 -0
  1054. package/dist/pages/wc3-group-detail.d.mts.map +1 -0
  1055. package/dist/pages/wc3-group-detail.mjs +358 -0
  1056. package/dist/pages/wc3-group-detail.mjs.map +1 -0
  1057. package/dist/pages/wc3-group-wizard.d.mts +28 -0
  1058. package/dist/pages/wc3-group-wizard.d.mts.map +1 -0
  1059. package/dist/pages/wc3-group-wizard.mjs +120 -0
  1060. package/dist/pages/wc3-group-wizard.mjs.map +1 -0
  1061. package/dist/pages/wc3-health-view.d.mts +34 -0
  1062. package/dist/pages/wc3-health-view.d.mts.map +1 -0
  1063. package/dist/pages/wc3-health-view.mjs +413 -0
  1064. package/dist/pages/wc3-health-view.mjs.map +1 -0
  1065. package/dist/pages/wc3-home-view.d.mts +24 -0
  1066. package/dist/pages/wc3-home-view.d.mts.map +1 -0
  1067. package/dist/pages/wc3-home-view.mjs +59 -0
  1068. package/dist/pages/wc3-home-view.mjs.map +1 -0
  1069. package/dist/pages/wc3-interface-detail.d.mts +66 -0
  1070. package/dist/pages/wc3-interface-detail.d.mts.map +1 -0
  1071. package/dist/pages/wc3-interface-detail.mjs +1060 -0
  1072. package/dist/pages/wc3-interface-detail.mjs.map +1 -0
  1073. package/dist/pages/wc3-interface-wizard.d.mts +39 -0
  1074. package/dist/pages/wc3-interface-wizard.d.mts.map +1 -0
  1075. package/dist/pages/wc3-interface-wizard.mjs +226 -0
  1076. package/dist/pages/wc3-interface-wizard.mjs.map +1 -0
  1077. package/dist/pages/wc3-lineage-data-view.d.mts +6 -0
  1078. package/dist/pages/wc3-lineage-data-view.d.mts.map +1 -0
  1079. package/dist/pages/wc3-lineage-data-view.mjs +481 -0
  1080. package/dist/pages/wc3-lineage-data-view.mjs.map +1 -0
  1081. package/dist/pages/wc3-lineage-data.d.mts +191 -0
  1082. package/dist/pages/wc3-lineage-data.d.mts.map +1 -0
  1083. package/dist/pages/wc3-lineage-data.mjs +1061 -0
  1084. package/dist/pages/wc3-lineage-data.mjs.map +1 -0
  1085. package/dist/pages/wc3-lineage-impact-view.d.mts +13 -0
  1086. package/dist/pages/wc3-lineage-impact-view.d.mts.map +1 -0
  1087. package/dist/pages/wc3-lineage-impact-view.mjs +247 -0
  1088. package/dist/pages/wc3-lineage-impact-view.mjs.map +1 -0
  1089. package/dist/pages/wc3-lineage-shared.d.mts +137 -0
  1090. package/dist/pages/wc3-lineage-shared.d.mts.map +1 -0
  1091. package/dist/pages/wc3-lineage-shared.mjs +150 -0
  1092. package/dist/pages/wc3-lineage-shared.mjs.map +1 -0
  1093. package/dist/pages/wc3-lineage-views.d.mts +7 -0
  1094. package/dist/pages/wc3-lineage-views.d.mts.map +1 -0
  1095. package/dist/pages/wc3-lineage-views.mjs +13 -0
  1096. package/dist/pages/wc3-lineage-views.mjs.map +1 -0
  1097. package/dist/pages/wc3-lineage-workflow-view.d.mts +12 -0
  1098. package/dist/pages/wc3-lineage-workflow-view.d.mts.map +1 -0
  1099. package/dist/pages/wc3-lineage-workflow-view.mjs +326 -0
  1100. package/dist/pages/wc3-lineage-workflow-view.mjs.map +1 -0
  1101. package/dist/pages/wc3-object-type-detail.d.mts +18 -0
  1102. package/dist/pages/wc3-object-type-detail.d.mts.map +1 -0
  1103. package/dist/pages/wc3-object-type-detail.mjs +977 -0
  1104. package/dist/pages/wc3-object-type-detail.mjs.map +1 -0
  1105. package/dist/pages/wc3-ontology-data.d.mts +246 -0
  1106. package/dist/pages/wc3-ontology-data.d.mts.map +1 -0
  1107. package/dist/pages/wc3-ontology-data.mjs +8542 -0
  1108. package/dist/pages/wc3-ontology-data.mjs.map +1 -0
  1109. package/dist/pages/wc3-ontology-glyphs.d.mts +14 -0
  1110. package/dist/pages/wc3-ontology-glyphs.d.mts.map +1 -0
  1111. package/dist/pages/wc3-ontology-glyphs.mjs +53 -0
  1112. package/dist/pages/wc3-ontology-glyphs.mjs.map +1 -0
  1113. package/dist/pages/wc3-ontology-scope.d.mts +62 -0
  1114. package/dist/pages/wc3-ontology-scope.d.mts.map +1 -0
  1115. package/dist/pages/wc3-ontology-scope.mjs +109 -0
  1116. package/dist/pages/wc3-ontology-scope.mjs.map +1 -0
  1117. package/dist/pages/wc3-ontology-views.d.mts +34 -0
  1118. package/dist/pages/wc3-ontology-views.d.mts.map +1 -0
  1119. package/dist/pages/wc3-ontology-views.mjs +1253 -0
  1120. package/dist/pages/wc3-ontology-views.mjs.map +1 -0
  1121. package/dist/pages/wc3-permit-policy.d.mts +56 -0
  1122. package/dist/pages/wc3-permit-policy.d.mts.map +1 -0
  1123. package/dist/pages/wc3-permit-policy.mjs +478 -0
  1124. package/dist/pages/wc3-permit-policy.mjs.map +1 -0
  1125. package/dist/pages/wc3-pipeline-detail.d.mts +13 -0
  1126. package/dist/pages/wc3-pipeline-detail.d.mts.map +1 -0
  1127. package/dist/pages/wc3-pipeline-detail.mjs +818 -0
  1128. package/dist/pages/wc3-pipeline-detail.mjs.map +1 -0
  1129. package/dist/pages/wc3-pipeline-list-view.d.mts +5 -0
  1130. package/dist/pages/wc3-pipeline-list-view.d.mts.map +1 -0
  1131. package/dist/pages/wc3-pipeline-list-view.mjs +692 -0
  1132. package/dist/pages/wc3-pipeline-list-view.mjs.map +1 -0
  1133. package/dist/pages/wc3-pipeline-shared.d.mts +301 -0
  1134. package/dist/pages/wc3-pipeline-shared.d.mts.map +1 -0
  1135. package/dist/pages/wc3-pipeline-shared.mjs +703 -0
  1136. package/dist/pages/wc3-pipeline-shared.mjs.map +1 -0
  1137. package/dist/pages/wc3-pipeline-side-views.d.mts +7 -0
  1138. package/dist/pages/wc3-pipeline-side-views.d.mts.map +1 -0
  1139. package/dist/pages/wc3-pipeline-side-views.mjs +998 -0
  1140. package/dist/pages/wc3-pipeline-side-views.mjs.map +1 -0
  1141. package/dist/pages/wc3-pipeline-views.d.mts +15 -0
  1142. package/dist/pages/wc3-pipeline-views.d.mts.map +1 -0
  1143. package/dist/pages/wc3-pipeline-views.mjs +23 -0
  1144. package/dist/pages/wc3-pipeline-views.mjs.map +1 -0
  1145. package/dist/pages/wc3-process-bottlenecks.d.mts +22 -0
  1146. package/dist/pages/wc3-process-bottlenecks.d.mts.map +1 -0
  1147. package/dist/pages/wc3-process-bottlenecks.mjs +352 -0
  1148. package/dist/pages/wc3-process-bottlenecks.mjs.map +1 -0
  1149. package/dist/pages/wc3-process-create.d.mts +24 -0
  1150. package/dist/pages/wc3-process-create.d.mts.map +1 -0
  1151. package/dist/pages/wc3-process-create.mjs +230 -0
  1152. package/dist/pages/wc3-process-create.mjs.map +1 -0
  1153. package/dist/pages/wc3-process-data.d.mts +238 -0
  1154. package/dist/pages/wc3-process-data.d.mts.map +1 -0
  1155. package/dist/pages/wc3-process-data.mjs +2251 -0
  1156. package/dist/pages/wc3-process-data.mjs.map +1 -0
  1157. package/dist/pages/wc3-process-detail.d.mts +21 -0
  1158. package/dist/pages/wc3-process-detail.d.mts.map +1 -0
  1159. package/dist/pages/wc3-process-detail.mjs +21 -0
  1160. package/dist/pages/wc3-process-detail.mjs.map +1 -0
  1161. package/dist/pages/wc3-process-list-view.d.mts +5 -0
  1162. package/dist/pages/wc3-process-list-view.d.mts.map +1 -0
  1163. package/dist/pages/wc3-process-list-view.mjs +602 -0
  1164. package/dist/pages/wc3-process-list-view.mjs.map +1 -0
  1165. package/dist/pages/wc3-process-shared.d.mts +443 -0
  1166. package/dist/pages/wc3-process-shared.d.mts.map +1 -0
  1167. package/dist/pages/wc3-process-shared.mjs +980 -0
  1168. package/dist/pages/wc3-process-shared.mjs.map +1 -0
  1169. package/dist/pages/wc3-process-views.d.mts +19 -0
  1170. package/dist/pages/wc3-process-views.d.mts.map +1 -0
  1171. package/dist/pages/wc3-process-views.mjs +23 -0
  1172. package/dist/pages/wc3-process-views.mjs.map +1 -0
  1173. package/dist/pages/wc3-product-catalogue-view.d.mts +5 -0
  1174. package/dist/pages/wc3-product-catalogue-view.d.mts.map +1 -0
  1175. package/dist/pages/wc3-product-catalogue-view.mjs +587 -0
  1176. package/dist/pages/wc3-product-catalogue-view.mjs.map +1 -0
  1177. package/dist/pages/wc3-product-data.d.mts +206 -0
  1178. package/dist/pages/wc3-product-data.d.mts.map +1 -0
  1179. package/dist/pages/wc3-product-data.mjs +2669 -0
  1180. package/dist/pages/wc3-product-data.mjs.map +1 -0
  1181. package/dist/pages/wc3-product-detail.d.mts +31 -0
  1182. package/dist/pages/wc3-product-detail.d.mts.map +1 -0
  1183. package/dist/pages/wc3-product-detail.mjs +1137 -0
  1184. package/dist/pages/wc3-product-detail.mjs.map +1 -0
  1185. package/dist/pages/wc3-product-install-dialog.d.mts +99 -0
  1186. package/dist/pages/wc3-product-install-dialog.d.mts.map +1 -0
  1187. package/dist/pages/wc3-product-install-dialog.mjs +808 -0
  1188. package/dist/pages/wc3-product-install-dialog.mjs.map +1 -0
  1189. package/dist/pages/wc3-product-shared.d.mts +152 -0
  1190. package/dist/pages/wc3-product-shared.d.mts.map +1 -0
  1191. package/dist/pages/wc3-product-shared.mjs +268 -0
  1192. package/dist/pages/wc3-product-shared.mjs.map +1 -0
  1193. package/dist/pages/wc3-product-views.d.mts +7 -0
  1194. package/dist/pages/wc3-product-views.d.mts.map +1 -0
  1195. package/dist/pages/wc3-product-views.mjs +7 -0
  1196. package/dist/pages/wc3-product-views.mjs.map +1 -0
  1197. package/dist/pages/wc3-shared-property-detail.d.mts +95 -0
  1198. package/dist/pages/wc3-shared-property-detail.d.mts.map +1 -0
  1199. package/dist/pages/wc3-shared-property-detail.mjs +546 -0
  1200. package/dist/pages/wc3-shared-property-detail.mjs.map +1 -0
  1201. package/dist/pages/wc3-shared-property-view.d.mts +10 -0
  1202. package/dist/pages/wc3-shared-property-view.d.mts.map +1 -0
  1203. package/dist/pages/wc3-shared-property-view.mjs +455 -0
  1204. package/dist/pages/wc3-shared-property-view.mjs.map +1 -0
  1205. package/dist/pages/wc3-shared-property-wizard.d.mts +31 -0
  1206. package/dist/pages/wc3-shared-property-wizard.d.mts.map +1 -0
  1207. package/dist/pages/wc3-shared-property-wizard.mjs +181 -0
  1208. package/dist/pages/wc3-shared-property-wizard.mjs.map +1 -0
  1209. package/dist/pages/work-permit-templates.d.mts +30 -0
  1210. package/dist/pages/work-permit-templates.d.mts.map +1 -0
  1211. package/dist/pages/work-permit-templates.mjs +793 -0
  1212. package/dist/pages/work-permit-templates.mjs.map +1 -0
  1213. package/dist/pages/workforce-analytics.d.mts +11 -0
  1214. package/dist/pages/workforce-analytics.d.mts.map +1 -0
  1215. package/dist/pages/workforce-analytics.mjs +561 -0
  1216. package/dist/pages/workforce-analytics.mjs.map +1 -0
  1217. package/dist/pages/workforce-compliance-settings.d.mts +9 -0
  1218. package/dist/pages/workforce-compliance-settings.d.mts.map +1 -0
  1219. package/dist/pages/workforce-compliance-settings.mjs +375 -0
  1220. package/dist/pages/workforce-compliance-settings.mjs.map +1 -0
  1221. package/dist/pages/workforce-compliance.d.mts +81 -0
  1222. package/dist/pages/workforce-compliance.d.mts.map +1 -0
  1223. package/dist/pages/workforce-compliance.mjs +805 -0
  1224. package/dist/pages/workforce-compliance.mjs.map +1 -0
  1225. package/dist/pages/workforce-crews.d.mts +5 -0
  1226. package/dist/pages/workforce-crews.d.mts.map +1 -0
  1227. package/dist/pages/workforce-crews.mjs +1091 -0
  1228. package/dist/pages/workforce-crews.mjs.map +1 -0
  1229. package/dist/pages/workforce-map-view.d.mts +8 -0
  1230. package/dist/pages/workforce-map-view.d.mts.map +1 -0
  1231. package/dist/pages/workforce-map-view.mjs +953 -0
  1232. package/dist/pages/workforce-map-view.mjs.map +1 -0
  1233. package/dist/pages/workforce-obs.d.mts +5 -0
  1234. package/dist/pages/workforce-obs.d.mts.map +1 -0
  1235. package/dist/pages/workforce-obs.mjs +649 -0
  1236. package/dist/pages/workforce-obs.mjs.map +1 -0
  1237. package/dist/pagination.d.mts +32 -0
  1238. package/dist/pagination.d.mts.map +1 -0
  1239. package/dist/pagination.mjs +67 -0
  1240. package/dist/pagination.mjs.map +1 -0
  1241. package/dist/permission-matrix.d.mts +43 -0
  1242. package/dist/permission-matrix.d.mts.map +1 -0
  1243. package/dist/permission-matrix.mjs +146 -0
  1244. package/dist/permission-matrix.mjs.map +1 -0
  1245. package/dist/popover.d.mts +19 -0
  1246. package/dist/popover.d.mts.map +1 -0
  1247. package/dist/popover.mjs +31 -0
  1248. package/dist/popover.mjs.map +1 -0
  1249. package/dist/product-package-detail.d.mts +173 -0
  1250. package/dist/product-package-detail.d.mts.map +1 -0
  1251. package/dist/product-package-detail.mjs +521 -0
  1252. package/dist/product-package-detail.mjs.map +1 -0
  1253. package/dist/progress-comparison.d.mts +93 -0
  1254. package/dist/progress-comparison.d.mts.map +1 -0
  1255. package/dist/progress-comparison.mjs +253 -0
  1256. package/dist/progress-comparison.mjs.map +1 -0
  1257. package/dist/progress-list-item.d.mts +46 -0
  1258. package/dist/progress-list-item.d.mts.map +1 -0
  1259. package/dist/progress-list-item.mjs +79 -0
  1260. package/dist/progress-list-item.mjs.map +1 -0
  1261. package/dist/progress-sheet.d.mts +39 -0
  1262. package/dist/progress-sheet.d.mts.map +1 -0
  1263. package/dist/progress-sheet.mjs +760 -0
  1264. package/dist/progress-sheet.mjs.map +1 -0
  1265. package/dist/progress-stat.d.mts +26 -0
  1266. package/dist/progress-stat.d.mts.map +1 -0
  1267. package/dist/progress-stat.mjs +54 -0
  1268. package/dist/progress-stat.mjs.map +1 -0
  1269. package/dist/progress.d.mts +13 -0
  1270. package/dist/progress.d.mts.map +1 -0
  1271. package/dist/progress.mjs +32 -0
  1272. package/dist/progress.mjs.map +1 -0
  1273. package/dist/prompt-input.d.mts +108 -0
  1274. package/dist/prompt-input.d.mts.map +1 -0
  1275. package/dist/prompt-input.mjs +400 -0
  1276. package/dist/prompt-input.mjs.map +1 -0
  1277. package/dist/property-list.d.mts +37 -0
  1278. package/dist/property-list.d.mts.map +1 -0
  1279. package/dist/property-list.mjs +60 -0
  1280. package/dist/property-list.mjs.map +1 -0
  1281. package/dist/push-panel.d.mts +75 -0
  1282. package/dist/push-panel.d.mts.map +1 -0
  1283. package/dist/push-panel.mjs +182 -0
  1284. package/dist/push-panel.mjs.map +1 -0
  1285. package/dist/radio-group.d.mts +9 -0
  1286. package/dist/radio-group.d.mts.map +1 -0
  1287. package/dist/radio-group.mjs +27 -0
  1288. package/dist/radio-group.mjs.map +1 -0
  1289. package/dist/record-detail-shell.d.mts +46 -0
  1290. package/dist/record-detail-shell.d.mts.map +1 -0
  1291. package/dist/record-detail-shell.mjs +29 -0
  1292. package/dist/record-detail-shell.mjs.map +1 -0
  1293. package/dist/resizable.d.mts +11 -0
  1294. package/dist/resizable.d.mts.map +1 -0
  1295. package/dist/resizable.mjs +23 -0
  1296. package/dist/resizable.mjs.map +1 -0
  1297. package/dist/resize-handle.d.mts +19 -0
  1298. package/dist/resize-handle.d.mts.map +1 -0
  1299. package/dist/resize-handle.mjs +45 -0
  1300. package/dist/resize-handle.mjs.map +1 -0
  1301. package/dist/responder-detail-panel.d.mts +72 -0
  1302. package/dist/responder-detail-panel.d.mts.map +1 -0
  1303. package/dist/responder-detail-panel.mjs +232 -0
  1304. package/dist/responder-detail-panel.mjs.map +1 -0
  1305. package/dist/rule-row.d.mts +63 -0
  1306. package/dist/rule-row.d.mts.map +1 -0
  1307. package/dist/rule-row.mjs +97 -0
  1308. package/dist/rule-row.mjs.map +1 -0
  1309. package/dist/schedule-week-bar.d.mts +24 -0
  1310. package/dist/schedule-week-bar.d.mts.map +1 -0
  1311. package/dist/schedule-week-bar.mjs +99 -0
  1312. package/dist/schedule-week-bar.mjs.map +1 -0
  1313. package/dist/score-gauge.d.mts +24 -0
  1314. package/dist/score-gauge.d.mts.map +1 -0
  1315. package/dist/score-gauge.mjs +73 -0
  1316. package/dist/score-gauge.mjs.map +1 -0
  1317. package/dist/scroll-area.d.mts +27 -0
  1318. package/dist/scroll-area.d.mts.map +1 -0
  1319. package/dist/scroll-area.mjs +35 -0
  1320. package/dist/scroll-area.mjs.map +1 -0
  1321. package/dist/search-filter-bar.d.mts +22 -0
  1322. package/dist/search-filter-bar.d.mts.map +1 -0
  1323. package/dist/search-filter-bar.mjs +56 -0
  1324. package/dist/search-filter-bar.mjs.map +1 -0
  1325. package/dist/section-header.d.mts +22 -0
  1326. package/dist/section-header.d.mts.map +1 -0
  1327. package/dist/section-header.mjs +32 -0
  1328. package/dist/section-header.mjs.map +1 -0
  1329. package/dist/section-panel.d.mts +47 -0
  1330. package/dist/section-panel.d.mts.map +1 -0
  1331. package/dist/section-panel.mjs +78 -0
  1332. package/dist/section-panel.mjs.map +1 -0
  1333. package/dist/section.d.mts +15 -0
  1334. package/dist/section.d.mts.map +1 -0
  1335. package/dist/section.mjs +34 -0
  1336. package/dist/section.mjs.map +1 -0
  1337. package/dist/segmented-control.d.mts +26 -0
  1338. package/dist/segmented-control.d.mts.map +1 -0
  1339. package/dist/segmented-control.mjs +70 -0
  1340. package/dist/segmented-control.mjs.map +1 -0
  1341. package/dist/select.d.mts +87 -0
  1342. package/dist/select.d.mts.map +1 -0
  1343. package/dist/select.mjs +280 -0
  1344. package/dist/select.mjs.map +1 -0
  1345. package/dist/selectable-card.d.mts +39 -0
  1346. package/dist/selectable-card.d.mts.map +1 -0
  1347. package/dist/selectable-card.mjs +102 -0
  1348. package/dist/selectable-card.mjs.map +1 -0
  1349. package/dist/separator.d.mts +8 -0
  1350. package/dist/separator.d.mts.map +1 -0
  1351. package/dist/separator.mjs +18 -0
  1352. package/dist/separator.mjs.map +1 -0
  1353. package/dist/services/chatService.d.mts +11 -0
  1354. package/dist/services/chatService.d.mts.map +1 -0
  1355. package/dist/services/chatService.mjs +44 -0
  1356. package/dist/services/chatService.mjs.map +1 -0
  1357. package/dist/setup-steps-checklist.d.mts +50 -0
  1358. package/dist/setup-steps-checklist.d.mts.map +1 -0
  1359. package/dist/setup-steps-checklist.mjs +183 -0
  1360. package/dist/setup-steps-checklist.mjs.map +1 -0
  1361. package/dist/sheet.d.mts +41 -0
  1362. package/dist/sheet.d.mts.map +1 -0
  1363. package/dist/sheet.mjs +71 -0
  1364. package/dist/sheet.mjs.map +1 -0
  1365. package/dist/side-menu.d.mts +61 -0
  1366. package/dist/side-menu.d.mts.map +1 -0
  1367. package/dist/side-menu.mjs +160 -0
  1368. package/dist/side-menu.mjs.map +1 -0
  1369. package/dist/sidebar.d.mts +36 -0
  1370. package/dist/sidebar.d.mts.map +1 -0
  1371. package/dist/sidebar.mjs +159 -0
  1372. package/dist/sidebar.mjs.map +1 -0
  1373. package/dist/single-house-view.d.mts +13 -0
  1374. package/dist/single-house-view.d.mts.map +1 -0
  1375. package/dist/single-house-view.mjs +506 -0
  1376. package/dist/single-house-view.mjs.map +1 -0
  1377. package/dist/site-image-viewer/batches.mjs +362 -0
  1378. package/dist/site-image-viewer/batches.mjs.map +1 -0
  1379. package/dist/site-image-viewer/blocks-zone-1a.mjs +1815 -0
  1380. package/dist/site-image-viewer/blocks-zone-1a.mjs.map +1 -0
  1381. package/dist/site-image-viewer/blocks-zone-1b.mjs +2623 -0
  1382. package/dist/site-image-viewer/blocks-zone-1b.mjs.map +1 -0
  1383. package/dist/site-image-viewer/legend-items.d.mts +6 -0
  1384. package/dist/site-image-viewer/legend-items.d.mts.map +1 -0
  1385. package/dist/site-image-viewer/legend-items.mjs +104 -0
  1386. package/dist/site-image-viewer/legend-items.mjs.map +1 -0
  1387. package/dist/site-image-viewer/milestone-ramp.d.mts +81 -0
  1388. package/dist/site-image-viewer/milestone-ramp.d.mts.map +1 -0
  1389. package/dist/site-image-viewer/milestone-ramp.mjs +112 -0
  1390. package/dist/site-image-viewer/milestone-ramp.mjs.map +1 -0
  1391. package/dist/site-image-viewer/phases.mjs +60 -0
  1392. package/dist/site-image-viewer/phases.mjs.map +1 -0
  1393. package/dist/site-image-viewer/site-legend.d.mts +20 -0
  1394. package/dist/site-image-viewer/site-legend.d.mts.map +1 -0
  1395. package/dist/site-image-viewer/site-legend.mjs +113 -0
  1396. package/dist/site-image-viewer/site-legend.mjs.map +1 -0
  1397. package/dist/site-image-viewer/types.d.mts +32 -0
  1398. package/dist/site-image-viewer/types.d.mts.map +1 -0
  1399. package/dist/site-image-viewer/types.mjs +1 -0
  1400. package/dist/site-image-viewer/villa-hover-card.d.mts +15 -0
  1401. package/dist/site-image-viewer/villa-hover-card.d.mts.map +1 -0
  1402. package/dist/site-image-viewer/villa-hover-card.mjs +48 -0
  1403. package/dist/site-image-viewer/villa-hover-card.mjs.map +1 -0
  1404. package/dist/site-image-viewer/villas.mjs +34494 -0
  1405. package/dist/site-image-viewer/villas.mjs.map +1 -0
  1406. package/dist/site-image-viewer/zone1b-villas.mjs +36211 -0
  1407. package/dist/site-image-viewer/zone1b-villas.mjs.map +1 -0
  1408. package/dist/site-image-viewer/zones-marketing.mjs +114 -0
  1409. package/dist/site-image-viewer/zones-marketing.mjs.map +1 -0
  1410. package/dist/site-image-viewer/zones.mjs +114 -0
  1411. package/dist/site-image-viewer/zones.mjs.map +1 -0
  1412. package/dist/site-image-viewer-fixtures.d.mts +44 -0
  1413. package/dist/site-image-viewer-fixtures.d.mts.map +1 -0
  1414. package/dist/site-image-viewer-fixtures.mjs +112 -0
  1415. package/dist/site-image-viewer-fixtures.mjs.map +1 -0
  1416. package/dist/site-image-viewer.d.mts +98 -0
  1417. package/dist/site-image-viewer.d.mts.map +1 -0
  1418. package/dist/site-image-viewer.mjs +501 -0
  1419. package/dist/site-image-viewer.mjs.map +1 -0
  1420. package/dist/site-panel.d.mts +123 -0
  1421. package/dist/site-panel.d.mts.map +1 -0
  1422. package/dist/site-panel.mjs +1413 -0
  1423. package/dist/site-panel.mjs.map +1 -0
  1424. package/dist/site-reality-viewer.d.mts +46 -0
  1425. package/dist/site-reality-viewer.d.mts.map +1 -0
  1426. package/dist/site-reality-viewer.mjs +436 -0
  1427. package/dist/site-reality-viewer.mjs.map +1 -0
  1428. package/dist/site-toolbar.d.mts +54 -0
  1429. package/dist/site-toolbar.d.mts.map +1 -0
  1430. package/dist/site-toolbar.mjs +110 -0
  1431. package/dist/site-toolbar.mjs.map +1 -0
  1432. package/dist/skeleton.d.mts +6 -0
  1433. package/dist/skeleton.d.mts.map +1 -0
  1434. package/dist/skeleton.mjs +14 -0
  1435. package/dist/skeleton.mjs.map +1 -0
  1436. package/dist/slider.d.mts +8 -0
  1437. package/dist/slider.d.mts.map +1 -0
  1438. package/dist/slider.mjs +20 -0
  1439. package/dist/slider.mjs.map +1 -0
  1440. package/dist/sonner.d.mts +8 -0
  1441. package/dist/sonner.d.mts.map +1 -0
  1442. package/dist/sonner.mjs +20 -0
  1443. package/dist/sonner.mjs.map +1 -0
  1444. package/dist/spinner.d.mts +12 -0
  1445. package/dist/spinner.d.mts.map +1 -0
  1446. package/dist/spinner.mjs +38 -0
  1447. package/dist/spinner.mjs.map +1 -0
  1448. package/dist/stack.d.mts +18 -0
  1449. package/dist/stack.d.mts.map +1 -0
  1450. package/dist/stack.mjs +61 -0
  1451. package/dist/stack.mjs.map +1 -0
  1452. package/dist/stage-content.d.mts +13 -0
  1453. package/dist/stage-content.d.mts.map +1 -0
  1454. package/dist/stage-content.mjs +664 -0
  1455. package/dist/stage-content.mjs.map +1 -0
  1456. package/dist/status-dot.d.mts +18 -0
  1457. package/dist/status-dot.d.mts.map +1 -0
  1458. package/dist/status-dot.mjs +89 -0
  1459. package/dist/status-dot.mjs.map +1 -0
  1460. package/dist/stepper.d.mts +19 -0
  1461. package/dist/stepper.d.mts.map +1 -0
  1462. package/dist/stepper.mjs +113 -0
  1463. package/dist/stepper.mjs.map +1 -0
  1464. package/dist/styles.css +1 -0
  1465. package/dist/styles.tw4.css +1 -0
  1466. package/dist/switch.d.mts +12 -0
  1467. package/dist/switch.d.mts.map +1 -0
  1468. package/dist/switch.mjs +17 -0
  1469. package/dist/switch.mjs.map +1 -0
  1470. package/dist/tab-list.d.mts +33 -0
  1471. package/dist/tab-list.d.mts.map +1 -0
  1472. package/dist/tab-list.mjs +90 -0
  1473. package/dist/tab-list.mjs.map +1 -0
  1474. package/dist/table.d.mts +14 -0
  1475. package/dist/table.d.mts.map +1 -0
  1476. package/dist/table.mjs +60 -0
  1477. package/dist/table.mjs.map +1 -0
  1478. package/dist/tabs.d.mts +42 -0
  1479. package/dist/tabs.d.mts.map +1 -0
  1480. package/dist/tabs.mjs +258 -0
  1481. package/dist/tabs.mjs.map +1 -0
  1482. package/dist/task-monitor.d.mts +70 -0
  1483. package/dist/task-monitor.d.mts.map +1 -0
  1484. package/dist/task-monitor.mjs +319 -0
  1485. package/dist/task-monitor.mjs.map +1 -0
  1486. package/dist/text.d.mts +18 -0
  1487. package/dist/text.d.mts.map +1 -0
  1488. package/dist/text.mjs +60 -0
  1489. package/dist/text.mjs.map +1 -0
  1490. package/dist/textarea.d.mts +7 -0
  1491. package/dist/textarea.d.mts.map +1 -0
  1492. package/dist/textarea.mjs +15 -0
  1493. package/dist/textarea.mjs.map +1 -0
  1494. package/dist/thinking-pill.d.mts +15 -0
  1495. package/dist/thinking-pill.d.mts.map +1 -0
  1496. package/dist/thinking-pill.mjs +28 -0
  1497. package/dist/thinking-pill.mjs.map +1 -0
  1498. package/dist/thumbnail.d.mts +20 -0
  1499. package/dist/thumbnail.d.mts.map +1 -0
  1500. package/dist/thumbnail.mjs +81 -0
  1501. package/dist/thumbnail.mjs.map +1 -0
  1502. package/dist/time-input.d.mts +15 -0
  1503. package/dist/time-input.d.mts.map +1 -0
  1504. package/dist/time-input.mjs +21 -0
  1505. package/dist/time-input.mjs.map +1 -0
  1506. package/dist/time-scrubber.d.mts +93 -0
  1507. package/dist/time-scrubber.d.mts.map +1 -0
  1508. package/dist/time-scrubber.mjs +420 -0
  1509. package/dist/time-scrubber.mjs.map +1 -0
  1510. package/dist/timeline-range-selector.d.mts +30 -0
  1511. package/dist/timeline-range-selector.d.mts.map +1 -0
  1512. package/dist/timeline-range-selector.mjs +232 -0
  1513. package/dist/timeline-range-selector.mjs.map +1 -0
  1514. package/dist/timestamp-picker.d.mts +32 -0
  1515. package/dist/timestamp-picker.d.mts.map +1 -0
  1516. package/dist/timestamp-picker.mjs +143 -0
  1517. package/dist/timestamp-picker.mjs.map +1 -0
  1518. package/dist/timestamp.d.mts +15 -0
  1519. package/dist/timestamp.d.mts.map +1 -0
  1520. package/dist/timestamp.mjs +61 -0
  1521. package/dist/timestamp.mjs.map +1 -0
  1522. package/dist/toast.d.mts +18 -0
  1523. package/dist/toast.d.mts.map +1 -0
  1524. package/dist/toast.mjs +59 -0
  1525. package/dist/toast.mjs.map +1 -0
  1526. package/dist/toaster.d.mts +5 -0
  1527. package/dist/toaster.d.mts.map +1 -0
  1528. package/dist/toaster.mjs +23 -0
  1529. package/dist/toaster.mjs.map +1 -0
  1530. package/dist/toggle-group.d.mts +16 -0
  1531. package/dist/toggle-group.d.mts.map +1 -0
  1532. package/dist/toggle-group.mjs +41 -0
  1533. package/dist/toggle-group.mjs.map +1 -0
  1534. package/dist/toggle.d.mts +16 -0
  1535. package/dist/toggle.d.mts.map +1 -0
  1536. package/dist/toggle.mjs +38 -0
  1537. package/dist/toggle.mjs.map +1 -0
  1538. package/dist/tokenizer.d.mts +23 -0
  1539. package/dist/tokenizer.d.mts.map +1 -0
  1540. package/dist/tokenizer.mjs +87 -0
  1541. package/dist/tokenizer.mjs.map +1 -0
  1542. package/dist/tones.d.mts +59 -0
  1543. package/dist/tones.d.mts.map +1 -0
  1544. package/dist/tones.mjs +177 -0
  1545. package/dist/tones.mjs.map +1 -0
  1546. package/dist/tool-call.d.mts +29 -0
  1547. package/dist/tool-call.d.mts.map +1 -0
  1548. package/dist/tool-call.mjs +89 -0
  1549. package/dist/tool-call.mjs.map +1 -0
  1550. package/dist/toolbar-color-picker.d.mts +50 -0
  1551. package/dist/toolbar-color-picker.d.mts.map +1 -0
  1552. package/dist/toolbar-color-picker.mjs +238 -0
  1553. package/dist/toolbar-color-picker.mjs.map +1 -0
  1554. package/dist/toolbar-pager.d.mts +17 -0
  1555. package/dist/toolbar-pager.d.mts.map +1 -0
  1556. package/dist/toolbar-pager.mjs +40 -0
  1557. package/dist/toolbar-pager.mjs.map +1 -0
  1558. package/dist/toolbar-stats.d.mts +34 -0
  1559. package/dist/toolbar-stats.d.mts.map +1 -0
  1560. package/dist/toolbar-stats.mjs +53 -0
  1561. package/dist/toolbar-stats.mjs.map +1 -0
  1562. package/dist/toolbar.d.mts +98 -0
  1563. package/dist/toolbar.d.mts.map +1 -0
  1564. package/dist/toolbar.mjs +86 -0
  1565. package/dist/toolbar.mjs.map +1 -0
  1566. package/dist/tooltip.d.mts +30 -0
  1567. package/dist/tooltip.d.mts.map +1 -0
  1568. package/dist/tooltip.mjs +83 -0
  1569. package/dist/tooltip.mjs.map +1 -0
  1570. package/dist/tree-list.d.mts +38 -0
  1571. package/dist/tree-list.d.mts.map +1 -0
  1572. package/dist/tree-list.mjs +95 -0
  1573. package/dist/tree-list.mjs.map +1 -0
  1574. package/dist/tree-row.d.mts +84 -0
  1575. package/dist/tree-row.d.mts.map +1 -0
  1576. package/dist/tree-row.mjs +150 -0
  1577. package/dist/tree-row.mjs.map +1 -0
  1578. package/dist/trend-chart.d.mts +28 -0
  1579. package/dist/trend-chart.d.mts.map +1 -0
  1580. package/dist/trend-chart.mjs +33 -0
  1581. package/dist/trend-chart.mjs.map +1 -0
  1582. package/dist/turn-timer.d.mts +23 -0
  1583. package/dist/turn-timer.d.mts.map +1 -0
  1584. package/dist/turn-timer.mjs +51 -0
  1585. package/dist/turn-timer.mjs.map +1 -0
  1586. package/dist/typeahead-item.d.mts +34 -0
  1587. package/dist/typeahead-item.d.mts.map +1 -0
  1588. package/dist/typeahead-item.mjs +74 -0
  1589. package/dist/typeahead-item.mjs.map +1 -0
  1590. package/dist/types/chat.d.mts +66 -0
  1591. package/dist/types/chat.d.mts.map +1 -0
  1592. package/dist/types/chat.mjs +1 -0
  1593. package/dist/types.d.mts +44 -0
  1594. package/dist/types.d.mts.map +1 -0
  1595. package/dist/types.mjs +49 -0
  1596. package/dist/types.mjs.map +1 -0
  1597. package/dist/typography.d.mts +17 -0
  1598. package/dist/typography.d.mts.map +1 -0
  1599. package/dist/typography.mjs +75 -0
  1600. package/dist/typography.mjs.map +1 -0
  1601. package/dist/use-debounced-value.d.mts +11 -0
  1602. package/dist/use-debounced-value.d.mts.map +1 -0
  1603. package/dist/use-debounced-value.mjs +25 -0
  1604. package/dist/use-debounced-value.mjs.map +1 -0
  1605. package/dist/use-document-dir.d.mts +15 -0
  1606. package/dist/use-document-dir.d.mts.map +1 -0
  1607. package/dist/use-document-dir.mjs +33 -0
  1608. package/dist/use-document-dir.mjs.map +1 -0
  1609. package/dist/use-persistent-state.d.mts +9 -0
  1610. package/dist/use-persistent-state.d.mts.map +1 -0
  1611. package/dist/use-persistent-state.mjs +29 -0
  1612. package/dist/use-persistent-state.mjs.map +1 -0
  1613. package/dist/use-toast.d.mts +47 -0
  1614. package/dist/use-toast.d.mts.map +1 -0
  1615. package/dist/use-toast.mjs +119 -0
  1616. package/dist/use-toast.mjs.map +1 -0
  1617. package/dist/vertical-zoom-tools.d.mts +27 -0
  1618. package/dist/vertical-zoom-tools.d.mts.map +1 -0
  1619. package/dist/vertical-zoom-tools.mjs +66 -0
  1620. package/dist/vertical-zoom-tools.mjs.map +1 -0
  1621. package/dist/view-tab-bar.d.mts +75 -0
  1622. package/dist/view-tab-bar.d.mts.map +1 -0
  1623. package/dist/view-tab-bar.mjs +80 -0
  1624. package/dist/view-tab-bar.mjs.map +1 -0
  1625. package/dist/viewer-toolbar.d.mts +41 -0
  1626. package/dist/viewer-toolbar.d.mts.map +1 -0
  1627. package/dist/viewer-toolbar.mjs +271 -0
  1628. package/dist/viewer-toolbar.mjs.map +1 -0
  1629. package/dist/violation-list.d.mts +26 -0
  1630. package/dist/violation-list.d.mts.map +1 -0
  1631. package/dist/violation-list.mjs +53 -0
  1632. package/dist/violation-list.mjs.map +1 -0
  1633. package/dist/walkthrough-modal.d.mts +12 -0
  1634. package/dist/walkthrough-modal.d.mts.map +1 -0
  1635. package/dist/walkthrough-modal.mjs +28 -0
  1636. package/dist/walkthrough-modal.mjs.map +1 -0
  1637. package/dist/walkthrough-tile.d.mts +17 -0
  1638. package/dist/walkthrough-tile.d.mts.map +1 -0
  1639. package/dist/walkthrough-tile.mjs +75 -0
  1640. package/dist/walkthrough-tile.mjs.map +1 -0
  1641. package/dist/week-selector.d.mts +45 -0
  1642. package/dist/week-selector.d.mts.map +1 -0
  1643. package/dist/week-selector.mjs +101 -0
  1644. package/dist/week-selector.mjs.map +1 -0
  1645. package/dist/widget-card.d.mts +18 -0
  1646. package/dist/widget-card.d.mts.map +1 -0
  1647. package/dist/widget-card.mjs +46 -0
  1648. package/dist/widget-card.mjs.map +1 -0
  1649. package/dist/wizard-dialog.d.mts +68 -0
  1650. package/dist/wizard-dialog.d.mts.map +1 -0
  1651. package/dist/wizard-dialog.mjs +108 -0
  1652. package/dist/wizard-dialog.mjs.map +1 -0
  1653. package/dist/work-item-card.d.mts +38 -0
  1654. package/dist/work-item-card.d.mts.map +1 -0
  1655. package/dist/work-item-card.mjs +231 -0
  1656. package/dist/work-item-card.mjs.map +1 -0
  1657. package/dist/worker-profile.d.mts +244 -0
  1658. package/dist/worker-profile.d.mts.map +1 -0
  1659. package/dist/worker-profile.mjs +621 -0
  1660. package/dist/worker-profile.mjs.map +1 -0
  1661. package/dist/zoom-tools.d.mts +29 -0
  1662. package/dist/zoom-tools.d.mts.map +1 -0
  1663. package/dist/zoom-tools.mjs +94 -0
  1664. package/dist/zoom-tools.mjs.map +1 -0
  1665. package/package.json +1792 -0
  1666. package/skills/core-ui-charts/SKILL.md +243 -0
  1667. package/skills/core-ui-chat/SKILL.md +260 -0
  1668. package/skills/core-ui-components/SKILL.md +299 -0
  1669. package/skills/core-ui-composition/SKILL.md +186 -0
  1670. package/skills/core-ui-data-table/SKILL.md +243 -0
  1671. package/skills/core-ui-forms/SKILL.md +289 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-clinic.mjs","names":["Filter"],"sources":["../../src/pages/core-clinic.tsx"],"sourcesContent":["import type {ColumnDef} from \"@tanstack/react-table\";\nimport type {EChartsOption} from \"echarts\";\n\nimport {cn} from \"@corensystem/coren-utils\";\nimport {\n\tActivity,\n\tArchive,\n\tBuilding2,\n\tCalendarClock,\n\tArrowRight,\n\tCalendarPlus,\n\tCircleCheck,\n\tCircleX,\n\tClock,\n\tDownload,\n\tEye,\n\tHeartPulse,\n\tListOrdered,\n\tPencil,\n\tPlus,\n\tSave,\n\tSettings,\n\tShieldCheck,\n\tStethoscope,\n\tBox,\n\tDna,\n\tFolder,\n\tLink2,\n\tNetwork,\n\tPuzzle,\n\tTrash2,\n\tTriangleAlert,\n\tUpload,\n\tUserCog,\n\tUsers,\n\tZap,\n} from \"lucide-react\";\nimport {useMemo, useState} from \"react\";\n\nimport {AddClinicLocationDialog} from \"../add-clinic-location-dialog\";\nimport {AddClinicVisitDialog, type AddClinicVisitOption} from \"../add-clinic-visit-dialog\";\nimport {AssignDoctorDialog, type AssignDoctorOption} from \"../assign-doctor-dialog\";\nimport {AttentionList, AttentionListItem} from \"../attention-list\";\nimport {Avatar, AvatarFallback} from \"../avatar\";\nimport {Badge} from \"../badge\";\nimport {Button} from \"../button\";\nimport {Card} from \"../card\";\nimport {Checkbox} from \"../checkbox\";\nimport {DataTable, DataTableColumnHeader, DataTableRowActions} from \"../data-table\";\nimport {Field, FieldLabel} from \"../field\";\nimport {Filter, FilterCategory, FilterContent, FilterOption, FilterTrigger, type FilterValue} from \"../filter\";\nimport {FormActionBar} from \"../form-action-bar\";\nimport {Input} from \"../input\";\nimport {MetricCard} from \"../metric-card\";\nimport {CoreAppSidebar, type SidebarNavGroup} from \"../navigation/core-app-sidebar\";\nimport {CoreAppTopBar} from \"../navigation/core-app-top-bar\";\nimport {PageContentHeader} from \"../page-content-header\";\nimport {ProgressStat} from \"../progress-stat\";\nimport {RuleList, RuleRow} from \"../rule-row\";\nimport {ScoreGauge} from \"../score-gauge\";\nimport {SectionHeader} from \"../section-header\";\nimport {Select, SelectContent, SelectItem, SelectTrigger, SelectValue} from \"../select\";\nimport {SideMenu, type SideMenuGroup} from \"../side-menu\";\nimport {Toaster} from \"../sonner\";\nimport {Tabs, TabsList, TabsTrigger} from \"../tabs\";\nimport {HoverTooltip} from \"../tooltip\";\nimport {TrendChart} from \"../trend-chart\";\nimport type {ViewTabItem} from \"../view-tab-bar\";\nimport {ontologyScopeCounts, type OntologyScope} from \"./wc3-ontology-scope\";\nimport {ONTOLOGY_VIEWS} from \"./wc3-ontology-views\";\n\n// Clinic — the occupational-health template scaffold, built on the same bones as Safety Manager.\n// A full app shell (CoreAppSidebar + CoreAppTopBar) with a single \"Clinic\" sidebar entry. The\n// content area toggles between the route header (Overview / Worker Fitness tabs + a Settings\n// action) and a Settings sub-surface (SideMenu + content). Overview is still a placeholder; Worker\n// Fitness is a live list. Settings carries four panes — Visit Frequency and Age-Based Rules edit a\n// draft and commit through the shared FormActionBar, while Clinics and Doctors act immediately.\n\ntype SidebarNavItemLite = {id: string; label: string; icon: React.ComponentType<{className?: string}>};\n\nconst NAV_ITEMS: SidebarNavItemLite[] = [{id: \"clinic\", label: \"Clinic\", icon: Stethoscope}];\n\nconst CLINIC_GROUPS: SidebarNavGroup[] = [{items: NAV_ITEMS}];\n\ntype ClinicTabId = \"overview\" | \"worker-fitness\";\n\nconst TABS: ViewTabItem<ClinicTabId>[] = [\n\t{id: \"overview\", label: \"Overview\", icon: Activity},\n\t{id: \"worker-fitness\", label: \"Worker Fitness\", icon: HeartPulse},\n];\n\ntype SettingId =\n\t| \"visit-frequency\"\n\t| \"age-rules\"\n\t| \"clinics\"\n\t| \"doctors\"\n\t| \"object-types\"\n\t| \"link-types\"\n\t| \"action-types\"\n\t| \"interfaces\"\n\t| \"shared-properties\"\n\t| \"type-groups\"\n\t| \"graph\";\n\n// The slice of the WC3 ontology this product owns. Clinic is about worker fitness to work, so it\n// keeps the people and the credentials that gate them, plus the site context those hang off. Only\n// object types are named — every other tab is DERIVED by wc3-ontology-scope.ts. Module-level on\n// purpose: the shared views memoise on this object's identity.\nconst CLINIC_ONTOLOGY_SCOPE: OntologyScope = {\n\tobjectTypeIds: [\"ot_worker\", \"ot_cert\", \"ot_zone\", \"ot_site\", \"ot_project\"],\n};\n\n// Counts come from the same derivation the tables use, so a badge cannot drift from its table.\nconst ONTOLOGY_COUNTS = ontologyScopeCounts(CLINIC_ONTOLOGY_SCOPE);\n\nconst SETTINGS_GROUPS: SideMenuGroup[] = [\n\t{\n\t\tlabel: \"System\",\n\t\titems: [\n\t\t\t{id: \"visit-frequency\", label: \"Visit Frequency\", icon: CalendarClock},\n\t\t\t{id: \"age-rules\", label: \"Age-Based Rules\", icon: ListOrdered},\n\t\t\t{id: \"clinics\", label: \"Clinics\", icon: Building2},\n\t\t\t{id: \"doctors\", label: \"Doctors\", icon: UserCog},\n\t\t],\n\t},\n\t{\n\t\tlabel: \"Ontology\",\n\t\titems: [\n\t\t\t{id: \"object-types\", label: \"Object types\", icon: Box, count: ONTOLOGY_COUNTS[\"object-types\"]},\n\t\t\t{id: \"link-types\", label: \"Link types\", icon: Link2, count: ONTOLOGY_COUNTS[\"link-types\"]},\n\t\t\t{id: \"action-types\", label: \"Action types\", icon: Zap, count: ONTOLOGY_COUNTS[\"action-types\"]},\n\t\t\t{id: \"interfaces\", label: \"Interfaces\", icon: Dna, count: ONTOLOGY_COUNTS.interfaces},\n\t\t\t{id: \"shared-properties\", label: \"Shared properties\", icon: Puzzle, count: ONTOLOGY_COUNTS[\"shared-properties\"]},\n\t\t\t{id: \"type-groups\", label: \"Type groups\", icon: Folder, count: ONTOLOGY_COUNTS[\"type-groups\"]},\n\t\t\t{id: \"graph\", label: \"Graph explorer\", icon: Network, count: ONTOLOGY_COUNTS[\"link-types\"]},\n\t\t],\n\t},\n];\n\n// Which shared ontology view backs each Settings item. The admin registry calls the groups tab\n// \"groups\" while Settings calls it \"type-groups\", so the ids cannot simply be reused.\nconst ONTOLOGY_SETTING_VIEW_IDS: Record<string, string> = {\n\t\"object-types\": \"object-types\",\n\t\"link-types\": \"link-types\",\n\t\"action-types\": \"action-types\",\n\tinterfaces: \"interfaces\",\n\t\"shared-properties\": \"shared-properties\",\n\t\"type-groups\": \"groups\",\n\tgraph: \"graph\",\n};\n\n// Descriptions for the ontology settings header band, mirroring the admin's tab placeholders.\nconst ONTOLOGY_DESCRIPTION: Record<string, string> = {\n\t\"object-types\": \"Define the object types this product works with.\",\n\t\"link-types\": \"Define how those object types relate to one another.\",\n\t\"action-types\": \"Configure the actions that can be run against them.\",\n\tinterfaces: \"Manage shared interfaces object types can implement.\",\n\t\"shared-properties\": \"Manage properties reused across object types.\",\n\t\"type-groups\": \"Group related types for navigation and permissions.\",\n\tgraph: \"Explore how this product's object types relate to one another.\",\n};\n\nconst SETTINGS_ITEMS = SETTINGS_GROUPS.flatMap((group) => group.items);\n\nconst settingLabel = (id: string) => SETTINGS_ITEMS.find((item) => item.id === id)?.label ?? \"Settings\";\nconst tabLabel = (id: ClinicTabId) => TABS.find((tab) => tab.id === id)?.label ?? \"\";\n\n// ─── Worker Fitness (tab data) ───────────────────────────────────────────────\n\ntype FitnessStatus = \"fit\" | \"unfit\" | \"pending\" | \"overdue\";\n\nconst FITNESS_LABEL: Record<FitnessStatus, string> = {\n\tfit: \"Fit\",\n\tunfit: \"Unfit\",\n\tpending: \"Pending re-eval\",\n\toverdue: \"Overdue\",\n};\n\n// Status renders as a colored dot + label, not a Badge — matching the sample, where the dot is the\n// only chrome and the \"last seen\" line sits under it.\nconst FITNESS_DOT: Record<FitnessStatus, string> = {\n\tfit: \"wwc:bg-green-500\",\n\tunfit: \"wwc:bg-red-500\",\n\tpending: \"wwc:bg-amber-500\",\n\toverdue: \"wwc:bg-red-500\",\n};\n\ntype FitnessWorker = {\n\tid: string;\n\tname: string;\n\t/** Worker code shown under the name. */\n\tcode: string;\n\tcompany: string;\n\ttrade: string;\n\tstatus: FitnessStatus;\n\t/** Date the worker was last seen by the clinic, shown under the status. */\n\tlastSeen: string;\n\ttotalVisits: number;\n\tlastVisit: string;\n\tnextDue: string;\n};\n\nconst FITNESS_WORKERS: FitnessWorker[] = [\n\t{\n\t\tid: \"w-1\",\n\t\tname: \"Chandra Bahadur Gurung\",\n\t\tcode: \"2500796962\",\n\t\tcompany: \"TR-KAEFER\",\n\t\ttrade: \"DIRECT-SCAFFOLDER\",\n\t\tstatus: \"fit\",\n\t\tlastSeen: \"20 Jul 2026\",\n\t\ttotalVisits: 1,\n\t\tlastVisit: \"20 Jul 2026\",\n\t\tnextDue: \"20 Jan 2027\",\n\t},\n\t{\n\t\tid: \"w-2\",\n\t\tname: \"Mohammad Gulshad\",\n\t\tcode: \"2563104617\",\n\t\tcompany: \"TR-KAEFER\",\n\t\ttrade: \"DIRECT-SCAFFOLDING HELPER\",\n\t\tstatus: \"fit\",\n\t\tlastSeen: \"20 Jul 2026\",\n\t\ttotalVisits: 1,\n\t\tlastVisit: \"20 Jul 2026\",\n\t\tnextDue: \"20 Jan 2027\",\n\t},\n\t{\n\t\tid: \"w-3\",\n\t\tname: \"SIKANDAR KHAN\",\n\t\tcode: \"2554629937\",\n\t\tcompany: \"TR\",\n\t\ttrade: \"Indirect-HVAC SUPERVISOR\",\n\t\tstatus: \"fit\",\n\t\tlastSeen: \"20 Jul 2026\",\n\t\ttotalVisits: 1,\n\t\tlastVisit: \"20 Jul 2026\",\n\t\tnextDue: \"20 Jan 2027\",\n\t},\n\t{\n\t\tid: \"w-4\",\n\t\tname: \"DILIP BISWAS MATILAL BISWAS\",\n\t\tcode: \"2272360658\",\n\t\tcompany: \"TR-SFEC\",\n\t\ttrade: \"Direct-Carpenter\",\n\t\tstatus: \"fit\",\n\t\tlastSeen: \"20 Jul 2026\",\n\t\ttotalVisits: 1,\n\t\tlastVisit: \"20 Jul 2026\",\n\t\tnextDue: \"20 Jan 2027\",\n\t},\n\t{\n\t\tid: \"w-5\",\n\t\tname: \"MD ASHRAF\",\n\t\tcode: \"W3309449\",\n\t\tcompany: \"TR-AIC\",\n\t\ttrade: \"DIRECT-Pipe Fitter\",\n\t\tstatus: \"fit\",\n\t\tlastSeen: \"19 Jul 2026\",\n\t\ttotalVisits: 1,\n\t\tlastVisit: \"19 Jul 2026\",\n\t\tnextDue: \"19 Jan 2027\",\n\t},\n\t{\n\t\tid: \"w-6\",\n\t\tname: \"MOHAMMED JAMIL\",\n\t\tcode: \"2533496325\",\n\t\tcompany: \"TR-ELECO\",\n\t\ttrade: \"DIRECT-SCAFFOLDER\",\n\t\tstatus: \"fit\",\n\t\tlastSeen: \"18 Jul 2026\",\n\t\ttotalVisits: 1,\n\t\tlastVisit: \"18 Jul 2026\",\n\t\tnextDue: \"18 Jan 2027\",\n\t},\n\t{\n\t\tid: \"w-7\",\n\t\tname: \"MD SAIFUL ISLAM MD\",\n\t\tcode: \"2469410498\",\n\t\tcompany: \"TR-SFEC\",\n\t\ttrade: \"Direct-Steel Fixer\",\n\t\tstatus: \"fit\",\n\t\tlastSeen: \"18 Jul 2026\",\n\t\ttotalVisits: 1,\n\t\tlastVisit: \"18 Jul 2026\",\n\t\tnextDue: \"18 Jan 2027\",\n\t},\n\t{\n\t\tid: \"w-8\",\n\t\tname: \"NARAYAN DEEP CHAND\",\n\t\tcode: \"2327348492\",\n\t\tcompany: \"TR-SFEC\",\n\t\ttrade: \"Direct-Carpenter\",\n\t\tstatus: \"fit\",\n\t\tlastSeen: \"20 Jul 2026\",\n\t\ttotalVisits: 2,\n\t\tlastVisit: \"20 Jul 2026\",\n\t\tnextDue: \"20 Jan 2027\",\n\t},\n\t{\n\t\tid: \"w-9\",\n\t\tname: \"SHAMSHAD ALI MOHAMMAD KHALIL\",\n\t\tcode: \"2326588767\",\n\t\tcompany: \"TR-SFEC\",\n\t\ttrade: \"Direct-Carpenter\",\n\t\tstatus: \"fit\",\n\t\tlastSeen: \"20 Jul 2026\",\n\t\ttotalVisits: 2,\n\t\tlastVisit: \"20 Jul 2026\",\n\t\tnextDue: \"20 Jan 2027\",\n\t},\n\t{\n\t\tid: \"w-10\",\n\t\tname: \"RAJESH KUMAR YADAV\",\n\t\tcode: \"2318874401\",\n\t\tcompany: \"TR-KAEFER\",\n\t\ttrade: \"Direct-Welder\",\n\t\tstatus: \"pending\",\n\t\tlastSeen: \"02 Feb 2026\",\n\t\ttotalVisits: 3,\n\t\tlastVisit: \"02 Feb 2026\",\n\t\tnextDue: \"02 Aug 2026\",\n\t},\n\t{\n\t\tid: \"w-11\",\n\t\tname: \"ABDUL RAHMAN SIDDIQUI\",\n\t\tcode: \"2401553120\",\n\t\tcompany: \"TR-AIC\",\n\t\ttrade: \"Indirect-Store Keeper\",\n\t\tstatus: \"overdue\",\n\t\tlastSeen: \"11 Sep 2025\",\n\t\ttotalVisits: 2,\n\t\tlastVisit: \"11 Sep 2025\",\n\t\tnextDue: \"11 Mar 2026\",\n\t},\n\t{\n\t\tid: \"w-12\",\n\t\tname: \"SURESH CHANDRA PATEL\",\n\t\tcode: \"2287410093\",\n\t\tcompany: \"TR-ELECO\",\n\t\ttrade: \"Direct-Electrician\",\n\t\tstatus: \"overdue\",\n\t\tlastSeen: \"24 Jun 2025\",\n\t\ttotalVisits: 1,\n\t\tlastVisit: \"24 Jun 2025\",\n\t\tnextDue: \"24 Dec 2025\",\n\t},\n];\n\n// ─── Visit Logs (Worker Fitness sub-tab) ─────────────────────────────────────\n\ntype VisitLog = {\n\tid: string;\n\tworkerName: string;\n\t/** Worker code, or the company name for visitors who have no code. */\n\tworkerRef: string;\n\t/** Visitors are contractors/guests without a worker record — flagged with a badge. */\n\tisVisitor?: boolean;\n\tdateTime: string;\n\tduration: string;\n\toutcome: FitnessStatus;\n\treason: string;\n\tclinic: string;\n\tloggedBy: string;\n};\n\nconst VISIT_LOGS: VisitLog[] = [\n\t{\n\t\tid: \"v-1\",\n\t\tworkerName: \"NARAYAN DEEP CHAND\",\n\t\tworkerRef: \"2327348492\",\n\t\tdateTime: \"20 Jul 2026, 16:25\",\n\t\tduration: \"10m\",\n\t\toutcome: \"fit\",\n\t\treason: \"Illness / Symptoms\",\n\t\tclinic: \"TR-TCF CLINIC\",\n\t\tloggedBy: \"RIYASCLINIC\",\n\t},\n\t{\n\t\tid: \"v-2\",\n\t\tworkerName: \"HASSAN SHEIKH\",\n\t\tworkerRef: \"2444509018\",\n\t\tdateTime: \"20 Jul 2026, 16:20\",\n\t\tduration: \"5m\",\n\t\toutcome: \"fit\",\n\t\treason: \"Illness / Symptoms\",\n\t\tclinic: \"TR-TCF CLINIC\",\n\t\tloggedBy: \"RIYASCLINIC\",\n\t},\n\t{\n\t\tid: \"v-3\",\n\t\tworkerName: \"SHAMSHAD ALI MOHAMMAD KHALIL\",\n\t\tworkerRef: \"2326588767\",\n\t\tdateTime: \"20 Jul 2026, 16:15\",\n\t\tduration: \"5m\",\n\t\toutcome: \"fit\",\n\t\treason: \"Illness / Symptoms\",\n\t\tclinic: \"TR-TCF CLINIC\",\n\t\tloggedBy: \"RIYASCLINIC\",\n\t},\n\t{\n\t\tid: \"v-4\",\n\t\tworkerName: \"IBRAHIM BAHAA\",\n\t\tworkerRef: \"AERAMCO\",\n\t\tisVisitor: true,\n\t\tdateTime: \"20 Jul 2026, 15:30\",\n\t\tduration: \"10m\",\n\t\toutcome: \"fit\",\n\t\treason: \"Illness / Symptoms\",\n\t\tclinic: \"TR-TCF CLINIC\",\n\t\tloggedBy: \"RIYASCLINIC\",\n\t},\n\t{\n\t\tid: \"v-5\",\n\t\tworkerName: \"THOMAS THOMAS\",\n\t\tworkerRef: \"W0892276\",\n\t\tdateTime: \"20 Jul 2026, 15:05\",\n\t\tduration: \"10m\",\n\t\toutcome: \"fit\",\n\t\treason: \"Illness / Symptoms\",\n\t\tclinic: \"TR-TCF CLINIC\",\n\t\tloggedBy: \"RIYASCLINIC\",\n\t},\n\t{\n\t\tid: \"v-6\",\n\t\tworkerName: \"VIJAYANATHAN\",\n\t\tworkerRef: \"TR\",\n\t\tisVisitor: true,\n\t\tdateTime: \"20 Jul 2026, 12:30\",\n\t\tduration: \"15m\",\n\t\toutcome: \"fit\",\n\t\treason: \"Illness / Symptoms\",\n\t\tclinic: \"TR-TCF CLINIC\",\n\t\tloggedBy: \"RIYASCLINIC\",\n\t},\n\t{\n\t\tid: \"v-7\",\n\t\tworkerName: \"Chandra Bahadur Gurung\",\n\t\tworkerRef: \"2500796962\",\n\t\tdateTime: \"20 Jul 2026, 09:40\",\n\t\tduration: \"20m\",\n\t\toutcome: \"fit\",\n\t\treason: \"Illness / Symptoms\",\n\t\tclinic: \"TR-TCF CLINIC\",\n\t\tloggedBy: \"RIYASCLINIC\",\n\t},\n\t{\n\t\tid: \"v-8\",\n\t\tworkerName: \"Mohammad Gulshad\",\n\t\tworkerRef: \"2563104617\",\n\t\tdateTime: \"20 Jul 2026, 09:30\",\n\t\tduration: \"10m\",\n\t\toutcome: \"fit\",\n\t\treason: \"Follow-up\",\n\t\tclinic: \"TR-TCF CLINIC\",\n\t\tloggedBy: \"RIYASCLINIC\",\n\t},\n\t{\n\t\tid: \"v-9\",\n\t\tworkerName: \"MAHENDRA PUN MAGAR\",\n\t\tworkerRef: \"2477320739\",\n\t\tdateTime: \"20 Jul 2026, 09:15\",\n\t\tduration: \"10m\",\n\t\toutcome: \"fit\",\n\t\treason: \"Follow-up\",\n\t\tclinic: \"TR-TCF CLINIC\",\n\t\tloggedBy: \"RIYASCLINIC\",\n\t},\n\t{\n\t\tid: \"v-10\",\n\t\tworkerName: \"RAJESH KUMAR YADAV\",\n\t\tworkerRef: \"2318874401\",\n\t\tdateTime: \"19 Jul 2026, 14:50\",\n\t\tduration: \"25m\",\n\t\toutcome: \"pending\",\n\t\treason: \"Periodic Medical\",\n\t\tclinic: \"TR-PKG2 CLINIC\",\n\t\tloggedBy: \"RIYASCLINIC\",\n\t},\n\t{\n\t\tid: \"v-11\",\n\t\tworkerName: \"SURESH CHANDRA PATEL\",\n\t\tworkerRef: \"2287410093\",\n\t\tdateTime: \"19 Jul 2026, 11:05\",\n\t\tduration: \"30m\",\n\t\toutcome: \"unfit\",\n\t\treason: \"Injury / Incident\",\n\t\tclinic: \"TR-PKG2 CLINIC\",\n\t\tloggedBy: \"AHMEDCLINIC\",\n\t},\n];\n\nconst VISIT_REASONS = Array.from(new Set(VISIT_LOGS.map((visit) => visit.reason))).sort();\nconst VISIT_CLINICS = Array.from(new Set(VISIT_LOGS.map((visit) => visit.clinic))).sort();\n\n// ─── New Clinic Visit form options ───────────────────────────────────────────\n\nconst VISIT_WORKER_OPTIONS: AddClinicVisitOption[] = FITNESS_WORKERS.map((worker) => ({\n\tvalue: worker.id,\n\tlabel: `${worker.name} — ${worker.code}`,\n}));\n\nconst VISIT_CLINIC_OPTIONS: AddClinicVisitOption[] = VISIT_CLINICS.map((clinic) => ({value: clinic, label: clinic}));\n\nconst VISIT_REASON_OPTIONS: AddClinicVisitOption[] = VISIT_REASONS.map((reason) => ({value: reason, label: reason}));\n\nconst VISIT_OUTCOME_OPTIONS: AddClinicVisitOption[] = (Object.keys(FITNESS_LABEL) as FitnessStatus[])\n\t// \"Overdue\" is a derived scheduling state, not something a clinician records at the visit.\n\t.filter((status) => status !== \"overdue\")\n\t.map((status) => ({value: status, label: FITNESS_LABEL[status]}));\n\n/** The New Visit dialog, shared by the Workers and Visit Logs toolbars. */\nfunction NewVisitDialog() {\n\treturn (\n\t\t<AddClinicVisitDialog\n\t\t\tworkers={VISIT_WORKER_OPTIONS}\n\t\t\tclinics={VISIT_CLINIC_OPTIONS}\n\t\t\treasons={VISIT_REASON_OPTIONS}\n\t\t\tfitnessOutcomes={VISIT_OUTCOME_OPTIONS}\n\t\t\ttrigger={\n\t\t\t\t<Button>\n\t\t\t\t\t<Plus className=\"wwc:h-4 wwc:w-4\" />\n\t\t\t\t\tNew Visit\n\t\t\t\t</Button>\n\t\t\t}\n\t\t/>\n\t);\n}\n\nfunction makeVisitColumns(): ColumnDef<VisitLog>[] {\n\treturn [\n\t\t{\n\t\t\tid: \"select\",\n\t\t\tenableSorting: false,\n\t\t\tenableHiding: false,\n\t\t\tmeta: {cellClassName: \"wwc:w-px wwc:pr-0\"},\n\t\t\theader: ({table}) => (\n\t\t\t\t<Checkbox\n\t\t\t\t\tchecked={\n\t\t\t\t\t\ttable.getIsAllPageRowsSelected() ? true : table.getIsSomePageRowsSelected() ? \"indeterminate\" : false\n\t\t\t\t\t}\n\t\t\t\t\tonCheckedChange={(v) => table.toggleAllPageRowsSelected(!!v)}\n\t\t\t\t\taria-label=\"Select all\"\n\t\t\t\t/>\n\t\t\t),\n\t\t\tcell: ({row}) => (\n\t\t\t\t<Checkbox\n\t\t\t\t\tchecked={row.getIsSelected()}\n\t\t\t\t\tonCheckedChange={(v) => row.toggleSelected(!!v)}\n\t\t\t\t\taria-label=\"Select row\"\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"workerName\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Worker\" />,\n\t\t\tcell: ({row}) => (\n\t\t\t\t<div className=\"wwc:flex wwc:items-center wwc:gap-3\">\n\t\t\t\t\t<Avatar className=\"wwc:h-7 wwc:w-7\">\n\t\t\t\t\t\t<AvatarFallback className=\"wwc:text-[10px]\">{initials(row.original.workerName)}</AvatarFallback>\n\t\t\t\t\t</Avatar>\n\t\t\t\t\t<div className=\"wwc:min-w-0\">\n\t\t\t\t\t\t<span className=\"wwc:flex wwc:items-center wwc:gap-2 wwc:font-medium\">\n\t\t\t\t\t\t\t{row.original.workerName}\n\t\t\t\t\t\t\t{row.original.isVisitor && (\n\t\t\t\t\t\t\t\t<Badge variant=\"infoSoft\" className=\"wwc:h-5 wwc:px-1.5 wwc:text-[10px]\">\n\t\t\t\t\t\t\t\t\tVisitor\n\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<span className=\"wwc:text-xs wwc:text-muted-foreground\">{row.original.workerRef}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t),\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"dateTime\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Date/Time\" />,\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"duration\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Duration\" />,\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"outcome\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Outcome\" />,\n\t\t\tcell: ({row}) => (\n\t\t\t\t<span className=\"wwc:flex wwc:items-center wwc:gap-2 wwc:font-medium\">\n\t\t\t\t\t<span className={cn(\"wwc:h-2 wwc:w-2 wwc:shrink-0 wwc:rounded-full\", FITNESS_DOT[row.original.outcome])} />\n\t\t\t\t\t{FITNESS_LABEL[row.original.outcome]}\n\t\t\t\t</span>\n\t\t\t),\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"reason\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Reason\" />,\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"clinic\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Clinic\" />,\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"loggedBy\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Logged by\" />,\n\t\t},\n\t\t{\n\t\t\tid: \"actions\",\n\t\t\tenableSorting: false,\n\t\t\tenableHiding: false,\n\t\t\tmeta: {cellClassName: \"wwc:w-px wwc:max-w-none wwc:overflow-visible wwc:whitespace-nowrap wwc:text-right\"},\n\t\t\tcell: () => (\n\t\t\t\t<DataTableRowActions\n\t\t\t\t\tactions={[\n\t\t\t\t\t\t{label: \"View visit\", icon: <Eye className=\"wwc:h-4 wwc:w-4\" />},\n\t\t\t\t\t\t{label: \"Schedule follow-up\", icon: <CalendarPlus className=\"wwc:h-4 wwc:w-4\" />},\n\t\t\t\t\t]}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t];\n}\n\nconst FITNESS_KPIS: {\n\ttitle: string;\n\tvalue: string;\n\tstatus?: \"success\" | \"warning\" | \"danger\";\n\ticon: React.ElementType;\n\ttrend?: \"up\";\n\ttrendLabel?: string;\n}[] = [\n\t{title: \"Active Workers\", value: \"973\", icon: Users},\n\t{title: \"Fit\", value: \"955\", status: \"success\", icon: ShieldCheck},\n\t{title: \"Unfit\", value: \"0\", status: \"warning\", icon: CircleX},\n\t{title: \"Pending re-eval\", value: \"18\", status: \"warning\", icon: Clock},\n\t{\n\t\ttitle: \"Overdue Workers\",\n\t\tvalue: \"565\",\n\t\tstatus: \"danger\",\n\t\ticon: TriangleAlert,\n\t\ttrend: \"up\",\n\t\ttrendLabel: \"+10 vs last week\",\n\t},\n];\n\nconst FITNESS_COMPANIES = Array.from(new Set(FITNESS_WORKERS.map((worker) => worker.company))).sort();\nconst FITNESS_TRADES = Array.from(new Set(FITNESS_WORKERS.map((worker) => worker.trade))).sort();\n\n/** Initials for the avatar fallback, mirroring the workforce worker table. */\nfunction initials(name: string) {\n\treturn name\n\t\t.split(/\\s+/)\n\t\t.slice(0, 2)\n\t\t.map((part) => part.charAt(0).toUpperCase())\n\t\t.join(\"\");\n}\n\n/** Toolbar icon button with a tooltip standing in for the label. */\nfunction IconAction({label, icon}: {label: string; icon: React.ReactNode}) {\n\treturn (\n\t\t<HoverTooltip content={label}>\n\t\t\t<Button variant=\"outline\" icon aria-label={label}>\n\t\t\t\t{icon}\n\t\t\t</Button>\n\t\t</HoverTooltip>\n\t);\n}\n\nfunction makeFitnessColumns(onView: (worker: FitnessWorker) => void): ColumnDef<FitnessWorker>[] {\n\treturn [\n\t\t{\n\t\t\tid: \"select\",\n\t\t\tenableSorting: false,\n\t\t\tenableHiding: false,\n\t\t\tmeta: {cellClassName: \"wwc:w-px wwc:pr-0\"},\n\t\t\theader: ({table}) => (\n\t\t\t\t<Checkbox\n\t\t\t\t\tchecked={\n\t\t\t\t\t\ttable.getIsAllPageRowsSelected() ? true : table.getIsSomePageRowsSelected() ? \"indeterminate\" : false\n\t\t\t\t\t}\n\t\t\t\t\tonCheckedChange={(v) => table.toggleAllPageRowsSelected(!!v)}\n\t\t\t\t\taria-label=\"Select all\"\n\t\t\t\t/>\n\t\t\t),\n\t\t\tcell: ({row}) => (\n\t\t\t\t<Checkbox\n\t\t\t\t\tchecked={row.getIsSelected()}\n\t\t\t\t\tonCheckedChange={(v) => row.toggleSelected(!!v)}\n\t\t\t\t\taria-label=\"Select row\"\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"name\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Worker\" />,\n\t\t\tcell: ({row}) => (\n\t\t\t\t<div className=\"wwc:flex wwc:items-center wwc:gap-3\">\n\t\t\t\t\t<Avatar className=\"wwc:h-7 wwc:w-7\">\n\t\t\t\t\t\t<AvatarFallback className=\"wwc:text-[10px]\">{initials(row.original.name)}</AvatarFallback>\n\t\t\t\t\t</Avatar>\n\t\t\t\t\t<div className=\"wwc:min-w-0\">\n\t\t\t\t\t\t<button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tonClick={() => onView(row.original)}\n\t\t\t\t\t\t\tclassName=\"wwc:block wwc:text-left wwc:font-medium wwc:transition-colors wwc:hover:text-primary\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{row.original.name}\n\t\t\t\t\t\t</button>\n\t\t\t\t\t\t<span className=\"wwc:text-xs wwc:text-muted-foreground\">{row.original.code}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t),\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"company\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Company\" />,\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"trade\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Trade\" />,\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"status\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Current Status\" />,\n\t\t\tcell: ({row}) => (\n\t\t\t\t<div className=\"wwc:min-w-0\">\n\t\t\t\t\t<span className=\"wwc:flex wwc:items-center wwc:gap-2 wwc:font-medium\">\n\t\t\t\t\t\t<span className={cn(\"wwc:h-2 wwc:w-2 wwc:shrink-0 wwc:rounded-full\", FITNESS_DOT[row.original.status])} />\n\t\t\t\t\t\t{FITNESS_LABEL[row.original.status]}\n\t\t\t\t\t</span>\n\t\t\t\t\t<span className=\"wwc:text-xs wwc:text-muted-foreground\">last seen {row.original.lastSeen}</span>\n\t\t\t\t</div>\n\t\t\t),\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"totalVisits\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Total Visits\" />,\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"lastVisit\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Last Visit\" />,\n\t\t},\n\t\t{\n\t\t\taccessorKey: \"nextDue\",\n\t\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Next Due\" />,\n\t\t},\n\t\t{\n\t\t\tid: \"actions\",\n\t\t\tenableSorting: false,\n\t\t\tenableHiding: false,\n\t\t\tmeta: {cellClassName: \"wwc:w-px wwc:max-w-none wwc:overflow-visible wwc:whitespace-nowrap wwc:text-right\"},\n\t\t\tcell: ({row}) => (\n\t\t\t\t<DataTableRowActions\n\t\t\t\t\tactions={[\n\t\t\t\t\t\t{label: \"View worker\", icon: <Eye className=\"wwc:h-4 wwc:w-4\" />, onSelect: () => onView(row.original)},\n\t\t\t\t\t\t{label: \"Log a visit\", icon: <CalendarPlus className=\"wwc:h-4 wwc:w-4\" />},\n\t\t\t\t\t]}\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t];\n}\n\n/** Worker Fitness — KPI row, Workers/Visit Logs tabs, and the reusable DataTable. */\nfunction WorkerFitnessView() {\n\tconst [listTab, setListTab] = useState<\"workers\" | \"visit-logs\">(\"workers\");\n\tconst [filters, setFilters] = useState<FilterValue>({});\n\n\tconst [visitFilters, setVisitFilters] = useState<FilterValue>({});\n\n\tconst columns = useMemo(() => makeFitnessColumns(() => {}), []);\n\tconst visitColumns = useMemo(() => makeVisitColumns(), []);\n\n\tconst data = useMemo(\n\t\t() =>\n\t\t\tFITNESS_WORKERS.filter((worker) =>\n\t\t\t\tObject.entries(filters).every(([key, selected]) => {\n\t\t\t\t\tif (!selected || selected.length === 0) return true;\n\t\t\t\t\treturn selected.includes(String(worker[key as keyof FitnessWorker]));\n\t\t\t\t}),\n\t\t\t),\n\t\t[filters],\n\t);\n\n\tconst visits = useMemo(\n\t\t() =>\n\t\t\tVISIT_LOGS.filter((visit) =>\n\t\t\t\tObject.entries(visitFilters).every(([key, selected]) => {\n\t\t\t\t\tif (!selected || selected.length === 0) return true;\n\t\t\t\t\treturn selected.includes(String(visit[key as keyof VisitLog]));\n\t\t\t\t}),\n\t\t\t),\n\t\t[visitFilters],\n\t);\n\n\treturn (\n\t\t<div className=\"wwc:min-h-0 wwc:flex-1 wwc:overflow-auto\">\n\t\t\t{/* Gaps are set per-child, not with space-y: DataTable's toolbar already carries its own\n\t\t\t top padding, so a blanket space-y would double the gap under the tabs. */}\n\t\t\t<div className=\"wwc:w-full wwc:p-6\">\n\t\t\t\t{/* Always one row — the five fitness KPIs read as a single band, so they don't reflow at\n\t\t\t\t narrow widths; the row scrolls sideways instead of wrapping. */}\n\t\t\t\t<div className=\"wwc:mb-4 wwc:grid wwc:grid-cols-5 wwc:gap-4\">\n\t\t\t\t\t{FITNESS_KPIS.map((kpi) => (\n\t\t\t\t\t\t<MetricCard\n\t\t\t\t\t\t\tkey={kpi.title}\n\t\t\t\t\t\t\ttitle={kpi.title}\n\t\t\t\t\t\t\tvalue={kpi.value}\n\t\t\t\t\t\t\tstatus={kpi.status}\n\t\t\t\t\t\t\ticon={kpi.icon}\n\t\t\t\t\t\t\ttrend={kpi.trend}\n\t\t\t\t\t\t\ttrendLabel={kpi.trendLabel}\n\t\t\t\t\t\t/>\n\t\t\t\t\t))}\n\t\t\t\t</div>\n\n\t\t\t\t<Tabs value={listTab} onValueChange={(value) => setListTab(value as \"workers\" | \"visit-logs\")}>\n\t\t\t\t\t<TabsList>\n\t\t\t\t\t\t<TabsTrigger value=\"workers\">\n\t\t\t\t\t\t\tWorkers\n\t\t\t\t\t\t\t<Badge variant=\"secondary\" className=\"wwc:ml-2 wwc:h-5 wwc:px-1.5 wwc:text-[10px]\">\n\t\t\t\t\t\t\t\t973\n\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t</TabsTrigger>\n\t\t\t\t\t\t<TabsTrigger value=\"visit-logs\">\n\t\t\t\t\t\t\tVisit Logs\n\t\t\t\t\t\t\t<Badge variant=\"secondary\" className=\"wwc:ml-2 wwc:h-5 wwc:px-1.5 wwc:text-[10px]\">\n\t\t\t\t\t\t\t\t5478\n\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t</TabsTrigger>\n\t\t\t\t\t</TabsList>\n\t\t\t\t</Tabs>\n\n\t\t\t\t{listTab === \"workers\" ? (\n\t\t\t\t\t<Filter value={filters} onChange={setFilters}>\n\t\t\t\t\t\t<DataTable\n\t\t\t\t\t\t\tcolumns={columns}\n\t\t\t\t\t\t\tdata={data}\n\t\t\t\t\t\t\tsearchKey=\"name\"\n\t\t\t\t\t\t\tsearchPlaceholder=\"Search by name, code, company…\"\n\t\t\t\t\t\t\tshowColumnToggle\n\t\t\t\t\t\t\trecordLabel=\"worker\"\n\t\t\t\t\t\t\tpageSize={10}\n\t\t\t\t\t\t\tgetRowId={(row) => row.id}\n\t\t\t\t\t\t\tbulkActions={[\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlabel: \"Log visits\",\n\t\t\t\t\t\t\t\t\ticon: <CalendarPlus className=\"wwc:h-4 wwc:w-4\" />,\n\t\t\t\t\t\t\t\t\tonClick: () => {},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlabel: \"Export\",\n\t\t\t\t\t\t\t\t\ticon: <Download className=\"wwc:h-4 wwc:w-4\" />,\n\t\t\t\t\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\t\t\t\t\tonClick: () => {},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\ttoolbarExtra={\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<FilterTrigger />\n\t\t\t\t\t\t\t\t\t<FilterContent>\n\t\t\t\t\t\t\t\t\t\t<FilterCategory value=\"company\" label=\"Company\">\n\t\t\t\t\t\t\t\t\t\t\t{FITNESS_COMPANIES.map((company) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<FilterOption key={company} value={company}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{company}\n\t\t\t\t\t\t\t\t\t\t\t\t</FilterOption>\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t</FilterCategory>\n\t\t\t\t\t\t\t\t\t\t<FilterCategory value=\"trade\" label=\"Trade\">\n\t\t\t\t\t\t\t\t\t\t\t{FITNESS_TRADES.map((trade) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<FilterOption key={trade} value={trade}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{trade}\n\t\t\t\t\t\t\t\t\t\t\t\t</FilterOption>\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t</FilterCategory>\n\t\t\t\t\t\t\t\t\t\t<FilterCategory value=\"status\" label=\"Current Status\">\n\t\t\t\t\t\t\t\t\t\t\t{(Object.keys(FITNESS_LABEL) as FitnessStatus[]).map((status) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<FilterOption key={status} value={status}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{FITNESS_LABEL[status]}\n\t\t\t\t\t\t\t\t\t\t\t\t</FilterOption>\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t</FilterCategory>\n\t\t\t\t\t\t\t\t\t</FilterContent>\n\t\t\t\t\t\t\t\t\t<IconAction label=\"Bulk Upload\" icon={<Upload className=\"wwc:h-4 wwc:w-4\" />} />\n\t\t\t\t\t\t\t\t\t<IconAction label=\"Export (.xlsx)\" icon={<Download className=\"wwc:h-4 wwc:w-4\" />} />\n\t\t\t\t\t\t\t\t\t<NewVisitDialog />\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Filter>\n\t\t\t\t) : (\n\t\t\t\t\t<Filter value={visitFilters} onChange={setVisitFilters}>\n\t\t\t\t\t\t<DataTable\n\t\t\t\t\t\t\tcolumns={visitColumns}\n\t\t\t\t\t\t\tdata={visits}\n\t\t\t\t\t\t\tsearchKey=\"workerName\"\n\t\t\t\t\t\t\tsearchPlaceholder=\"Search by name, ID, company…\"\n\t\t\t\t\t\t\tshowColumnToggle\n\t\t\t\t\t\t\trecordLabel=\"visit\"\n\t\t\t\t\t\t\tpageSize={10}\n\t\t\t\t\t\t\tgetRowId={(row) => row.id}\n\t\t\t\t\t\t\tbulkActions={[\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlabel: \"Export\",\n\t\t\t\t\t\t\t\t\ticon: <Download className=\"wwc:h-4 wwc:w-4\" />,\n\t\t\t\t\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\t\t\t\t\tonClick: () => {},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\ttoolbarExtra={\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<FilterTrigger />\n\t\t\t\t\t\t\t\t\t<FilterContent>\n\t\t\t\t\t\t\t\t\t\t<FilterCategory value=\"outcome\" label=\"Outcome\">\n\t\t\t\t\t\t\t\t\t\t\t{(Object.keys(FITNESS_LABEL) as FitnessStatus[]).map((status) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<FilterOption key={status} value={status}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{FITNESS_LABEL[status]}\n\t\t\t\t\t\t\t\t\t\t\t\t</FilterOption>\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t</FilterCategory>\n\t\t\t\t\t\t\t\t\t\t<FilterCategory value=\"reason\" label=\"Reason\">\n\t\t\t\t\t\t\t\t\t\t\t{VISIT_REASONS.map((reason) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<FilterOption key={reason} value={reason}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{reason}\n\t\t\t\t\t\t\t\t\t\t\t\t</FilterOption>\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t</FilterCategory>\n\t\t\t\t\t\t\t\t\t\t<FilterCategory value=\"clinic\" label=\"Clinic\">\n\t\t\t\t\t\t\t\t\t\t\t{VISIT_CLINICS.map((clinic) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<FilterOption key={clinic} value={clinic}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{clinic}\n\t\t\t\t\t\t\t\t\t\t\t\t</FilterOption>\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t</FilterCategory>\n\t\t\t\t\t\t\t\t\t</FilterContent>\n\t\t\t\t\t\t\t\t\t<IconAction label=\"Bulk Upload\" icon={<Upload className=\"wwc:h-4 wwc:w-4\" />} />\n\t\t\t\t\t\t\t\t\t<IconAction label=\"Export (.xlsx)\" icon={<Download className=\"wwc:h-4 wwc:w-4\" />} />\n\t\t\t\t\t\t\t\t\t<NewVisitDialog />\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Filter>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\n// ─── Overview (tab data) ─────────────────────────────────────────────────────\n\ntype OverviewKpi = {\n\ttitle: string;\n\tvalue: string;\n\ticon: React.ElementType;\n\tstatus?: \"success\" | \"warning\" | \"danger\";\n\ttrend?: \"up\" | \"down\";\n\ttrendLabel?: string;\n};\n\nconst PEOPLE_KPIS: OverviewKpi[] = [\n\t{title: \"Active Workers\", value: \"973\", icon: Users},\n\t{title: \"Currently Unfit\", value: \"0\", icon: CircleX, status: \"warning\"},\n\t{title: \"Pending Workers\", value: \"18\", icon: Clock, status: \"warning\"},\n\t{\n\t\ttitle: \"Overdue Workers\",\n\t\tvalue: \"567\",\n\t\ticon: TriangleAlert,\n\t\tstatus: \"danger\",\n\t\ttrend: \"up\",\n\t\ttrendLabel: \"+10 vs last week\",\n\t},\n];\n\nconst ACTIVITY_KPIS: OverviewKpi[] = [\n\t{title: \"Visits Today\", value: \"0\", icon: CalendarPlus, trend: \"down\", trendLabel: \"-14 vs yesterday\"},\n\t{title: \"Visits This Month\", value: \"96\", icon: Stethoscope, trend: \"down\", trendLabel: \"-85 vs last month\"},\n\t{title: \"Fit Today\", value: \"0\", icon: CircleCheck, status: \"success\", trend: \"down\", trendLabel: \"-14 vs yesterday\"},\n];\n\n// ─── Site Health Score ───────────────────────────────────────────────────────\n\ntype HealthMetric = {\n\tlabel: string;\n\tpercent: number;\n\tcaption: string;\n\t/** Drives the dot, the figure, and the bar — one tone per metric. */\n\ttone: \"success\" | \"danger\";\n};\n\nconst HEALTH_SCORE = 79;\n\nconst HEALTH_METRICS: HealthMetric[] = [\n\t{label: \"Up to date\", percent: 42, caption: \"567 overdue\", tone: \"danger\"},\n\t{label: \"Due soon (30d)\", percent: 96, caption: \"36 due in 30d\", tone: \"success\"},\n\t{label: \"Fit for work\", percent: 98, caption: \"18 unfit/pending\", tone: \"success\"},\n\t{label: \"Screening coverage\", percent: 100, caption: \"all screened\", tone: \"success\"},\n];\n\nfunction SiteHealthScore() {\n\treturn (\n\t\t<Card className=\"wwc:p-6\">\n\t\t\t<div className=\"wwc:flex wwc:flex-wrap wwc:items-start wwc:gap-5\">\n\t\t\t\t<ScoreGauge value={HEALTH_SCORE} tone=\"warning\" size={120} />\n\n\t\t\t\t<div className=\"wwc:min-w-0 wwc:flex-1\">\n\t\t\t\t\t<SectionHeader\n\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\tclassName=\"wwc:mb-0\"\n\t\t\t\t\t\ttitle={\n\t\t\t\t\t\t\t<span className=\"wwc:flex wwc:flex-wrap wwc:items-center wwc:gap-2\">\n\t\t\t\t\t\t\t\tSite Health Score\n\t\t\t\t\t\t\t\t<Badge variant=\"warningSoft\">\n\t\t\t\t\t\t\t\t\t<TriangleAlert className=\"wwc:h-3 wwc:w-3\" />\n\t\t\t\t\t\t\t\t\tAt risk\n\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tdescription=\"Weighted medical readiness across 973 active workers.\"\n\t\t\t\t\t/>\n\t\t\t\t\t<p className=\"wwc:mt-2 wwc:flex wwc:items-center wwc:gap-1.5 wwc:text-sm wwc:text-amber-600\">\n\t\t\t\t\t\t<TriangleAlert className=\"wwc:h-4 wwc:w-4 wwc:shrink-0\" />\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t<span className=\"wwc:font-medium\">Biggest gap:</span> Up to date — 567 overdue\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</p>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div className=\"wwc:mt-5 wwc:grid wwc:grid-cols-2 wwc:gap-4 wwc:lg:grid-cols-4\">\n\t\t\t\t{HEALTH_METRICS.map((metric) => (\n\t\t\t\t\t<ProgressStat\n\t\t\t\t\t\tkey={metric.label}\n\t\t\t\t\t\ttitle={metric.label}\n\t\t\t\t\t\tvalue={metric.percent}\n\t\t\t\t\t\tunit=\"%\"\n\t\t\t\t\t\tcaption={metric.caption}\n\t\t\t\t\t\tpercent={metric.percent}\n\t\t\t\t\t\ttone={metric.tone}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t</div>\n\t\t</Card>\n\t);\n}\n\n// ─── Visit Analytics ─────────────────────────────────────────────────────────\n\nconst VISIT_VOLUME_DATES = [\n\t\"06-23\",\n\t\"06-24\",\n\t\"06-25\",\n\t\"06-26\",\n\t\"06-27\",\n\t\"06-28\",\n\t\"06-29\",\n\t\"06-30\",\n\t\"07-01\",\n\t\"07-02\",\n\t\"07-03\",\n\t\"07-04\",\n\t\"07-05\",\n\t\"07-06\",\n\t\"07-07\",\n\t\"07-08\",\n\t\"07-09\",\n\t\"07-10\",\n\t\"07-11\",\n\t\"07-12\",\n\t\"07-13\",\n\t\"07-14\",\n\t\"07-15\",\n\t\"07-16\",\n\t\"07-17\",\n\t\"07-18\",\n\t\"07-19\",\n\t\"07-20\",\n\t\"07-21\",\n];\nconst VISIT_VOLUME = [15, 8, 19, 0, 33, 10, 15, 6, 1, 0, 0, 0, 3, 0, 0, 2, 0, 0, 2, 8, 12, 19, 6, 10, 15, 0, 16, 9, 14];\n\nconst OVERDUE_TREND = [\n\t540, 542, 543, 545, 546, 547, 549, 550, 551, 553, 554, 555, 556, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,\n\t568, 569, 570, 571, 572, 573,\n];\nconst COMPLIANCE_TREND = [\n\t45, 45, 45, 45, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 43, 43, 43, 43, 43, 43, 42, 42, 42, 42, 42, 42, 42, 42,\n];\n\nconst areaChartOption = (dates: string[], values: number[], color: string, area: string): EChartsOption => ({\n\tgrid: {left: 44, right: 12, top: 16, bottom: 28},\n\ttooltip: {trigger: \"axis\"},\n\txAxis: {type: \"category\", data: dates, boundaryGap: false, axisTick: {show: false}},\n\tyAxis: {type: \"value\", splitLine: {lineStyle: {type: \"dashed\"}}},\n\tseries: [\n\t\t{\n\t\t\ttype: \"line\",\n\t\t\tdata: values,\n\t\t\tsmooth: true,\n\t\t\tshowSymbol: false,\n\t\t\tlineStyle: {color, width: 2},\n\t\t\tareaStyle: {color: area},\n\t\t},\n\t],\n});\n\nconst visitVolumeOption = areaChartOption(VISIT_VOLUME_DATES, VISIT_VOLUME, \"#3b82f6\", \"rgba(59,130,246,0.25)\");\n\nconst fitnessDistributionOption: EChartsOption = {\n\ttooltip: {trigger: \"item\"},\n\tlegend: {bottom: 0, icon: \"circle\"},\n\tseries: [\n\t\t{\n\t\t\ttype: \"pie\",\n\t\t\tradius: [\"55%\", \"78%\"],\n\t\t\tcenter: [\"50%\", \"45%\"],\n\t\t\tlabel: {show: false},\n\t\t\tlabelLine: {show: false},\n\t\t\tdata: [\n\t\t\t\t{name: \"Fit\", value: 955, itemStyle: {color: \"#16a34a\"}},\n\t\t\t\t{name: \"Pending\", value: 18, itemStyle: {color: \"#f59e0b\"}},\n\t\t\t\t{name: \"Unfit\", value: 0, itemStyle: {color: \"#dc2626\"}},\n\t\t\t],\n\t\t},\n\t],\n};\n\nconst overdueTrendOption: EChartsOption = {\n\tgrid: {left: 44, right: 12, top: 16, bottom: 28},\n\ttooltip: {trigger: \"axis\"},\n\txAxis: {type: \"category\", data: VISIT_VOLUME_DATES, axisTick: {show: false}},\n\tyAxis: {type: \"value\", min: 0, max: 600, splitLine: {lineStyle: {type: \"dashed\"}}},\n\tseries: [\n\t\t{type: \"line\", data: OVERDUE_TREND, symbolSize: 6, lineStyle: {color: \"#dc2626\"}, itemStyle: {color: \"#dc2626\"}},\n\t],\n};\n\nconst complianceRateOption: EChartsOption = {\n\tgrid: {left: 48, right: 12, top: 16, bottom: 28},\n\ttooltip: {trigger: \"axis\", valueFormatter: (value) => `${value as number}%`},\n\txAxis: {type: \"category\", data: VISIT_VOLUME_DATES, boundaryGap: false, axisTick: {show: false}},\n\tyAxis: {\n\t\ttype: \"value\",\n\t\tmin: 0,\n\t\tmax: 100,\n\t\taxisLabel: {formatter: \"{value}%\"},\n\t\tsplitLine: {lineStyle: {type: \"dashed\"}},\n\t},\n\tseries: [\n\t\t{\n\t\t\ttype: \"line\",\n\t\t\tdata: COMPLIANCE_TREND,\n\t\t\tshowSymbol: false,\n\t\t\tlineStyle: {color: \"#16a34a\", width: 2},\n\t\t\tareaStyle: {color: \"rgba(22,163,74,0.12)\"},\n\t\t},\n\t],\n};\n\nconst visitsByClinicOption: EChartsOption = {\n\tgrid: {left: 120, right: 24, top: 16, bottom: 28},\n\ttooltip: {trigger: \"axis\", axisPointer: {type: \"shadow\"}},\n\txAxis: {type: \"value\", splitLine: {lineStyle: {type: \"dashed\"}}},\n\tyAxis: {\n\t\ttype: \"category\",\n\t\tdata: [\"NGMSA-TCF CLINIC\", \"Default Clinic\", \"ZOMCO-SAPMT Camp Clinic\", \"SH-TCF Clinic\", \"TR-TCF CLINIC\"],\n\t\taxisTick: {show: false},\n\t},\n\tseries: [{type: \"bar\", data: [1, 2, 3, 9, 198], barWidth: 12, itemStyle: {color: \"#3b82f6\", borderRadius: 3}}],\n};\n\nconst peakVisitHoursOption: EChartsOption = {\n\tgrid: {left: 40, right: 12, top: 16, bottom: 28},\n\ttooltip: {trigger: \"axis\", axisPointer: {type: \"shadow\"}},\n\txAxis: {\n\t\ttype: \"category\",\n\t\tdata: [\n\t\t\t\"00:00\",\n\t\t\t\"01:00\",\n\t\t\t\"02:00\",\n\t\t\t\"03:00\",\n\t\t\t\"04:00\",\n\t\t\t\"05:00\",\n\t\t\t\"06:00\",\n\t\t\t\"07:00\",\n\t\t\t\"08:00\",\n\t\t\t\"09:00\",\n\t\t\t\"10:00\",\n\t\t\t\"11:00\",\n\t\t\t\"12:00\",\n\t\t\t\"13:00\",\n\t\t\t\"14:00\",\n\t\t\t\"15:00\",\n\t\t\t\"16:00\",\n\t\t\t\"17:00\",\n\t\t\t\"18:00\",\n\t\t\t\"19:00\",\n\t\t\t\"20:00\",\n\t\t],\n\t\taxisTick: {show: false},\n\t},\n\tyAxis: {type: \"value\", splitLine: {lineStyle: {type: \"dashed\"}}},\n\tseries: [\n\t\t{\n\t\t\ttype: \"bar\",\n\t\t\tdata: [1, 4, 12, 18, 19, 19, 24, 17, 14, 14, 7, 13, 20, 12, 10, 7, 2, 1, 3, 0, 0],\n\t\t\tbarWidth: \"60%\",\n\t\t\titemStyle: {color: \"#8b5cf6\", borderRadius: [3, 3, 0, 0]},\n\t\t},\n\t],\n};\n\nconst visitReasonsOption: EChartsOption = {\n\tgrid: {left: 110, right: 24, top: 16, bottom: 28},\n\ttooltip: {trigger: \"axis\", axisPointer: {type: \"shadow\"}, valueFormatter: (value) => `${value as number}%`},\n\txAxis: {type: \"value\", max: 100, splitLine: {lineStyle: {type: \"dashed\"}}},\n\tyAxis: {type: \"category\", data: [\"Other\", \"FollowUp\", \"Routine\", \"IllnessSymptoms\"], axisTick: {show: false}},\n\tseries: [{type: \"bar\", data: [2, 4, 10, 84], barWidth: 12, itemStyle: {color: \"#0e7490\", borderRadius: 3}}],\n};\n\n// ─── Needs attention today ───────────────────────────────────────────────────\n\ntype OverdueWorker = {id: string; name: string; code: string; company: string; daysOverdue: number; due: string};\n\nconst NEEDS_ATTENTION: OverdueWorker[] = [\n\t{\n\t\tid: \"n-1\",\n\t\tname: \"NURUZZAMAN LATE TAMIZUDDIN\",\n\t\tcode: \"2243476054\",\n\t\tcompany: \"TR-SFEC\",\n\t\tdaysOverdue: 548,\n\t\tdue: \"19 Jan 2025\",\n\t},\n\t{\n\t\tid: \"n-2\",\n\t\tname: \"SHAHZAD AHMED MUHAMMAD ISHAQ\",\n\t\tcode: \"2464460803\",\n\t\tcompany: \"TR-SFEC\",\n\t\tdaysOverdue: 533,\n\t\tdue: \"03 Feb 2025\",\n\t},\n\t{\n\t\tid: \"n-3\",\n\t\tname: \"NAVEED AHMAD MUHAMMAD BASHIR\",\n\t\tcode: \"2205134980\",\n\t\tcompany: \"TR\",\n\t\tdaysOverdue: 508,\n\t\tdue: \"28 Feb 2025\",\n\t},\n\t{id: \"n-4\", name: \"SUJON MIA\", code: \"2545882736\", company: \"TR-ELECO\", daysOverdue: 496, due: \"12 Mar 2025\"},\n\t{\n\t\tid: \"n-5\",\n\t\tname: \"MARK FERNANDO AROMIN BAUTISTA\",\n\t\tcode: \"2472673504\",\n\t\tcompany: \"TR\",\n\t\tdaysOverdue: 493,\n\t\tdue: \"15 Mar 2025\",\n\t},\n];\n\nfunction NeedsAttention() {\n\treturn (\n\t\t<Card className=\"wwc:p-6\">\n\t\t\t<SectionHeader\n\t\t\t\ttitle=\"Needs attention today\"\n\t\t\t\tdescription=\"567 overdue · sorted by urgency\"\n\t\t\t\tsize=\"sm\"\n\t\t\t\tactions={\n\t\t\t\t\t<Button variant=\"link\">\n\t\t\t\t\t\tView all\n\t\t\t\t\t\t<ArrowRight className=\"wwc:h-4 wwc:w-4\" />\n\t\t\t\t\t</Button>\n\t\t\t\t}\n\t\t\t/>\n\n\t\t\t<AttentionList>\n\t\t\t\t{NEEDS_ATTENTION.map((worker) => (\n\t\t\t\t\t<AttentionListItem\n\t\t\t\t\t\tkey={worker.id}\n\t\t\t\t\t\ticon={<TriangleAlert className=\"wwc:h-4 wwc:w-4\" />}\n\t\t\t\t\t\ttitle={worker.name}\n\t\t\t\t\t\tsubtitle={`${worker.code} · ${worker.company}`}\n\t\t\t\t\t\tvalue={`${worker.daysOverdue} days overdue`}\n\t\t\t\t\t\tvalueCaption={`Due: ${worker.due}`}\n\t\t\t\t\t\taction={<Button variant=\"link\">History</Button>}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t</AttentionList>\n\t\t</Card>\n\t);\n}\n\n/** Section heading above a band of tiles. */\nfunction OverviewSection({title, children}: {title: string; children: React.ReactNode}) {\n\treturn (\n\t\t<section>\n\t\t\t<SectionHeader title={title} size=\"sm\" className=\"wwc:mb-3\" />\n\t\t\t{children}\n\t\t</section>\n\t);\n}\n\n/** Overview — KPI bands, the site health score, visit analytics, and the overdue worklist. */\nfunction ClinicOverview() {\n\treturn (\n\t\t<div className=\"wwc:min-h-0 wwc:flex-1 wwc:overflow-auto\">\n\t\t\t<div className=\"wwc:flex wwc:w-full wwc:flex-col wwc:gap-6 wwc:p-6\">\n\t\t\t\t<OverviewSection title=\"People right now\">\n\t\t\t\t\t<div className=\"wwc:grid wwc:grid-cols-4 wwc:gap-4\">\n\t\t\t\t\t\t{PEOPLE_KPIS.map((kpi) => (\n\t\t\t\t\t\t\t<MetricCard\n\t\t\t\t\t\t\t\tkey={kpi.title}\n\t\t\t\t\t\t\t\ttitle={kpi.title}\n\t\t\t\t\t\t\t\tvalue={kpi.value}\n\t\t\t\t\t\t\t\tstatus={kpi.status}\n\t\t\t\t\t\t\t\ticon={kpi.icon}\n\t\t\t\t\t\t\t\ttrend={kpi.trend}\n\t\t\t\t\t\t\t\ttrendLabel={kpi.trendLabel}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t</OverviewSection>\n\n\t\t\t\t<OverviewSection title=\"Activity\">\n\t\t\t\t\t<div className=\"wwc:grid wwc:grid-cols-3 wwc:gap-4\">\n\t\t\t\t\t\t{ACTIVITY_KPIS.map((kpi) => (\n\t\t\t\t\t\t\t<MetricCard\n\t\t\t\t\t\t\t\tkey={kpi.title}\n\t\t\t\t\t\t\t\ttitle={kpi.title}\n\t\t\t\t\t\t\t\tvalue={kpi.value}\n\t\t\t\t\t\t\t\tstatus={kpi.status}\n\t\t\t\t\t\t\t\ticon={kpi.icon}\n\t\t\t\t\t\t\t\ttrend={kpi.trend}\n\t\t\t\t\t\t\t\ttrendLabel={kpi.trendLabel}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t</OverviewSection>\n\n\t\t\t\t<SiteHealthScore />\n\n\t\t\t\t<OverviewSection title=\"Visit Analytics\">\n\t\t\t\t\t<div className=\"wwc:flex wwc:flex-col wwc:gap-4\">\n\t\t\t\t\t\t<div className=\"wwc:grid wwc:grid-cols-1 wwc:gap-4 wwc:lg:grid-cols-3\">\n\t\t\t\t\t\t\t<TrendChart\n\t\t\t\t\t\t\t\tclassName=\"wwc:lg:col-span-2\"\n\t\t\t\t\t\t\t\ttitle=\"Visit Volume\"\n\t\t\t\t\t\t\t\theader={<p className=\"wwc:text-xs wwc:text-muted-foreground\">Last 30 days</p>}\n\t\t\t\t\t\t\t\toption={visitVolumeOption}\n\t\t\t\t\t\t\t\theight={260}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TrendChart\n\t\t\t\t\t\t\t\ttitle=\"Fitness Distribution\"\n\t\t\t\t\t\t\t\theader={<p className=\"wwc:text-xs wwc:text-muted-foreground\">Active workers by current status</p>}\n\t\t\t\t\t\t\t\toption={fitnessDistributionOption}\n\t\t\t\t\t\t\t\theight={260}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div className=\"wwc:grid wwc:grid-cols-1 wwc:gap-4 wwc:lg:grid-cols-3\">\n\t\t\t\t\t\t\t<TrendChart\n\t\t\t\t\t\t\t\ttitle=\"Overdue Workers\"\n\t\t\t\t\t\t\t\theader={<p className=\"wwc:text-xs wwc:text-muted-foreground\">30-day trend</p>}\n\t\t\t\t\t\t\t\toption={overdueTrendOption}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TrendChart\n\t\t\t\t\t\t\t\ttitle=\"Compliance Rate\"\n\t\t\t\t\t\t\t\theader={<p className=\"wwc:text-xs wwc:text-muted-foreground\">30-day trend</p>}\n\t\t\t\t\t\t\t\toption={complianceRateOption}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TrendChart\n\t\t\t\t\t\t\t\ttitle=\"Visits by Clinic\"\n\t\t\t\t\t\t\t\theader={<p className=\"wwc:text-xs wwc:text-muted-foreground\">Active clinics</p>}\n\t\t\t\t\t\t\t\toption={visitsByClinicOption}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div className=\"wwc:grid wwc:grid-cols-1 wwc:gap-4 wwc:lg:grid-cols-2\">\n\t\t\t\t\t\t\t<TrendChart\n\t\t\t\t\t\t\t\ttitle=\"Peak Visit Hours\"\n\t\t\t\t\t\t\t\theader={<p className=\"wwc:text-xs wwc:text-muted-foreground\">Distribution across working hours</p>}\n\t\t\t\t\t\t\t\toption={peakVisitHoursOption}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TrendChart\n\t\t\t\t\t\t\t\ttitle=\"Visit Reasons\"\n\t\t\t\t\t\t\t\theader={<p className=\"wwc:text-xs wwc:text-muted-foreground\">Share of visits (%)</p>}\n\t\t\t\t\t\t\t\toption={visitReasonsOption}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</OverviewSection>\n\n\t\t\t\t<NeedsAttention />\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\n// ─── Settings shared chrome ──────────────────────────────────────────────────\n\n/**\n * The shared save/discard footer, shown only while a pane is dirty. Rendered as a sibling of the\n * padded content container — FormActionBar owns its own full-bleed background, so it must not sit\n * inside the padded div.\n */\nfunction SettingsActionBar({\n\tchangeCount,\n\tonDiscard,\n\tonSave,\n}: {\n\tchangeCount: number;\n\tonDiscard: () => void;\n\tonSave: () => void;\n}) {\n\tif (changeCount === 0) return null;\n\treturn (\n\t\t<FormActionBar\n\t\t\tmaxWidth=\"1000px\"\n\t\t\t// mt-auto pins the bar to the bottom of the pane; these panes are short enough not to\n\t\t\t// overflow, so sticky alone would leave it floating under the last row.\n\t\t\tclassName=\"wwc:mt-auto\"\n\t\t\tstatus={\n\t\t\t\t<>\n\t\t\t\t\t<span className=\"wwc:font-medium wwc:text-foreground\">{changeCount}</span> unsaved change\n\t\t\t\t\t{changeCount === 1 ? \"\" : \"s\"}\n\t\t\t\t</>\n\t\t\t}\n\t\t>\n\t\t\t<Button variant=\"ghost\" size=\"sm\" onClick={onDiscard}>\n\t\t\t\tDiscard\n\t\t\t</Button>\n\t\t\t<Button size=\"sm\" onClick={onSave}>\n\t\t\t\t<Save className=\"wwc:h-4 wwc:w-4\" />\n\t\t\t\tSave changes\n\t\t\t</Button>\n\t\t</FormActionBar>\n\t);\n}\n\n// ─── Settings › Visit Frequency ──────────────────────────────────────────────\n\nconst INTERVAL_OPTIONS = [1, 2, 3, 6, 12];\n\nconst intervalLabel = (months: number) => (months === 1 ? \"Every month\" : `Every ${months} months`);\n\n/** Project default routine-check interval. Rules and per-worker overrides take priority over it. */\nfunction VisitFrequencySettings() {\n\tconst [saved, setSaved] = useState(6);\n\tconst [draft, setDraft] = useState(6);\n\n\treturn (\n\t\t<>\n\t\t\t<div className=\"wwc:mx-auto wwc:w-full wwc:max-w-[1000px] wwc:p-6\">\n\t\t\t\t<SectionHeader\n\t\t\t\t\ttitle=\"Project Default Frequency\"\n\t\t\t\t\tdescription=\"Workers without a matching rule or manual override follow this schedule. Rules and per-worker overrides take priority.\"\n\t\t\t\t/>\n\t\t\t\t<Card className=\"wwc:p-6\">\n\t\t\t\t\t<Field className=\"wwc:max-w-sm\">\n\t\t\t\t\t\t<FieldLabel htmlFor=\"routine-check-interval\">Routine Check Interval</FieldLabel>\n\t\t\t\t\t\t<Select value={String(draft)} onValueChange={(value) => setDraft(Number(value))}>\n\t\t\t\t\t\t\t<SelectTrigger id=\"routine-check-interval\">\n\t\t\t\t\t\t\t\t<SelectValue />\n\t\t\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t\t\t{INTERVAL_OPTIONS.map((months) => (\n\t\t\t\t\t\t\t\t\t<SelectItem key={months} value={String(months)}>\n\t\t\t\t\t\t\t\t\t\t{intervalLabel(months)}\n\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</SelectContent>\n\t\t\t\t\t\t</Select>\n\t\t\t\t\t</Field>\n\t\t\t\t</Card>\n\t\t\t</div>\n\n\t\t\t<SettingsActionBar\n\t\t\t\tchangeCount={draft === saved ? 0 : 1}\n\t\t\t\tonDiscard={() => setDraft(saved)}\n\t\t\t\tonSave={() => setSaved(draft)}\n\t\t\t/>\n\t\t</>\n\t);\n}\n\n// ─── Settings › Age-Based Rules ──────────────────────────────────────────────\n\ntype AgeRule = {\n\tid: string;\n\toperator: \"gte\" | \"lte\";\n\tage: number;\n\tmonths: number;\n\t/** How many workers currently match this rule — computed server-side in the real app. */\n\taffected: number;\n};\n\nconst AGE_OPERATORS: {value: AgeRule[\"operator\"]; label: string}[] = [\n\t{value: \"gte\", label: \"Age ≥\"},\n\t{value: \"lte\", label: \"Age ≤\"},\n];\n\nconst INITIAL_AGE_RULES: AgeRule[] = [{id: \"rule-1\", operator: \"gte\", age: 40, months: 3, affected: 0}];\n\nconst ruleKey = (rule: AgeRule) => `${rule.operator}:${rule.age}:${rule.months}`;\n\n/** Ordered age rules — priority is row order, so the first match wins. Manual overrides beat all. */\nfunction AgeRulesSettings() {\n\tconst [saved, setSaved] = useState<AgeRule[]>(INITIAL_AGE_RULES);\n\tconst [draft, setDraft] = useState<AgeRule[]>(INITIAL_AGE_RULES);\n\t// Suffix for generated ids; Date.now()/random would break screenshot determinism.\n\tconst [nextId, setNextId] = useState(INITIAL_AGE_RULES.length + 1);\n\n\t// A dirty row, an added row, or a removed row each count as one change.\n\tconst changeCount = useMemo(() => {\n\t\tconst savedKeys = saved.map(ruleKey);\n\t\tconst draftKeys = draft.map(ruleKey);\n\t\tconst changed = draftKeys.filter((key, index) => savedKeys[index] !== key).length;\n\t\treturn changed + Math.abs(savedKeys.length - draftKeys.length) - Math.max(0, draftKeys.length - savedKeys.length);\n\t}, [saved, draft]);\n\n\tconst update = (id: string, patch: Partial<AgeRule>) =>\n\t\tsetDraft((prev) => prev.map((rule) => (rule.id === id ? {...rule, ...patch} : rule)));\n\n\tconst move = (index: number, direction: -1 | 1) =>\n\t\tsetDraft((prev) => {\n\t\t\tconst next = [...prev];\n\t\t\tconst target = index + direction;\n\t\t\tif (target < 0 || target >= next.length) return prev;\n\t\t\t[next[index], next[target]] = [next[target], next[index]];\n\t\t\treturn next;\n\t\t});\n\n\tconst addRule = () => {\n\t\tsetDraft((prev) => [...prev, {id: `rule-${nextId}`, operator: \"gte\", age: 50, months: 6, affected: 0}]);\n\t\tsetNextId((n) => n + 1);\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<div className=\"wwc:mx-auto wwc:w-full wwc:max-w-[1000px] wwc:p-6\">\n\t\t\t\t<SectionHeader\n\t\t\t\t\ttitle=\"Age-Based Rules\"\n\t\t\t\t\tdescription=\"Rule priority determines which rule wins when a worker matches multiple. Manual overrides always win.\"\n\t\t\t\t/>\n\t\t\t\t<Card className=\"wwc:p-6\">\n\t\t\t\t\t<RuleList onAdd={addRule} addLabel=\"Add Rule\">\n\t\t\t\t\t\t{draft.map((rule, index) => (\n\t\t\t\t\t\t\t<RuleRow\n\t\t\t\t\t\t\t\tkey={rule.id}\n\t\t\t\t\t\t\t\tmeta={<Badge variant=\"infoSoft\">{rule.affected} affected</Badge>}\n\t\t\t\t\t\t\t\tdisableMoveUp={index === 0}\n\t\t\t\t\t\t\t\tdisableMoveDown={index === draft.length - 1}\n\t\t\t\t\t\t\t\tonMoveUp={() => move(index, -1)}\n\t\t\t\t\t\t\t\tonMoveDown={() => move(index, 1)}\n\t\t\t\t\t\t\t\tonDelete={() => setDraft((prev) => prev.filter((r) => r.id !== rule.id))}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Select\n\t\t\t\t\t\t\t\t\tvalue={rule.operator}\n\t\t\t\t\t\t\t\t\tonValueChange={(value) => update(rule.id, {operator: value as AgeRule[\"operator\"]})}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<SelectTrigger className=\"wwc:w-32\" aria-label=\"Age comparison\">\n\t\t\t\t\t\t\t\t\t\t<SelectValue />\n\t\t\t\t\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t\t\t\t\t{AGE_OPERATORS.map((option) => (\n\t\t\t\t\t\t\t\t\t\t\t<SelectItem key={option.value} value={option.value}>\n\t\t\t\t\t\t\t\t\t\t\t\t{option.label}\n\t\t\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t</SelectContent>\n\t\t\t\t\t\t\t\t</Select>\n\n\t\t\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\t\t\taria-label=\"Age threshold\"\n\t\t\t\t\t\t\t\t\tvalue={rule.age}\n\t\t\t\t\t\t\t\t\tonChange={(e) => update(rule.id, {age: Number(e.target.value)})}\n\t\t\t\t\t\t\t\t\tclassName=\"wwc:w-24\"\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<span className=\"wwc:shrink-0 wwc:text-sm wwc:text-muted-foreground\">→ every</span>\n\n\t\t\t\t\t\t\t\t<Select value={String(rule.months)} onValueChange={(value) => update(rule.id, {months: Number(value)})}>\n\t\t\t\t\t\t\t\t\t<SelectTrigger className=\"wwc:w-24\" aria-label=\"Interval in months\">\n\t\t\t\t\t\t\t\t\t\t<SelectValue />\n\t\t\t\t\t\t\t\t\t</SelectTrigger>\n\t\t\t\t\t\t\t\t\t<SelectContent>\n\t\t\t\t\t\t\t\t\t\t{INTERVAL_OPTIONS.map((months) => (\n\t\t\t\t\t\t\t\t\t\t\t<SelectItem key={months} value={String(months)}>\n\t\t\t\t\t\t\t\t\t\t\t\t{months}\n\t\t\t\t\t\t\t\t\t\t\t</SelectItem>\n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t</SelectContent>\n\t\t\t\t\t\t\t\t</Select>\n\n\t\t\t\t\t\t\t\t<span className=\"wwc:shrink-0 wwc:text-sm\">months</span>\n\t\t\t\t\t\t\t</RuleRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</RuleList>\n\t\t\t\t</Card>\n\t\t\t</div>\n\n\t\t\t<SettingsActionBar changeCount={changeCount} onDiscard={() => setDraft(saved)} onSave={() => setSaved(draft)} />\n\t\t</>\n\t);\n}\n\n// ─── Settings › Clinics ──────────────────────────────────────────────────────\n\ntype SiteClinic = {id: string; name: string; isDefault?: boolean; status: \"active\" | \"archived\"};\n\nconst SITE_CLINICS: SiteClinic[] = [\n\t{id: \"c-1\", name: \"Default Clinic\", isDefault: true, status: \"active\"},\n\t{id: \"c-2\", name: \"DSCO-TCF CLINIC\", status: \"active\"},\n\t{id: \"c-3\", name: \"MAH-Pioneer Camp\", status: \"active\"},\n\t{id: \"c-4\", name: \"MAH-SP Clinic\", status: \"active\"},\n\t{id: \"c-5\", name: \"NGMSA-TCF CLINIC\", status: \"active\"},\n\t{id: \"c-6\", name: \"SH-TCF Clinic\", status: \"active\"},\n\t{id: \"c-7\", name: \"TR-TCF CLINIC\", status: \"active\"},\n\t{id: \"c-8\", name: \"ZOMCO-SAPMT Camp Clinic\", status: \"active\"},\n];\n\nconst CLINIC_COLUMNS: ColumnDef<SiteClinic>[] = [\n\t{\n\t\taccessorKey: \"name\",\n\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Name\" />,\n\t\tcell: ({row}) => (\n\t\t\t<span className=\"wwc:flex wwc:items-center wwc:gap-2\">\n\t\t\t\t<span className=\"wwc:font-medium\">{row.original.name}</span>\n\t\t\t\t{row.original.isDefault && (\n\t\t\t\t\t<Badge variant=\"outline\" className=\"wwc:h-5 wwc:px-1.5 wwc:text-[10px]\">\n\t\t\t\t\t\tDefault\n\t\t\t\t\t</Badge>\n\t\t\t\t)}\n\t\t\t</span>\n\t\t),\n\t},\n\t{\n\t\taccessorKey: \"status\",\n\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Status\" />,\n\t\tcell: ({row}) => (\n\t\t\t<Badge variant={row.original.status === \"active\" ? \"successSoft\" : \"neutralSoft\"}>\n\t\t\t\t{row.original.status === \"active\" ? \"Active\" : \"Archived\"}\n\t\t\t</Badge>\n\t\t),\n\t},\n\t{\n\t\tid: \"actions\",\n\t\tenableSorting: false,\n\t\tenableHiding: false,\n\t\tmeta: {cellClassName: \"wwc:w-px wwc:whitespace-nowrap wwc:text-right\"},\n\t\tcell: () => (\n\t\t\t<DataTableRowActions\n\t\t\t\tactions={[\n\t\t\t\t\t{label: \"Edit clinic\", icon: <Pencil className=\"wwc:h-4 wwc:w-4\" />},\n\t\t\t\t\t{label: \"Archive clinic\", icon: <Archive className=\"wwc:h-4 wwc:w-4\" />},\n\t\t\t\t]}\n\t\t\t/>\n\t\t),\n\t},\n];\n\n/** Site clinic list. Rows act immediately — there is no draft state, so no save bar. */\nfunction ClinicsSettings() {\n\treturn (\n\t\t<div className=\"wwc:mx-auto wwc:w-full wwc:max-w-[1200px] wwc:p-6\">\n\t\t\t<SectionHeader title=\"Site Clinics\" description=\"Manage clinic locations available for this site.\" />\n\t\t\t<DataTable\n\t\t\t\tcolumns={CLINIC_COLUMNS}\n\t\t\t\tdata={SITE_CLINICS}\n\t\t\t\tsearchKey=\"name\"\n\t\t\t\tsearchPlaceholder=\"Search clinics…\"\n\t\t\t\trecordLabel=\"clinic\"\n\t\t\t\tpageSize={10}\n\t\t\t\ttoolbarExtra={\n\t\t\t\t\t<AddClinicLocationDialog\n\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t<Button>\n\t\t\t\t\t\t\t\t<Plus className=\"wwc:h-4 wwc:w-4\" />\n\t\t\t\t\t\t\t\tAdd Clinic\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\n// ─── Settings › Doctors ──────────────────────────────────────────────────────\n\ntype DoctorPermission = {\n\tid: string;\n\tname: string;\n\temail: string;\n\t/** Companies whose workers this doctor can see; the list is truncated in the cell. */\n\tcompanies: string[];\n\tclinics: string[];\n\tupdated: string;\n};\n\nconst DOCTOR_PERMISSIONS: DoctorPermission[] = [\n\t{\n\t\tid: \"d-1\",\n\t\tname: \"MALATESHA HARIJANA\",\n\t\temail: \"Malatesha.Hari@sinohydro.sa\",\n\t\tcompanies: [\"SH-FAC\", \"Sinohydr-Al Quadri\", \"Sinohydro\"],\n\t\tclinics: [\"SH-TCF Clinic\"],\n\t\tupdated: \"12 Jul 2026\",\n\t},\n\t{\n\t\tid: \"d-2\",\n\t\tname: \"NGMSA CLINIC\",\n\t\temail: \"Clinic.RNGL@ngmsa.com\",\n\t\tcompanies: [\"NGMSA\"],\n\t\tclinics: [\"NGMSA-TCF CLINIC\"],\n\t\tupdated: \"13 Jul 2026\",\n\t},\n\t{\n\t\tid: \"d-3\",\n\t\tname: \"RIYASCLINIC\",\n\t\temail: \"riyasclinic@tecnicasreunidas.es\",\n\t\tcompanies: [\"TR\", \"TR- IIT SAUDI\", \"TR-ACTAVO\", ...Array.from({length: 37}, (_, i) => `TR-EXTRA-${i + 1}`)],\n\t\tclinics: [\"TR-TCF CLINIC\"],\n\t\tupdated: \"12 Jul 2026\",\n\t},\n\t{\n\t\tid: \"d-4\",\n\t\tname: \"Yves Uy\",\n\t\temail: \"zriyas@twareat.com\",\n\t\tcompanies: [\n\t\t\t\"Aramco PMT PKG5\",\n\t\t\t\"BQ\",\n\t\t\t\"Moffareh Al Harbi and\",\n\t\t\t...Array.from({length: 7}, (_, i) => `PKG5-${i + 1}`),\n\t\t],\n\t\tclinics: [\"ZOMCO-SAPMT Camp\"],\n\t\tupdated: \"12 Jul 2026\",\n\t},\n];\n\n/** Chip list that shows the first `visible` entries and rolls the rest into a \"+N\" chip. */\nfunction ChipList({items, visible = 3}: {items: string[]; visible?: number}) {\n\tconst overflow = items.length - visible;\n\treturn (\n\t\t<div className=\"wwc:flex wwc:flex-wrap wwc:items-center wwc:gap-1.5\">\n\t\t\t{items.slice(0, visible).map((item) => (\n\t\t\t\t<Badge key={item} variant=\"outline\" className=\"wwc:h-6 wwc:font-normal\">\n\t\t\t\t\t{item}\n\t\t\t\t</Badge>\n\t\t\t))}\n\t\t\t{overflow > 0 && <Badge variant=\"neutralSoft\" className=\"wwc:h-6 wwc:font-normal\">{`+${overflow}`}</Badge>}\n\t\t</div>\n\t);\n}\n\nconst DOCTOR_OPTIONS: AssignDoctorOption[] = DOCTOR_PERMISSIONS.map((doctor) => ({\n\tvalue: doctor.id,\n\tlabel: `${doctor.name} — ${doctor.email}`,\n}));\n\nconst CLINIC_OPTIONS: AssignDoctorOption[] = SITE_CLINICS.map((clinic) => ({value: clinic.id, label: clinic.name}));\n\n// Every company any doctor is already scoped to, deduped — stands in for the org's company list.\nconst DOCTOR_COMPANY_OPTIONS: AssignDoctorOption[] = Array.from(\n\tnew Set(DOCTOR_PERMISSIONS.flatMap((doctor) => doctor.companies)),\n)\n\t.sort((a, b) => a.localeCompare(b))\n\t.map((company) => ({value: company, label: company}));\n\nconst DOCTOR_COLUMNS: ColumnDef<DoctorPermission>[] = [\n\t{\n\t\taccessorKey: \"name\",\n\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Doctor\" />,\n\t\tcell: ({row}) => (\n\t\t\t<div className=\"wwc:flex wwc:items-center wwc:gap-3\">\n\t\t\t\t<Avatar className=\"wwc:h-7 wwc:w-7\">\n\t\t\t\t\t<AvatarFallback className=\"wwc:text-[10px]\">{initials(row.original.name)}</AvatarFallback>\n\t\t\t\t</Avatar>\n\t\t\t\t<div className=\"wwc:min-w-0\">\n\t\t\t\t\t<span className=\"wwc:block wwc:font-medium\">{row.original.name}</span>\n\t\t\t\t\t<span className=\"wwc:text-xs wwc:text-muted-foreground\">{row.original.email}</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t),\n\t},\n\t{\n\t\tid: \"companies\",\n\t\theader: () => <span className=\"wwc:text-xs wwc:font-medium\">Companies</span>,\n\t\tcell: ({row}) => <ChipList items={row.original.companies} />,\n\t},\n\t{\n\t\tid: \"clinics\",\n\t\theader: () => <span className=\"wwc:text-xs wwc:font-medium\">Clinics</span>,\n\t\tcell: ({row}) => <ChipList items={row.original.clinics} visible={2} />,\n\t},\n\t{\n\t\taccessorKey: \"updated\",\n\t\theader: ({column}) => <DataTableColumnHeader column={column} title=\"Updated\" />,\n\t},\n\t{\n\t\tid: \"actions\",\n\t\tenableSorting: false,\n\t\tenableHiding: false,\n\t\tmeta: {cellClassName: \"wwc:w-px wwc:whitespace-nowrap wwc:text-right\"},\n\t\tcell: () => (\n\t\t\t<DataTableRowActions\n\t\t\t\tactions={[\n\t\t\t\t\t{label: \"Edit permissions\", icon: <Pencil className=\"wwc:h-4 wwc:w-4\" />},\n\t\t\t\t\t{label: \"Remove doctor\", icon: <Trash2 className=\"wwc:h-4 wwc:w-4\" />, destructive: true},\n\t\t\t\t]}\n\t\t\t/>\n\t\t),\n\t},\n];\n\n/** Doctor permission list. Rows act immediately — there is no draft state, so no save bar. */\nfunction DoctorsSettings() {\n\treturn (\n\t\t<div className=\"wwc:mx-auto wwc:w-full wwc:max-w-[1200px] wwc:p-6\">\n\t\t\t<SectionHeader\n\t\t\t\ttitle=\"Doctor Permissions\"\n\t\t\t\tdescription=\"Control which companies' workers and which clinics' visitor-visits each doctor can see.\"\n\t\t\t/>\n\t\t\t<DataTable\n\t\t\t\tcolumns={DOCTOR_COLUMNS}\n\t\t\t\tdata={DOCTOR_PERMISSIONS}\n\t\t\t\tsearchKey=\"name\"\n\t\t\t\tsearchPlaceholder=\"Search doctors, companies, clinics…\"\n\t\t\t\trecordLabel=\"doctor\"\n\t\t\t\tpageSize={10}\n\t\t\t\ttoolbarExtra={\n\t\t\t\t\t<AssignDoctorDialog\n\t\t\t\t\t\tdoctors={DOCTOR_OPTIONS}\n\t\t\t\t\t\tcompanies={DOCTOR_COMPANY_OPTIONS}\n\t\t\t\t\t\tclinics={CLINIC_OPTIONS}\n\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t<Button>\n\t\t\t\t\t\t\t\t<Plus className=\"wwc:h-4 wwc:w-4\" />\n\t\t\t\t\t\t\t\tAssign Doctor\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\n/**\n * Clinic occupational-health template. Renders its own app shell and a content area that toggles\n * between the route header (Overview / Worker Fitness tabs + a Settings action) and a Settings\n * sub-surface (SideMenu + content).\n *\n * @deprecated Preview/demo prototype — renders built-in sample data and mock handlers. Not a\n * supported production import: compose your page from the widgets this template uses, wired to your\n * own data (see the CoreClinic template docs in Storybook). Slated for removal from the public API in a\n * future major.\n */\nexport function Clinic() {\n\tconst [mode, setMode] = useState<\"default\" | \"settings\">(\"default\");\n\tconst [activeTab, setActiveTab] = useState<ClinicTabId>(\"overview\");\n\tconst [activeSetting, setActiveSetting] = useState<SettingId>(\"visit-frequency\");\n\n\tconst [detailLabel, setDetailLabel] = useState<string | null>(null);\n\tconst activeSettingLabel = settingLabel(activeSetting);\n\n\t// Ontology settings render the shared admin views; every other setting keeps its own body.\n\tconst ontologyViewId = ONTOLOGY_SETTING_VIEW_IDS[activeSetting];\n\tconst OntologyView = ontologyViewId ? ONTOLOGY_VIEWS[ontologyViewId] : undefined;\n\n\tconst breadcrumb =\n\t\tmode === \"settings\"\n\t\t\t? `Clinic / Settings / ${activeSettingLabel}${detailLabel ? ` / ${detailLabel}` : \"\"}`\n\t\t\t: `Clinic / ${tabLabel(activeTab)}`;\n\n\treturn (\n\t\t<div className=\"wwc:flex wwc:h-full wwc:min-h-0 wwc:bg-background wwc:text-foreground\">\n\t\t\t<CoreAppSidebar\n\t\t\t\tviewLevel=\"org\"\n\t\t\t\torgGroups={CLINIC_GROUPS}\n\t\t\t\tactiveItemId=\"clinic\"\n\t\t\t\tshowSearch={false}\n\t\t\t\tshowNotifications={false}\n\t\t\t/>\n\n\t\t\t<div className=\"wwc:relative wwc:flex wwc:min-w-0 wwc:flex-1 wwc:flex-col\">\n\t\t\t\t<CoreAppTopBar activeLabel={breadcrumb} showProjectSwitcher={false} showNotifications notificationCount={2} />\n\n\t\t\t\t<main className=\"wwc:relative wwc:flex wwc:min-h-0 wwc:flex-1 wwc:flex-col wwc:overflow-hidden\">\n\t\t\t\t\t{mode === \"default\" ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<PageContentHeader\n\t\t\t\t\t\t\t\tvariant=\"navigation\"\n\t\t\t\t\t\t\t\ttitle=\"Clinic\"\n\t\t\t\t\t\t\t\ttabs={TABS}\n\t\t\t\t\t\t\t\tactiveTab={activeTab}\n\t\t\t\t\t\t\t\tonTabChange={(tab) => setActiveTab(tab as ClinicTabId)}\n\t\t\t\t\t\t\t\tactions={[\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tid: \"settings\",\n\t\t\t\t\t\t\t\t\t\tlabel: \"Settings\",\n\t\t\t\t\t\t\t\t\t\ticon: <Settings className=\"wwc:h-4 wwc:w-4\" />,\n\t\t\t\t\t\t\t\t\t\tpresentation: \"icon\",\n\t\t\t\t\t\t\t\t\t\tonSelect: () => setMode(\"settings\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t{activeTab === \"worker-fitness\" ? <WorkerFitnessView /> : <ClinicOverview />}\n\t\t\t\t\t\t</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div className=\"wwc:flex wwc:min-h-0 wwc:flex-1 wwc:flex-col wwc:md:flex-row\">\n\t\t\t\t\t\t\t<SideMenu\n\t\t\t\t\t\t\t\ttitle=\"Settings\"\n\t\t\t\t\t\t\t\tonBack={() => setMode(\"default\")}\n\t\t\t\t\t\t\t\tbackLabel=\"Back to Clinic\"\n\t\t\t\t\t\t\t\tshowSearch={false}\n\t\t\t\t\t\t\t\tgroups={SETTINGS_GROUPS}\n\t\t\t\t\t\t\t\tactiveItemId={activeSetting}\n\t\t\t\t\t\t\t\tonItemSelect={(id) => setActiveSetting(id as SettingId)}\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t{/* Ontology views own their scrolling (the table body scrolls, the header band does not), so\n\t\t\t\t\t\t\t this column must not scroll as a whole — hence overflow-hidden on that branch only. */}\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\"wwc:flex wwc:min-h-0 wwc:flex-1 wwc:flex-col\",\n\t\t\t\t\t\t\t\t\tOntologyView ? \"wwc:overflow-hidden\" : \"wwc:overflow-auto\",\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{OntologyView ? (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<PageContentHeader\n\t\t\t\t\t\t\t\t\t\t\tvariant=\"title-actions\"\n\t\t\t\t\t\t\t\t\t\t\tdensity=\"compact\"\n\t\t\t\t\t\t\t\t\t\t\ttitle={activeSettingLabel}\n\t\t\t\t\t\t\t\t\t\t\tdescription={ONTOLOGY_DESCRIPTION[activeSetting]}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<OntologyView scope={CLINIC_ONTOLOGY_SCOPE} onDetailChange={setDetailLabel} />\n\t\t\t\t\t\t\t\t\t\t{/* SharedPropertiesView fires undoable toasts and needs a host for them. */}\n\t\t\t\t\t\t\t\t\t\t<Toaster position=\"top-right\" />\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t) : activeSetting === \"visit-frequency\" ? (\n\t\t\t\t\t\t\t\t\t<VisitFrequencySettings />\n\t\t\t\t\t\t\t\t) : activeSetting === \"age-rules\" ? (\n\t\t\t\t\t\t\t\t\t<AgeRulesSettings />\n\t\t\t\t\t\t\t\t) : activeSetting === \"clinics\" ? (\n\t\t\t\t\t\t\t\t\t<ClinicsSettings />\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<DoctorsSettings />\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</main>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { DashboardWidget } from "../types/chat.mjs";
2
+ import { OrgTab, Organization, Project, ProjectTab } from "../types.mjs";
3
+ //#region src/pages/core-content-area.d.ts
4
+ interface ContentAreaProps {
5
+ selectedOrg: Organization | null;
6
+ selectedProject: Project | null;
7
+ activeOrgTab: OrgTab;
8
+ activeProjectTab: ProjectTab;
9
+ isProjectLevel: boolean;
10
+ onOpenProject?: (project: Project) => void;
11
+ addedWidgets?: DashboardWidget[];
12
+ }
13
+ export declare function ContentArea({ selectedOrg, selectedProject, activeOrgTab, activeProjectTab, isProjectLevel, onOpenProject, addedWidgets }: ContentAreaProps): import("react/jsx-runtime").JSX.Element;
14
+ //#endregion
15
+ //# sourceMappingURL=core-content-area.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-content-area.d.mts","names":[],"sources":["../../src/pages/core-content-area.tsx"],"mappings":";;;UAcU;EACT,aAAa;EACb,iBAAiB;EACjB,cAAc;EACd,kBAAkB;EAClB;EACA,iBAAiB,SAAS;EAC1B,eAAe;;wBAGA,cACf,aACA,iBACA,cACA,kBACA,gBACA,eACA,gBACE,+CAAgB,IAAA"}
@@ -0,0 +1,192 @@
1
+ import { Skeleton } from "../skeleton.mjs";
2
+ import { OrgAIReport } from "./core-org-ai-report.mjs";
3
+ import { OrgOverview } from "./core-org-overview.mjs";
4
+ import { OrgPerformance } from "./core-org-performance.mjs";
5
+ import { OrgRealityCapture } from "./core-org-reality-capture.mjs";
6
+ import { OrgWorkforceIntelligence } from "./core-org-workforce-intelligence.mjs";
7
+ import { ProjectOverview } from "./core-project-overview.mjs";
8
+ import { ProjectQualityIssues } from "./core-project-quality-issues.mjs";
9
+ import { ProjectRealityCapture } from "./core-project-reality-capture.mjs";
10
+ import { ProjectScheduleCost } from "./core-project-schedule-cost.mjs";
11
+ import { ProjectWorkforceSafety } from "./core-project-workforce-safety.mjs";
12
+ import { jsx, jsxs } from "react/jsx-runtime";
13
+ //#region src/pages/core-content-area.tsx
14
+ function ContentArea({ selectedOrg, selectedProject, activeOrgTab, activeProjectTab, isProjectLevel, onOpenProject, addedWidgets = [] }) {
15
+ const currentTab = isProjectLevel ? activeProjectTab : activeOrgTab;
16
+ const contextName = isProjectLevel ? selectedProject?.name : selectedOrg?.name;
17
+ const performanceWidgets = addedWidgets.filter((w) => w.targetTab === "performance");
18
+ const workforceWidgets = addedWidgets.filter((w) => w.targetTab === "workforce");
19
+ if (!isProjectLevel && activeOrgTab === "overview" && selectedOrg) return /* @__PURE__ */ jsx("main", {
20
+ className: "wwc:flex-1",
21
+ children: /* @__PURE__ */ jsx(OrgOverview, {
22
+ selectedOrg,
23
+ onOpenProject
24
+ })
25
+ });
26
+ if (!isProjectLevel && activeOrgTab === "performance" && selectedOrg) return /* @__PURE__ */ jsx("main", {
27
+ className: "wwc:flex-1 wwc:flex wwc:flex-col",
28
+ children: /* @__PURE__ */ jsx(OrgPerformance, {
29
+ selectedOrg,
30
+ addedWidgets: performanceWidgets
31
+ })
32
+ });
33
+ if (!isProjectLevel && activeOrgTab === "workforce-intelligence" && selectedOrg) return /* @__PURE__ */ jsx("main", {
34
+ className: "wwc:flex-1 wwc:flex wwc:flex-col",
35
+ children: /* @__PURE__ */ jsx(OrgWorkforceIntelligence, {
36
+ selectedOrg,
37
+ addedWidgets: workforceWidgets
38
+ })
39
+ });
40
+ if (!isProjectLevel && activeOrgTab === "reality-capture" && selectedOrg) return /* @__PURE__ */ jsx("main", {
41
+ className: "wwc:flex-1 wwc:flex wwc:flex-col",
42
+ children: /* @__PURE__ */ jsx(OrgRealityCapture, { selectedOrg })
43
+ });
44
+ if (!isProjectLevel && activeOrgTab === "ai-report" && selectedOrg) return /* @__PURE__ */ jsx("main", {
45
+ className: "wwc:flex-1 wwc:flex wwc:flex-col",
46
+ children: /* @__PURE__ */ jsx(OrgAIReport, { selectedOrg })
47
+ });
48
+ if (isProjectLevel && selectedProject) {
49
+ if (activeProjectTab === "overview") return /* @__PURE__ */ jsx("main", {
50
+ className: "wwc:flex-1 wwc:flex wwc:flex-col",
51
+ children: /* @__PURE__ */ jsx(ProjectOverview, { project: selectedProject })
52
+ });
53
+ if (activeProjectTab === "schedule-cost") return /* @__PURE__ */ jsx("main", {
54
+ className: "wwc:flex-1 wwc:flex wwc:flex-col",
55
+ children: /* @__PURE__ */ jsx(ProjectScheduleCost, { project: selectedProject })
56
+ });
57
+ if (activeProjectTab === "workforce-safety") return /* @__PURE__ */ jsx("main", {
58
+ className: "wwc:flex-1 wwc:flex wwc:flex-col",
59
+ children: /* @__PURE__ */ jsx(ProjectWorkforceSafety, { project: selectedProject })
60
+ });
61
+ if (activeProjectTab === "quality-issues") return /* @__PURE__ */ jsx("main", {
62
+ className: "wwc:flex-1 wwc:flex wwc:flex-col",
63
+ children: /* @__PURE__ */ jsx(ProjectQualityIssues, { project: selectedProject })
64
+ });
65
+ if (activeProjectTab === "reality-capture") return /* @__PURE__ */ jsx("main", {
66
+ className: "wwc:flex-1 wwc:flex wwc:flex-col",
67
+ children: /* @__PURE__ */ jsx(ProjectRealityCapture, { project: selectedProject })
68
+ });
69
+ }
70
+ return /* @__PURE__ */ jsx("main", {
71
+ className: "wwc:flex-1 wwc:p-6",
72
+ children: /* @__PURE__ */ jsxs("div", {
73
+ className: "wwc:mx-auto wwc:max-w-6xl wwc:space-y-6",
74
+ children: [
75
+ /* @__PURE__ */ jsxs("div", {
76
+ className: "wwc:space-y-1",
77
+ children: [/* @__PURE__ */ jsx("h1", {
78
+ className: "wwc:text-2xl wwc:font-semibold wwc:capitalize",
79
+ children: currentTab.replace("-", " ")
80
+ }), /* @__PURE__ */ jsxs("p", {
81
+ className: "wwc:text-sm wwc:text-muted-foreground",
82
+ children: [
83
+ isProjectLevel ? "Project" : "Organization",
84
+ ": ",
85
+ contextName
86
+ ]
87
+ })]
88
+ }),
89
+ /* @__PURE__ */ jsx("div", {
90
+ className: "wwc:grid wwc:gap-4 wwc:md:grid-cols-2 wwc:lg:grid-cols-3",
91
+ children: [
92
+ 1,
93
+ 2,
94
+ 3
95
+ ].map((i) => /* @__PURE__ */ jsx("div", {
96
+ className: "wwc:rounded-lg wwc:border wwc:bg-card wwc:p-6 wwc:shadow-sm",
97
+ children: /* @__PURE__ */ jsxs("div", {
98
+ className: "wwc:space-y-3",
99
+ children: [
100
+ /* @__PURE__ */ jsx(Skeleton, { className: "wwc:h-4 wwc:w-1/2" }),
101
+ /* @__PURE__ */ jsx(Skeleton, { className: "wwc:h-8 wwc:w-3/4" }),
102
+ /* @__PURE__ */ jsx(Skeleton, { className: "wwc:h-4 wwc:w-full" }),
103
+ /* @__PURE__ */ jsx(Skeleton, { className: "wwc:h-4 wwc:w-2/3" })
104
+ ]
105
+ })
106
+ }, i))
107
+ }),
108
+ /* @__PURE__ */ jsxs("div", {
109
+ className: "wwc:rounded-lg wwc:border wwc:bg-muted/50 wwc:p-6",
110
+ children: [/* @__PURE__ */ jsx("h2", {
111
+ className: "wwc:mb-2 wwc:font-medium",
112
+ children: "Current Navigation State"
113
+ }), /* @__PURE__ */ jsxs("div", {
114
+ className: "wwc:space-y-1 wwc:text-sm wwc:text-muted-foreground",
115
+ children: [
116
+ /* @__PURE__ */ jsxs("p", { children: [
117
+ /* @__PURE__ */ jsx("span", {
118
+ className: "wwc:font-medium wwc:text-foreground",
119
+ children: "Organization:"
120
+ }),
121
+ " ",
122
+ selectedOrg?.name,
123
+ " (",
124
+ selectedOrg?.plan,
125
+ ")"
126
+ ] }),
127
+ /* @__PURE__ */ jsxs("p", { children: [
128
+ /* @__PURE__ */ jsx("span", {
129
+ className: "wwc:font-medium wwc:text-foreground",
130
+ children: "Project:"
131
+ }),
132
+ " ",
133
+ selectedProject?.name || "None selected"
134
+ ] }),
135
+ /* @__PURE__ */ jsxs("p", { children: [
136
+ /* @__PURE__ */ jsx("span", {
137
+ className: "wwc:font-medium wwc:text-foreground",
138
+ children: "Context:"
139
+ }),
140
+ " ",
141
+ isProjectLevel ? "Project Level" : "Organization Level"
142
+ ] }),
143
+ /* @__PURE__ */ jsxs("p", { children: [
144
+ /* @__PURE__ */ jsx("span", {
145
+ className: "wwc:font-medium wwc:text-foreground",
146
+ children: "Active Tab:"
147
+ }),
148
+ " ",
149
+ currentTab
150
+ ] })
151
+ ]
152
+ })]
153
+ }),
154
+ /* @__PURE__ */ jsxs("div", {
155
+ className: "wwc:rounded-lg wwc:border wwc:p-6",
156
+ children: [/* @__PURE__ */ jsx("h2", {
157
+ className: "wwc:mb-3 wwc:font-medium",
158
+ children: "How to Use"
159
+ }), /* @__PURE__ */ jsxs("ul", {
160
+ className: "wwc:space-y-2 wwc:text-sm wwc:text-muted-foreground",
161
+ children: [
162
+ /* @__PURE__ */ jsxs("li", { children: [/* @__PURE__ */ jsx("span", {
163
+ className: "wwc:font-medium wwc:text-foreground",
164
+ children: "1."
165
+ }), " Click the organization name in the header to open the switcher"] }),
166
+ /* @__PURE__ */ jsxs("li", { children: [/* @__PURE__ */ jsx("span", {
167
+ className: "wwc:font-medium wwc:text-foreground",
168
+ children: "2."
169
+ }), " Select a organization from the left column"] }),
170
+ /* @__PURE__ */ jsxs("li", { children: [/* @__PURE__ */ jsx("span", {
171
+ className: "wwc:font-medium wwc:text-foreground",
172
+ children: "3."
173
+ }), " Select a project from the right column to switch to project-level view"] }),
174
+ /* @__PURE__ */ jsxs("li", { children: [/* @__PURE__ */ jsx("span", {
175
+ className: "wwc:font-medium wwc:text-foreground",
176
+ children: "4."
177
+ }), " Notice how the tabs change based on your selection"] }),
178
+ /* @__PURE__ */ jsxs("li", { children: [/* @__PURE__ */ jsx("span", {
179
+ className: "wwc:font-medium wwc:text-foreground",
180
+ children: "5."
181
+ }), " Click the project name to go back to organization level"] })
182
+ ]
183
+ })]
184
+ })
185
+ ]
186
+ })
187
+ });
188
+ }
189
+ //#endregion
190
+ export { ContentArea };
191
+
192
+ //# sourceMappingURL=core-content-area.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-content-area.mjs","names":[],"sources":["../../src/pages/core-content-area.tsx"],"sourcesContent":["import {Skeleton} from \"../skeleton\";\nimport type {OrgTab, Organization, Project, ProjectTab} from \"../types\";\nimport type {DashboardWidget} from \"../types/chat\";\nimport {OrgAIReport} from \"./core-org-ai-report\";\nimport {OrgOverview} from \"./core-org-overview\";\nimport {OrgPerformance} from \"./core-org-performance\";\nimport {OrgRealityCapture} from \"./core-org-reality-capture\";\nimport {OrgWorkforceIntelligence} from \"./core-org-workforce-intelligence\";\nimport {ProjectOverview} from \"./core-project-overview\";\nimport {ProjectQualityIssues} from \"./core-project-quality-issues\";\nimport {ProjectRealityCapture} from \"./core-project-reality-capture\";\nimport {ProjectScheduleCost} from \"./core-project-schedule-cost\";\nimport {ProjectWorkforceSafety} from \"./core-project-workforce-safety\";\n\ninterface ContentAreaProps {\n\tselectedOrg: Organization | null;\n\tselectedProject: Project | null;\n\tactiveOrgTab: OrgTab;\n\tactiveProjectTab: ProjectTab;\n\tisProjectLevel: boolean;\n\tonOpenProject?: (project: Project) => void;\n\taddedWidgets?: DashboardWidget[];\n}\n\nexport function ContentArea({\n\tselectedOrg,\n\tselectedProject,\n\tactiveOrgTab,\n\tactiveProjectTab,\n\tisProjectLevel,\n\tonOpenProject,\n\taddedWidgets = [],\n}: ContentAreaProps) {\n\tconst currentTab = isProjectLevel ? activeProjectTab : activeOrgTab;\n\tconst contextName = isProjectLevel ? selectedProject?.name : selectedOrg?.name;\n\n\t// Filter widgets by target tab\n\tconst performanceWidgets = addedWidgets.filter((w) => w.targetTab === \"performance\");\n\tconst workforceWidgets = addedWidgets.filter((w) => w.targetTab === \"workforce\");\n\n\t// Show OrgOverview for org-level overview tab\n\tif (!isProjectLevel && activeOrgTab === \"overview\" && selectedOrg) {\n\t\treturn (\n\t\t\t<main className=\"wwc:flex-1\">\n\t\t\t\t<OrgOverview selectedOrg={selectedOrg} onOpenProject={onOpenProject} />\n\t\t\t</main>\n\t\t);\n\t}\n\n\t// Show OrgPerformance for org-level performance tab\n\tif (!isProjectLevel && activeOrgTab === \"performance\" && selectedOrg) {\n\t\treturn (\n\t\t\t<main className=\"wwc:flex-1 wwc:flex wwc:flex-col\">\n\t\t\t\t<OrgPerformance selectedOrg={selectedOrg} addedWidgets={performanceWidgets} />\n\t\t\t</main>\n\t\t);\n\t}\n\n\t// Show OrgWorkforceIntelligence for org-level workforce-intelligence tab\n\tif (!isProjectLevel && activeOrgTab === \"workforce-intelligence\" && selectedOrg) {\n\t\treturn (\n\t\t\t<main className=\"wwc:flex-1 wwc:flex wwc:flex-col\">\n\t\t\t\t<OrgWorkforceIntelligence selectedOrg={selectedOrg} addedWidgets={workforceWidgets} />\n\t\t\t</main>\n\t\t);\n\t}\n\n\t// Show OrgRealityCapture for org-level reality-capture tab\n\tif (!isProjectLevel && activeOrgTab === \"reality-capture\" && selectedOrg) {\n\t\treturn (\n\t\t\t<main className=\"wwc:flex-1 wwc:flex wwc:flex-col\">\n\t\t\t\t<OrgRealityCapture selectedOrg={selectedOrg} />\n\t\t\t</main>\n\t\t);\n\t}\n\n\t// Show OrgAIReport for org-level ai-report tab\n\tif (!isProjectLevel && activeOrgTab === \"ai-report\" && selectedOrg) {\n\t\treturn (\n\t\t\t<main className=\"wwc:flex-1 wwc:flex wwc:flex-col\">\n\t\t\t\t<OrgAIReport selectedOrg={selectedOrg} />\n\t\t\t</main>\n\t\t);\n\t}\n\n\t// Project-level tabs\n\tif (isProjectLevel && selectedProject) {\n\t\t// Project Overview\n\t\tif (activeProjectTab === \"overview\") {\n\t\t\treturn (\n\t\t\t\t<main className=\"wwc:flex-1 wwc:flex wwc:flex-col\">\n\t\t\t\t\t<ProjectOverview project={selectedProject} />\n\t\t\t\t</main>\n\t\t\t);\n\t\t}\n\n\t\t// Schedule & Cost\n\t\tif (activeProjectTab === \"schedule-cost\") {\n\t\t\treturn (\n\t\t\t\t<main className=\"wwc:flex-1 wwc:flex wwc:flex-col\">\n\t\t\t\t\t<ProjectScheduleCost project={selectedProject} />\n\t\t\t\t</main>\n\t\t\t);\n\t\t}\n\n\t\t// Workforce & Safety\n\t\tif (activeProjectTab === \"workforce-safety\") {\n\t\t\treturn (\n\t\t\t\t<main className=\"wwc:flex-1 wwc:flex wwc:flex-col\">\n\t\t\t\t\t<ProjectWorkforceSafety project={selectedProject} />\n\t\t\t\t</main>\n\t\t\t);\n\t\t}\n\n\t\t// Quality & Issues\n\t\tif (activeProjectTab === \"quality-issues\") {\n\t\t\treturn (\n\t\t\t\t<main className=\"wwc:flex-1 wwc:flex wwc:flex-col\">\n\t\t\t\t\t<ProjectQualityIssues project={selectedProject} />\n\t\t\t\t</main>\n\t\t\t);\n\t\t}\n\n\t\t// Reality Capture\n\t\tif (activeProjectTab === \"reality-capture\") {\n\t\t\treturn (\n\t\t\t\t<main className=\"wwc:flex-1 wwc:flex wwc:flex-col\">\n\t\t\t\t\t<ProjectRealityCapture project={selectedProject} />\n\t\t\t\t</main>\n\t\t\t);\n\t\t}\n\t}\n\n\treturn (\n\t\t<main className=\"wwc:flex-1 wwc:p-6\">\n\t\t\t<div className=\"wwc:mx-auto wwc:max-w-6xl wwc:space-y-6\">\n\t\t\t\t{/* Page Title */}\n\t\t\t\t<div className=\"wwc:space-y-1\">\n\t\t\t\t\t<h1 className=\"wwc:text-2xl wwc:font-semibold wwc:capitalize\">{currentTab.replace(\"-\", \" \")}</h1>\n\t\t\t\t\t<p className=\"wwc:text-sm wwc:text-muted-foreground\">\n\t\t\t\t\t\t{isProjectLevel ? \"Project\" : \"Organization\"}: {contextName}\n\t\t\t\t\t</p>\n\t\t\t\t</div>\n\n\t\t\t\t{/* Placeholder Content */}\n\t\t\t\t<div className=\"wwc:grid wwc:gap-4 wwc:md:grid-cols-2 wwc:lg:grid-cols-3\">\n\t\t\t\t\t{[1, 2, 3].map((i) => (\n\t\t\t\t\t\t<div key={i} className=\"wwc:rounded-lg wwc:border wwc:bg-card wwc:p-6 wwc:shadow-sm\">\n\t\t\t\t\t\t\t<div className=\"wwc:space-y-3\">\n\t\t\t\t\t\t\t\t<Skeleton className=\"wwc:h-4 wwc:w-1/2\" />\n\t\t\t\t\t\t\t\t<Skeleton className=\"wwc:h-8 wwc:w-3/4\" />\n\t\t\t\t\t\t\t\t<Skeleton className=\"wwc:h-4 wwc:w-full\" />\n\t\t\t\t\t\t\t\t<Skeleton className=\"wwc:h-4 wwc:w-2/3\" />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t))}\n\t\t\t\t</div>\n\n\t\t\t\t{/* Info Card */}\n\t\t\t\t<div className=\"wwc:rounded-lg wwc:border wwc:bg-muted/50 wwc:p-6\">\n\t\t\t\t\t<h2 className=\"wwc:mb-2 wwc:font-medium\">Current Navigation State</h2>\n\t\t\t\t\t<div className=\"wwc:space-y-1 wwc:text-sm wwc:text-muted-foreground\">\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t<span className=\"wwc:font-medium wwc:text-foreground\">Organization:</span> {selectedOrg?.name} (\n\t\t\t\t\t\t\t{selectedOrg?.plan})\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t<span className=\"wwc:font-medium wwc:text-foreground\">Project:</span>{\" \"}\n\t\t\t\t\t\t\t{selectedProject?.name || \"None selected\"}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t<span className=\"wwc:font-medium wwc:text-foreground\">Context:</span>{\" \"}\n\t\t\t\t\t\t\t{isProjectLevel ? \"Project Level\" : \"Organization Level\"}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t<span className=\"wwc:font-medium wwc:text-foreground\">Active Tab:</span> {currentTab}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t{/* Instructions */}\n\t\t\t\t<div className=\"wwc:rounded-lg wwc:border wwc:p-6\">\n\t\t\t\t\t<h2 className=\"wwc:mb-3 wwc:font-medium\">How to Use</h2>\n\t\t\t\t\t<ul className=\"wwc:space-y-2 wwc:text-sm wwc:text-muted-foreground\">\n\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t<span className=\"wwc:font-medium wwc:text-foreground\">1.</span> Click the organization name in the header\n\t\t\t\t\t\t\tto open the switcher\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t<span className=\"wwc:font-medium wwc:text-foreground\">2.</span> Select a organization from the left column\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t<span className=\"wwc:font-medium wwc:text-foreground\">3.</span> Select a project from the right column to\n\t\t\t\t\t\t\tswitch to project-level view\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t<span className=\"wwc:font-medium wwc:text-foreground\">4.</span> Notice how the tabs change based on your\n\t\t\t\t\t\t\tselection\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t<span className=\"wwc:font-medium wwc:text-foreground\">5.</span> Click the project name to go back to\n\t\t\t\t\t\t\torganization level\n\t\t\t\t\t\t</li>\n\t\t\t\t\t</ul>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</main>\n\t);\n}\n"],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ //#region src/pages/core-core-connect-v3.d.ts
2
+ /**
3
+ * Core Connect V3 template: the merged workspace with its installed apps grouped by project
4
+ * lifecycle stage (Design / Plan / Capture / Pay) instead of a single "Your apps" list, the
5
+ * Marketplace carried inside the Studio group rather than pinned to the shell, the top-bar switcher
6
+ * scoped to organizations instead of projects, and a Files entry at the head of the rail that browses
7
+ * every record in the organization by folder and opens each in the app that owns it.
8
+ *
9
+ * @deprecated Preview/demo prototype — renders built-in sample data and mock handlers. Not a
10
+ * supported production import: compose your page from the widgets this template uses, wired to your
11
+ * own data (see the CoreConnectV3 template docs in Storybook). Slated for removal from the public
12
+ * API in a future major.
13
+ */
14
+ export declare function CoreConnectV3(): import("react/jsx-runtime").JSX.Element;
15
+ //#endregion
16
+ //# sourceMappingURL=core-core-connect-v3.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-core-connect-v3.d.mts","names":[],"sources":["../../src/pages/core-core-connect-v3.tsx"],"mappings":";;;;;;;;;;;;;wBA8CgB,6CAAa,IAAA"}
@@ -0,0 +1,30 @@
1
+ import { CONNECT_STARTER_APPS } from "./app-marketplace-shared.mjs";
2
+ import { WC3Workspace } from "./core-wc3-workspace.mjs";
3
+ import { jsx } from "react/jsx-runtime";
4
+ //#region src/pages/core-core-connect-v3.tsx
5
+ /**
6
+ * Core Connect V3 template: the merged workspace with its installed apps grouped by project
7
+ * lifecycle stage (Design / Plan / Capture / Pay) instead of a single "Your apps" list, the
8
+ * Marketplace carried inside the Studio group rather than pinned to the shell, the top-bar switcher
9
+ * scoped to organizations instead of projects, and a Files entry at the head of the rail that browses
10
+ * every record in the organization by folder and opens each in the app that owns it.
11
+ *
12
+ * @deprecated Preview/demo prototype — renders built-in sample data and mock handlers. Not a
13
+ * supported production import: compose your page from the widgets this template uses, wired to your
14
+ * own data (see the CoreConnectV3 template docs in Storybook). Slated for removal from the public
15
+ * API in a future major.
16
+ */
17
+ function CoreConnectV3() {
18
+ return /* @__PURE__ */ jsx(WC3Workspace, {
19
+ withMarketplace: true,
20
+ appGrouping: "lifecycle",
21
+ marketplacePlacement: "studio",
22
+ switcherScope: "organization",
23
+ showFiles: true,
24
+ preinstalledApps: CONNECT_STARTER_APPS
25
+ });
26
+ }
27
+ //#endregion
28
+ export { CoreConnectV3 };
29
+
30
+ //# sourceMappingURL=core-core-connect-v3.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-core-connect-v3.mjs","names":[],"sources":["../../src/pages/core-core-connect-v3.tsx"],"sourcesContent":["import {CONNECT_STARTER_APPS} from \"./app-marketplace-shared\";\nimport {WC3Workspace} from \"./core-wc3-workspace\";\n\n// Core Connect V3 — V2's single merged app, re-cut around the project lifecycle.\n//\n// V2 listed every installed app under one \"Your apps\" heading and pinned Marketplace at the very\n// bottom of the shell. V3 keeps the same surfaces and the same install lifecycle, and changes only\n// how the rail is organised:\n//\n// Home ← always present; the launcher for the installed apps\n// Design ← the four lifecycle sections, in project order, replacing \"Your apps\". Each\n// Plan carries an icon, so collapsing the sidebar folds the whole section into that\n// Capture one icon with its apps in a flyout behind it. The workspace opens already\n// Pay kitted out; a section hides only if you uninstall everything under it.\n// ───────────────\n// Studio ← Analysis, Processes, Pipelines, Products, Lineage, Ontology, Marketplace\n//\n// Marketplace moves inside Studio: browsing and installing apps is something you do in the studio,\n// not a permanent fixture of the shell. Which stage an app belongs to lives in APP_LIFECYCLE in\n// app-marketplace-shared.tsx, beside the catalogue it describes.\n//\n// The top-bar switcher also moves up a rung: in V3 it picks the ORGANIZATION, not the project. The\n// rail below it is already cut by project lifecycle, so the one thing the shell still has to scope\n// is which company you are working inside; the project is chosen further in.\n//\n// And the project IS chosen further in — in Files, the other thing V3 adds. Everything the workspace\n// holds gets an address in one folder tree rooted at the selected organization: a pipeline, a process,\n// an object type, an action type. Opening a file lands you in the app that owns it, on that record;\n// every one of those apps shows, beside each record it lists, the folder it came from. The tree stores\n// no records of its own — it addresses the ones the other perspectives already render.\n//\n// Like V2 this is a thin alias, not a fork — the whole difference is a handful of props, so all\n// three releases share one implementation and cannot drift.\n\n/**\n * Core Connect V3 template: the merged workspace with its installed apps grouped by project\n * lifecycle stage (Design / Plan / Capture / Pay) instead of a single \"Your apps\" list, the\n * Marketplace carried inside the Studio group rather than pinned to the shell, the top-bar switcher\n * scoped to organizations instead of projects, and a Files entry at the head of the rail that browses\n * every record in the organization by folder and opens each in the app that owns it.\n *\n * @deprecated Preview/demo prototype — renders built-in sample data and mock handlers. Not a\n * supported production import: compose your page from the widgets this template uses, wired to your\n * own data (see the CoreConnectV3 template docs in Storybook). Slated for removal from the public\n * API in a future major.\n */\nexport function CoreConnectV3() {\n\treturn (\n\t\t<WC3Workspace\n\t\t\twithMarketplace\n\t\t\tappGrouping=\"lifecycle\"\n\t\t\tmarketplacePlacement=\"studio\"\n\t\t\tswitcherScope=\"organization\"\n\t\t\tshowFiles\n\t\t\tpreinstalledApps={CONNECT_STARTER_APPS}\n\t\t/>\n\t);\n}\n"],"mappings":";;;;;;;;;;;;;;;;AA8CA,SAAgB,gBAAgB;CAC/B,OACC,oBAAC,cAAD;EACC,iBAAA;EACA,aAAY;EACZ,sBAAqB;EACrB,eAAc;EACd,WAAA;EACA,kBAAkB;CAClB,CAAA;AAEH"}
@@ -0,0 +1,15 @@
1
+ //#region src/pages/core-core-connect.d.ts
2
+ /**
3
+ * Core Connect V2 template: the WC3 admin workspace with the marketplace folded in, as a single
4
+ * app. One sidebar carries a pinned Home, the installed apps directly beneath it, the admin
5
+ * perspectives under a Studio label, and a pinned Marketplace entry; installing an app from the store
6
+ * adds it to the apps section without leaving the app.
7
+ *
8
+ * @deprecated Preview/demo prototype — renders built-in sample data and mock handlers. Not a
9
+ * supported production import: compose your page from the widgets this template uses, wired to your
10
+ * own data (see the CoreConnect template docs in Storybook). Slated for removal from the public API
11
+ * in a future major.
12
+ */
13
+ export declare function CoreConnect(): import("react/jsx-runtime").JSX.Element;
14
+ //#endregion
15
+ //# sourceMappingURL=core-core-connect.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-core-connect.d.mts","names":[],"sources":["../../src/pages/core-core-connect.tsx"],"mappings":";;;;;;;;;;;;wBAiCgB,2CAAW,IAAA"}
@@ -0,0 +1,21 @@
1
+ import { WC3Workspace } from "./core-wc3-workspace.mjs";
2
+ import { jsx } from "react/jsx-runtime";
3
+ //#region src/pages/core-core-connect.tsx
4
+ /**
5
+ * Core Connect V2 template: the WC3 admin workspace with the marketplace folded in, as a single
6
+ * app. One sidebar carries a pinned Home, the installed apps directly beneath it, the admin
7
+ * perspectives under a Studio label, and a pinned Marketplace entry; installing an app from the store
8
+ * adds it to the apps section without leaving the app.
9
+ *
10
+ * @deprecated Preview/demo prototype — renders built-in sample data and mock handlers. Not a
11
+ * supported production import: compose your page from the widgets this template uses, wired to your
12
+ * own data (see the CoreConnect template docs in Storybook). Slated for removal from the public API
13
+ * in a future major.
14
+ */
15
+ function CoreConnect() {
16
+ return /* @__PURE__ */ jsx(WC3Workspace, { withMarketplace: true });
17
+ }
18
+ //#endregion
19
+ export { CoreConnect };
20
+
21
+ //# sourceMappingURL=core-core-connect.mjs.map