@unofficialbox/box-open-elements 0.4.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (677) hide show
  1. package/README.md +39 -14
  2. package/dist/components/actions/button-group.d.ts +2 -2
  3. package/dist/components/actions/button-group.js +3 -9
  4. package/dist/components/actions/button.d.ts +2 -2
  5. package/dist/components/actions/button.js +3 -9
  6. package/dist/components/actions/icon-button.d.ts +2 -2
  7. package/dist/components/actions/icon-button.js +3 -9
  8. package/dist/components/actions/link-button.d.ts +2 -2
  9. package/dist/components/actions/link-button.js +3 -9
  10. package/dist/components/actions/menu-item.d.ts +2 -2
  11. package/dist/components/actions/menu-item.js +3 -9
  12. package/dist/components/actions/menu.d.ts +2 -2
  13. package/dist/components/actions/menu.js +3 -9
  14. package/dist/components/actions/segmented-control.d.ts +2 -2
  15. package/dist/components/actions/segmented-control.js +3 -9
  16. package/dist/components/collections/card.d.ts +2 -2
  17. package/dist/components/collections/card.js +3 -9
  18. package/dist/components/collections/carousel.d.ts +2 -2
  19. package/dist/components/collections/carousel.js +3 -9
  20. package/dist/components/collections/datalist-item.d.ts +2 -2
  21. package/dist/components/collections/datalist-item.js +3 -9
  22. package/dist/components/collections/draggable-list.d.ts +2 -2
  23. package/dist/components/collections/draggable-list.js +3 -9
  24. package/dist/components/collections/grid-view.d.ts +2 -2
  25. package/dist/components/collections/grid-view.js +3 -9
  26. package/dist/components/collections/pagination.d.ts +2 -2
  27. package/dist/components/collections/pagination.js +3 -9
  28. package/dist/components/collections/table.d.ts +59 -5
  29. package/dist/components/collections/table.js +342 -29
  30. package/dist/components/collections/thumbnail-card.d.ts +2 -2
  31. package/dist/components/collections/thumbnail-card.js +3 -9
  32. package/dist/components/collections/tree-grid.d.ts +2 -2
  33. package/dist/components/collections/tree-grid.js +3 -9
  34. package/dist/components/collections/tree.d.ts +2 -2
  35. package/dist/components/collections/tree.js +3 -9
  36. package/dist/components/feedback/alert.d.ts +2 -2
  37. package/dist/components/feedback/alert.js +3 -9
  38. package/dist/components/feedback/badge.d.ts +2 -2
  39. package/dist/components/feedback/badge.js +3 -9
  40. package/dist/components/feedback/badgeable.d.ts +2 -2
  41. package/dist/components/feedback/badgeable.js +3 -9
  42. package/dist/components/feedback/chip.d.ts +2 -2
  43. package/dist/components/feedback/chip.js +3 -9
  44. package/dist/components/feedback/due-badge.d.ts +38 -0
  45. package/dist/components/feedback/due-badge.js +168 -0
  46. package/dist/components/feedback/due-types.d.ts +32 -0
  47. package/dist/components/feedback/due-types.js +91 -0
  48. package/dist/components/feedback/empty-state.d.ts +2 -2
  49. package/dist/components/feedback/empty-state.js +3 -9
  50. package/dist/components/feedback/error-mask.d.ts +2 -2
  51. package/dist/components/feedback/error-mask.js +3 -9
  52. package/dist/components/feedback/help-text.d.ts +2 -2
  53. package/dist/components/feedback/help-text.js +3 -9
  54. package/dist/components/feedback/nudge.d.ts +2 -2
  55. package/dist/components/feedback/nudge.js +3 -9
  56. package/dist/components/feedback/progress-bar.d.ts +2 -2
  57. package/dist/components/feedback/progress-bar.js +3 -9
  58. package/dist/components/feedback/progress-ring.d.ts +2 -2
  59. package/dist/components/feedback/progress-ring.js +3 -9
  60. package/dist/components/feedback/progress-steps.d.ts +53 -7
  61. package/dist/components/feedback/progress-steps.js +203 -31
  62. package/dist/components/feedback/skeleton.d.ts +2 -2
  63. package/dist/components/feedback/skeleton.js +3 -9
  64. package/dist/components/feedback/spinner.d.ts +2 -2
  65. package/dist/components/feedback/spinner.js +3 -9
  66. package/dist/components/feedback/stage-path.d.ts +44 -0
  67. package/dist/components/feedback/stage-path.js +235 -0
  68. package/dist/components/feedback/toast.d.ts +2 -2
  69. package/dist/components/feedback/toast.js +3 -9
  70. package/dist/components/files/drop-zone.d.ts +2 -2
  71. package/dist/components/files/drop-zone.js +3 -9
  72. package/dist/components/forms/calendar.d.ts +2 -2
  73. package/dist/components/forms/calendar.js +3 -9
  74. package/dist/components/forms/category-selector.d.ts +2 -2
  75. package/dist/components/forms/category-selector.js +3 -9
  76. package/dist/components/forms/checkbox-group.d.ts +2 -2
  77. package/dist/components/forms/checkbox-group.js +3 -9
  78. package/dist/components/forms/checkbox.d.ts +2 -2
  79. package/dist/components/forms/checkbox.js +3 -9
  80. package/dist/components/forms/color-picker.d.ts +2 -2
  81. package/dist/components/forms/color-picker.js +3 -9
  82. package/dist/components/forms/combobox.d.ts +2 -2
  83. package/dist/components/forms/combobox.js +3 -9
  84. package/dist/components/forms/date-field.d.ts +2 -2
  85. package/dist/components/forms/date-field.js +3 -9
  86. package/dist/components/forms/dropdown.d.ts +2 -2
  87. package/dist/components/forms/dropdown.js +3 -9
  88. package/dist/components/forms/dual-listbox.d.ts +2 -2
  89. package/dist/components/forms/dual-listbox.js +3 -9
  90. package/dist/components/forms/fieldset.d.ts +2 -2
  91. package/dist/components/forms/fieldset.js +3 -9
  92. package/dist/components/forms/multi-select.d.ts +2 -2
  93. package/dist/components/forms/multi-select.js +3 -9
  94. package/dist/components/forms/number-input.d.ts +2 -2
  95. package/dist/components/forms/number-input.js +3 -9
  96. package/dist/components/forms/pill-cloud.d.ts +2 -2
  97. package/dist/components/forms/pill-cloud.js +3 -9
  98. package/dist/components/forms/pill-selector-dropdown.d.ts +2 -2
  99. package/dist/components/forms/pill-selector-dropdown.js +3 -9
  100. package/dist/components/forms/radio-group.d.ts +2 -2
  101. package/dist/components/forms/radio-group.js +3 -9
  102. package/dist/components/forms/range-slider.d.ts +2 -2
  103. package/dist/components/forms/range-slider.js +3 -9
  104. package/dist/components/forms/rating.d.ts +2 -2
  105. package/dist/components/forms/rating.js +3 -9
  106. package/dist/components/forms/rich-text-input.d.ts +2 -2
  107. package/dist/components/forms/rich-text-input.js +3 -9
  108. package/dist/components/forms/search-field.d.ts +2 -2
  109. package/dist/components/forms/search-field.js +3 -9
  110. package/dist/components/forms/select.d.ts +23 -2
  111. package/dist/components/forms/select.js +103 -12
  112. package/dist/components/forms/slider.d.ts +2 -2
  113. package/dist/components/forms/slider.js +3 -9
  114. package/dist/components/forms/spin-button.d.ts +2 -2
  115. package/dist/components/forms/spin-button.js +3 -9
  116. package/dist/components/forms/switch.d.ts +2 -2
  117. package/dist/components/forms/switch.js +3 -9
  118. package/dist/components/forms/tag-input.d.ts +2 -2
  119. package/dist/components/forms/tag-input.js +3 -9
  120. package/dist/components/forms/text-area.d.ts +2 -2
  121. package/dist/components/forms/text-area.js +3 -9
  122. package/dist/components/forms/text-field.d.ts +23 -2
  123. package/dist/components/forms/text-field.js +103 -10
  124. package/dist/components/forms/time-field.d.ts +2 -2
  125. package/dist/components/forms/time-field.js +4 -10
  126. package/dist/components/identity/avatar.d.ts +2 -2
  127. package/dist/components/identity/avatar.js +3 -9
  128. package/dist/components/identity/contact-datalist-item.d.ts +2 -2
  129. package/dist/components/identity/contact-datalist-item.js +3 -9
  130. package/dist/components/identity/persona.d.ts +2 -2
  131. package/dist/components/identity/persona.js +3 -9
  132. package/dist/components/layout/app-shell.d.ts +2 -2
  133. package/dist/components/layout/app-shell.js +3 -9
  134. package/dist/components/layout/divider.d.ts +2 -2
  135. package/dist/components/layout/divider.js +3 -9
  136. package/dist/components/layout/nav-sidebar.d.ts +16 -2
  137. package/dist/components/layout/nav-sidebar.js +52 -9
  138. package/dist/components/layout/section.d.ts +2 -2
  139. package/dist/components/layout/section.js +3 -9
  140. package/dist/components/layout/sidebar-toggle-button.d.ts +2 -2
  141. package/dist/components/layout/sidebar-toggle-button.js +3 -9
  142. package/dist/components/layout/split-view.d.ts +16 -2
  143. package/dist/components/layout/split-view.js +83 -10
  144. package/dist/components/navigation/accordion.d.ts +2 -2
  145. package/dist/components/navigation/accordion.js +3 -9
  146. package/dist/components/navigation/breadcrumb.d.ts +2 -2
  147. package/dist/components/navigation/breadcrumb.js +3 -9
  148. package/dist/components/navigation/tabs.d.ts +2 -2
  149. package/dist/components/navigation/tabs.js +3 -9
  150. package/dist/components/overlays/command-palette.d.ts +62 -0
  151. package/dist/components/overlays/command-palette.js +537 -0
  152. package/dist/components/overlays/command-types.d.ts +90 -0
  153. package/dist/components/overlays/command-types.js +259 -0
  154. package/dist/components/overlays/context-menu.d.ts +2 -2
  155. package/dist/components/overlays/context-menu.js +3 -9
  156. package/dist/components/overlays/dialog.d.ts +2 -2
  157. package/dist/components/overlays/dialog.js +3 -9
  158. package/dist/components/overlays/drawer.d.ts +20 -2
  159. package/dist/components/overlays/drawer.js +138 -18
  160. package/dist/components/overlays/guide-tooltip.d.ts +2 -2
  161. package/dist/components/overlays/guide-tooltip.js +3 -9
  162. package/dist/components/overlays/popover.d.ts +2 -2
  163. package/dist/components/overlays/popover.js +3 -9
  164. package/dist/components/overlays/shortcuts-overlay.d.ts +48 -0
  165. package/dist/components/overlays/shortcuts-overlay.js +385 -0
  166. package/dist/components/overlays/tooltip.d.ts +2 -2
  167. package/dist/components/overlays/tooltip.js +4 -10
  168. package/dist/components/visuals/illustration.d.ts +2 -2
  169. package/dist/components/visuals/illustration.js +3 -9
  170. package/dist/core/element.d.ts +5 -1
  171. package/dist/core/element.js +29 -1
  172. package/dist/element-maps.d.ts +292 -0
  173. package/dist/element-maps.js +1 -0
  174. package/dist/entries/access-stats.d.ts +1 -0
  175. package/dist/entries/access-stats.js +1 -0
  176. package/dist/entries/accordion.d.ts +1 -0
  177. package/dist/entries/accordion.js +1 -0
  178. package/dist/entries/activity-density.d.ts +1 -0
  179. package/dist/entries/activity-density.js +1 -0
  180. package/dist/entries/agent-chat.d.ts +1 -0
  181. package/dist/entries/agent-chat.js +1 -0
  182. package/dist/entries/alert.d.ts +1 -0
  183. package/dist/entries/alert.js +1 -0
  184. package/dist/entries/annotation-inspector.d.ts +1 -0
  185. package/dist/entries/annotation-inspector.js +1 -0
  186. package/dist/entries/annotation-thread.d.ts +1 -0
  187. package/dist/entries/annotation-thread.js +1 -0
  188. package/dist/entries/annotation-toolbar.d.ts +1 -0
  189. package/dist/entries/annotation-toolbar.js +1 -0
  190. package/dist/entries/app-shell.d.ts +1 -0
  191. package/dist/entries/app-shell.js +1 -0
  192. package/dist/entries/audit-log.d.ts +1 -0
  193. package/dist/entries/audit-log.js +1 -0
  194. package/dist/entries/avatar.d.ts +1 -0
  195. package/dist/entries/avatar.js +1 -0
  196. package/dist/entries/badge.d.ts +1 -0
  197. package/dist/entries/badge.js +1 -0
  198. package/dist/entries/badgeable.d.ts +1 -0
  199. package/dist/entries/badgeable.js +1 -0
  200. package/dist/entries/bar-chart.d.ts +1 -0
  201. package/dist/entries/bar-chart.js +1 -0
  202. package/dist/entries/breadcrumb.d.ts +1 -0
  203. package/dist/entries/breadcrumb.js +1 -0
  204. package/dist/entries/bulk-action-bar.d.ts +1 -0
  205. package/dist/entries/bulk-action-bar.js +1 -0
  206. package/dist/entries/button-group.d.ts +1 -0
  207. package/dist/entries/button-group.js +1 -0
  208. package/dist/entries/button.d.ts +1 -0
  209. package/dist/entries/button.js +1 -0
  210. package/dist/entries/calendar.d.ts +1 -0
  211. package/dist/entries/calendar.js +1 -0
  212. package/dist/entries/card.d.ts +1 -0
  213. package/dist/entries/card.js +1 -0
  214. package/dist/entries/carousel.d.ts +1 -0
  215. package/dist/entries/carousel.js +1 -0
  216. package/dist/entries/category-selector.d.ts +1 -0
  217. package/dist/entries/category-selector.js +1 -0
  218. package/dist/entries/chart-panel.d.ts +1 -0
  219. package/dist/entries/chart-panel.js +1 -0
  220. package/dist/entries/checkbox-group.d.ts +1 -0
  221. package/dist/entries/checkbox-group.js +1 -0
  222. package/dist/entries/checkbox.d.ts +1 -0
  223. package/dist/entries/checkbox.js +1 -0
  224. package/dist/entries/chip.d.ts +1 -0
  225. package/dist/entries/chip.js +1 -0
  226. package/dist/entries/collaborator-avatars.d.ts +1 -0
  227. package/dist/entries/collaborator-avatars.js +1 -0
  228. package/dist/entries/color-picker.d.ts +1 -0
  229. package/dist/entries/color-picker.js +1 -0
  230. package/dist/entries/combobox.d.ts +1 -0
  231. package/dist/entries/combobox.js +1 -0
  232. package/dist/entries/command-palette.d.ts +1 -0
  233. package/dist/entries/command-palette.js +1 -0
  234. package/dist/entries/compare-view.d.ts +1 -0
  235. package/dist/entries/compare-view.js +1 -0
  236. package/dist/entries/contact-datalist-item.d.ts +1 -0
  237. package/dist/entries/contact-datalist-item.js +1 -0
  238. package/dist/entries/content-explorer.d.ts +1 -0
  239. package/dist/entries/content-explorer.js +1 -0
  240. package/dist/entries/context-menu.d.ts +1 -0
  241. package/dist/entries/context-menu.js +1 -0
  242. package/dist/entries/datalist-item.d.ts +1 -0
  243. package/dist/entries/datalist-item.js +1 -0
  244. package/dist/entries/date-field.d.ts +1 -0
  245. package/dist/entries/date-field.js +1 -0
  246. package/dist/entries/dialog.d.ts +1 -0
  247. package/dist/entries/dialog.js +1 -0
  248. package/dist/entries/diff-viewer.d.ts +1 -0
  249. package/dist/entries/diff-viewer.js +1 -0
  250. package/dist/entries/divider.d.ts +1 -0
  251. package/dist/entries/divider.js +1 -0
  252. package/dist/entries/donut-chart.d.ts +1 -0
  253. package/dist/entries/donut-chart.js +1 -0
  254. package/dist/entries/draggable-list.d.ts +1 -0
  255. package/dist/entries/draggable-list.js +1 -0
  256. package/dist/entries/drawer.d.ts +1 -0
  257. package/dist/entries/drawer.js +1 -0
  258. package/dist/entries/drop-zone.d.ts +1 -0
  259. package/dist/entries/drop-zone.js +1 -0
  260. package/dist/entries/dropdown.d.ts +1 -0
  261. package/dist/entries/dropdown.js +1 -0
  262. package/dist/entries/dual-listbox.d.ts +1 -0
  263. package/dist/entries/dual-listbox.js +1 -0
  264. package/dist/entries/due-badge.d.ts +1 -0
  265. package/dist/entries/due-badge.js +1 -0
  266. package/dist/entries/empty-state.d.ts +1 -0
  267. package/dist/entries/empty-state.js +1 -0
  268. package/dist/entries/error-mask.d.ts +1 -0
  269. package/dist/entries/error-mask.js +1 -0
  270. package/dist/entries/explorer-action-menu.d.ts +1 -0
  271. package/dist/entries/explorer-action-menu.js +1 -0
  272. package/dist/entries/explorer-breadcrumbs.d.ts +1 -0
  273. package/dist/entries/explorer-breadcrumbs.js +1 -0
  274. package/dist/entries/explorer-items.d.ts +1 -0
  275. package/dist/entries/explorer-items.js +1 -0
  276. package/dist/entries/explorer-list.d.ts +1 -0
  277. package/dist/entries/explorer-list.js +1 -0
  278. package/dist/entries/explorer-table.d.ts +1 -0
  279. package/dist/entries/explorer-table.js +1 -0
  280. package/dist/entries/explorer-toolbar.d.ts +1 -0
  281. package/dist/entries/explorer-toolbar.js +1 -0
  282. package/dist/entries/fieldset.d.ts +1 -0
  283. package/dist/entries/fieldset.js +1 -0
  284. package/dist/entries/file-request-builder.d.ts +1 -0
  285. package/dist/entries/file-request-builder.js +1 -0
  286. package/dist/entries/filter-bar.d.ts +1 -0
  287. package/dist/entries/filter-bar.js +1 -0
  288. package/dist/entries/form-wizard.d.ts +1 -0
  289. package/dist/entries/form-wizard.js +1 -0
  290. package/dist/entries/governance-panel.d.ts +1 -0
  291. package/dist/entries/governance-panel.js +1 -0
  292. package/dist/entries/grid-view.d.ts +1 -0
  293. package/dist/entries/grid-view.js +1 -0
  294. package/dist/entries/guide-tooltip.d.ts +1 -0
  295. package/dist/entries/guide-tooltip.js +1 -0
  296. package/dist/entries/help-text.d.ts +1 -0
  297. package/dist/entries/help-text.js +1 -0
  298. package/dist/entries/icon-button.d.ts +1 -0
  299. package/dist/entries/icon-button.js +1 -0
  300. package/dist/entries/illustration.d.ts +1 -0
  301. package/dist/entries/illustration.js +1 -0
  302. package/dist/entries/invite-collaborators-modal.d.ts +1 -0
  303. package/dist/entries/invite-collaborators-modal.js +1 -0
  304. package/dist/entries/item-details-panel.d.ts +1 -0
  305. package/dist/entries/item-details-panel.js +1 -0
  306. package/dist/entries/item-form.d.ts +1 -0
  307. package/dist/entries/item-form.js +1 -0
  308. package/dist/entries/line-chart.d.ts +1 -0
  309. package/dist/entries/line-chart.js +1 -0
  310. package/dist/entries/lineage-graph.d.ts +1 -0
  311. package/dist/entries/lineage-graph.js +1 -0
  312. package/dist/entries/link-button.d.ts +1 -0
  313. package/dist/entries/link-button.js +1 -0
  314. package/dist/entries/menu-item.d.ts +1 -0
  315. package/dist/entries/menu-item.js +1 -0
  316. package/dist/entries/menu.d.ts +1 -0
  317. package/dist/entries/menu.js +1 -0
  318. package/dist/entries/metadata-filter-builder.d.ts +1 -0
  319. package/dist/entries/metadata-filter-builder.js +1 -0
  320. package/dist/entries/metadata-inspector.d.ts +1 -0
  321. package/dist/entries/metadata-inspector.js +1 -0
  322. package/dist/entries/metric-card.d.ts +1 -0
  323. package/dist/entries/metric-card.js +1 -0
  324. package/dist/entries/multi-select.d.ts +1 -0
  325. package/dist/entries/multi-select.js +1 -0
  326. package/dist/entries/nav-sidebar.d.ts +1 -0
  327. package/dist/entries/nav-sidebar.js +1 -0
  328. package/dist/entries/notification-bell.d.ts +1 -0
  329. package/dist/entries/notification-bell.js +1 -0
  330. package/dist/entries/notification-inbox.d.ts +1 -0
  331. package/dist/entries/notification-inbox.js +1 -0
  332. package/dist/entries/nudge.d.ts +1 -0
  333. package/dist/entries/nudge.js +1 -0
  334. package/dist/entries/number-input.d.ts +1 -0
  335. package/dist/entries/number-input.js +1 -0
  336. package/dist/entries/pagination.d.ts +1 -0
  337. package/dist/entries/pagination.js +1 -0
  338. package/dist/entries/permission-matrix.d.ts +1 -0
  339. package/dist/entries/permission-matrix.js +1 -0
  340. package/dist/entries/persona.d.ts +1 -0
  341. package/dist/entries/persona.js +1 -0
  342. package/dist/entries/pill-cloud.d.ts +1 -0
  343. package/dist/entries/pill-cloud.js +1 -0
  344. package/dist/entries/pill-selector-dropdown.d.ts +1 -0
  345. package/dist/entries/pill-selector-dropdown.js +1 -0
  346. package/dist/entries/popover.d.ts +1 -0
  347. package/dist/entries/popover.js +1 -0
  348. package/dist/entries/presence.d.ts +1 -0
  349. package/dist/entries/presence.js +1 -0
  350. package/dist/entries/preview-header.d.ts +1 -0
  351. package/dist/entries/preview-header.js +1 -0
  352. package/dist/entries/preview.d.ts +1 -0
  353. package/dist/entries/preview.js +1 -0
  354. package/dist/entries/progress-bar.d.ts +1 -0
  355. package/dist/entries/progress-bar.js +1 -0
  356. package/dist/entries/progress-ring.d.ts +1 -0
  357. package/dist/entries/progress-ring.js +1 -0
  358. package/dist/entries/progress-steps.d.ts +1 -0
  359. package/dist/entries/progress-steps.js +1 -0
  360. package/dist/entries/provenance-strip.d.ts +1 -0
  361. package/dist/entries/provenance-strip.js +1 -0
  362. package/dist/entries/radio-group.d.ts +1 -0
  363. package/dist/entries/radio-group.js +1 -0
  364. package/dist/entries/range-slider.d.ts +1 -0
  365. package/dist/entries/range-slider.js +1 -0
  366. package/dist/entries/rating.d.ts +1 -0
  367. package/dist/entries/rating.js +1 -0
  368. package/dist/entries/review-queue-item.d.ts +1 -0
  369. package/dist/entries/review-queue-item.js +1 -0
  370. package/dist/entries/rich-text-input.d.ts +1 -0
  371. package/dist/entries/rich-text-input.js +1 -0
  372. package/dist/entries/run-trace.d.ts +1 -0
  373. package/dist/entries/run-trace.js +1 -0
  374. package/dist/entries/saved-view-picker.d.ts +1 -0
  375. package/dist/entries/saved-view-picker.js +1 -0
  376. package/dist/entries/search-field.d.ts +1 -0
  377. package/dist/entries/search-field.js +1 -0
  378. package/dist/entries/search-results-header.d.ts +1 -0
  379. package/dist/entries/search-results-header.js +1 -0
  380. package/dist/entries/section.d.ts +1 -0
  381. package/dist/entries/section.js +1 -0
  382. package/dist/entries/segmented-control.d.ts +1 -0
  383. package/dist/entries/segmented-control.js +1 -0
  384. package/dist/entries/select.d.ts +1 -0
  385. package/dist/entries/select.js +1 -0
  386. package/dist/entries/share-panel.d.ts +1 -0
  387. package/dist/entries/share-panel.js +1 -0
  388. package/dist/entries/shortcuts-overlay.d.ts +1 -0
  389. package/dist/entries/shortcuts-overlay.js +1 -0
  390. package/dist/entries/sidebar-toggle-button.d.ts +1 -0
  391. package/dist/entries/sidebar-toggle-button.js +1 -0
  392. package/dist/entries/signature-ceremony.d.ts +1 -0
  393. package/dist/entries/signature-ceremony.js +1 -0
  394. package/dist/entries/skeleton.d.ts +1 -0
  395. package/dist/entries/skeleton.js +1 -0
  396. package/dist/entries/slider.d.ts +1 -0
  397. package/dist/entries/slider.js +1 -0
  398. package/dist/entries/spin-button.d.ts +1 -0
  399. package/dist/entries/spin-button.js +1 -0
  400. package/dist/entries/spinner.d.ts +1 -0
  401. package/dist/entries/spinner.js +1 -0
  402. package/dist/entries/split-view.d.ts +1 -0
  403. package/dist/entries/split-view.js +1 -0
  404. package/dist/entries/stage-path.d.ts +1 -0
  405. package/dist/entries/stage-path.js +1 -0
  406. package/dist/entries/switch.d.ts +1 -0
  407. package/dist/entries/switch.js +1 -0
  408. package/dist/entries/table.d.ts +1 -0
  409. package/dist/entries/table.js +1 -0
  410. package/dist/entries/tabs.d.ts +1 -0
  411. package/dist/entries/tabs.js +1 -0
  412. package/dist/entries/tag-input.d.ts +1 -0
  413. package/dist/entries/tag-input.js +1 -0
  414. package/dist/entries/task-assignment-panel.d.ts +1 -0
  415. package/dist/entries/task-assignment-panel.js +1 -0
  416. package/dist/entries/text-area.d.ts +1 -0
  417. package/dist/entries/text-area.js +1 -0
  418. package/dist/entries/text-field.d.ts +1 -0
  419. package/dist/entries/text-field.js +1 -0
  420. package/dist/entries/thumbnail-card.d.ts +1 -0
  421. package/dist/entries/thumbnail-card.js +1 -0
  422. package/dist/entries/time-field.d.ts +1 -0
  423. package/dist/entries/time-field.js +1 -0
  424. package/dist/entries/timeline.d.ts +1 -0
  425. package/dist/entries/timeline.js +1 -0
  426. package/dist/entries/toast.d.ts +1 -0
  427. package/dist/entries/toast.js +1 -0
  428. package/dist/entries/tooltip.d.ts +1 -0
  429. package/dist/entries/tooltip.js +1 -0
  430. package/dist/entries/tree-grid.d.ts +1 -0
  431. package/dist/entries/tree-grid.js +1 -0
  432. package/dist/entries/tree.d.ts +1 -0
  433. package/dist/entries/tree.js +1 -0
  434. package/dist/entries/unified-share-modal.d.ts +1 -0
  435. package/dist/entries/unified-share-modal.js +1 -0
  436. package/dist/entries/version-graph.d.ts +1 -0
  437. package/dist/entries/version-graph.js +1 -0
  438. package/dist/entries/version-list.d.ts +1 -0
  439. package/dist/entries/version-list.js +1 -0
  440. package/dist/entries/wizard-summary.d.ts +1 -0
  441. package/dist/entries/wizard-summary.js +1 -0
  442. package/dist/entries/work-queue.d.ts +1 -0
  443. package/dist/entries/work-queue.js +1 -0
  444. package/dist/entries/workload-board.d.ts +1 -0
  445. package/dist/entries/workload-board.js +1 -0
  446. package/dist/foundations/geometry/tokens.d.ts +46 -45
  447. package/dist/foundations/geometry/tokens.js +46 -45
  448. package/dist/foundations/motion/tokens.d.ts +10 -10
  449. package/dist/foundations/motion/tokens.js +10 -10
  450. package/dist/foundations/profiles/built-ins.d.ts +4 -0
  451. package/dist/foundations/profiles/built-ins.js +131 -0
  452. package/dist/foundations/profiles/controller.d.ts +4 -0
  453. package/dist/foundations/profiles/controller.js +107 -0
  454. package/dist/foundations/profiles/index.d.ts +4 -0
  455. package/dist/foundations/profiles/index.js +3 -0
  456. package/dist/foundations/profiles/registry.d.ts +72 -0
  457. package/dist/foundations/profiles/registry.js +119 -0
  458. package/dist/foundations/profiles/types.d.ts +94 -0
  459. package/dist/foundations/profiles/types.js +1 -0
  460. package/dist/foundations/theming/controller.d.ts +37 -0
  461. package/dist/foundations/theming/controller.js +176 -0
  462. package/dist/foundations/theming/index.d.ts +2 -0
  463. package/dist/foundations/theming/index.js +1 -0
  464. package/dist/foundations/tokens/box-dark.d.ts +3 -3
  465. package/dist/foundations/tokens/box-defaults.d.ts +3 -3
  466. package/dist/foundations/tokens/index.d.ts +2 -2
  467. package/dist/foundations/tokens/index.js +1 -1
  468. package/dist/foundations/tokens/registry.d.ts +37 -7
  469. package/dist/foundations/tokens/registry.js +55 -5
  470. package/dist/foundations/tokens/types.d.ts +38 -1
  471. package/dist/index.d.ts +27 -2
  472. package/dist/index.js +24 -1
  473. package/dist/patterns/agent-chat/agent-chat.d.ts +75 -0
  474. package/dist/patterns/agent-chat/agent-chat.js +820 -0
  475. package/dist/patterns/agent-chat/controller.d.ts +27 -0
  476. package/dist/patterns/agent-chat/controller.js +182 -0
  477. package/dist/patterns/agent-chat/index.d.ts +3 -0
  478. package/dist/patterns/agent-chat/index.js +6 -0
  479. package/dist/patterns/agent-chat/types.d.ts +109 -0
  480. package/dist/patterns/agent-chat/types.js +1 -0
  481. package/dist/patterns/audit/activity-density.d.ts +68 -0
  482. package/dist/patterns/audit/activity-density.js +428 -0
  483. package/dist/patterns/audit/audit-log.d.ts +81 -0
  484. package/dist/patterns/audit/audit-log.js +794 -0
  485. package/dist/patterns/audit/index.d.ts +3 -0
  486. package/dist/patterns/audit/index.js +7 -0
  487. package/dist/patterns/audit/shared.d.ts +10 -0
  488. package/dist/patterns/audit/shared.js +50 -0
  489. package/dist/patterns/audit/types.d.ts +143 -0
  490. package/dist/patterns/audit/types.js +327 -0
  491. package/dist/patterns/content-explorer/actions/controller.js +12 -2
  492. package/dist/patterns/content-explorer/adapters/action-menu.d.ts +2 -2
  493. package/dist/patterns/content-explorer/adapters/action-menu.js +3 -9
  494. package/dist/patterns/content-explorer/adapters/breadcrumbs.d.ts +2 -2
  495. package/dist/patterns/content-explorer/adapters/breadcrumbs.js +3 -9
  496. package/dist/patterns/content-explorer/adapters/items.d.ts +3 -3
  497. package/dist/patterns/content-explorer/adapters/items.js +4 -10
  498. package/dist/patterns/content-explorer/adapters/list.d.ts +2 -2
  499. package/dist/patterns/content-explorer/adapters/list.js +3 -9
  500. package/dist/patterns/content-explorer/adapters/table.d.ts +2 -2
  501. package/dist/patterns/content-explorer/adapters/table.js +3 -9
  502. package/dist/patterns/content-explorer/adapters/toolbar.d.ts +2 -2
  503. package/dist/patterns/content-explorer/adapters/toolbar.js +7 -13
  504. package/dist/patterns/content-explorer/box-transport.js +117 -25
  505. package/dist/patterns/content-explorer/content-explorer.d.ts +28 -16
  506. package/dist/patterns/content-explorer/content-explorer.js +41 -14
  507. package/dist/patterns/content-explorer/contracts.d.ts +24 -1
  508. package/dist/patterns/content-explorer/contracts.js +68 -11
  509. package/dist/patterns/content-explorer/controller.d.ts +16 -1
  510. package/dist/patterns/content-explorer/controller.js +130 -4
  511. package/dist/patterns/content-explorer/navigation/controller.js +11 -9
  512. package/dist/patterns/content-explorer/types.d.ts +58 -1
  513. package/dist/patterns/content-picker/content-picker.d.ts +71 -0
  514. package/dist/patterns/content-picker/content-picker.js +747 -0
  515. package/dist/patterns/content-picker/controller.d.ts +38 -0
  516. package/dist/patterns/content-picker/controller.js +141 -0
  517. package/dist/patterns/content-picker/index.d.ts +3 -0
  518. package/dist/patterns/content-picker/index.js +6 -0
  519. package/dist/patterns/content-picker/types.d.ts +52 -0
  520. package/dist/patterns/content-picker/types.js +26 -0
  521. package/dist/patterns/content-sidebar/content-sidebar.d.ts +43 -0
  522. package/dist/patterns/content-sidebar/content-sidebar.js +293 -0
  523. package/dist/patterns/content-sidebar/index.d.ts +2 -0
  524. package/dist/patterns/content-sidebar/index.js +4 -0
  525. package/dist/patterns/content-sidebar/types.d.ts +18 -0
  526. package/dist/patterns/content-sidebar/types.js +20 -0
  527. package/dist/patterns/content-uploader/box-transport.d.ts +14 -0
  528. package/dist/patterns/content-uploader/box-transport.js +54 -0
  529. package/dist/patterns/content-uploader/content-uploader.d.ts +62 -0
  530. package/dist/patterns/content-uploader/content-uploader.js +559 -0
  531. package/dist/patterns/content-uploader/controller.d.ts +39 -0
  532. package/dist/patterns/content-uploader/controller.js +227 -0
  533. package/dist/patterns/content-uploader/index.d.ts +4 -0
  534. package/dist/patterns/content-uploader/index.js +8 -0
  535. package/dist/patterns/content-uploader/types.d.ts +120 -0
  536. package/dist/patterns/content-uploader/types.js +38 -0
  537. package/dist/patterns/diff/compare-view.d.ts +47 -0
  538. package/dist/patterns/diff/compare-view.js +276 -0
  539. package/dist/patterns/diff/diff-viewer.d.ts +42 -0
  540. package/dist/patterns/diff/diff-viewer.js +434 -0
  541. package/dist/patterns/diff/engine.d.ts +22 -0
  542. package/dist/patterns/diff/engine.js +276 -0
  543. package/dist/patterns/diff/index.d.ts +4 -0
  544. package/dist/patterns/diff/index.js +8 -0
  545. package/dist/patterns/diff/types.d.ts +69 -0
  546. package/dist/patterns/diff/types.js +24 -0
  547. package/dist/patterns/file-request/file-request-builder.d.ts +2 -2
  548. package/dist/patterns/file-request/file-request-builder.js +3 -9
  549. package/dist/patterns/form-wizard/controller.d.ts +39 -0
  550. package/dist/patterns/form-wizard/controller.js +157 -0
  551. package/dist/patterns/form-wizard/form-wizard.d.ts +63 -0
  552. package/dist/patterns/form-wizard/form-wizard.js +468 -0
  553. package/dist/patterns/form-wizard/index.d.ts +4 -0
  554. package/dist/patterns/form-wizard/index.js +8 -0
  555. package/dist/patterns/form-wizard/types.d.ts +109 -0
  556. package/dist/patterns/form-wizard/types.js +83 -0
  557. package/dist/patterns/form-wizard/wizard-summary.d.ts +62 -0
  558. package/dist/patterns/form-wizard/wizard-summary.js +324 -0
  559. package/dist/patterns/governance/governance-panel.d.ts +2 -2
  560. package/dist/patterns/governance/governance-panel.js +3 -6
  561. package/dist/patterns/insights/bar-chart.d.ts +2 -2
  562. package/dist/patterns/insights/bar-chart.js +3 -6
  563. package/dist/patterns/insights/chart-panel.d.ts +2 -2
  564. package/dist/patterns/insights/chart-panel.js +3 -6
  565. package/dist/patterns/insights/donut-chart.d.ts +2 -2
  566. package/dist/patterns/insights/donut-chart.js +3 -6
  567. package/dist/patterns/insights/line-chart.d.ts +2 -2
  568. package/dist/patterns/insights/line-chart.js +3 -6
  569. package/dist/patterns/insights/metric-card.d.ts +2 -2
  570. package/dist/patterns/insights/metric-card.js +3 -6
  571. package/dist/patterns/internal/safe-href.d.ts +17 -0
  572. package/dist/patterns/internal/safe-href.js +17 -0
  573. package/dist/patterns/item/bulk-action-bar.d.ts +2 -2
  574. package/dist/patterns/item/bulk-action-bar.js +3 -6
  575. package/dist/patterns/item/item-details-panel.d.ts +2 -2
  576. package/dist/patterns/item/item-details-panel.js +3 -9
  577. package/dist/patterns/item/item-form.d.ts +2 -2
  578. package/dist/patterns/item/item-form.js +3 -9
  579. package/dist/patterns/item/preview-header.d.ts +2 -2
  580. package/dist/patterns/item/preview-header.js +3 -9
  581. package/dist/patterns/lineage/index.d.ts +3 -0
  582. package/dist/patterns/lineage/index.js +6 -0
  583. package/dist/patterns/lineage/lineage-graph.d.ts +30 -0
  584. package/dist/patterns/lineage/lineage-graph.js +434 -0
  585. package/dist/patterns/lineage/provenance-strip.d.ts +22 -0
  586. package/dist/patterns/lineage/provenance-strip.js +194 -0
  587. package/dist/patterns/lineage/types.d.ts +53 -0
  588. package/dist/patterns/lineage/types.js +49 -0
  589. package/dist/patterns/metadata/metadata-filter-builder.d.ts +2 -2
  590. package/dist/patterns/metadata/metadata-filter-builder.js +3 -9
  591. package/dist/patterns/metadata/metadata-inspector.d.ts +2 -2
  592. package/dist/patterns/metadata/metadata-inspector.js +3 -9
  593. package/dist/patterns/notifications/index.d.ts +3 -0
  594. package/dist/patterns/notifications/index.js +6 -0
  595. package/dist/patterns/notifications/notification-bell.d.ts +38 -0
  596. package/dist/patterns/notifications/notification-bell.js +198 -0
  597. package/dist/patterns/notifications/notification-inbox.d.ts +46 -0
  598. package/dist/patterns/notifications/notification-inbox.js +537 -0
  599. package/dist/patterns/notifications/types.d.ts +61 -0
  600. package/dist/patterns/notifications/types.js +108 -0
  601. package/dist/patterns/preview/annotation-inspector.d.ts +27 -8
  602. package/dist/patterns/preview/annotation-inspector.js +242 -103
  603. package/dist/patterns/preview/annotation-thread.d.ts +27 -7
  604. package/dist/patterns/preview/annotation-thread.js +236 -91
  605. package/dist/patterns/preview/annotation-toolbar.d.ts +22 -8
  606. package/dist/patterns/preview/annotation-toolbar.js +165 -105
  607. package/dist/patterns/preview/content-preview-adapter.d.ts +10 -1
  608. package/dist/patterns/preview/content-preview-adapter.js +26 -1
  609. package/dist/patterns/preview/preview-element.d.ts +17 -4
  610. package/dist/patterns/preview/preview-element.js +226 -61
  611. package/dist/patterns/preview/provider-adapter.d.ts +47 -0
  612. package/dist/patterns/preview/provider-adapter.js +17 -0
  613. package/dist/patterns/run/index.d.ts +2 -0
  614. package/dist/patterns/run/index.js +4 -0
  615. package/dist/patterns/run/run-trace.d.ts +40 -0
  616. package/dist/patterns/run/run-trace.js +441 -0
  617. package/dist/patterns/run/types.d.ts +66 -0
  618. package/dist/patterns/run/types.js +152 -0
  619. package/dist/patterns/search/filter-bar.d.ts +2 -2
  620. package/dist/patterns/search/filter-bar.js +3 -9
  621. package/dist/patterns/search/saved-view-picker.d.ts +2 -2
  622. package/dist/patterns/search/saved-view-picker.js +3 -9
  623. package/dist/patterns/search/search-results-header.d.ts +2 -2
  624. package/dist/patterns/search/search-results-header.js +3 -9
  625. package/dist/patterns/share/access-stats.d.ts +2 -2
  626. package/dist/patterns/share/access-stats.js +3 -9
  627. package/dist/patterns/share/collaborator-avatars.d.ts +2 -2
  628. package/dist/patterns/share/collaborator-avatars.js +3 -9
  629. package/dist/patterns/share/invite-collaborators-modal.d.ts +2 -2
  630. package/dist/patterns/share/invite-collaborators-modal.js +3 -9
  631. package/dist/patterns/share/permission-matrix.d.ts +2 -2
  632. package/dist/patterns/share/permission-matrix.js +3 -9
  633. package/dist/patterns/share/presence.d.ts +2 -2
  634. package/dist/patterns/share/presence.js +3 -9
  635. package/dist/patterns/share/share-panel.d.ts +2 -2
  636. package/dist/patterns/share/share-panel.js +3 -9
  637. package/dist/patterns/share/unified-share-modal.d.ts +2 -2
  638. package/dist/patterns/share/unified-share-modal.js +3 -9
  639. package/dist/patterns/signature/index.d.ts +2 -0
  640. package/dist/patterns/signature/index.js +4 -0
  641. package/dist/patterns/signature/signature-ceremony.d.ts +33 -0
  642. package/dist/patterns/signature/signature-ceremony.js +317 -0
  643. package/dist/patterns/signature/types.d.ts +68 -0
  644. package/dist/patterns/signature/types.js +89 -0
  645. package/dist/patterns/task/review-queue-item.d.ts +2 -2
  646. package/dist/patterns/task/review-queue-item.js +3 -6
  647. package/dist/patterns/task/task-assignment-panel.d.ts +2 -2
  648. package/dist/patterns/task/task-assignment-panel.js +3 -6
  649. package/dist/patterns/timeline/index.d.ts +2 -0
  650. package/dist/patterns/timeline/index.js +4 -0
  651. package/dist/patterns/timeline/timeline.d.ts +27 -0
  652. package/dist/patterns/timeline/timeline.js +430 -0
  653. package/dist/patterns/timeline/types.d.ts +36 -0
  654. package/dist/patterns/timeline/types.js +27 -0
  655. package/dist/patterns/versions/graph-layout.d.ts +43 -0
  656. package/dist/patterns/versions/graph-layout.js +159 -0
  657. package/dist/patterns/versions/index.d.ts +4 -0
  658. package/dist/patterns/versions/index.js +8 -0
  659. package/dist/patterns/versions/shared.d.ts +4 -0
  660. package/dist/patterns/versions/shared.js +13 -0
  661. package/dist/patterns/versions/types.d.ts +37 -0
  662. package/dist/patterns/versions/types.js +39 -0
  663. package/dist/patterns/versions/version-graph.d.ts +36 -0
  664. package/dist/patterns/versions/version-graph.js +438 -0
  665. package/dist/patterns/versions/version-list.d.ts +39 -0
  666. package/dist/patterns/versions/version-list.js +407 -0
  667. package/dist/patterns/work-queue/controller.d.ts +26 -0
  668. package/dist/patterns/work-queue/controller.js +150 -0
  669. package/dist/patterns/work-queue/index.d.ts +4 -0
  670. package/dist/patterns/work-queue/index.js +7 -0
  671. package/dist/patterns/work-queue/types.d.ts +128 -0
  672. package/dist/patterns/work-queue/types.js +45 -0
  673. package/dist/patterns/work-queue/work-queue.d.ts +48 -0
  674. package/dist/patterns/work-queue/work-queue.js +534 -0
  675. package/dist/patterns/work-queue/workload-board.d.ts +53 -0
  676. package/dist/patterns/work-queue/workload-board.js +608 -0
  677. package/package.json +93 -5
@@ -0,0 +1,235 @@
1
+ import { BaseElement } from "../../core/index.js";
2
+ import { boeMotionDuration, boeMotionEasing } from "../../foundations/motion/index.js";
3
+ const DEFAULT_TAG_NAME = "box-stage-path";
4
+ const escapeHtml = (value) => value
5
+ .replaceAll("&", "&")
6
+ .replaceAll("<", "&lt;")
7
+ .replaceAll(">", "&gt;")
8
+ .replaceAll('"', "&quot;")
9
+ .replaceAll("'", "&#39;");
10
+ /** Attribute payloads are author input — validate every record. */
11
+ export const isStagePathStageRecord = (value) => {
12
+ if (typeof value !== "object" || value === null) {
13
+ return false;
14
+ }
15
+ const stage = value;
16
+ return (typeof stage.id === "string" &&
17
+ stage.id.length > 0 &&
18
+ typeof stage.label === "string" &&
19
+ stage.label.length > 0);
20
+ };
21
+ /** State of each stage relative to the current one. */
22
+ export const resolveStageStates = (stages, currentId) => {
23
+ const index = stages.findIndex(stage => stage.id === currentId);
24
+ // An unknown current id means nothing is complete — better than silently
25
+ // marking the whole path done because the host sent a stale value.
26
+ return stages.map((_, position) => index === -1
27
+ ? "upcoming"
28
+ : position < index
29
+ ? "complete"
30
+ : position === index
31
+ ? "current"
32
+ : "upcoming");
33
+ };
34
+ const elementStyles = `
35
+ :host {
36
+ display: block;
37
+ }
38
+
39
+ [part="path"] {
40
+ display: flex;
41
+ flex-wrap: wrap;
42
+ margin: 0;
43
+ padding: 0;
44
+ list-style: none;
45
+ }
46
+
47
+ [part="stage"] {
48
+ position: relative;
49
+ flex: 1 1 0;
50
+ min-inline-size: 6rem;
51
+ padding: 0.45rem 0.7rem 0.45rem 1.35rem;
52
+ background: var(--boe-token-surface-surface-hover, #f4f4f4);
53
+ color: var(--boe-token-text-text-secondary, #6f6f6f);
54
+ font-size: 0.82rem;
55
+ transition: background ${boeMotionDuration.interactive} ${boeMotionEasing.standard};
56
+ }
57
+
58
+ [part="stage"]:first-child {
59
+ padding-inline-start: 0.8rem;
60
+ border-start-start-radius: 999px;
61
+ border-end-start-radius: 999px;
62
+ }
63
+
64
+ [part="stage"]:last-child {
65
+ border-start-end-radius: 999px;
66
+ border-end-end-radius: 999px;
67
+ }
68
+
69
+ /* The chevron: a notch cut from the following stage plus an arrow on
70
+ this one, so the path reads as a directed sequence rather than a row
71
+ of pills. Drawn with clip-path so no extra elements are needed. */
72
+ [part="stage"]:not(:last-child) {
73
+ clip-path: polygon(0 0, calc(100% - 0.7rem) 0, 100% 50%, calc(100% - 0.7rem) 100%, 0 100%, 0.7rem 50%);
74
+ margin-inline-end: -0.55rem;
75
+ }
76
+
77
+ [part="stage"]:first-child:not(:last-child) {
78
+ clip-path: polygon(0 0, calc(100% - 0.7rem) 0, 100% 50%, calc(100% - 0.7rem) 100%, 0 100%);
79
+ }
80
+
81
+ [part="stage"]:last-child:not(:first-child) {
82
+ clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 0.7rem 50%);
83
+ }
84
+
85
+ [part="stage"][data-state="complete"] {
86
+ background: color-mix(in srgb, var(--boe-token-surface-status-surface-success, #26a27b) 18%, transparent);
87
+ color: color-mix(in srgb, var(--boe-token-surface-status-surface-success, #26a27b) 72%, black 28%);
88
+ }
89
+
90
+ [part="stage"][data-state="current"] {
91
+ background: var(--boe-token-surface-surface-brand, #0061d5);
92
+ color: var(--boe-token-text-text-on-brand, #ffffff);
93
+ font-weight: 700;
94
+ }
95
+
96
+ [part="stage-label"] {
97
+ display: block;
98
+ }
99
+
100
+ [part="stage-description"] {
101
+ display: block;
102
+ margin-block-start: 0.1rem;
103
+ font-size: 0.72rem;
104
+ font-weight: 400;
105
+ opacity: 0.85;
106
+ }
107
+
108
+ [part="stage-marker"] {
109
+ margin-inline-end: 0.3rem;
110
+ font-weight: 700;
111
+ }
112
+
113
+ @media (prefers-reduced-motion: reduce) {
114
+ [part="stage"] {
115
+ transition: none;
116
+ }
117
+ }
118
+
119
+ @media (max-width: 34rem) {
120
+ /* Chevrons collapse below the width where they stop being legible;
121
+ the states still read from tone and the completed marker. */
122
+ [part="stage"],
123
+ [part="stage"]:first-child:not(:last-child),
124
+ [part="stage"]:last-child:not(:first-child) {
125
+ clip-path: none;
126
+ margin-inline-end: 0;
127
+ padding-inline-start: 0.8rem;
128
+ border-radius: 0;
129
+ }
130
+ }
131
+ `;
132
+ /**
133
+ * Horizontal chevron lifecycle tracker for record headers — Draft → In
134
+ * Review → Approved → Executed.
135
+ *
136
+ * Distinct from `box-progress-steps`, which is a vertical setup rail for a
137
+ * task the reader is working through: this states where a *record* sits in
138
+ * its lifecycle, is read-only, and belongs in a header rather than a form.
139
+ *
140
+ * Rendered as an ordered list with the current stage marked `aria-current`,
141
+ * so the sequence and the position are both available without relying on the
142
+ * chevron geometry — which is decoration, and collapses on narrow viewports.
143
+ */
144
+ export class StagePath extends BaseElement {
145
+ static tagName = DEFAULT_TAG_NAME;
146
+ static get observedAttributes() {
147
+ return ["current", "label", "stages"];
148
+ }
149
+ pathEl;
150
+ stagesRaw = null;
151
+ stagesCache = [];
152
+ get label() {
153
+ return this.getAttribute("label") ?? "Lifecycle";
154
+ }
155
+ set label(value) {
156
+ this.setAttribute("label", value);
157
+ }
158
+ /** Id of the stage the record is at. An unknown id leaves every stage upcoming. */
159
+ get current() {
160
+ return this.getAttribute("current") ?? "";
161
+ }
162
+ set current(value) {
163
+ this.setAttribute("current", value);
164
+ }
165
+ get stages() {
166
+ const raw = this.getAttribute("stages");
167
+ if (!raw) {
168
+ return [];
169
+ }
170
+ if (raw !== this.stagesRaw) {
171
+ this.stagesRaw = raw;
172
+ try {
173
+ const parsed = JSON.parse(raw);
174
+ this.stagesCache =
175
+ Array.isArray(parsed) && parsed.every(isStagePathStageRecord)
176
+ ? parsed
177
+ : [];
178
+ }
179
+ catch {
180
+ this.stagesCache = [];
181
+ }
182
+ }
183
+ return [...this.stagesCache];
184
+ }
185
+ set stages(value) {
186
+ if (value.length) {
187
+ this.setAttribute("stages", JSON.stringify(value));
188
+ return;
189
+ }
190
+ this.removeAttribute("stages");
191
+ }
192
+ /** State of each stage, in order. */
193
+ get states() {
194
+ return resolveStageStates(this.stages, this.current);
195
+ }
196
+ renderTemplate() {
197
+ if (!this.shadowRoot) {
198
+ return;
199
+ }
200
+ this.shadowRoot.innerHTML = `<style>${elementStyles}</style><ol part="path"></ol>`;
201
+ this.pathEl = this.shadowRoot.querySelector('[part="path"]');
202
+ }
203
+ setupListeners() {
204
+ // Read-only: a record's lifecycle position is not something a header edits.
205
+ }
206
+ update() {
207
+ if (!this.pathEl) {
208
+ return;
209
+ }
210
+ const stages = this.stages;
211
+ const states = resolveStageStates(stages, this.current);
212
+ this.pathEl.setAttribute("aria-label", this.label);
213
+ this.pathEl.innerHTML = stages
214
+ .map((stage, index) => {
215
+ const state = states[index];
216
+ // The completed marker is a second, non-colour signal for "done".
217
+ const marker = state === "complete" ? `<span part="stage-marker" aria-hidden="true">✓</span>` : "";
218
+ return `
219
+ <li
220
+ part="stage"
221
+ data-stage-id="${escapeHtml(stage.id)}"
222
+ data-state="${state}"
223
+ ${state === "current" ? 'aria-current="step"' : ""}
224
+ >
225
+ <span part="stage-label">${marker}${escapeHtml(stage.label)}</span>
226
+ ${state === "current" && stage.description
227
+ ? `<span part="stage-description">${escapeHtml(stage.description)}</span>`
228
+ : ""}
229
+ </li>
230
+ `;
231
+ })
232
+ .join("");
233
+ }
234
+ }
235
+ StagePath.register();
@@ -1,5 +1,6 @@
1
1
  import { BaseElement } from "../../core/index.js";
2
- export declare class BoxToastElement extends BaseElement {
2
+ export declare class Toast extends BaseElement {
3
+ static readonly tagName: string;
3
4
  static get observedAttributes(): string[];
4
5
  private openValue;
5
6
  private timeoutId;
@@ -28,4 +29,3 @@ export declare class BoxToastElement extends BaseElement {
28
29
  protected setupListeners(): void;
29
30
  protected update(): void;
30
31
  }
31
- export declare const defineBoxToastElement: (tagName?: string) => typeof BoxToastElement;
@@ -108,7 +108,8 @@ const toastStyles = `
108
108
  box-shadow: none;
109
109
  }
110
110
  `;
111
- export class BoxToastElement extends BaseElement {
111
+ export class Toast extends BaseElement {
112
+ static tagName = DEFAULT_TAG_NAME;
112
113
  static get observedAttributes() {
113
114
  return ["message", "open", "tone", "duration"];
114
115
  }
@@ -243,11 +244,4 @@ export class BoxToastElement extends BaseElement {
243
244
  this.messageEl.textContent = this.message;
244
245
  }
245
246
  }
246
- export const defineBoxToastElement = (tagName = DEFAULT_TAG_NAME) => {
247
- const existingElement = customElements.get(tagName);
248
- if (existingElement) {
249
- return existingElement;
250
- }
251
- customElements.define(tagName, BoxToastElement);
252
- return BoxToastElement;
253
- };
247
+ Toast.register();
@@ -1,5 +1,6 @@
1
1
  import { BaseElement } from "../../core/index.js";
2
- export declare class BoxDropZoneElement extends BaseElement {
2
+ export declare class DropZone extends BaseElement {
3
+ static readonly tagName: string;
3
4
  static get observedAttributes(): string[];
4
5
  private dragging;
5
6
  private zoneEl;
@@ -16,4 +17,3 @@ export declare class BoxDropZoneElement extends BaseElement {
16
17
  protected setupListeners(): void;
17
18
  protected update(): void;
18
19
  }
19
- export declare const defineBoxDropZoneElement: (tagName?: string) => typeof BoxDropZoneElement;
@@ -70,7 +70,8 @@ const dropZoneStyles = `
70
70
  max-width: 34ch;
71
71
  }
72
72
  `;
73
- export class BoxDropZoneElement extends BaseElement {
73
+ export class DropZone extends BaseElement {
74
+ static tagName = DEFAULT_TAG_NAME;
74
75
  static get observedAttributes() {
75
76
  return ["description", "label", "message"];
76
77
  }
@@ -159,11 +160,4 @@ export class BoxDropZoneElement extends BaseElement {
159
160
  this.messageEl.textContent = this.message;
160
161
  }
161
162
  }
162
- export const defineBoxDropZoneElement = (tagName = DEFAULT_TAG_NAME) => {
163
- const existingElement = customElements.get(tagName);
164
- if (existingElement) {
165
- return existingElement;
166
- }
167
- customElements.define(tagName, BoxDropZoneElement);
168
- return BoxDropZoneElement;
169
- };
163
+ DropZone.register();
@@ -1,5 +1,6 @@
1
1
  import { BaseElement } from "../../core/index.js";
2
- export declare class BoxCalendarElement extends BaseElement {
2
+ export declare class Calendar extends BaseElement {
3
+ static readonly tagName: string;
3
4
  static get observedAttributes(): string[];
4
5
  /** The date the roving tabindex currently points at. */
5
6
  private activeDate;
@@ -44,4 +45,3 @@ export declare class BoxCalendarElement extends BaseElement {
44
45
  protected setupListeners(): void;
45
46
  protected update(): void;
46
47
  }
47
- export declare const defineBoxCalendarElement: (tagName?: string) => typeof BoxCalendarElement;
@@ -182,7 +182,8 @@ const calendarStyles = `
182
182
  cursor: not-allowed;
183
183
  }
184
184
  `;
185
- export class BoxCalendarElement extends BaseElement {
185
+ export class Calendar extends BaseElement {
186
+ static tagName = DEFAULT_TAG_NAME;
186
187
  static get observedAttributes() {
187
188
  return ["disabled", "max", "min", "month", "today", "value"];
188
189
  }
@@ -489,11 +490,4 @@ export class BoxCalendarElement extends BaseElement {
489
490
  `;
490
491
  }
491
492
  }
492
- export const defineBoxCalendarElement = (tagName = DEFAULT_TAG_NAME) => {
493
- const existingElement = customElements.get(tagName);
494
- if (existingElement) {
495
- return existingElement;
496
- }
497
- customElements.define(tagName, BoxCalendarElement);
498
- return BoxCalendarElement;
499
- };
493
+ Calendar.register();
@@ -11,7 +11,8 @@ type CategoryOption = {
11
11
  * `value` and announced with `value-changed`. Follows the radiogroup keyboard
12
12
  * pattern: arrow keys move selection with roving `tabindex`.
13
13
  */
14
- export declare class BoxCategorySelectorElement extends BaseElement {
14
+ export declare class CategorySelector extends BaseElement {
15
+ static readonly tagName: string;
15
16
  static get observedAttributes(): string[];
16
17
  private valueInternal;
17
18
  private lastOptionsJson;
@@ -42,5 +43,4 @@ export declare class BoxCategorySelectorElement extends BaseElement {
42
43
  protected setupListeners(): void;
43
44
  protected update(): void;
44
45
  }
45
- export declare const defineBoxCategorySelectorElement: (tagName?: string) => typeof BoxCategorySelectorElement;
46
46
  export {};
@@ -114,7 +114,8 @@ const categorySelectorStyles = `
114
114
  * `value` and announced with `value-changed`. Follows the radiogroup keyboard
115
115
  * pattern: arrow keys move selection with roving `tabindex`.
116
116
  */
117
- export class BoxCategorySelectorElement extends BaseElement {
117
+ export class CategorySelector extends BaseElement {
118
+ static tagName = DEFAULT_TAG_NAME;
118
119
  static get observedAttributes() {
119
120
  return ["label", "options", "value", "max-links"];
120
121
  }
@@ -453,11 +454,4 @@ export class BoxCategorySelectorElement extends BaseElement {
453
454
  }
454
455
  }
455
456
  }
456
- export const defineBoxCategorySelectorElement = (tagName = DEFAULT_TAG_NAME) => {
457
- const existingElement = customElements.get(tagName);
458
- if (existingElement) {
459
- return existingElement;
460
- }
461
- customElements.define(tagName, BoxCategorySelectorElement);
462
- return BoxCategorySelectorElement;
463
- };
457
+ CategorySelector.register();
@@ -5,7 +5,8 @@ type CheckboxGroupOption = {
5
5
  label: string;
6
6
  value: string;
7
7
  };
8
- export declare class BoxCheckboxGroupElement extends FormAssociatedElement {
8
+ export declare class CheckboxGroup extends FormAssociatedElement {
9
+ static readonly tagName: string;
9
10
  static get observedAttributes(): string[];
10
11
  private valueInternal;
11
12
  private lastOptionsJson;
@@ -27,5 +28,4 @@ export declare class BoxCheckboxGroupElement extends FormAssociatedElement {
27
28
  protected setupListeners(): void;
28
29
  protected update(): void;
29
30
  }
30
- export declare const defineBoxCheckboxGroupElement: (tagName?: string) => typeof BoxCheckboxGroupElement;
31
31
  export {};
@@ -96,7 +96,8 @@ const checkboxGroupStyles = `
96
96
 
97
97
  ${boeFormFieldErrorStyles}
98
98
  `;
99
- export class BoxCheckboxGroupElement extends FormAssociatedElement {
99
+ export class CheckboxGroup extends FormAssociatedElement {
100
+ static tagName = DEFAULT_TAG_NAME;
100
101
  static get observedAttributes() {
101
102
  return [
102
103
  ...FormAssociatedElement.formObservedAttributes,
@@ -257,11 +258,4 @@ export class BoxCheckboxGroupElement extends FormAssociatedElement {
257
258
  this.applyInvalidStateToControls(Array.from(this.optionsContainerEl.querySelectorAll('[part="input"]')), this.errorEl);
258
259
  }
259
260
  }
260
- export const defineBoxCheckboxGroupElement = (tagName = DEFAULT_TAG_NAME) => {
261
- const existingElement = customElements.get(tagName);
262
- if (existingElement) {
263
- return existingElement;
264
- }
265
- customElements.define(tagName, BoxCheckboxGroupElement);
266
- return BoxCheckboxGroupElement;
267
- };
261
+ CheckboxGroup.register();
@@ -1,6 +1,7 @@
1
1
  import { FormAssociatedElement } from "../../core/index.js";
2
2
  import type { FormValue } from "../../core/index.js";
3
- export declare class BoxCheckboxElement extends FormAssociatedElement {
3
+ export declare class Checkbox extends FormAssociatedElement {
4
+ static readonly tagName: string;
4
5
  static get observedAttributes(): string[];
5
6
  private checkedInternal;
6
7
  private indeterminateInternal;
@@ -31,4 +32,3 @@ export declare class BoxCheckboxElement extends FormAssociatedElement {
31
32
  protected setupListeners(): void;
32
33
  protected update(): void;
33
34
  }
34
- export declare const defineBoxCheckboxElement: (tagName?: string) => typeof BoxCheckboxElement;
@@ -81,7 +81,8 @@ const checkboxStyles = `
81
81
 
82
82
  ${boeFormFieldErrorStyles}
83
83
  `;
84
- export class BoxCheckboxElement extends FormAssociatedElement {
84
+ export class Checkbox extends FormAssociatedElement {
85
+ static tagName = DEFAULT_TAG_NAME;
85
86
  static get observedAttributes() {
86
87
  return [
87
88
  ...FormAssociatedElement.formObservedAttributes,
@@ -297,11 +298,4 @@ export class BoxCheckboxElement extends FormAssociatedElement {
297
298
  this.applyInvalidState(this.inputEl, this.errorEl);
298
299
  }
299
300
  }
300
- export const defineBoxCheckboxElement = (tagName = DEFAULT_TAG_NAME) => {
301
- const existingElement = customElements.get(tagName);
302
- if (existingElement) {
303
- return existingElement;
304
- }
305
- customElements.define(tagName, BoxCheckboxElement);
306
- return BoxCheckboxElement;
307
- };
301
+ Checkbox.register();
@@ -4,7 +4,8 @@ type BoxColorSwatch = {
4
4
  label?: string;
5
5
  value: string;
6
6
  };
7
- export declare class BoxColorPickerElement extends FormAssociatedElement {
7
+ export declare class ColorPicker extends FormAssociatedElement {
8
+ static readonly tagName: string;
8
9
  static get observedAttributes(): string[];
9
10
  private valueInternal;
10
11
  private lastSwatchesJson;
@@ -30,5 +31,4 @@ export declare class BoxColorPickerElement extends FormAssociatedElement {
30
31
  protected setupListeners(): void;
31
32
  protected update(): void;
32
33
  }
33
- export declare const defineBoxColorPickerElement: (tagName?: string) => typeof BoxColorPickerElement;
34
34
  export {};
@@ -117,7 +117,8 @@ const colorPickerStyles = `
117
117
 
118
118
  ${boeFormFieldErrorStyles}
119
119
  `;
120
- export class BoxColorPickerElement extends FormAssociatedElement {
120
+ export class ColorPicker extends FormAssociatedElement {
121
+ static tagName = DEFAULT_TAG_NAME;
121
122
  static get observedAttributes() {
122
123
  return [
123
124
  ...FormAssociatedElement.formObservedAttributes,
@@ -304,11 +305,4 @@ export class BoxColorPickerElement extends FormAssociatedElement {
304
305
  this.applyInvalidState(this.inputEl, this.errorEl);
305
306
  }
306
307
  }
307
- export const defineBoxColorPickerElement = (tagName = DEFAULT_TAG_NAME) => {
308
- const existingElement = customElements.get(tagName);
309
- if (existingElement) {
310
- return existingElement;
311
- }
312
- customElements.define(tagName, BoxColorPickerElement);
313
- return BoxColorPickerElement;
314
- };
308
+ ColorPicker.register();
@@ -9,7 +9,8 @@ type BoxComboboxOption = {
9
9
  group?: string;
10
10
  disabled?: boolean;
11
11
  };
12
- export declare class BoxComboboxElement extends FormAssociatedElement {
12
+ export declare class Combobox extends FormAssociatedElement {
13
+ static readonly tagName: string;
13
14
  static get observedAttributes(): string[];
14
15
  private valueInternal;
15
16
  private open;
@@ -62,5 +63,4 @@ export declare class BoxComboboxElement extends FormAssociatedElement {
62
63
  private renderOptions;
63
64
  protected update(): void;
64
65
  }
65
- export declare const defineBoxComboboxElement: (tagName?: string) => typeof BoxComboboxElement;
66
66
  export {};
@@ -133,7 +133,8 @@ const comboboxStyles = `
133
133
 
134
134
  ${boeFormFieldErrorStyles}
135
135
  `;
136
- export class BoxComboboxElement extends FormAssociatedElement {
136
+ export class Combobox extends FormAssociatedElement {
137
+ static tagName = DEFAULT_TAG_NAME;
137
138
  static get observedAttributes() {
138
139
  return [
139
140
  ...FormAssociatedElement.formObservedAttributes,
@@ -528,11 +529,4 @@ export class BoxComboboxElement extends FormAssociatedElement {
528
529
  this.applyInvalidState(this.inputEl, this.errorEl);
529
530
  }
530
531
  }
531
- export const defineBoxComboboxElement = (tagName = DEFAULT_TAG_NAME) => {
532
- const existingElement = customElements.get(tagName);
533
- if (existingElement) {
534
- return existingElement;
535
- }
536
- customElements.define(tagName, BoxComboboxElement);
537
- return BoxComboboxElement;
538
- };
532
+ Combobox.register();
@@ -1,6 +1,7 @@
1
1
  import { FormAssociatedElement } from "../../core/index.js";
2
2
  import type { FormValue } from "../../core/index.js";
3
- export declare class BoxDateFieldElement extends FormAssociatedElement {
3
+ export declare class DateField extends FormAssociatedElement {
4
+ static readonly tagName: string;
4
5
  static get observedAttributes(): string[];
5
6
  private valueInternal;
6
7
  private inputEl;
@@ -32,4 +33,3 @@ export declare class BoxDateFieldElement extends FormAssociatedElement {
32
33
  clear(): void;
33
34
  protected update(): void;
34
35
  }
35
- export declare const defineBoxDateFieldElement: (tagName?: string) => typeof BoxDateFieldElement;
@@ -89,7 +89,8 @@ const dateFieldStyles = `
89
89
  ${boeFormFieldErrorStyles}
90
90
  ${boeFormFieldSupportStyles}
91
91
  `;
92
- export class BoxDateFieldElement extends FormAssociatedElement {
92
+ export class DateField extends FormAssociatedElement {
93
+ static tagName = DEFAULT_TAG_NAME;
93
94
  static get observedAttributes() {
94
95
  return [
95
96
  ...FormAssociatedElement.fieldObservedAttributes,
@@ -254,11 +255,4 @@ export class BoxDateFieldElement extends FormAssociatedElement {
254
255
  this.applyInvalidState(this.inputEl, this.errorEl);
255
256
  }
256
257
  }
257
- export const defineBoxDateFieldElement = (tagName = DEFAULT_TAG_NAME) => {
258
- const existingElement = customElements.get(tagName);
259
- if (existingElement) {
260
- return existingElement;
261
- }
262
- customElements.define(tagName, BoxDateFieldElement);
263
- return BoxDateFieldElement;
264
- };
258
+ DateField.register();
@@ -4,7 +4,8 @@ type BoxDropdownItem = {
4
4
  id: string;
5
5
  label: string;
6
6
  };
7
- export declare class BoxDropdownElement extends FormAssociatedElement {
7
+ export declare class Dropdown extends FormAssociatedElement {
8
+ static readonly tagName: string;
8
9
  static get observedAttributes(): string[];
9
10
  private open;
10
11
  private valueInternal;
@@ -39,5 +40,4 @@ export declare class BoxDropdownElement extends FormAssociatedElement {
39
40
  protected update(): void;
40
41
  private stopTracking;
41
42
  }
42
- export declare const defineBoxDropdownElement: (tagName?: string) => typeof BoxDropdownElement;
43
43
  export {};
@@ -135,7 +135,8 @@ const dropdownStyles = `
135
135
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--boe-token-surface-status-surface-error, #ed3757) 22%, transparent);
136
136
  }
137
137
  `;
138
- export class BoxDropdownElement extends FormAssociatedElement {
138
+ export class Dropdown extends FormAssociatedElement {
139
+ static tagName = DEFAULT_TAG_NAME;
139
140
  static get observedAttributes() {
140
141
  return [
141
142
  ...FormAssociatedElement.formObservedAttributes,
@@ -424,11 +425,4 @@ export class BoxDropdownElement extends FormAssociatedElement {
424
425
  this.positionCleanup = null;
425
426
  }
426
427
  }
427
- export const defineBoxDropdownElement = (tagName = DEFAULT_TAG_NAME) => {
428
- const existingElement = customElements.get(tagName);
429
- if (existingElement) {
430
- return existingElement;
431
- }
432
- customElements.define(tagName, BoxDropdownElement);
433
- return BoxDropdownElement;
434
- };
428
+ Dropdown.register();
@@ -5,7 +5,8 @@ type DualListboxOption = {
5
5
  label: string;
6
6
  value: string;
7
7
  };
8
- export declare class BoxDualListboxElement extends FormAssociatedElement {
8
+ export declare class DualListbox extends FormAssociatedElement {
9
+ static readonly tagName: string;
9
10
  static get observedAttributes(): string[];
10
11
  private availableSelection;
11
12
  private chosenSelection;
@@ -40,5 +41,4 @@ export declare class BoxDualListboxElement extends FormAssociatedElement {
40
41
  private syncListRoving;
41
42
  protected update(): void;
42
43
  }
43
- export declare const defineBoxDualListboxElement: (tagName?: string) => typeof BoxDualListboxElement;
44
44
  export {};
@@ -176,7 +176,8 @@ const dualListboxStyles = `
176
176
 
177
177
  ${boeFormFieldErrorStyles}
178
178
  `;
179
- export class BoxDualListboxElement extends FormAssociatedElement {
179
+ export class DualListbox extends FormAssociatedElement {
180
+ static tagName = DEFAULT_TAG_NAME;
180
181
  static get observedAttributes() {
181
182
  return [
182
183
  ...FormAssociatedElement.formObservedAttributes,
@@ -474,11 +475,4 @@ export class BoxDualListboxElement extends FormAssociatedElement {
474
475
  this.applyInvalidStateToControls(focusableControls, this.errorEl);
475
476
  }
476
477
  }
477
- export const defineBoxDualListboxElement = (tagName = DEFAULT_TAG_NAME) => {
478
- const existingElement = customElements.get(tagName);
479
- if (existingElement) {
480
- return existingElement;
481
- }
482
- customElements.define(tagName, BoxDualListboxElement);
483
- return BoxDualListboxElement;
484
- };
478
+ DualListbox.register();