@threadlabs/looma 0.28.19 → 0.28.21

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 (420) hide show
  1. package/components/ui-editor-code-language/ui-editor-code-language.html +1 -1
  2. package/components/ui-editor-image-toolbar/ui-editor-image-toolbar.html +9 -10
  3. package/components/ui-editor-image-toolbar/ui-editor-image-toolbar.js +6 -8
  4. package/components/ui-editor-link-form/ui-editor-link-form.html +2 -3
  5. package/dist/index.js +10 -8
  6. package/editor/chunks/extensions.js +199 -142
  7. package/editor/extensions/task-item.d.ts +7 -0
  8. package/package.json +3 -3
  9. package/styles/ui-action-bar.css +1 -1
  10. package/styles/ui-affordance-scope.css +1 -1
  11. package/styles/ui-avatar-group.css +1 -1
  12. package/styles/ui-avatar.css +1 -1
  13. package/styles/ui-badge.css +1 -1
  14. package/styles/ui-breadcrumb-item.css +1 -1
  15. package/styles/ui-breadcrumbs.css +1 -1
  16. package/styles/ui-button.css +1 -1
  17. package/styles/ui-callout.css +1 -1
  18. package/styles/ui-card.css +1 -1
  19. package/styles/ui-checkbox.css +1 -1
  20. package/styles/ui-cluster.css +1 -1
  21. package/styles/ui-combobox.css +1 -1
  22. package/styles/ui-container.css +1 -1
  23. package/styles/ui-context-menu.css +1 -1
  24. package/styles/ui-cover.css +1 -1
  25. package/styles/ui-description-item.css +1 -1
  26. package/styles/ui-description-list.css +1 -1
  27. package/styles/ui-dialog.css +1 -1
  28. package/styles/ui-disclosure.css +1 -1
  29. package/styles/ui-editable.css +1 -1
  30. package/styles/ui-editor-block-actions.css +1 -1
  31. package/styles/ui-editor-chip-editor.css +1 -1
  32. package/styles/ui-editor-code-language.css +1 -1
  33. package/styles/ui-editor-image-toolbar.css +1 -1
  34. package/styles/ui-editor-insert-table-grid.css +1 -1
  35. package/styles/ui-editor-link-card.css +1 -1
  36. package/styles/ui-editor-link-form.css +1 -1
  37. package/styles/ui-editor-mention-menu-item.css +1 -1
  38. package/styles/ui-editor-mention-menu.css +1 -1
  39. package/styles/ui-editor-slash-menu-group.css +1 -1
  40. package/styles/ui-editor-slash-menu-item.css +1 -1
  41. package/styles/ui-editor-slash-menu.css +1 -1
  42. package/styles/ui-editor-surface.css +1 -1
  43. package/styles/ui-editor-table-context-menu.css +1 -1
  44. package/styles/ui-editor-table-overlay.css +1 -1
  45. package/styles/ui-editor-table-toolbar.css +1 -1
  46. package/styles/ui-editor-toolbar.css +1 -1
  47. package/styles/ui-floating-action-button.css +1 -1
  48. package/styles/ui-form-field.css +1 -1
  49. package/styles/ui-grid.css +1 -1
  50. package/styles/ui-icon-button.css +1 -1
  51. package/styles/ui-icon.css +1 -1
  52. package/styles/ui-image.css +1 -1
  53. package/styles/ui-input-group.css +1 -1
  54. package/styles/ui-input.css +1 -1
  55. package/styles/ui-list-item.css +1 -1
  56. package/styles/ui-list.css +1 -1
  57. package/styles/ui-listbox.css +1 -1
  58. package/styles/ui-menu-group.css +1 -1
  59. package/styles/ui-menu-item.css +1 -1
  60. package/styles/ui-menu.css +1 -1
  61. package/styles/ui-meter.css +1 -1
  62. package/styles/ui-nav-item.css +1 -1
  63. package/styles/ui-page-header.css +1 -1
  64. package/styles/ui-popover.css +1 -1
  65. package/styles/ui-radio-group.css +1 -1
  66. package/styles/ui-radio.css +1 -1
  67. package/styles/ui-reel.css +1 -1
  68. package/styles/ui-scroll-area.css +1 -1
  69. package/styles/ui-search-result-row.css +1 -1
  70. package/styles/ui-search-shell.css +1 -1
  71. package/styles/ui-section.css +1 -1
  72. package/styles/ui-select.css +1 -1
  73. package/styles/ui-separator.css +1 -1
  74. package/styles/ui-sidebar.css +1 -1
  75. package/styles/ui-spinner.css +1 -1
  76. package/styles/ui-stack.css +1 -1
  77. package/styles/ui-status-message.css +1 -1
  78. package/styles/ui-swatch.css +1 -1
  79. package/styles/ui-switch.css +1 -1
  80. package/styles/ui-switcher.css +1 -1
  81. package/styles/ui-table.css +1 -1
  82. package/styles/ui-tabs.css +1 -1
  83. package/styles/ui-text.css +1 -1
  84. package/styles/ui-textarea.css +1 -1
  85. package/styles/ui-toast-region.css +1 -1
  86. package/styles/ui-toast.css +1 -1
  87. package/styles/ui-tooltip.css +1 -1
  88. package/styles/ui-top-bar.css +1 -1
  89. package/styles/ui-tree-item.css +1 -1
  90. package/styles/ui-tree.css +1 -1
  91. package/vanilla/UiActionBar.d.ts +1 -1
  92. package/vanilla/UiActionBar.js +1 -1
  93. package/vanilla/UiAffordanceScope.d.ts +1 -1
  94. package/vanilla/UiAffordanceScope.js +1 -1
  95. package/vanilla/UiAvatar.d.ts +1 -1
  96. package/vanilla/UiAvatar.js +1 -1
  97. package/vanilla/UiAvatarGroup.d.ts +1 -1
  98. package/vanilla/UiAvatarGroup.js +1 -1
  99. package/vanilla/UiBadge.d.ts +1 -1
  100. package/vanilla/UiBadge.js +1 -1
  101. package/vanilla/UiBreadcrumbItem.d.ts +1 -1
  102. package/vanilla/UiBreadcrumbItem.js +1 -1
  103. package/vanilla/UiBreadcrumbs.d.ts +1 -1
  104. package/vanilla/UiBreadcrumbs.js +1 -1
  105. package/vanilla/UiButton.d.ts +1 -1
  106. package/vanilla/UiButton.js +1 -1
  107. package/vanilla/UiCallout.d.ts +1 -1
  108. package/vanilla/UiCallout.js +1 -1
  109. package/vanilla/UiCard.d.ts +1 -1
  110. package/vanilla/UiCard.js +1 -1
  111. package/vanilla/UiCheckbox.d.ts +1 -1
  112. package/vanilla/UiCheckbox.js +1 -1
  113. package/vanilla/UiCluster.d.ts +1 -1
  114. package/vanilla/UiCluster.js +1 -1
  115. package/vanilla/UiCombobox.d.ts +1 -1
  116. package/vanilla/UiCombobox.js +1 -1
  117. package/vanilla/UiContainer.d.ts +1 -1
  118. package/vanilla/UiContainer.js +1 -1
  119. package/vanilla/UiContextMenu.d.ts +1 -1
  120. package/vanilla/UiContextMenu.js +1 -1
  121. package/vanilla/UiCover.d.ts +1 -1
  122. package/vanilla/UiCover.js +1 -1
  123. package/vanilla/UiDescriptionItem.d.ts +1 -1
  124. package/vanilla/UiDescriptionItem.js +1 -1
  125. package/vanilla/UiDescriptionList.d.ts +1 -1
  126. package/vanilla/UiDescriptionList.js +1 -1
  127. package/vanilla/UiDialog.d.ts +1 -1
  128. package/vanilla/UiDialog.js +1 -1
  129. package/vanilla/UiDisclosure.d.ts +1 -1
  130. package/vanilla/UiDisclosure.js +1 -1
  131. package/vanilla/UiEditable.d.ts +1 -1
  132. package/vanilla/UiEditable.js +1 -1
  133. package/vanilla/UiEditorBlockActions.d.ts +1 -1
  134. package/vanilla/UiEditorBlockActions.js +1 -1
  135. package/vanilla/UiEditorChipEditor.d.ts +1 -1
  136. package/vanilla/UiEditorChipEditor.js +1 -1
  137. package/vanilla/UiEditorCodeLanguage.d.ts +1 -1
  138. package/vanilla/UiEditorCodeLanguage.js +2 -2
  139. package/vanilla/UiEditorImageToolbar.d.ts +1 -1
  140. package/vanilla/UiEditorImageToolbar.js +4 -2
  141. package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
  142. package/vanilla/UiEditorInsertTableGrid.js +1 -1
  143. package/vanilla/UiEditorLinkCard.d.ts +1 -1
  144. package/vanilla/UiEditorLinkCard.js +1 -1
  145. package/vanilla/UiEditorLinkForm.d.ts +1 -1
  146. package/vanilla/UiEditorLinkForm.js +2 -2
  147. package/vanilla/UiEditorMentionMenu.d.ts +1 -1
  148. package/vanilla/UiEditorMentionMenu.js +1 -1
  149. package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
  150. package/vanilla/UiEditorMentionMenuItem.js +1 -1
  151. package/vanilla/UiEditorSlashMenu.d.ts +1 -1
  152. package/vanilla/UiEditorSlashMenu.js +1 -1
  153. package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
  154. package/vanilla/UiEditorSlashMenuGroup.js +1 -1
  155. package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
  156. package/vanilla/UiEditorSlashMenuItem.js +1 -1
  157. package/vanilla/UiEditorSurface.d.ts +1 -1
  158. package/vanilla/UiEditorSurface.js +1 -1
  159. package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
  160. package/vanilla/UiEditorTableContextMenu.js +1 -1
  161. package/vanilla/UiEditorTableOverlay.d.ts +1 -1
  162. package/vanilla/UiEditorTableOverlay.js +1 -1
  163. package/vanilla/UiEditorTableToolbar.d.ts +1 -1
  164. package/vanilla/UiEditorTableToolbar.js +1 -1
  165. package/vanilla/UiEditorToolbar.d.ts +1 -1
  166. package/vanilla/UiEditorToolbar.js +1 -1
  167. package/vanilla/UiFloatingActionButton.d.ts +1 -1
  168. package/vanilla/UiFloatingActionButton.js +1 -1
  169. package/vanilla/UiFormField.d.ts +1 -1
  170. package/vanilla/UiFormField.js +1 -1
  171. package/vanilla/UiGrid.d.ts +1 -1
  172. package/vanilla/UiGrid.js +1 -1
  173. package/vanilla/UiIcon.d.ts +1 -1
  174. package/vanilla/UiIcon.js +1 -1
  175. package/vanilla/UiIconButton.d.ts +1 -1
  176. package/vanilla/UiIconButton.js +1 -1
  177. package/vanilla/UiImage.d.ts +1 -1
  178. package/vanilla/UiImage.js +1 -1
  179. package/vanilla/UiInput.d.ts +1 -1
  180. package/vanilla/UiInput.js +1 -1
  181. package/vanilla/UiInputGroup.d.ts +1 -1
  182. package/vanilla/UiInputGroup.js +1 -1
  183. package/vanilla/UiList.d.ts +1 -1
  184. package/vanilla/UiList.js +1 -1
  185. package/vanilla/UiListItem.d.ts +1 -1
  186. package/vanilla/UiListItem.js +1 -1
  187. package/vanilla/UiListbox.d.ts +1 -1
  188. package/vanilla/UiListbox.js +1 -1
  189. package/vanilla/UiMenu.d.ts +1 -1
  190. package/vanilla/UiMenu.js +1 -1
  191. package/vanilla/UiMenuGroup.d.ts +1 -1
  192. package/vanilla/UiMenuGroup.js +1 -1
  193. package/vanilla/UiMenuItem.d.ts +1 -1
  194. package/vanilla/UiMenuItem.js +1 -1
  195. package/vanilla/UiMeter.d.ts +1 -1
  196. package/vanilla/UiMeter.js +1 -1
  197. package/vanilla/UiNavItem.d.ts +1 -1
  198. package/vanilla/UiNavItem.js +1 -1
  199. package/vanilla/UiPageHeader.d.ts +1 -1
  200. package/vanilla/UiPageHeader.js +1 -1
  201. package/vanilla/UiPopover.d.ts +1 -1
  202. package/vanilla/UiPopover.js +1 -1
  203. package/vanilla/UiRadio.d.ts +1 -1
  204. package/vanilla/UiRadio.js +1 -1
  205. package/vanilla/UiRadioGroup.d.ts +1 -1
  206. package/vanilla/UiRadioGroup.js +1 -1
  207. package/vanilla/UiReel.d.ts +1 -1
  208. package/vanilla/UiReel.js +1 -1
  209. package/vanilla/UiScrollArea.d.ts +1 -1
  210. package/vanilla/UiScrollArea.js +1 -1
  211. package/vanilla/UiSearchResultRow.d.ts +1 -1
  212. package/vanilla/UiSearchResultRow.js +1 -1
  213. package/vanilla/UiSearchShell.d.ts +1 -1
  214. package/vanilla/UiSearchShell.js +1 -1
  215. package/vanilla/UiSection.d.ts +1 -1
  216. package/vanilla/UiSection.js +1 -1
  217. package/vanilla/UiSelect.d.ts +1 -1
  218. package/vanilla/UiSelect.js +1 -1
  219. package/vanilla/UiSeparator.d.ts +1 -1
  220. package/vanilla/UiSeparator.js +1 -1
  221. package/vanilla/UiSidebar.d.ts +1 -1
  222. package/vanilla/UiSidebar.js +1 -1
  223. package/vanilla/UiSpinner.d.ts +1 -1
  224. package/vanilla/UiSpinner.js +1 -1
  225. package/vanilla/UiStack.d.ts +1 -1
  226. package/vanilla/UiStack.js +1 -1
  227. package/vanilla/UiStatusMessage.d.ts +1 -1
  228. package/vanilla/UiStatusMessage.js +1 -1
  229. package/vanilla/UiSwatch.d.ts +1 -1
  230. package/vanilla/UiSwatch.js +1 -1
  231. package/vanilla/UiSwitch.d.ts +1 -1
  232. package/vanilla/UiSwitch.js +1 -1
  233. package/vanilla/UiSwitcher.d.ts +1 -1
  234. package/vanilla/UiSwitcher.js +1 -1
  235. package/vanilla/UiTable.d.ts +1 -1
  236. package/vanilla/UiTable.js +1 -1
  237. package/vanilla/UiTabs.d.ts +1 -1
  238. package/vanilla/UiTabs.js +1 -1
  239. package/vanilla/UiText.d.ts +1 -1
  240. package/vanilla/UiText.js +1 -1
  241. package/vanilla/UiTextarea.d.ts +1 -1
  242. package/vanilla/UiTextarea.js +1 -1
  243. package/vanilla/UiToast.d.ts +1 -1
  244. package/vanilla/UiToast.js +1 -1
  245. package/vanilla/UiToastRegion.d.ts +1 -1
  246. package/vanilla/UiToastRegion.js +1 -1
  247. package/vanilla/UiTooltip.d.ts +1 -1
  248. package/vanilla/UiTooltip.js +1 -1
  249. package/vanilla/UiTopBar.d.ts +1 -1
  250. package/vanilla/UiTopBar.js +1 -1
  251. package/vanilla/UiTree.d.ts +1 -1
  252. package/vanilla/UiTree.js +1 -1
  253. package/vanilla/UiTreeItem.d.ts +1 -1
  254. package/vanilla/UiTreeItem.js +1 -1
  255. package/vue/UiActionBar.vue +1 -1
  256. package/vue/UiAffordanceScope.vue +1 -1
  257. package/vue/UiAvatar.vue +1 -1
  258. package/vue/UiAvatarGroup.vue +1 -1
  259. package/vue/UiBadge.vue +1 -1
  260. package/vue/UiBreadcrumbItem.vue +1 -1
  261. package/vue/UiBreadcrumbs.vue +1 -1
  262. package/vue/UiButton.vue +1 -1
  263. package/vue/UiCallout.vue +1 -1
  264. package/vue/UiCard.vue +1 -1
  265. package/vue/UiCheckbox.vue +1 -1
  266. package/vue/UiCluster.vue +1 -1
  267. package/vue/UiCombobox.vue +1 -1
  268. package/vue/UiContainer.vue +1 -1
  269. package/vue/UiContextMenu.vue +1 -1
  270. package/vue/UiCover.vue +1 -1
  271. package/vue/UiDescriptionItem.vue +1 -1
  272. package/vue/UiDescriptionList.vue +1 -1
  273. package/vue/UiDialog.vue +1 -1
  274. package/vue/UiDisclosure.vue +1 -1
  275. package/vue/UiEditable.vue +1 -1
  276. package/vue/UiEditorBlockActions.vue +1 -1
  277. package/vue/UiEditorChipEditor.vue +1 -1
  278. package/vue/UiEditorCodeLanguage.d.ts +2 -2
  279. package/vue/UiEditorCodeLanguage.vue +4 -5
  280. package/vue/UiEditorImageToolbar.vue +13 -10
  281. package/vue/UiEditorInsertTableGrid.vue +1 -1
  282. package/vue/UiEditorLinkCard.vue +1 -1
  283. package/vue/UiEditorLinkForm.d.ts +2 -2
  284. package/vue/UiEditorLinkForm.vue +4 -5
  285. package/vue/UiEditorMentionMenu.vue +1 -1
  286. package/vue/UiEditorMentionMenuItem.vue +1 -1
  287. package/vue/UiEditorSlashMenu.vue +1 -1
  288. package/vue/UiEditorSlashMenuGroup.vue +1 -1
  289. package/vue/UiEditorSlashMenuItem.vue +1 -1
  290. package/vue/UiEditorSurface.vue +1 -1
  291. package/vue/UiEditorTableContextMenu.vue +1 -1
  292. package/vue/UiEditorTableOverlay.vue +1 -1
  293. package/vue/UiEditorTableToolbar.vue +1 -1
  294. package/vue/UiEditorToolbar.vue +1 -1
  295. package/vue/UiFloatingActionButton.vue +1 -1
  296. package/vue/UiFormField.vue +1 -1
  297. package/vue/UiGrid.vue +1 -1
  298. package/vue/UiIcon.vue +1 -1
  299. package/vue/UiIconButton.vue +1 -1
  300. package/vue/UiImage.vue +1 -1
  301. package/vue/UiInput.vue +1 -1
  302. package/vue/UiInputGroup.vue +1 -1
  303. package/vue/UiList.vue +1 -1
  304. package/vue/UiListItem.vue +1 -1
  305. package/vue/UiListbox.vue +1 -1
  306. package/vue/UiMenu.vue +1 -1
  307. package/vue/UiMenuGroup.vue +1 -1
  308. package/vue/UiMenuItem.vue +1 -1
  309. package/vue/UiMeter.vue +1 -1
  310. package/vue/UiNavItem.vue +1 -1
  311. package/vue/UiPageHeader.vue +1 -1
  312. package/vue/UiPopover.vue +1 -1
  313. package/vue/UiRadio.vue +1 -1
  314. package/vue/UiRadioGroup.vue +1 -1
  315. package/vue/UiReel.vue +1 -1
  316. package/vue/UiScrollArea.vue +1 -1
  317. package/vue/UiSearchResultRow.vue +1 -1
  318. package/vue/UiSearchShell.vue +1 -1
  319. package/vue/UiSection.vue +1 -1
  320. package/vue/UiSelect.vue +1 -1
  321. package/vue/UiSeparator.vue +1 -1
  322. package/vue/UiSidebar.vue +1 -1
  323. package/vue/UiSpinner.vue +1 -1
  324. package/vue/UiStack.vue +1 -1
  325. package/vue/UiStatusMessage.vue +1 -1
  326. package/vue/UiSwatch.vue +1 -1
  327. package/vue/UiSwitch.vue +1 -1
  328. package/vue/UiSwitcher.vue +1 -1
  329. package/vue/UiTable.vue +1 -1
  330. package/vue/UiTabs.vue +1 -1
  331. package/vue/UiText.vue +1 -1
  332. package/vue/UiTextarea.vue +1 -1
  333. package/vue/UiToast.vue +1 -1
  334. package/vue/UiToastRegion.vue +1 -1
  335. package/vue/UiTooltip.vue +1 -1
  336. package/vue/UiTopBar.vue +1 -1
  337. package/vue/UiTree.vue +1 -1
  338. package/vue/UiTreeItem.vue +1 -1
  339. package/vue/chunks/UiActionBar.js +1 -1
  340. package/vue/chunks/UiAffordanceScope.js +1 -1
  341. package/vue/chunks/UiAvatar.js +1 -1
  342. package/vue/chunks/UiAvatarGroup.js +1 -1
  343. package/vue/chunks/UiBadge.js +1 -1
  344. package/vue/chunks/UiBreadcrumbItem.js +1 -1
  345. package/vue/chunks/UiBreadcrumbs.js +1 -1
  346. package/vue/chunks/UiButton.js +1 -1
  347. package/vue/chunks/UiCallout.js +1 -1
  348. package/vue/chunks/UiCard.js +1 -1
  349. package/vue/chunks/UiCheckbox.js +1 -1
  350. package/vue/chunks/UiCluster.js +1 -1
  351. package/vue/chunks/UiCombobox.js +1 -1
  352. package/vue/chunks/UiContainer.js +1 -1
  353. package/vue/chunks/UiContextMenu.js +1 -1
  354. package/vue/chunks/UiCover.js +1 -1
  355. package/vue/chunks/UiDescriptionItem.js +1 -1
  356. package/vue/chunks/UiDescriptionList.js +1 -1
  357. package/vue/chunks/UiDialog.js +1 -1
  358. package/vue/chunks/UiDisclosure.js +1 -1
  359. package/vue/chunks/UiEditable.js +1 -1
  360. package/vue/chunks/UiEditorCodeLanguage.js +3 -4
  361. package/vue/chunks/UiEditorImageToolbar.js +19 -11
  362. package/vue/chunks/UiEditorInsertTableGrid.js +1 -1
  363. package/vue/chunks/UiEditorLinkForm.js +3 -4
  364. package/vue/chunks/UiEditorMentionMenu.js +1 -1
  365. package/vue/chunks/UiEditorMentionMenuItem.js +1 -1
  366. package/vue/chunks/UiEditorSlashMenu.js +1 -1
  367. package/vue/chunks/UiEditorSlashMenuGroup.js +1 -1
  368. package/vue/chunks/UiEditorSlashMenuItem.js +1 -1
  369. package/vue/chunks/UiEditorSurface.js +1 -1
  370. package/vue/chunks/UiEditorTableContextMenu.js +1 -1
  371. package/vue/chunks/UiEditorTableOverlay.js +1 -1
  372. package/vue/chunks/UiEditorTableToolbar.js +1 -1
  373. package/vue/chunks/UiEditorToolbar.js +1 -1
  374. package/vue/chunks/UiFloatingActionButton.js +1 -1
  375. package/vue/chunks/UiFormField.js +1 -1
  376. package/vue/chunks/UiGrid.js +1 -1
  377. package/vue/chunks/UiIcon.js +1 -1
  378. package/vue/chunks/UiIconButton.js +1 -1
  379. package/vue/chunks/UiImage.js +1 -1
  380. package/vue/chunks/UiInput.js +1 -1
  381. package/vue/chunks/UiInputGroup.js +1 -1
  382. package/vue/chunks/UiList.js +1 -1
  383. package/vue/chunks/UiListItem.js +1 -1
  384. package/vue/chunks/UiListbox.js +1 -1
  385. package/vue/chunks/UiMenu.js +1 -1
  386. package/vue/chunks/UiMenuGroup.js +1 -1
  387. package/vue/chunks/UiMenuItem.js +1 -1
  388. package/vue/chunks/UiMeter.js +1 -1
  389. package/vue/chunks/UiNavItem.js +1 -1
  390. package/vue/chunks/UiPageHeader.js +1 -1
  391. package/vue/chunks/UiPopover.js +1 -1
  392. package/vue/chunks/UiRadio.js +1 -1
  393. package/vue/chunks/UiRadioGroup.js +1 -1
  394. package/vue/chunks/UiReel.js +1 -1
  395. package/vue/chunks/UiScrollArea.js +1 -1
  396. package/vue/chunks/UiSearchResultRow.js +1 -1
  397. package/vue/chunks/UiSearchShell.js +1 -1
  398. package/vue/chunks/UiSection.js +1 -1
  399. package/vue/chunks/UiSelect.js +1 -1
  400. package/vue/chunks/UiSeparator.js +1 -1
  401. package/vue/chunks/UiSidebar.js +1 -1
  402. package/vue/chunks/UiSpinner.js +1 -1
  403. package/vue/chunks/UiStack.js +1 -1
  404. package/vue/chunks/UiStatusMessage.js +1 -1
  405. package/vue/chunks/UiSwatch.js +1 -1
  406. package/vue/chunks/UiSwitch.js +1 -1
  407. package/vue/chunks/UiSwitcher.js +1 -1
  408. package/vue/chunks/UiTable.js +1 -1
  409. package/vue/chunks/UiTabs.js +1 -1
  410. package/vue/chunks/UiText.js +1 -1
  411. package/vue/chunks/UiTextarea.js +1 -1
  412. package/vue/chunks/UiToast.js +1 -1
  413. package/vue/chunks/UiToastRegion.js +1 -1
  414. package/vue/chunks/UiTooltip.js +1 -1
  415. package/vue/chunks/UiTopBar.js +1 -1
  416. package/vue/chunks/UiTree.js +1 -1
  417. package/vue/chunks/UiTreeItem.js +1 -1
  418. package/vue/chunks/_plugin-vue_export-helper.js +63 -5
  419. package/vue/components.css +20 -20
  420. package/vue/host.ts +109 -4
@@ -272,6 +272,6 @@ var UiMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
272
272
  }]]);
273
273
  };
274
274
  }
275
- }), [["__scopeId", "data-v-0a6f9b10"]]);
275
+ }), [["__scopeId", "data-v-9a33dd02"]]);
276
276
  //#endregion
277
277
  export { UiMenu_default as t };
@@ -55,6 +55,6 @@ var UiMenuGroup_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
55
55
  }]]);
56
56
  };
57
57
  }
58
- }), [["__scopeId", "data-v-53ba201a"]]);
58
+ }), [["__scopeId", "data-v-299a205e"]]);
59
59
  //#endregion
60
60
  export { UiMenuGroup_default as t };
@@ -354,6 +354,6 @@ var UiMenuItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
354
354
  }]]);
355
355
  };
356
356
  }
357
- }), [["__scopeId", "data-v-623006f4"]]);
357
+ }), [["__scopeId", "data-v-3271293f"]]);
358
358
  //#endregion
359
359
  export { UiMenuItem_default as t };
@@ -516,6 +516,6 @@ var UiMeter_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
516
516
  }]]);
517
517
  };
518
518
  }
519
- }), [["__scopeId", "data-v-5b0c8336"]]);
519
+ }), [["__scopeId", "data-v-51c223fc"]]);
520
520
  //#endregion
521
521
  export { UiMeter_default as t };
@@ -359,6 +359,6 @@ var UiNavItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
359
359
  }]]);
360
360
  };
361
361
  }
362
- }), [["__scopeId", "data-v-fa6599e9"]]);
362
+ }), [["__scopeId", "data-v-bc942bf0"]]);
363
363
  //#endregion
364
364
  export { UiNavItem_default as t };
@@ -82,6 +82,6 @@ var UiPageHeader_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
82
82
  }]]);
83
83
  };
84
84
  }
85
- }), [["__scopeId", "data-v-1e310bb3"]]);
85
+ }), [["__scopeId", "data-v-b9f169d5"]]);
86
86
  //#endregion
87
87
  export { UiPageHeader_default as t };
@@ -204,6 +204,6 @@ var UiPopover_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
204
204
  }]]);
205
205
  };
206
206
  }
207
- }), [["__scopeId", "data-v-b7a8154e"]]);
207
+ }), [["__scopeId", "data-v-35a54079"]]);
208
208
  //#endregion
209
209
  export { UiPopover_default as t };
@@ -268,6 +268,6 @@ var UiRadio_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
268
268
  }]]);
269
269
  };
270
270
  }
271
- }), [["__scopeId", "data-v-66a7b2a5"]]);
271
+ }), [["__scopeId", "data-v-97dbf6fb"]]);
272
272
  //#endregion
273
273
  export { UiRadio_default as t };
@@ -287,6 +287,6 @@ var UiRadioGroup_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
287
287
  }]]);
288
288
  };
289
289
  }
290
- }), [["__scopeId", "data-v-575ed595"]]);
290
+ }), [["__scopeId", "data-v-8bd77c97"]]);
291
291
  //#endregion
292
292
  export { UiRadioGroup_default as t };
@@ -123,6 +123,6 @@ var UiReel_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
123
123
  }]]);
124
124
  };
125
125
  }
126
- }), [["__scopeId", "data-v-8444852c"]]);
126
+ }), [["__scopeId", "data-v-f4c85af9"]]);
127
127
  //#endregion
128
128
  export { UiReel_default as t };
@@ -204,6 +204,6 @@ var UiScrollArea_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
204
204
  }]]);
205
205
  };
206
206
  }
207
- }), [["__scopeId", "data-v-1ee8d12c"]]);
207
+ }), [["__scopeId", "data-v-461be685"]]);
208
208
  //#endregion
209
209
  export { UiScrollArea_default as t };
@@ -146,6 +146,6 @@ var UiSearchResultRow_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
146
146
  }]]);
147
147
  };
148
148
  }
149
- }), [["__scopeId", "data-v-d426c69c"]]);
149
+ }), [["__scopeId", "data-v-28974cd4"]]);
150
150
  //#endregion
151
151
  export { UiSearchResultRow_default as t };
@@ -198,6 +198,6 @@ var UiSearchShell_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @
198
198
  }]]);
199
199
  };
200
200
  }
201
- }), [["__scopeId", "data-v-e95db506"]]);
201
+ }), [["__scopeId", "data-v-4e34070e"]]);
202
202
  //#endregion
203
203
  export { UiSearchShell_default as t };
@@ -138,6 +138,6 @@ var UiSection_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
138
138
  }]]);
139
139
  };
140
140
  }
141
- }), [["__scopeId", "data-v-44de84d0"]]);
141
+ }), [["__scopeId", "data-v-3ea283c3"]]);
142
142
  //#endregion
143
143
  export { UiSection_default as t };
@@ -211,6 +211,6 @@ var UiSelect_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
211
211
  }]]);
212
212
  };
213
213
  }
214
- }), [["__scopeId", "data-v-adb7acdb"]]);
214
+ }), [["__scopeId", "data-v-279980b7"]]);
215
215
  //#endregion
216
216
  export { UiSelect_default as t };
@@ -131,6 +131,6 @@ var UiSeparator_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
131
131
  }]]);
132
132
  };
133
133
  }
134
- }), [["__scopeId", "data-v-ca7102c6"]]);
134
+ }), [["__scopeId", "data-v-d7ad9d42"]]);
135
135
  //#endregion
136
136
  export { UiSeparator_default as t };
@@ -342,6 +342,6 @@ var UiSidebar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
342
342
  }]]);
343
343
  };
344
344
  }
345
- }), [["__scopeId", "data-v-4f4a2a59"]]);
345
+ }), [["__scopeId", "data-v-8f96ffc0"]]);
346
346
  //#endregion
347
347
  export { UiSidebar_default as t };
@@ -166,6 +166,6 @@ var UiSpinner_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
166
166
  }]]);
167
167
  };
168
168
  }
169
- }), [["__scopeId", "data-v-2ac18d52"]]);
169
+ }), [["__scopeId", "data-v-b406e90c"]]);
170
170
  //#endregion
171
171
  export { UiSpinner_default as t };
@@ -171,6 +171,6 @@ var UiStack_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
171
171
  }]]);
172
172
  };
173
173
  }
174
- }), [["__scopeId", "data-v-6caafa95"]]);
174
+ }), [["__scopeId", "data-v-afcc66cb"]]);
175
175
  //#endregion
176
176
  export { UiStack_default as t };
@@ -156,6 +156,6 @@ var UiStatusMessage_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
156
156
  }]]);
157
157
  };
158
158
  }
159
- }), [["__scopeId", "data-v-20e6b4c4"]]);
159
+ }), [["__scopeId", "data-v-ccb9f2bc"]]);
160
160
  //#endregion
161
161
  export { UiStatusMessage_default as t };
@@ -74,6 +74,6 @@ var UiSwatch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
74
74
  }]]);
75
75
  };
76
76
  }
77
- }), [["__scopeId", "data-v-652aa600"]]);
77
+ }), [["__scopeId", "data-v-2734f76e"]]);
78
78
  //#endregion
79
79
  export { UiSwatch_default as t };
@@ -269,6 +269,6 @@ var UiSwitch_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
269
269
  }]]);
270
270
  };
271
271
  }
272
- }), [["__scopeId", "data-v-287c6f38"]]);
272
+ }), [["__scopeId", "data-v-df95cf7c"]]);
273
273
  //#endregion
274
274
  export { UiSwitch_default as t };
@@ -182,6 +182,6 @@ var UiSwitcher_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
182
182
  }]]);
183
183
  };
184
184
  }
185
- }), [["__scopeId", "data-v-6927f3ba"]]);
185
+ }), [["__scopeId", "data-v-657992bf"]]);
186
186
  //#endregion
187
187
  export { UiSwitcher_default as t };
@@ -110,6 +110,6 @@ var UiTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
110
110
  }]]);
111
111
  };
112
112
  }
113
- }), [["__scopeId", "data-v-fb313975"]]);
113
+ }), [["__scopeId", "data-v-6aae3d46"]]);
114
114
  //#endregion
115
115
  export { UiTable_default as t };
@@ -313,6 +313,6 @@ var UiTabs_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
313
313
  }]]);
314
314
  };
315
315
  }
316
- }), [["__scopeId", "data-v-0d4a5525"]]);
316
+ }), [["__scopeId", "data-v-34fb5f5c"]]);
317
317
  //#endregion
318
318
  export { UiTabs_default as t };
@@ -698,6 +698,6 @@ var UiText_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
698
698
  }]]);
699
699
  };
700
700
  }
701
- }), [["__scopeId", "data-v-81580b5f"]]);
701
+ }), [["__scopeId", "data-v-7b76939b"]]);
702
702
  //#endregion
703
703
  export { UiText_default as t };
@@ -303,6 +303,6 @@ var UiTextarea_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
303
303
  }]]);
304
304
  };
305
305
  }
306
- }), [["__scopeId", "data-v-a2c6f638"]]);
306
+ }), [["__scopeId", "data-v-a9196919"]]);
307
307
  //#endregion
308
308
  export { UiTextarea_default as t };
@@ -156,6 +156,6 @@ var UiToast_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
156
156
  }]]);
157
157
  };
158
158
  }
159
- }), [["__scopeId", "data-v-a0016fb0"]]);
159
+ }), [["__scopeId", "data-v-0c94c15a"]]);
160
160
  //#endregion
161
161
  export { UiToast_default as t };
@@ -248,6 +248,6 @@ var UiToastRegion_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @
248
248
  }]]);
249
249
  };
250
250
  }
251
- }), [["__scopeId", "data-v-503076d4"]]);
251
+ }), [["__scopeId", "data-v-eb136028"]]);
252
252
  //#endregion
253
253
  export { UiToastRegion_default as t };
@@ -275,6 +275,6 @@ var UiTooltip_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
275
275
  }]]);
276
276
  };
277
277
  }
278
- }), [["__scopeId", "data-v-966d17cb"]]);
278
+ }), [["__scopeId", "data-v-cbf1f070"]]);
279
279
  //#endregion
280
280
  export { UiTooltip_default as t };
@@ -36,6 +36,6 @@ var UiTopBar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
36
36
  ], 16);
37
37
  };
38
38
  }
39
- }), [["__scopeId", "data-v-af992c01"]]);
39
+ }), [["__scopeId", "data-v-3dafe49c"]]);
40
40
  //#endregion
41
41
  export { UiTopBar_default as t };
@@ -269,6 +269,6 @@ var UiTree_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
269
269
  }]]);
270
270
  };
271
271
  }
272
- }), [["__scopeId", "data-v-96dbe7d3"]]);
272
+ }), [["__scopeId", "data-v-6f1dde85"]]);
273
273
  //#endregion
274
274
  export { UiTree_default as t };
@@ -680,6 +680,6 @@ var UiTreeItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
680
680
  }]]);
681
681
  };
682
682
  }
683
- }), [["__scopeId", "data-v-54a4ba48"]]);
683
+ }), [["__scopeId", "data-v-ecab748f"]]);
684
684
  //#endregion
685
685
  export { UiTreeItem_default as t };
@@ -1,4 +1,4 @@
1
- import { Fragment, computed, defineComponent, getCurrentInstance, h, onBeforeUnmount, onBeforeUpdate, onMounted, onUpdated, shallowRef, useSlots, watchEffect } from "vue";
1
+ import { Fragment, computed, defineComponent, getCurrentInstance, h, onBeforeUnmount, onBeforeUpdate, onMounted, onUpdated, shallowRef, useSlots, watch, watchEffect } from "vue";
2
2
  //#region .build/vue/host.ts
3
3
  function controllerNamespaces(options, source) {
4
4
  const reported = /* @__PURE__ */ new Set();
@@ -119,6 +119,42 @@ function controllerNamespaces(options, source) {
119
119
  })
120
120
  };
121
121
  }
122
+ var requestStateKey = Symbol.for("@nextwebwg/html-next.runtime.v1");
123
+ var documentRecord = (root) => root.ownerDocument[requestStateKey] ??= {};
124
+ /** Requests from inside root wait until its controller has run; the returned release ends the wait. */
125
+ function holdController(root) {
126
+ const { g: gates } = documentRecord(root).requests ??= { g: /* @__PURE__ */ new WeakMap() };
127
+ let release;
128
+ const gate = new Promise((resolve) => {
129
+ release = resolve;
130
+ });
131
+ gates.set(root, gate);
132
+ return () => {
133
+ if (gates.get(root) === gate) gates.delete(root);
134
+ release();
135
+ };
136
+ }
137
+ /** A responder registered on root relays to the requests inside it that went unanswered, once a page asks. */
138
+ function relayResponders(root, name) {
139
+ documentRecord(root).relay?.(root, name);
140
+ }
141
+ /** For a component that asks: a responder announcement reaches its controller only as the relay to its root, which does not bubble. */
142
+ function hostListener(type, callback) {
143
+ return (event) => {
144
+ if (type !== "responder" || !event.bubbles) callback(event);
145
+ };
146
+ }
147
+ /** The connection signal requests use: it aborts when the component disconnects. */
148
+ function requestConnection() {
149
+ let current;
150
+ return {
151
+ signal: (connected) => connected ? (current ??= new AbortController()).signal : AbortSignal.abort(new DOMException("The component is not connected.", "AbortError")),
152
+ end: () => {
153
+ current?.abort();
154
+ current = void 0;
155
+ }
156
+ };
157
+ }
122
158
  function dispatchToTargets(recorded, send) {
123
159
  const targets = (recorded instanceof Set ? [...recorded] : Array.isArray(recorded) ? [...recorded] : [recorded]).map((ref) => ref?.nodeType === 1 ? ref : ref?.$el).filter((element) => element?.nodeType === 1 && element.isConnected).sort((a, b) => a === b ? 0 : a.compareDocumentPosition(b) & 4 ? -1 : 1);
124
160
  for (const target of targets) if (target.isConnected) send(target);
@@ -243,6 +279,7 @@ function useComponentHost(controllerLoader, options) {
243
279
  else if (entry.type !== "disconnect") {
244
280
  entry.target = root.value ?? void 0;
245
281
  entry.target?.addEventListener(entry.type, entry.callback);
282
+ if (entry.target !== void 0) relayResponders(entry.target, entry.type);
246
283
  }
247
284
  };
248
285
  const deactivate = (entry, disconnecting) => {
@@ -291,7 +328,7 @@ function useComponentHost(controllerLoader, options) {
291
328
  on(type, callback) {
292
329
  const entry = {
293
330
  type,
294
- callback
331
+ callback: type === "connect" || type === "disconnect" || options.request === void 0 ? callback : hostListener(type, callback)
295
332
  };
296
333
  subscriptions.add(entry);
297
334
  if (connected.value) activate(entry);
@@ -348,18 +385,32 @@ function useComponentHost(controllerLoader, options) {
348
385
  stops.push(dispose);
349
386
  return dispose;
350
387
  },
351
- dispatch
388
+ dispatch,
389
+ ...options.request === void 0 ? {} : { request: (name, detail, requestOptions) => options.request(root.value, requests.signal(connected.value), name, detail, requestOptions) }
352
390
  };
391
+ const requests = requestConnection();
392
+ const responders = Object.entries(options.responders ?? {});
393
+ for (const [name, read] of responders) host.on(name, (event) => read()?.(event));
394
+ if (responders.length > 0) watch(() => responders.map(([, read]) => read() !== void 0), (now, before) => {
395
+ const element = root.value;
396
+ if (element === null || !connected.value) return;
397
+ now.forEach((set, index) => {
398
+ if (set && !before[index]) relayResponders(element, responders[index][0]);
399
+ });
400
+ });
353
401
  let cleanup;
354
402
  let started;
355
403
  let stopObserving;
356
404
  let connection = 0;
357
405
  let initialized = false;
358
406
  let unmounted = false;
407
+ let releaseController;
359
408
  const disconnect = () => {
360
409
  if (!connected.value) return;
361
410
  connected.value = false;
362
411
  connection += 1;
412
+ requests.end();
413
+ releaseController?.();
363
414
  for (const pause of pauses.values()) pause();
364
415
  for (const entry of subscriptions) deactivate(entry, true);
365
416
  cleanup?.();
@@ -382,17 +433,24 @@ function useComponentHost(controllerLoader, options) {
382
433
  for (const entry of subscriptions) activate(entry);
383
434
  if (initialized) return;
384
435
  const current = ++connection;
436
+ const release = releaseController = holdController(root.value);
385
437
  started = loadControllerModule().then(async (loaded) => {
386
438
  if (!connected.value || current !== connection || initialized) return loaded;
387
439
  initialized = true;
388
- const result = await loaded.default(host);
440
+ let invoked;
441
+ try {
442
+ invoked = loaded.default(host);
443
+ } finally {
444
+ release();
445
+ }
446
+ const result = await invoked;
389
447
  if (typeof result === "function") {
390
448
  if (!connected.value || current !== connection) result();
391
449
  else cleanup = result;
392
450
  }
393
451
  return loaded;
394
452
  });
395
- started.catch(report);
453
+ started.catch(report).finally(release);
396
454
  };
397
455
  onMounted(() => {
398
456
  if (root.value === null) return;
@@ -939,12 +939,12 @@ ol:where([data-hn-ui-breadcrumbs]) {
939
939
  }
940
940
 
941
941
  /* A rounded SVG arc grows and recedes over a quiet full-circle track. */
942
- @keyframes ui-spinner-rotate-2ac18d52 {
942
+ @keyframes ui-spinner-rotate-b406e90c {
943
943
  100% {
944
944
  transform: rotate(1turn);
945
945
  }
946
946
  }
947
- @keyframes ui-spinner-dash-2ac18d52 {
947
+ @keyframes ui-spinner-dash-b406e90c {
948
948
  0% {
949
949
  stroke-dasharray: 1, 150;
950
950
  stroke-dashoffset: 0;
@@ -980,7 +980,7 @@ svg {
980
980
  display: block;
981
981
  inline-size: 100%;
982
982
  block-size: 100%;
983
- animation: ui-spinner-rotate-2ac18d52 2s linear infinite;
983
+ animation: ui-spinner-rotate-b406e90c 2s linear infinite;
984
984
  }
985
985
  circle {
986
986
  stroke-width: 3;
@@ -993,7 +993,7 @@ circle {
993
993
  stroke: currentColor;
994
994
  stroke-dasharray: 90, 150;
995
995
  stroke-dashoffset: 0;
996
- animation: ui-spinner-dash-2ac18d52 1.5s ease-in-out infinite;
996
+ animation: ui-spinner-dash-b406e90c 1.5s ease-in-out infinite;
997
997
  }
998
998
  @media (prefers-reduced-motion: reduce) {
999
999
  svg,.arc {
@@ -1777,7 +1777,7 @@ html[data-ui-input-modality="touch"]
1777
1777
  /* The label, and under it an optional line saying what the choice means. */
1778
1778
 
1779
1779
  /* Centre the tick's box and lift it slightly for the rotated check shape. */
1780
- @keyframes ui-checkbox-check-084399a9 {
1780
+ @keyframes ui-checkbox-check-48b85ef3 {
1781
1781
  from {
1782
1782
  opacity: 0;
1783
1783
  transform: translateY(-0.09rem) rotate(45deg) scale(0.55);
@@ -1872,7 +1872,7 @@ input:checked:where([data-hn-ui-checkbox])::after {
1872
1872
  border-width: 0 0.125rem 0.125rem 0;
1873
1873
  opacity: 1;
1874
1874
  transform: translateY(-0.09rem) rotate(45deg);
1875
- animation: ui-checkbox-check-084399a9 180ms var(--ui-motion-ease-out, cubic-bezier(0.16, 1, 0.3, 1))
1875
+ animation: ui-checkbox-check-48b85ef3 180ms var(--ui-motion-ease-out, cubic-bezier(0.16, 1, 0.3, 1))
1876
1876
  both;
1877
1877
  }
1878
1878
  input:indeterminate:where([data-hn-ui-checkbox])::after {
@@ -3032,13 +3032,13 @@ dd:where([data-hn-ui-description-item]) {
3032
3032
  /* A CSS-drawn X. */
3033
3033
 
3034
3034
  /* A touch target, like Button on coarse pointers. */
3035
- @keyframes ui-dialog-enter-ada617a6 {
3035
+ @keyframes ui-dialog-enter-d07f3be8 {
3036
3036
  from {
3037
3037
  opacity: 0;
3038
3038
  transform: scale(0.96);
3039
3039
  }
3040
3040
  }
3041
- @keyframes ui-dialog-backdrop-enter-ada617a6 {
3041
+ @keyframes ui-dialog-backdrop-enter-d07f3be8 {
3042
3042
  from {
3043
3043
  background-color: transparent;
3044
3044
  }
@@ -3086,7 +3086,7 @@ from {
3086
3086
  pointer-events: auto;
3087
3087
  opacity: 1;
3088
3088
  transform: scale(1);
3089
- animation: ui-dialog-enter-ada617a6 var(--ui-dialog-duration, var(--ui-motion-base))
3089
+ animation: ui-dialog-enter-d07f3be8 var(--ui-dialog-duration, var(--ui-motion-base))
3090
3090
  var(--ui-motion-ease);
3091
3091
  }
3092
3092
  :scope[data-ui-dialog-state~="size=sm"]:where([data-hn-ui-dialog]) {
@@ -3204,7 +3204,7 @@ footer:empty:where([data-hn-ui-dialog]) {
3204
3204
  }
3205
3205
  :scope[open]:modal:where([data-hn-ui-dialog])::backdrop {
3206
3206
  background-color: var(--ui-overlay-backdrop);
3207
- animation: ui-dialog-backdrop-enter-ada617a6 var(--_ui-dialog-duration, var(--ui-motion-base))
3207
+ animation: ui-dialog-backdrop-enter-d07f3be8 var(--_ui-dialog-duration, var(--ui-motion-base))
3208
3208
  var(--ui-motion-ease);
3209
3209
  }
3210
3210
  :scope[open][data-ui-backdrop-hidden]:where([data-hn-ui-dialog])::backdrop {
@@ -9428,7 +9428,7 @@ input:where([data-hn-ui-switch]),input:where([data-hn-ui-switch])::after {
9428
9428
  }
9429
9429
 
9430
9430
  /* Leaving slides on down and fades; the controller removes the toast when this ends. */
9431
- @keyframes ui-toast-enter-503076d4 {
9431
+ @keyframes ui-toast-enter-eb136028 {
9432
9432
  from {
9433
9433
  opacity: 0;
9434
9434
  transform: translateY(-1rem);
@@ -9438,7 +9438,7 @@ to {
9438
9438
  transform: translateY(0);
9439
9439
  }
9440
9440
  }
9441
- @keyframes ui-toast-exit-503076d4 {
9441
+ @keyframes ui-toast-exit-eb136028 {
9442
9442
  from {
9443
9443
  opacity: 1;
9444
9444
  transform: translateY(0);
@@ -9448,7 +9448,7 @@ to {
9448
9448
  transform: translateY(0.75rem);
9449
9449
  }
9450
9450
  }
9451
- @keyframes ui-toast-enter-bottom-503076d4 {
9451
+ @keyframes ui-toast-enter-bottom-eb136028 {
9452
9452
  from {
9453
9453
  opacity: 0;
9454
9454
  transform: translateY(1rem);
@@ -9458,7 +9458,7 @@ to {
9458
9458
  transform: translateY(0);
9459
9459
  }
9460
9460
  }
9461
- @keyframes ui-toast-exit-bottom-503076d4 {
9461
+ @keyframes ui-toast-exit-bottom-eb136028 {
9462
9462
  from {
9463
9463
  opacity: 1;
9464
9464
  transform: translateY(0);
@@ -9549,7 +9549,7 @@ to {
9549
9549
  --_ui-toast-region-shadow,
9550
9550
  var(--ui-overlay-shadow, var(--ui-elevation-overlay, var(--ui-shadow-lg)))
9551
9551
  );
9552
- animation: ui-toast-enter-503076d4 var(--_ui-toast-region-enter-duration, 0.32s)
9552
+ animation: ui-toast-enter-eb136028 var(--_ui-toast-region-enter-duration, 0.32s)
9553
9553
  var(--ui-motion-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) both;
9554
9554
  }
9555
9555
  .toast[data-tone="info"]:where([data-hn-ui-toast-region]) {
@@ -9569,17 +9569,17 @@ to {
9569
9569
  --_ui-toast-region-tone-surface: var(--ui-danger-soft);
9570
9570
  }
9571
9571
  .toast.closing:where([data-hn-ui-toast-region]) {
9572
- animation: ui-toast-exit-503076d4 var(--_ui-toast-region-exit-duration, 0.22s) var(--ui-motion-ease)
9572
+ animation: ui-toast-exit-eb136028 var(--_ui-toast-region-exit-duration, 0.22s) var(--ui-motion-ease)
9573
9573
  both;
9574
9574
  pointer-events: none;
9575
9575
  }
9576
9576
  :is(:scope[data-ui-toast-region-state~="placement=bottom"], :scope[data-ui-toast-region-state~="placement=bottom-start"], :scope[data-ui-toast-region-state~="placement=bottom-end"])
9577
9577
  .toast:where([data-hn-ui-toast-region]) {
9578
- animation-name: ui-toast-enter-bottom-503076d4;
9578
+ animation-name: ui-toast-enter-bottom-eb136028;
9579
9579
  }
9580
9580
  :is(:scope[data-ui-toast-region-state~="placement=bottom"], :scope[data-ui-toast-region-state~="placement=bottom-start"], :scope[data-ui-toast-region-state~="placement=bottom-end"])
9581
9581
  .toast.closing:where([data-hn-ui-toast-region]) {
9582
- animation-name: ui-toast-exit-bottom-503076d4;
9582
+ animation-name: ui-toast-exit-bottom-eb136028;
9583
9583
  }
9584
9584
  @media (prefers-reduced-motion: reduce) {
9585
9585
  .toast:where([data-hn-ui-toast-region]),.toast.closing:where([data-hn-ui-toast-region]) {
@@ -9780,7 +9780,7 @@ to {
9780
9780
  slides, the label reaches back under the icon (the controller measures how far) with its text
9781
9781
  where it was, and fades out across the gap before the icon, fully gone where the icon begins
9782
9782
  to cover it: the name slips under the icon rather than stopping at a hard edge beside it. */
9783
- @keyframes ui-tree-item-marquee-54a4ba48 {
9783
+ @keyframes ui-tree-item-marquee-ecab748f {
9784
9784
  from {
9785
9785
  transform: translateX(0);
9786
9786
  }
@@ -10036,7 +10036,7 @@ to {
10036
10036
  .row[data-ui-marquee] > .label > .label-text:where([data-hn-ui-tree-item]) {
10037
10037
  /* Once per pass: the controller restarts it after a rest at the end, so the name holds still
10038
10038
  long enough to read rather than sliding back and forth. */
10039
- animation: ui-tree-item-marquee-54a4ba48 var(--_marquee-duration) linear 0.5s 1 normal forwards;
10039
+ animation: ui-tree-item-marquee-ecab748f var(--_marquee-duration) linear 0.5s 1 normal forwards;
10040
10040
  will-change: transform;
10041
10041
  }
10042
10042
  .row[data-ui-marquee] > .label:where([data-hn-ui-tree-item]) {