@pgcorp/ui-kit 0.13.0 → 0.15.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 (354) hide show
  1. package/README.md +1055 -31
  2. package/dist/assets/src/components/layout/SDockRegion.vue_vue_type_style_index_0_scoped_a1f403e2_lang.css +1 -0
  3. package/dist/assets/src/components/layout/{SResizeHandle.vue_vue_type_style_index_0_scoped_90cc655e_lang.css → SResizeHandle.vue_vue_type_style_index_0_scoped_dc65aba1_lang.css} +1 -1
  4. package/dist/assets/src/components/layout/{SWorkbenchPanelShell.css_vue_type_style_index_0_src_1030a231_scoped_1030a231_lang.css → SWorkbenchPanelShell.css_vue_type_style_index_0_src_f9faa52a_scoped_f9faa52a_lang.css} +1 -1
  5. package/dist/assets/src/components/shared/_internal/SDialogSurface.css_vue_type_style_index_0_src_a108e8f1_scoped_a108e8f1_lang.css +2 -0
  6. package/dist/assets/src/components/shared/_internal/{SListboxGroup.css_vue_type_style_index_0_src_518787d3_scoped_518787d3_lang.css → SListboxGroup.css_vue_type_style_index_0_src_00060944_scoped_00060944_lang.css} +1 -1
  7. package/dist/assets/src/components/shared/_internal/SMenuLayer.css_vue_type_style_index_0_src_e478164c_scoped_e478164c_lang.css +1 -0
  8. package/dist/assets/src/components/shared/containers/{SCollapsiblePanel.css_vue_type_style_index_0_src_71824088_scoped_71824088_lang.css → SCollapsiblePanel.css_vue_type_style_index_0_src_db85261d_scoped_db85261d_lang.css} +1 -1
  9. package/dist/assets/src/components/shared/containers/SOverlayHost.css_vue_type_style_index_0_src_09215628_scoped_09215628_lang.css +2 -0
  10. package/dist/assets/src/components/shared/containers/SPopover.css_vue_type_style_index_0_src_a4f1f64a_scoped_a4f1f64a_lang.css +2 -0
  11. package/dist/assets/src/components/shared/containers/{SSidebarGroup.css_vue_type_style_index_0_src_3e8bc2d7_scoped_3e8bc2d7_lang.css → SSidebarGroup.css_vue_type_style_index_0_src_5b1eeb6c_scoped_5b1eeb6c_lang.css} +1 -1
  12. package/dist/assets/src/components/shared/containers/SSidebarSection.css_vue_type_style_index_0_src_52396e42_scoped_52396e42_lang.css +2 -0
  13. package/dist/assets/src/components/shared/controls/SButton.css_vue_type_style_index_0_src_7a5acda9_scoped_7a5acda9_lang.css +2 -0
  14. package/dist/assets/src/components/shared/controls/SCheckbox.css_vue_type_style_index_0_src_2562f916_scoped_2562f916_lang.css +2 -0
  15. package/dist/assets/src/components/shared/controls/SCombobox.css_vue_type_style_index_0_src_d630c922_scoped_d630c922_lang.css +2 -0
  16. package/dist/assets/src/components/shared/controls/SContextMenu.css_vue_type_style_index_0_src_43b6e378_scoped_43b6e378_lang.css +1 -0
  17. package/dist/assets/src/components/shared/controls/{SDropdownMenu.css_vue_type_style_index_0_src_1ccb9efc_scoped_1ccb9efc_lang.css → SDropdownMenu.css_vue_type_style_index_0_src_40040ae5_scoped_40040ae5_lang.css} +1 -1
  18. package/dist/assets/src/components/shared/controls/SField.css_vue_type_style_index_0_src_2d353c26_scoped_2d353c26_lang.css +2 -0
  19. package/dist/assets/src/components/shared/controls/{SInteractiveSurface.css_vue_type_style_index_0_src_998940dd_scoped_998940dd_lang.css → SInteractiveSurface.css_vue_type_style_index_0_src_5e422fac_scoped_5e422fac_lang.css} +1 -1
  20. package/dist/assets/src/components/shared/controls/{SLink.css_vue_type_style_index_0_src_c7ae14e1_scoped_c7ae14e1_lang.css → SLink.css_vue_type_style_index_0_src_ac46e5a4_scoped_ac46e5a4_lang.css} +1 -1
  21. package/dist/assets/src/components/shared/controls/SListbox.css_vue_type_style_index_0_src_50063f9f_scoped_50063f9f_lang.css +2 -0
  22. package/dist/assets/src/components/shared/controls/{SListboxOption.css_vue_type_style_index_0_src_77c399b4_scoped_77c399b4_lang.css → SListboxOption.css_vue_type_style_index_0_src_59c9c538_scoped_59c9c538_lang.css} +1 -1
  23. package/dist/assets/src/components/shared/controls/SMenuSurface.css_vue_type_style_index_0_src_d2b7d71b_scoped_d2b7d71b_lang.css +2 -0
  24. package/dist/assets/src/components/shared/controls/SSelect.css_vue_type_style_index_0_src_d1ead6c0_scoped_d1ead6c0_lang.css +2 -0
  25. package/dist/assets/src/components/shared/controls/STextarea.css_vue_type_style_index_0_src_true_lang.css +1 -1
  26. package/dist/assets/src/components/shared/data-display/SControlledToastViewport.css_vue_type_style_index_0_src_a69aa84b_scoped_a69aa84b_lang.css +2 -0
  27. package/dist/assets/src/components/shared/data-display/SProgressBar.css_vue_type_style_index_0_src_cad721dd_scoped_cad721dd_lang.css +2 -0
  28. package/dist/assets/src/components/shared/data-display/SRichDocument.css_vue_type_style_index_0_src_8db085d5_scoped_8db085d5_lang.css +2 -0
  29. package/dist/assets/src/components/shared/data-display/SScrollViewport.css_vue_type_style_index_0_src_d94fcf8c_scoped_d94fcf8c_lang.css +2 -0
  30. package/dist/assets/src/components/shared/data-display/SStatus.css_vue_type_style_index_0_src_3ce41a12_scoped_3ce41a12_lang.css +1 -1
  31. package/dist/assets/src/components/shared/data-display/STable.css_vue_type_style_index_0_src_b23b3d71_scoped_b23b3d71_lang.css +2 -0
  32. package/dist/assets/src/components/shared/data-display/STooltip.css_vue_type_style_index_0_src_true_lang.css +1 -1
  33. package/dist/assets/src/components/shared/data-display/SVirtualList.css_vue_type_style_index_0_src_9fe3ade0_scoped_9fe3ade0_lang.css +2 -0
  34. package/dist/assets/src/components/shared/data-display/_internal/SRichBlockNode.css_vue_type_style_index_0_src_eaae882d_scoped_eaae882d_lang.css +2 -0
  35. package/dist/assets/src/components/shared/data-display/_internal/SRichDisclosure.css_vue_type_style_index_0_src_1f0ffc97_scoped_1f0ffc97_lang.css +2 -0
  36. package/dist/assets/src/components/shared/data-display/_internal/SRichImage.css_vue_type_style_index_0_src_2f1c39a9_scoped_2f1c39a9_lang.css +2 -0
  37. package/dist/assets/src/components/shared/data-display/_internal/{SRichInlineNode.css_vue_type_style_index_0_src_20c8cc87_scoped_20c8cc87_lang.css → SRichInlineNode.css_vue_type_style_index_0_src_3ca8df12_scoped_3ca8df12_lang.css} +1 -1
  38. package/dist/assets/src/components/shared/data-display/_internal/STableCell.css_vue_type_style_index_0_src_b829cbc6_scoped_b829cbc6_lang.css +2 -0
  39. package/dist/assets/src/components/shared/data-display/_internal/STableFrame.css_vue_type_style_index_0_src_914bad28_scoped_914bad28_lang.css +2 -0
  40. package/dist/assets/src/components/shared/data-display/_internal/STableRow.css_vue_type_style_index_0_src_1661f8b8_scoped_1661f8b8_lang.css +2 -0
  41. package/dist/assets/src/components/shared/feedback/SAsyncState.css_vue_type_style_index_0_src_8a291af7_scoped_8a291af7_lang.css +2 -0
  42. package/dist/assets/src/components/shared/navigation/{SBottomNav.vue_vue_type_style_index_0_scoped_b3963080_lang.css → SBottomNav.vue_vue_type_style_index_0_scoped_68cf84b3_lang.css} +1 -1
  43. package/dist/index.d.ts +1 -0
  44. package/dist/index.js +3 -3
  45. package/dist/reference.css +4 -0
  46. package/dist/src/components/icons/_internal/generatedSputnigUiIconComponents.d.ts +15 -0
  47. package/dist/src/components/icons/_internal/generatedSputnigUiIconComponents.js +4 -4
  48. package/dist/src/components/icons/_internal/generatedSputnigUiIconMarkup.d.ts +46 -1
  49. package/dist/src/components/icons/_internal/generatedSputnigUiIconMarkup.js +260 -230
  50. package/dist/src/components/icons/sputnigUiIcons.d.ts +1 -1
  51. package/dist/src/components/icons/sputnigUiIcons.js +233 -218
  52. package/dist/src/components/layout/SAppShell.vue_vue_type_script_setup_true_lang.js +8 -8
  53. package/dist/src/components/layout/SDockRegion.vue.d.ts +18 -5
  54. package/dist/src/components/layout/SDockRegion.vue.js +2 -2
  55. package/dist/src/components/layout/SDockRegion.vue_vue_type_script_setup_true_lang.js +112 -64
  56. package/dist/src/components/layout/SResizeHandle.vue.d.ts +6 -3
  57. package/dist/src/components/layout/SResizeHandle.vue.js +2 -2
  58. package/dist/src/components/layout/SResizeHandle.vue_vue_type_script_setup_true_lang.js +127 -87
  59. package/dist/src/components/layout/SStack.vue.d.ts +1 -1
  60. package/dist/src/components/layout/SWorkbenchPanelShell.vue.d.ts +4 -4
  61. package/dist/src/components/layout/SWorkbenchPanelShell.vue.js +2 -2
  62. package/dist/src/components/layout/SWorkbenchPanelShell.vue_vue_type_script_setup_true_lang.js +62 -58
  63. package/dist/src/components/layout/types.d.ts +20 -0
  64. package/dist/src/components/shared/_internal/SDialogSurface.vue.d.ts +9 -1
  65. package/dist/src/components/shared/_internal/SDialogSurface.vue.js +2 -2
  66. package/dist/src/components/shared/_internal/SDialogSurface.vue_vue_type_script_setup_true_lang.js +183 -68
  67. package/dist/src/components/shared/_internal/SHeaderSurface.vue.d.ts +1 -1
  68. package/dist/src/components/shared/_internal/SListboxGroup.vue.d.ts +5 -0
  69. package/dist/src/components/shared/_internal/SListboxGroup.vue.js +2 -2
  70. package/dist/src/components/shared/_internal/SListboxGroup.vue_vue_type_script_setup_true_lang.js +33 -15
  71. package/dist/src/components/shared/_internal/SMenuLayer.vue.d.ts +5 -1
  72. package/dist/src/components/shared/_internal/SMenuLayer.vue.js +2 -2
  73. package/dist/src/components/shared/_internal/SMenuLayer.vue_vue_type_script_setup_true_lang.js +64 -20
  74. package/dist/src/components/shared/_internal/dialogSurface.d.ts +17 -2
  75. package/dist/src/components/shared/_internal/dialogSurface.js +42 -23
  76. package/dist/src/components/shared/_internal/dialogSurfaceMotion.d.ts +14 -0
  77. package/dist/src/components/shared/_internal/dialogSurfaceMotion.js +84 -0
  78. package/dist/src/components/shared/_internal/focusTrap.js +15 -13
  79. package/dist/src/components/shared/_internal/listboxContext.d.ts +1 -0
  80. package/dist/src/components/shared/_internal/listboxInventory.d.ts +51 -0
  81. package/dist/src/components/shared/_internal/listboxInventory.js +85 -0
  82. package/dist/src/components/shared/_internal/menuContext.d.ts +8 -0
  83. package/dist/src/components/shared/_internal/menuContext.js +2 -2
  84. package/dist/src/components/shared/_internal/sidebarGroupContext.d.ts +1 -0
  85. package/dist/src/components/shared/_internal/useVirtualCollection.d.ts +45 -0
  86. package/dist/src/components/shared/_internal/useVirtualCollection.js +123 -0
  87. package/dist/src/components/shared/complex/SKanbanLane.vue_vue_type_script_setup_true_lang.js +5 -5
  88. package/dist/src/components/shared/containers/SCloudChrome.vue.d.ts +1 -1
  89. package/dist/src/components/shared/containers/SCloudChromeRow.vue.d.ts +1 -1
  90. package/dist/src/components/shared/containers/SCollapsiblePanel.vue.d.ts +5 -0
  91. package/dist/src/components/shared/containers/SCollapsiblePanel.vue.js +2 -2
  92. package/dist/src/components/shared/containers/SCollapsiblePanel.vue_vue_type_script_setup_true_lang.js +123 -121
  93. package/dist/src/components/shared/containers/SDrawer.vue.d.ts +16 -5
  94. package/dist/src/components/shared/containers/SDrawer.vue.js +3 -6
  95. package/dist/src/components/shared/containers/SDrawer.vue_vue_type_script_setup_true_lang.js +149 -75
  96. package/dist/src/components/shared/containers/SModal.vue.d.ts +8 -8
  97. package/dist/src/components/shared/containers/SModal.vue.js +3 -6
  98. package/dist/src/components/shared/containers/SModal.vue_vue_type_script_setup_true_lang.js +93 -85
  99. package/dist/src/components/shared/containers/SOverlayHost.vue.d.ts +16 -0
  100. package/dist/src/components/shared/containers/SOverlayHost.vue.js +8 -0
  101. package/dist/src/components/shared/containers/SOverlayHost.vue_vue_type_script_setup_true_lang.js +66 -0
  102. package/dist/src/components/shared/containers/SPageHeader.vue.d.ts +1 -1
  103. package/dist/src/components/shared/containers/SPanel.vue.d.ts +2 -2
  104. package/dist/src/components/shared/containers/SPanel.vue_vue_type_script_setup_true_lang.js +7 -7
  105. package/dist/src/components/shared/containers/SPopover.vue.js +2 -2
  106. package/dist/src/components/shared/containers/SPopover.vue_vue_type_script_setup_true_lang.js +250 -156
  107. package/dist/src/components/shared/containers/SSidebarGroup.vue.js +2 -2
  108. package/dist/src/components/shared/containers/SSidebarGroup.vue_vue_type_script_setup_true_lang.js +30 -8
  109. package/dist/src/components/shared/containers/SSidebarSection.vue.js +2 -2
  110. package/dist/src/components/shared/containers/SSidebarSection.vue_vue_type_script_setup_true_lang.js +59 -45
  111. package/dist/src/components/shared/controls/SButton.vue.d.ts +7 -0
  112. package/dist/src/components/shared/controls/SButton.vue.js +2 -2
  113. package/dist/src/components/shared/controls/SButton.vue_vue_type_script_setup_true_lang.js +11 -5
  114. package/dist/src/components/shared/controls/SCheckbox.vue.d.ts +3 -0
  115. package/dist/src/components/shared/controls/SCheckbox.vue.js +2 -2
  116. package/dist/src/components/shared/controls/SCheckbox.vue_vue_type_script_setup_true_lang.js +53 -43
  117. package/dist/src/components/shared/controls/SCheckboxGroup.vue_vue_type_script_setup_true_lang.js +7 -7
  118. package/dist/src/components/shared/controls/SChoiceCards.vue_vue_type_script_setup_true_lang.js +4 -4
  119. package/dist/src/components/shared/controls/SColorSelect.vue_vue_type_script_setup_true_lang.js +6 -6
  120. package/dist/src/components/shared/controls/SCombobox.vue.js +2 -2
  121. package/dist/src/components/shared/controls/SCombobox.vue_vue_type_script_setup_true_lang.js +157 -132
  122. package/dist/src/components/shared/controls/SComboboxTrigger.vue.d.ts +2 -2
  123. package/dist/src/components/shared/controls/SContextMenu.vue.d.ts +11 -0
  124. package/dist/src/components/shared/controls/SContextMenu.vue.js +2 -2
  125. package/dist/src/components/shared/controls/SContextMenu.vue_vue_type_script_setup_true_lang.js +163 -73
  126. package/dist/src/components/shared/controls/SContextToggleButton.vue_vue_type_script_setup_true_lang.js +6 -6
  127. package/dist/src/components/shared/controls/SDragHandle.vue_vue_type_script_setup_true_lang.js +5 -5
  128. package/dist/src/components/shared/controls/SDropdownMenu.vue.js +2 -2
  129. package/dist/src/components/shared/controls/SDropdownMenu.vue_vue_type_script_setup_true_lang.js +77 -65
  130. package/dist/src/components/shared/controls/SField.vue.d.ts +9 -6
  131. package/dist/src/components/shared/controls/SField.vue.js +2 -2
  132. package/dist/src/components/shared/controls/SField.vue_vue_type_script_setup_true_lang.js +69 -52
  133. package/dist/src/components/shared/controls/SFieldGroup.vue_vue_type_script_setup_true_lang.js +13 -13
  134. package/dist/src/components/shared/controls/SInlineTokenEditor.vue_vue_type_script_setup_true_lang.js +26 -26
  135. package/dist/src/components/shared/controls/SInputText.vue_vue_type_script_setup_true_lang.js +21 -21
  136. package/dist/src/components/shared/controls/SInteractiveSurface.vue.js +2 -2
  137. package/dist/src/components/shared/controls/SInteractiveSurface.vue_vue_type_script_setup_true_lang.js +99 -74
  138. package/dist/src/components/shared/controls/SLink.d.ts +11 -1
  139. package/dist/src/components/shared/controls/SLink.vue.d.ts +17 -1
  140. package/dist/src/components/shared/controls/SLink.vue.js +2 -2
  141. package/dist/src/components/shared/controls/SLink.vue_vue_type_script_setup_true_lang.js +157 -62
  142. package/dist/src/components/shared/controls/SListbox.vue.d.ts +10 -1
  143. package/dist/src/components/shared/controls/SListbox.vue.js +2 -2
  144. package/dist/src/components/shared/controls/SListbox.vue_vue_type_script_setup_true_lang.js +371 -189
  145. package/dist/src/components/shared/controls/SListboxOption.vue.d.ts +6 -0
  146. package/dist/src/components/shared/controls/SListboxOption.vue.js +2 -2
  147. package/dist/src/components/shared/controls/SListboxOption.vue_vue_type_script_setup_true_lang.js +47 -34
  148. package/dist/src/components/shared/controls/SMenuSurface.vue.d.ts +2 -2
  149. package/dist/src/components/shared/controls/SMenuSurface.vue.js +2 -2
  150. package/dist/src/components/shared/controls/SMenuSurface.vue_vue_type_script_setup_true_lang.js +145 -115
  151. package/dist/src/components/shared/controls/SRange.vue_vue_type_script_setup_true_lang.js +12 -12
  152. package/dist/src/components/shared/controls/SSelect.vue.js +2 -2
  153. package/dist/src/components/shared/controls/SSelect.vue_vue_type_script_setup_true_lang.js +130 -112
  154. package/dist/src/components/shared/controls/STextarea.d.ts +1 -1
  155. package/dist/src/components/shared/controls/STextarea.vue.d.ts +28 -2
  156. package/dist/src/components/shared/controls/STextarea.vue_vue_type_script_setup_true_lang.js +348 -209
  157. package/dist/src/components/shared/controls/_internal/SInlineTokenSurface.vue_vue_type_script_lang.js +36 -36
  158. package/dist/src/components/shared/data-display/SActionList.vue.d.ts +1 -1
  159. package/dist/src/components/shared/data-display/SActionListItem.vue.d.ts +4 -4
  160. package/dist/src/components/shared/data-display/SActionListItem.vue_vue_type_script_setup_true_lang.js +6 -6
  161. package/dist/src/components/shared/data-display/SBadge.vue.d.ts +1 -1
  162. package/dist/src/components/shared/data-display/SChart.vue_vue_type_script_setup_true_lang.js +89 -89
  163. package/dist/src/components/shared/data-display/SChip.vue.d.ts +1 -1
  164. package/dist/src/components/shared/data-display/SChip.vue_vue_type_script_setup_true_lang.js +7 -7
  165. package/dist/src/components/shared/data-display/SCodeBlock.vue_vue_type_script_setup_true_lang.js +19 -19
  166. package/dist/src/components/shared/data-display/SCodeEditor.vue_vue_type_script_setup_true_lang.js +37 -37
  167. package/dist/src/components/shared/data-display/SCodeSearchPanel.vue_vue_type_script_setup_true_lang.js +17 -17
  168. package/dist/src/components/shared/data-display/SCodeWorkspaceEditor.vue_vue_type_script_setup_true_lang.js +12 -12
  169. package/dist/src/components/shared/data-display/SControlledToastViewport.vue.js +2 -2
  170. package/dist/src/components/shared/data-display/SControlledToastViewport.vue_vue_type_script_setup_true_lang.js +57 -48
  171. package/dist/src/components/shared/data-display/SDiffViewer.vue_vue_type_script_setup_true_lang.js +13 -13
  172. package/dist/src/components/shared/data-display/SDocBlock.vue_vue_type_script_setup_true_lang.js +12 -12
  173. package/dist/src/components/shared/data-display/SEmptyState.vue.d.ts +1 -1
  174. package/dist/src/components/shared/data-display/SEmptyState.vue_vue_type_script_setup_true_lang.js +4 -4
  175. package/dist/src/components/shared/data-display/SExpandableText.vue_vue_type_script_setup_true_lang.js +7 -7
  176. package/dist/src/components/shared/data-display/SKeyValueGrid.vue_vue_type_script_setup_true_lang.js +15 -15
  177. package/dist/src/components/shared/data-display/SLinkedSystemsList.vue_vue_type_script_setup_true_lang.js +17 -17
  178. package/dist/src/components/shared/data-display/SMessage.vue.d.ts +1 -1
  179. package/dist/src/components/shared/data-display/SMessage.vue_vue_type_script_setup_true_lang.js +9 -9
  180. package/dist/src/components/shared/data-display/SMetricCard.vue.d.ts +1 -1
  181. package/dist/src/components/shared/data-display/SProgressBar.vue.d.ts +22 -3
  182. package/dist/src/components/shared/data-display/SProgressBar.vue.js +2 -2
  183. package/dist/src/components/shared/data-display/SProgressBar.vue_vue_type_script_setup_true_lang.js +133 -47
  184. package/dist/src/components/shared/data-display/SProgressIndicator.vue_vue_type_script_setup_true_lang.js +4 -4
  185. package/dist/src/components/shared/data-display/SRichDocument.vue.js +2 -2
  186. package/dist/src/components/shared/data-display/SRichDocument.vue_vue_type_script_setup_true_lang.js +46 -23
  187. package/dist/src/components/shared/data-display/SScrollViewport.vue.d.ts +10 -5
  188. package/dist/src/components/shared/data-display/SScrollViewport.vue.js +2 -2
  189. package/dist/src/components/shared/data-display/SScrollViewport.vue_vue_type_script_setup_true_lang.js +162 -111
  190. package/dist/src/components/shared/data-display/SSectionHeader.vue.d.ts +1 -1
  191. package/dist/src/components/shared/data-display/SStatus.vue_vue_type_script_setup_true_lang.js +4 -4
  192. package/dist/src/components/shared/data-display/STable.vue.js +2 -2
  193. package/dist/src/components/shared/data-display/STable.vue_vue_type_script_setup_true_lang.js +343 -322
  194. package/dist/src/components/shared/data-display/STooltip.vue.d.ts +2 -2
  195. package/dist/src/components/shared/data-display/STooltip.vue_vue_type_script_setup_true_lang.js +284 -205
  196. package/dist/src/components/shared/data-display/STooltipAnchor.vue_vue_type_script_setup_true_lang.js +5 -5
  197. package/dist/src/components/shared/data-display/STooltipTarget.vue_vue_type_script_setup_true_lang.js +4 -4
  198. package/dist/src/components/shared/data-display/SVirtualList.vue.js +2 -2
  199. package/dist/src/components/shared/data-display/SVirtualList.vue_vue_type_script_setup_true_lang.js +196 -246
  200. package/dist/src/components/shared/data-display/_internal/SRichBlockNode.vue.js +2 -2
  201. package/dist/src/components/shared/data-display/_internal/SRichBlockNode.vue_vue_type_script_setup_true_lang.js +242 -220
  202. package/dist/src/components/shared/data-display/_internal/SRichDisclosure.vue.d.ts +13 -2
  203. package/dist/src/components/shared/data-display/_internal/SRichDisclosure.vue.js +2 -2
  204. package/dist/src/components/shared/data-display/_internal/SRichDisclosure.vue_vue_type_script_setup_true_lang.js +67 -11
  205. package/dist/src/components/shared/data-display/_internal/SRichImage.vue.d.ts +11 -0
  206. package/dist/src/components/shared/data-display/_internal/SRichImage.vue.js +8 -0
  207. package/dist/src/components/shared/data-display/_internal/SRichImage.vue_vue_type_script_setup_true_lang.js +89 -0
  208. package/dist/src/components/shared/data-display/_internal/SRichInlineNode.vue.d.ts +3 -2
  209. package/dist/src/components/shared/data-display/_internal/SRichInlineNode.vue.js +2 -2
  210. package/dist/src/components/shared/data-display/_internal/SRichInlineNode.vue_vue_type_script_setup_true_lang.js +179 -125
  211. package/dist/src/components/shared/data-display/_internal/SRichMath.vue_vue_type_script_setup_true_lang.js +4 -4
  212. package/dist/src/components/shared/data-display/_internal/SRichTableNode.vue.d.ts +21 -0
  213. package/dist/src/components/shared/data-display/_internal/SRichTableNode.vue.js +5 -0
  214. package/dist/src/components/shared/data-display/_internal/SRichTableNode.vue_vue_type_script_setup_true_lang.js +150 -0
  215. package/dist/src/components/shared/data-display/_internal/STableCell.vue.d.ts +52 -0
  216. package/dist/src/components/shared/data-display/_internal/STableCell.vue.js +8 -0
  217. package/dist/src/components/shared/data-display/_internal/STableCell.vue_vue_type_script_setup_true_lang.js +148 -0
  218. package/dist/src/components/shared/data-display/_internal/STableFrame.vue.d.ts +42 -0
  219. package/dist/src/components/shared/data-display/_internal/STableFrame.vue.js +8 -0
  220. package/dist/src/components/shared/data-display/_internal/STableFrame.vue_vue_type_script_setup_true_lang.js +114 -0
  221. package/dist/src/components/shared/data-display/_internal/STableRow.vue.d.ts +43 -0
  222. package/dist/src/components/shared/data-display/_internal/STableRow.vue.js +8 -0
  223. package/dist/src/components/shared/data-display/_internal/STableRow.vue_vue_type_script_setup_true_lang.js +115 -0
  224. package/dist/src/components/shared/data-display/_internal/STableSection.vue.d.ts +28 -0
  225. package/dist/src/components/shared/data-display/_internal/STableSection.vue.js +5 -0
  226. package/dist/src/components/shared/data-display/_internal/STableSection.vue_vue_type_script_setup_true_lang.js +77 -0
  227. package/dist/src/components/shared/data-display/_internal/richDocumentMedia.d.ts +6 -0
  228. package/dist/src/components/shared/data-display/_internal/richDocumentMedia.js +136 -0
  229. package/dist/src/components/shared/data-display/_internal/richDocumentMetadata.d.ts +21 -0
  230. package/dist/src/components/shared/data-display/_internal/richDocumentMetadata.js +39 -0
  231. package/dist/src/components/shared/data-display/_internal/richDocumentNavigation.d.ts +30 -0
  232. package/dist/src/components/shared/data-display/_internal/richDocumentNavigation.js +88 -0
  233. package/dist/src/components/shared/data-display/_internal/richDocumentTableValidation.d.ts +9 -0
  234. package/dist/src/components/shared/data-display/_internal/richDocumentTableValidation.js +240 -0
  235. package/dist/src/components/shared/data-display/_internal/richDocumentTraversal.d.ts +15 -0
  236. package/dist/src/components/shared/data-display/_internal/richDocumentTraversal.js +61 -0
  237. package/dist/src/components/shared/data-display/_internal/richDocumentTypes.d.ts +466 -0
  238. package/dist/src/components/shared/data-display/_internal/richDocumentValidation.d.ts +65 -0
  239. package/dist/src/components/shared/data-display/_internal/richDocumentValidation.js +192 -0
  240. package/dist/src/components/shared/data-display/_internal/tableFoundation.d.ts +27 -0
  241. package/dist/src/components/shared/data-display/_internal/tableFoundation.js +16 -0
  242. package/dist/src/components/shared/data-display/richDocument.d.ts +3 -220
  243. package/dist/src/components/shared/data-display/richDocument.js +607 -399
  244. package/dist/src/components/shared/data-display/scrollViewport.d.ts +2 -0
  245. package/dist/src/components/shared/database/SDataGrid.vue_vue_type_script_setup_true_lang.js +36 -36
  246. package/dist/src/components/shared/database/SSqlEditor.vue.d.ts +2 -2
  247. package/dist/src/components/shared/database/SSqlEditor.vue_vue_type_script_setup_true_lang.js +36 -36
  248. package/dist/src/components/shared/feedback/SAsyncState.vue.js +2 -2
  249. package/dist/src/components/shared/feedback/SAsyncState.vue_vue_type_script_setup_true_lang.js +70 -63
  250. package/dist/src/components/shared/navigation/SBottomNav.vue.d.ts +2 -2
  251. package/dist/src/components/shared/navigation/SBottomNav.vue.js +2 -2
  252. package/dist/src/components/shared/navigation/SBottomNav.vue_vue_type_script_setup_true_lang.js +140 -129
  253. package/dist/src/components/shared/navigation/SBreadcrumbs.vue.d.ts +2 -2
  254. package/dist/src/components/shared/navigation/STabList.vue.d.ts +1 -1
  255. package/dist/src/components/shared/navigation/STabPanel.vue.d.ts +2 -2
  256. package/dist/src/components/shared/navigation/SWizardSteps.vue_vue_type_script_setup_true_lang.js +16 -16
  257. package/dist/src/components/shared/persona/SPersonaProjectPicker.vue.d.ts +2 -2
  258. package/dist/src/composables/useDialogOverlay.d.ts +21 -2
  259. package/dist/src/composables/useDialogOverlay.js +275 -44
  260. package/dist/src/composables/useFloatingPosition.d.ts +20 -0
  261. package/dist/src/composables/useFloatingPosition.js +129 -52
  262. package/dist/src/internal/fieldSurface.d.ts +3 -0
  263. package/dist/src/internal/fieldSurface.js +3 -2
  264. package/dist/src/internal/flatTree.d.ts +8 -0
  265. package/dist/src/internal/flatTree.js +23 -0
  266. package/dist/src/internal/focusNavigation.d.ts +5 -0
  267. package/dist/src/internal/focusNavigation.js +29 -16
  268. package/dist/src/internal/inertLease.d.ts +8 -0
  269. package/dist/src/internal/inertLease.js +33 -0
  270. package/dist/src/internal/layerStack.d.ts +52 -0
  271. package/dist/src/internal/layerStack.js +343 -60
  272. package/dist/src/internal/linkTarget.d.ts +7 -1
  273. package/dist/src/internal/linkTarget.js +11 -7
  274. package/dist/src/internal/nativeFocus.d.ts +4 -0
  275. package/dist/src/internal/nativeFocus.js +12 -0
  276. package/dist/src/internal/overlayHost.d.ts +18 -0
  277. package/dist/src/internal/overlayHost.js +18 -0
  278. package/dist/src/internal/overlayPortal.d.ts +17 -0
  279. package/dist/src/internal/overlayPortal.js +23 -0
  280. package/dist/src/internal/ownedAttrs.d.ts +13 -3
  281. package/dist/src/internal/ownedAttrs.js +8 -1
  282. package/dist/src/internal/runtimeContract.d.ts +2 -0
  283. package/dist/src/internal/runtimeContract.js +10 -5
  284. package/dist/src/internal/semanticSizing.d.ts +2 -2
  285. package/dist/src/internal/semanticSizing.js +2 -1
  286. package/dist/src/internal/useMenuLayer.d.ts +8 -4
  287. package/dist/src/internal/useMenuLayer.js +78 -49
  288. package/dist/src/internal/viewportModality.d.ts +27 -0
  289. package/dist/src/internal/viewportModality.js +132 -0
  290. package/dist/tailwind.css +3 -0
  291. package/dist/typography.LICENSE.txt +94 -0
  292. package/dist/typography.js +5105 -0
  293. package/docs/getting-started.md +39 -0
  294. package/docs/link-download.md +114 -0
  295. package/docs/listbox.md +129 -0
  296. package/docs/overlay-lifecycle.md +195 -0
  297. package/docs/public-api.md +335 -6
  298. package/docs/resize.md +158 -0
  299. package/docs/rich-document.md +442 -25
  300. package/docs/scroll-viewport.md +30 -10
  301. package/docs/theming.md +42 -8
  302. package/package.json +12 -4
  303. package/src/components/shared/_internal/SDialogSurface.css +213 -36
  304. package/src/components/shared/_internal/SMenuLayer.css +4 -0
  305. package/src/components/shared/containers/SOverlayHost.css +14 -0
  306. package/src/components/shared/containers/SPopover.css +8 -2
  307. package/src/components/shared/controls/SButton.css +4 -3
  308. package/src/components/shared/controls/SCheckbox.css +19 -7
  309. package/src/components/shared/controls/SField.css +6 -0
  310. package/src/components/shared/controls/SListbox.css +17 -0
  311. package/src/components/shared/controls/SMenuSurface.css +18 -4
  312. package/src/components/shared/controls/STextarea.css +42 -3
  313. package/src/components/shared/data-display/SControlledToastViewport.css +2 -10
  314. package/src/components/shared/data-display/SProgressBar.css +79 -0
  315. package/src/components/shared/data-display/SRichDocument.css +1 -0
  316. package/src/components/shared/data-display/SScrollViewport.css +17 -1
  317. package/src/components/shared/data-display/SStatus.css +8 -25
  318. package/src/components/shared/data-display/STable.css +0 -113
  319. package/src/components/shared/data-display/STooltip.css +3 -0
  320. package/src/components/shared/data-display/_internal/SRichBlockNode.css +11 -7
  321. package/src/components/shared/data-display/_internal/SRichDisclosure.css +16 -0
  322. package/src/components/shared/data-display/_internal/SRichImage.css +37 -0
  323. package/src/components/shared/data-display/_internal/STableCell.css +55 -0
  324. package/src/components/shared/data-display/_internal/STableFrame.css +37 -0
  325. package/src/components/shared/data-display/_internal/STableRow.css +12 -0
  326. package/src/components/shared/feedback/SAsyncState.css +0 -4
  327. package/src/styles/style.css +9 -5
  328. package/src/styles/tokens.css +30 -0
  329. package/dist/assets/src/components/layout/SDockRegion.vue_vue_type_style_index_0_scoped_2932631d_lang.css +0 -1
  330. package/dist/assets/src/components/shared/_internal/SDialogSurface.css_vue_type_style_index_0_src_d1b65adf_scoped_d1b65adf_lang.css +0 -2
  331. package/dist/assets/src/components/shared/_internal/SMenuLayer.css_vue_type_style_index_0_src_4913bbe1_scoped_4913bbe1_lang.css +0 -1
  332. package/dist/assets/src/components/shared/containers/SDrawer.css_vue_type_style_index_0_src_091d7325_scoped_091d7325_lang.css +0 -2
  333. package/dist/assets/src/components/shared/containers/SModal.css_vue_type_style_index_0_src_0dc51b74_scoped_0dc51b74_lang.css +0 -2
  334. package/dist/assets/src/components/shared/containers/SPopover.css_vue_type_style_index_0_src_deded766_scoped_deded766_lang.css +0 -2
  335. package/dist/assets/src/components/shared/containers/SSidebarSection.css_vue_type_style_index_0_src_96f51ac6_scoped_96f51ac6_lang.css +0 -2
  336. package/dist/assets/src/components/shared/controls/SButton.css_vue_type_style_index_0_src_a5d8f7e0_scoped_a5d8f7e0_lang.css +0 -2
  337. package/dist/assets/src/components/shared/controls/SCheckbox.css_vue_type_style_index_0_src_b20b27dd_scoped_b20b27dd_lang.css +0 -2
  338. package/dist/assets/src/components/shared/controls/SCombobox.css_vue_type_style_index_0_src_e3b4f580_scoped_e3b4f580_lang.css +0 -2
  339. package/dist/assets/src/components/shared/controls/SContextMenu.css_vue_type_style_index_0_src_00c91d39_scoped_00c91d39_lang.css +0 -1
  340. package/dist/assets/src/components/shared/controls/SField.css_vue_type_style_index_0_src_60628f96_scoped_60628f96_lang.css +0 -2
  341. package/dist/assets/src/components/shared/controls/SListbox.css_vue_type_style_index_0_src_24db4abb_scoped_24db4abb_lang.css +0 -2
  342. package/dist/assets/src/components/shared/controls/SMenuSurface.css_vue_type_style_index_0_src_ddcc5fbb_scoped_ddcc5fbb_lang.css +0 -2
  343. package/dist/assets/src/components/shared/controls/SSelect.css_vue_type_style_index_0_src_441648c9_scoped_441648c9_lang.css +0 -2
  344. package/dist/assets/src/components/shared/data-display/SControlledToastViewport.css_vue_type_style_index_0_src_5864b6c6_scoped_5864b6c6_lang.css +0 -2
  345. package/dist/assets/src/components/shared/data-display/SProgressBar.css_vue_type_style_index_0_src_9308293a_scoped_9308293a_lang.css +0 -2
  346. package/dist/assets/src/components/shared/data-display/SRichDocument.css_vue_type_style_index_0_src_d1afafc5_scoped_d1afafc5_lang.css +0 -2
  347. package/dist/assets/src/components/shared/data-display/SScrollViewport.css_vue_type_style_index_0_src_e5d11342_scoped_e5d11342_lang.css +0 -2
  348. package/dist/assets/src/components/shared/data-display/STable.css_vue_type_style_index_0_src_9955d482_scoped_9955d482_lang.css +0 -2
  349. package/dist/assets/src/components/shared/data-display/SVirtualList.css_vue_type_style_index_0_src_cee8c247_scoped_cee8c247_lang.css +0 -2
  350. package/dist/assets/src/components/shared/data-display/_internal/SRichBlockNode.css_vue_type_style_index_0_src_195d5c06_scoped_195d5c06_lang.css +0 -2
  351. package/dist/assets/src/components/shared/data-display/_internal/SRichDisclosure.css_vue_type_style_index_0_src_fa94e2ff_scoped_fa94e2ff_lang.css +0 -2
  352. package/dist/assets/src/components/shared/feedback/SAsyncState.css_vue_type_style_index_0_src_bfc28903_scoped_bfc28903_lang.css +0 -2
  353. package/src/components/shared/containers/SDrawer.css +0 -69
  354. package/src/components/shared/containers/SModal.css +0 -27
@@ -1,82 +1,365 @@
1
- import { isFocusableElement as e } from "./focusNavigation.js";
1
+ import { createAggregateError as e } from "./es2020.js";
2
+ import { flatTreeContains as t } from "./flatTree.js";
3
+ import { nativeFocusedElement as n } from "./nativeFocus.js";
4
+ import { acquireNativeDialog as r } from "./viewportModality.js";
5
+ import { isFocusableElement as i, isProgrammaticallyFocusableElement as a } from "./focusNavigation.js";
2
6
  //#region src/internal/layerStack.ts
3
- var t = [], n = !1, r = 0, i = "", a = (e, t) => e.root()?.contains(t) || e.anchor?.()?.contains(t) ? !0 : e.branches?.().some((e) => e.contains(t)) ?? !1, o = (e) => {
4
- let n = e.anchor?.() ?? e.restoreTarget ?? (typeof document < "u" && document.activeElement instanceof HTMLElement ? document.activeElement : null);
5
- return n ? [...t].reverse().find((e) => a(e, n))?.id ?? null : null;
6
- }, s = () => t[t.length - 1], c = (e) => {
7
- let n = e.parentId;
8
- for (; n;) {
9
- let e = t.find((e) => e.id === n);
7
+ var o = [], s = !1, c = !1, l = 0, u = "", d = 0, f = null, p = null, m = 0, h = /* @__PURE__ */ new Set(), g = /* @__PURE__ */ new WeakMap(), _ = null, v = t, y = (e, t) => {
8
+ let n = e.root();
9
+ return n && v(n, t) ? !0 : e.branches?.().some((e) => v(e, t)) ?? !1;
10
+ }, b = (e, t) => {
11
+ let n = e.anchor?.();
12
+ return y(e, t) || !!(n && v(n, t));
13
+ }, x = (e, t) => {
14
+ let n = e.dismissalRoots?.();
15
+ if (!n) return b(e, t);
16
+ let r = e.anchor?.();
17
+ return n.some((e) => v(e, t)) || (e.branches?.().some((e) => v(e, t)) ?? !1) || !!(r && v(r, t));
18
+ }, S = (e) => e.lost || !e.target.isConnected || e.programmatic && e.target instanceof HTMLElement && !a(e.target), C = (e) => {
19
+ e.active = !1, h.delete(e), K();
20
+ }, w = (e) => e.target instanceof Element && (!e.target.isConnected || E(e.modalityLoss) || e.programmatic && e.target instanceof HTMLElement && !a(e.target)), T = (e) => (e.releasingHost || e.hostReleased) && e.programmatic && e.releaseBoundary?.isConnected === !0 && e.releaseBoundary.hasAttribute("inert") && w(e), E = (e) => e !== null && e.mutation.isCurrent() && e.target.isConnected && v(e.mutation.boundary, e.target), D = (e) => T(e) || E(e.modalityLoss), O = (e) => {
21
+ if (!e.active || !e.settling) return;
22
+ e.settling = !1;
23
+ let t = n();
24
+ t !== e.target && (t === document.body && D(e) || C(e));
25
+ }, k = (e) => {
26
+ if (!e.active || e.focusRevision !== m) return !1;
27
+ let t = n();
28
+ return t === e.target ? !0 : t !== document.body || !w(e) ? !1 : e.source ? !0 : D(e);
29
+ }, A = (e, t) => [...e.encounters].every((e) => e === t || e.registered && Q(t, e)), j = (e, t) => {
30
+ _ = {
31
+ request: e,
32
+ target: t
33
+ };
34
+ try {
35
+ t.focus({ preventScroll: !0 });
36
+ } finally {
37
+ _ = null;
38
+ }
39
+ };
40
+ function M(e = {}) {
41
+ if (typeof document > "u" || typeof window > "u") return null;
42
+ if (e.releaseBoundary !== void 0 && e.releaseBoundary !== null && (!(e.releaseBoundary instanceof HTMLElement) || !e.releaseBoundary.isConnected || e.releaseBoundary.ownerDocument !== document)) throw TypeError("layerStack: focus release boundary must be a connected same-document HTMLElement");
43
+ let t = n(), r = f, i = r !== null && r.revision === d && r.focusRevision === m && (t === r.activeAtClose || t === document.body && (r.activeAtClose instanceof HTMLElement && !r.activeAtClose.isConnected || E(r.retirementLoss))), s = (t && t !== document.body ? [...o].reverse().find((e) => y(e, t)) ?? null : null) ?? (i ? r.entry : null);
44
+ if (t === document.body && p && !s) return null;
45
+ let c = i ? r.activeAtClose : t, l = c instanceof HTMLElement ? c : null;
46
+ if (s?.kind === "menu") {
47
+ l = s.restoreTarget;
48
+ let e = s.parentId;
49
+ for (; l && e;) {
50
+ let t = o.find((t) => t.id === e);
51
+ if (!t || t.kind !== "menu" || !y(t, l)) break;
52
+ l = t.restoreTarget, e = t.parentId;
53
+ }
54
+ }
55
+ let u = Object.freeze({
56
+ restoreTarget: l,
57
+ acquireHost: (e) => {
58
+ _.active && !k(_) && C(_);
59
+ let t = _.releaseBoundary, r = _.active && _.target instanceof Node && n() === _.target && t?.isConnected === !0 && v(t, _.target);
60
+ _.releasingHost = r;
61
+ try {
62
+ let n = e();
63
+ return _.hostReleased = r && t?.hasAttribute("inert") === !0, n;
64
+ } finally {
65
+ _.releasingHost = !1;
66
+ }
67
+ },
68
+ cancel: () => C(_)
69
+ }), _ = {
70
+ token: u,
71
+ source: s,
72
+ target: c,
73
+ programmatic: c instanceof HTMLElement && a(c),
74
+ releaseBoundary: e.releaseBoundary ?? null,
75
+ encounters: /* @__PURE__ */ new Set(),
76
+ focusRevision: m,
77
+ pendingRestore: i ? r : null,
78
+ claimant: null,
79
+ active: !0,
80
+ settling: !1,
81
+ releasingHost: !1,
82
+ hostReleased: !1,
83
+ modalityLoss: null
84
+ };
85
+ return g.set(u, _), h.add(_), W(), u;
86
+ }
87
+ var N = (e) => {
88
+ let t = e && e !== document.body ? [...o].reverse().find((t) => y(t, e)) : void 0;
89
+ p = e && t ? {
90
+ target: e,
91
+ entry: t,
92
+ programmatic: e instanceof HTMLElement && a(e),
93
+ lost: !1,
94
+ settling: !1
95
+ } : null;
96
+ }, P = () => {
97
+ let e = n();
98
+ if (e === document.body) {
99
+ let e = p !== null && S(p), t = [...h].filter((t) => D(t) || e && t.source === p?.entry);
100
+ if (e || t.length > 0) {
101
+ e && p && (p.lost = !0);
102
+ for (let e of [...h]) t.includes(e) || C(e);
103
+ return;
104
+ }
105
+ }
106
+ m += 1;
107
+ for (let t of [...h]) {
108
+ let n = _;
109
+ n && t.pendingRestore === n.request && t.source === n.request.entry && e === n.target && e === t.token.restoreTarget ? (t.target = e, t.programmatic = e instanceof HTMLElement && a(e), t.focusRevision = m) : C(t);
110
+ }
111
+ N(e);
112
+ }, F = (e) => {
113
+ if (p !== e || !e.settling) return;
114
+ e.settling = !1;
115
+ let t = n();
116
+ if (t !== e.target) {
117
+ if (t === document.body && S(e)) {
118
+ e.lost = !0;
119
+ return;
120
+ }
121
+ p = null, m += 1;
122
+ for (let e of [...h]) C(e);
123
+ }
124
+ }, I = (e) => {
125
+ let t = e.composedPath().find((e) => e instanceof Element);
126
+ for (let e of h) e.source || e.target !== t || n() === e.target || D(e) || e.settling || (e.settling = !0, queueMicrotask(() => O(e)));
127
+ let r = p;
128
+ if (r && n() !== r.target && e.composedPath().find((e) => e instanceof Element) === r.target) {
129
+ if (S(r)) {
130
+ r.lost = !0;
131
+ return;
132
+ }
133
+ r.settling || (r.settling = !0, queueMicrotask(() => F(r)));
134
+ }
135
+ }, ee = (e) => {
136
+ if (e.parent !== void 0) {
137
+ if (e.parent === null) return null;
138
+ let t = o.find((t) => t.id === e.parent?.id);
139
+ if (!t?.registered || !t.root()?.isConnected) throw TypeError("layerStack: explicit parent must be a live connected layer registration");
140
+ return t.id;
141
+ }
142
+ let t = e.anchor?.() ?? e.restoreTarget ?? (typeof document < "u" && document.activeElement instanceof HTMLElement ? document.activeElement : null);
143
+ return t ? [...o].reverse().find((e) => b(e, t))?.id ?? null : null;
144
+ }, L = () => o[o.length - 1], te = (e, t) => {
145
+ if (!e.eventBoundary) return !0;
146
+ let n = e.eventBoundary();
147
+ return n?.isConnected ? t.composedPath().some((t) => t instanceof Node && (n.contains(t) || b(e, t))) : !1;
148
+ }, R = (e) => {
149
+ let t = [...o].reverse().find((e) => e.modal);
150
+ return [...o].reverse().find((n) => (!t || n === t || Q(n, t)) && te(n, e));
151
+ }, z = (e) => {
152
+ let t = e.parentId;
153
+ for (; t;) {
154
+ let e = o.find((e) => e.id === t);
10
155
  if (!e) break;
11
156
  if (e.modal || e.trapFocus) return e.root() ?? document;
12
- n = e.parentId;
157
+ t = e.parentId;
13
158
  }
14
159
  return document;
15
- }, l = (e) => {
16
- let n = s();
17
- if (!n) return;
160
+ }, B = (e) => {
161
+ if (!L()) return;
18
162
  if (e.key === "Escape") {
19
- (n.dismissOnEscape?.() ?? !0) && (e.preventDefault(), e.stopPropagation(), n.requestDismiss("escape", e));
163
+ let t = R(e);
164
+ if (!t) return;
165
+ (t.dismissOnEscape?.() ?? !0) && (e.preventDefault(), e.stopPropagation(), t.requestDismiss("escape", e));
20
166
  return;
21
167
  }
22
168
  if (e.key !== "Tab") return;
23
- let r = -1;
24
- for (let e = t.length - 1; e >= 0; --e) if (t[e]?.trapFocus) {
25
- r = e;
169
+ let t = -1;
170
+ for (let e = o.length - 1; e >= 0; --e) if (o[e]?.trapFocus) {
171
+ t = e;
26
172
  break;
27
173
  }
28
- r < 0 || t.slice(r + 1).some((e) => e.blocksParentFocusTrap ?? !0) || t[r]?.trapFocus?.(e);
29
- }, u = (e, t) => {
30
- let n = s();
174
+ if (t < 0) return;
175
+ let n = o[t];
176
+ n && (o.slice(t + 1).some((e) => Q(e, n) && (e.blocksParentFocusTrap ?? !0)) || n.trapFocus?.(e));
177
+ }, V = (e, t) => {
178
+ let n = R(e);
31
179
  if (!n) return;
32
180
  let r = e.target;
33
- r instanceof Node && a(n, r) || (n.dismissOnOutsidePointer?.() ?? !0) && n.requestDismiss(t, e);
34
- }, d = (e) => {
35
- u(e, "outside-pointer");
36
- }, f = (e) => {
37
- u(e, "outside-contextmenu");
38
- }, p = () => {
39
- n || typeof window > "u" || typeof document > "u" || (n = !0, window.addEventListener("keydown", l, !0), document.addEventListener("pointerdown", d, !0), document.addEventListener("contextmenu", f, !0));
40
- }, m = () => {
41
- !n || t.length > 0 || typeof window > "u" || typeof document > "u" || (n = !1, window.removeEventListener("keydown", l, !0), document.removeEventListener("pointerdown", d, !0), document.removeEventListener("contextmenu", f, !0));
42
- }, h = () => {
43
- typeof document < "u" && (r === 0 && (i = document.body.style.overflow, document.body.style.overflow = "hidden"), r += 1);
44
- }, g = () => {
45
- typeof document < "u" && (r = Math.max(0, r - 1), r === 0 && (document.body.style.overflow = i));
46
- }, _ = (t) => {
181
+ if (r instanceof Node && x(n, r)) return;
182
+ let i = Y();
183
+ t === "outside-pointer" && i && r instanceof Node && !x(i, r) && !o.some((e) => Q(e, i) && x(e, r)) && e.preventDefault(), (n.dismissOnOutsidePointer?.() ?? !0) && n.requestDismiss(t, e);
184
+ }, H = (e) => {
185
+ V(e, "outside-pointer");
186
+ }, U = (e) => {
187
+ V(e, "outside-contextmenu");
188
+ }, W = () => {
189
+ typeof window > "u" || typeof document > "u" || c || (c = !0, document.addEventListener("focusin", P, !0), document.addEventListener("focusout", I, !0));
190
+ }, G = () => {
191
+ typeof window < "u" && typeof document < "u" && (s || (s = !0, window.addEventListener("keydown", B, !0), document.addEventListener("pointerdown", H, !0), document.addEventListener("contextmenu", U, !0)), W());
192
+ }, K = () => {
193
+ o.length > 0 || typeof window > "u" || typeof document > "u" || (s && (s = !1, window.removeEventListener("keydown", B, !0), document.removeEventListener("pointerdown", H, !0), document.removeEventListener("contextmenu", U, !0)), !(!c || f || h.size > 0) && (c = !1, document.removeEventListener("focusin", P, !0), document.removeEventListener("focusout", I, !0), p = null));
194
+ }, q = () => {
195
+ typeof document < "u" && (l === 0 && (u = document.body.style.overflow, document.body.style.overflow = "hidden"), l += 1);
196
+ }, J = () => {
197
+ typeof document < "u" && (l = Math.max(0, l - 1), l === 0 && (document.body.style.overflow = u));
198
+ }, Y = () => [...o].reverse().find((e) => e.modal), X = (e) => {
199
+ let t = e.nativeDialog;
200
+ if (!t) return;
201
+ let n = t.portal();
202
+ if (e.root() !== t.subject || !n?.isConnected || n.ownerDocument !== t.subject.ownerDocument || n.parentElement !== t.subject) throw TypeError("layerStack: viewport dialog requires its exact connected direct native portal");
203
+ e.nativeCycle?.refresh();
204
+ }, Z = (e, t) => {
205
+ let n = Y();
206
+ return n ? b(n, e) || o.some((t) => Q(t, n) && b(t, e)) : v(t, e);
207
+ }, ne = (e, t, r, i, o, s) => {
208
+ let c = {
209
+ entry: e,
210
+ activeAtClose: t,
211
+ revision: r,
212
+ focusRevision: i,
213
+ lostFocus: o,
214
+ retirementLoss: s
215
+ };
216
+ f = c;
217
+ for (let t of h) t.source === e && t.focusRevision === i && (t.pendingRestore = c);
47
218
  queueMicrotask(() => {
48
- if (t.restoreTarget?.isConnected && e(t.restoreTarget)) {
49
- t.restoreTarget.focus();
50
- return;
219
+ if (f === c) try {
220
+ if (f = null, d !== r || m !== i || o && !S(o)) return;
221
+ let l = n(), u = t instanceof HTMLElement && !t.isConnected && l === document.body, p = l === document.body && E(s);
222
+ if (l !== t && !u && !p) return;
223
+ if (e.restoreTarget?.isConnected && a(e.restoreTarget)) {
224
+ let t = z(e);
225
+ if (Z(e.restoreTarget, t)) {
226
+ j(c, e.restoreTarget);
227
+ return;
228
+ }
229
+ }
230
+ let h = z(e), g = [
231
+ Y()?.root(),
232
+ h,
233
+ L()?.root()
234
+ ];
235
+ for (let e of g) if (e instanceof HTMLElement && e.isConnected && a(e) && Z(e, h)) {
236
+ j(c, e);
237
+ return;
238
+ }
239
+ } finally {
240
+ K();
51
241
  }
52
- s()?.root()?.focus();
53
242
  });
243
+ }, re = (e, t) => {
244
+ let n = document.activeElement, r = !1;
245
+ return {
246
+ cancel: () => {
247
+ r = !0;
248
+ },
249
+ commit: (a) => {
250
+ queueMicrotask(() => {
251
+ if (r || d !== a || !e.isConnected || !i(e) || !(t instanceof Node) || !t.isConnected || !t.contains(e)) return;
252
+ let o = document.activeElement, s = n instanceof HTMLElement && !n.isConnected && o === document.body;
253
+ (o === n || s) && Z(e, t) && e.focus({ preventScroll: !0 });
254
+ });
255
+ }
256
+ };
257
+ }, Q = (e, t) => {
258
+ let n = e.parentId;
259
+ for (; n;) {
260
+ if (n === t.id) return !0;
261
+ n = o.find((e) => e.id === n)?.parentId ?? null;
262
+ }
263
+ return !1;
264
+ }, $ = (e) => {
265
+ if (!e.registered) return;
266
+ e.focusHandoff?.cancel(), e.focusHandoff = null, e.registered = !1;
267
+ let t = o.indexOf(e);
268
+ t >= 0 && o.splice(t, 1), e.modal && J();
54
269
  };
55
- function v(e) {
56
- let n = s(), r = e.modal || n?.tier === "overlay" ? "overlay" : "floating", i = n && n.tier === r ? `calc(${n.zIndex} + var(--s-layer-overlay-step))` : r === "overlay" ? "var(--s-layer-root-overlay-backdrop)" : "var(--s-layer-root-floating)", a = {
57
- ...e,
58
- id: Symbol(e.kind),
59
- parentId: o(e),
60
- restoreTarget: e.restoreTarget ?? null,
61
- tier: r,
62
- zIndex: i
63
- }, l = !0;
64
- return t.push(a), a.modal && h(), p(), {
65
- id: a.id,
66
- zIndex: a.zIndex,
67
- focusScope: () => c(a),
68
- unregister: ({ restoreFocus: e = !1 } = {}) => {
69
- if (!l) return;
70
- l = !1;
71
- let n = t.findIndex((e) => e.id === a.id), r = n === t.length - 1;
72
- if (n >= 0) {
73
- let e = a.root();
74
- for (let r of t.slice(n + 1)) r.parentId === a.id && (r.parentId = a.parentId), e?.contains(r.restoreTarget) && (r.restoreTarget = a.restoreTarget);
75
- t.splice(n, 1);
270
+ function ie(t) {
271
+ let i = t.focusAdmission ? g.get(t.focusAdmission) : void 0;
272
+ if (t.focusAdmission && !i) throw TypeError("layerStack: focus admission must be captured by this owner");
273
+ if (i?.claimant) throw TypeError("layerStack: focus admission already belongs to another registration");
274
+ let s = L(), c = ee(t), l = o.find((e) => e.id === c), u = t.kind === "dialog" || t.modal || s?.tier === "overlay" ? "overlay" : "floating", _ = s && s.tier === u ? `calc(${s.zIndex} + var(--s-layer-overlay-step))` : u === "overlay" ? "var(--s-layer-root-overlay-backdrop)" : "var(--s-layer-root-floating)", x = {
275
+ ...t,
276
+ id: Symbol(t.kind),
277
+ parentId: c,
278
+ eventBoundary: t.eventBoundary ?? (t.modal ? void 0 : l?.eventBoundary),
279
+ restoreTarget: t.restoreTarget ?? null,
280
+ tier: u,
281
+ zIndex: _,
282
+ registered: !0,
283
+ focusHandoff: null,
284
+ nativeCycle: null
285
+ };
286
+ o.push(x), d += 1;
287
+ for (let e of h) e.encounters.add(x);
288
+ if (i && (i.claimant = x, A(i, x) || C(i)), f = null, x.modal && q(), G(), x.nativeDialog) try {
289
+ X(x), i?.active && !k(i) && C(i), x.nativeCycle = r(x.nativeDialog.subject, (e) => {
290
+ i?.active && i.target instanceof Element && n() === i.target && v(e.boundary, i.target) && (i.modalityLoss = {
291
+ target: i.target,
292
+ mutation: e
293
+ });
294
+ }, () => {
295
+ i && C(i);
296
+ });
297
+ } catch (e) {
298
+ throw $(x), i && C(i), K(), e;
299
+ }
300
+ let w = n();
301
+ return w && y(x, w) && N(w), {
302
+ id: x.id,
303
+ zIndex: x.zIndex,
304
+ focusScope: () => z(x),
305
+ isTopmost: () => x.registered && L() === x,
306
+ refreshModality: () => {
307
+ x.registered && X(x);
308
+ },
309
+ containsFocusTarget: (e) => x.registered && (b(x, e) || o.some((t) => t.registered && Q(t, x) && b(t, e))),
310
+ captureOwnedFocusLoss: (e) => {
311
+ let t = p;
312
+ if (!x.registered || !t || t.entry !== x || t.target !== e) return null;
313
+ let r = d, i = m;
314
+ return { isCurrentUnavailable: () => x.registered && d === r && m === i && p === t && n() === document.body && S(t) };
315
+ },
316
+ claimFocus: (e) => {
317
+ if (!i || !i.active) return !1;
318
+ if (i.claimant !== x) throw TypeError("layerStack: focus admission claimant does not match its registration");
319
+ return !x.registered || L() !== x || !A(i, x) || !e.isConnected || e.ownerDocument !== document || !y(x, e) || !Z(e, z(x)) || !a(e) || !k(i) ? (C(i), !1) : (C(i), e.focus({ preventScroll: !!x.eventBoundary }), n() === e);
320
+ },
321
+ handoffFocus: (e) => {
322
+ if (!x.registered) throw Error("layerStack: focus handoff requires a live registration");
323
+ x.focusHandoff?.cancel();
324
+ let t = re(e, z(x));
325
+ return x.focusHandoff = t, t.cancel;
326
+ },
327
+ unregister: ({ restoreFocus: t = !1, retireDescendants: r = !1, commitFocusHandoff: a = !1 } = {}) => {
328
+ if (!x.registered) return;
329
+ let s = a ? x.focusHandoff : null;
330
+ s && (x.focusHandoff = null);
331
+ let c = o.findIndex((e) => e.id === x.id), l = r ? o.filter((e) => Q(e, x)) : [], u = [x, ...l];
332
+ p?.settling && u.some((e) => e.nativeCycle !== null) && u.some((e) => e.id === p?.entry.id) && F(p);
333
+ let g = f, _ = g?.entry.restoreTarget, v = g?.revision === d && g.focusRevision === m && _ != null && [x, ...l].some((e) => y(e, _)) ? g : null;
334
+ f = null;
335
+ let w = n(), T = w instanceof Node && (b(x, w) || l.some((e) => b(e, w))), E = typeof document < "u" && w === document.body && p !== null && [x, ...l].some((e) => e.id === p?.entry.id) && (S(p) || p.settling) ? p : null, D = v?.focusRevision ?? m, O = i?.active === !0 && i.claimant === x && A(i, x) && k(i);
336
+ if (c >= 0) {
337
+ let e = x.root();
338
+ for (let t of o.slice(c + 1)) t.parentId === x.id && (t.parentId = x.parentId), e?.contains(t.restoreTarget) && (t.restoreTarget = x.restoreTarget);
339
+ for (let e of [...l].reverse()) $(e);
340
+ $(x);
341
+ }
342
+ d += 1;
343
+ let j = d, M = null, N = [];
344
+ for (let e of [...l].reverse().concat(x)) try {
345
+ e.nativeCycle?.close((t) => {
346
+ T && w instanceof Element && y(e, w) && (M = {
347
+ target: w,
348
+ mutation: t
349
+ });
350
+ });
351
+ } catch (e) {
352
+ N.push(e);
353
+ }
354
+ for (let e of [...h]) (e.claimant === x || e.source !== x || !t || l.length > 0) && C(e);
355
+ for (let e of [...l].reverse()) try {
356
+ e.onRetire?.();
357
+ } catch (e) {
358
+ N.push(e);
76
359
  }
77
- a.modal && g(), m(), e && r && _(a);
360
+ if (s && N.length === 0 ? s.commit(j) : s?.cancel(), !s && t && N.length === 0 && d === j && (T || E || v || O) && ne(x, v ? v.activeAtClose : w, j, D, v?.lostFocus ?? E, v?.retirementLoss ?? M), K(), N.length > 0) throw e(N, "layerStack: owner retirement failed");
78
361
  }
79
362
  };
80
363
  }
81
364
  //#endregion
82
- export { v as registerLayer };
365
+ export { M as captureLayerFocusAdmission, ie as registerLayer };
@@ -5,6 +5,7 @@ export interface LinkTargetInput {
5
5
  readonly to?: unknown;
6
6
  readonly target?: unknown;
7
7
  readonly rel?: unknown;
8
+ readonly download?: unknown;
8
9
  readonly owner: string;
9
10
  }
10
11
  export type ResolvedLinkTarget = {
@@ -13,6 +14,7 @@ export type ResolvedLinkTarget = {
13
14
  readonly href: string;
14
15
  readonly target: LinkBrowsingTarget;
15
16
  readonly rel?: string;
17
+ readonly download?: string;
16
18
  };
17
19
  } | {
18
20
  readonly kind: 'router';
@@ -22,5 +24,9 @@ export type ResolvedLinkTarget = {
22
24
  readonly rel?: string;
23
25
  };
24
26
  };
25
- /** Validates the sole link-target boundary and secures new browsing contexts. */
27
+ /**
28
+ * Validates the sole href/router boundary and secures new browsing contexts.
29
+ * Download is href-only native intent; filenames are preserved and false omits
30
+ * the attribute. Invalid destinations or download payloads throw TypeError.
31
+ */
26
32
  export declare function resolveLinkTarget(input: LinkTargetInput): ResolvedLinkTarget;
@@ -103,17 +103,21 @@ function f(e, t, n) {
103
103
  return i.has("noopener") || r.push("noopener"), i.has("noreferrer") || r.push("noreferrer"), r.join(" ");
104
104
  }
105
105
  function p(e) {
106
- let t = e.href !== void 0;
107
- if (t === (e.to !== void 0)) throw TypeError(`${e.owner}: передайте ровно один target — href или to`);
108
- let n = d(e.owner, e.target), r = f(e.owner, e.rel, n);
106
+ let t = e.href !== void 0, n = e.to !== void 0;
107
+ if (e.download !== void 0 && (!t || n)) throw TypeError(`${e.owner}: download допускается только с href / download requires an href-only destination`);
108
+ if (t === n) throw TypeError(`${e.owner}: передайте ровно один target — href или to`);
109
+ let r = d(e.owner, e.target), i = f(e.owner, e.rel, r);
109
110
  if (t) {
110
111
  if (typeof e.href != "string" || e.href.trim().length === 0 || e.href !== e.href.trim()) throw TypeError(`${e.owner}: href должен быть непустой строкой / href must be a non-empty string`);
112
+ if (e.download !== void 0 && typeof e.download != "string" && typeof e.download != "boolean") throw TypeError(`${e.owner}: download должен быть строкой или boolean / download must be a string or boolean`);
113
+ let t = e.download === !0 ? "" : e.download;
111
114
  return {
112
115
  kind: "anchor",
113
116
  bindings: {
114
117
  href: e.href,
115
- target: n,
116
- ...r === void 0 ? {} : { rel: r }
118
+ target: r,
119
+ ...i === void 0 ? {} : { rel: i },
120
+ ...typeof t == "string" ? { download: t } : {}
117
121
  }
118
122
  };
119
123
  }
@@ -121,8 +125,8 @@ function p(e) {
121
125
  kind: "router",
122
126
  bindings: {
123
127
  to: e.to,
124
- target: n,
125
- ...r === void 0 ? {} : { rel: r }
128
+ target: r,
129
+ ...i === void 0 ? {} : { rel: i }
126
130
  }
127
131
  };
128
132
  throw TypeError(`${e.owner}: недостижимый router target / unreachable router target`);
@@ -0,0 +1,4 @@
1
+ /** Reads actual native focus owners through exposed shadow-root focus chains without eligibility or modality policy. */
2
+ export declare const nativeFocusChain: () => Element[];
3
+ /** Returns the exposed native leaf, retaining opaque shadow hosts as the actual observable boundary. */
4
+ export declare const nativeFocusedElement: () => Element | null;
@@ -0,0 +1,12 @@
1
+ //#region src/internal/nativeFocus.ts
2
+ var e = () => {
3
+ if (typeof document > "u") return [];
4
+ let e = [], t = document.activeElement;
5
+ for (; t;) e.push(t), t = t.shadowRoot?.activeElement ?? null;
6
+ return e;
7
+ }, t = () => {
8
+ let t = e();
9
+ return t[t.length - 1] ?? null;
10
+ };
11
+ //#endregion
12
+ export { e as nativeFocusChain, t as nativeFocusedElement };
@@ -0,0 +1,18 @@
1
+ import { InjectionKey, Ref } from 'vue';
2
+ /** Logical ancestor visibility controls overlay admission without changing portal geometry or owning consumer content. */
3
+ export declare function useOverlayAdmission(): Readonly<Ref<boolean>>;
4
+ /** Provides parent AND local admission; retained descendants may run while their transient overlays are retired. */
5
+ export declare function provideOverlayAdmission(active: Readonly<Ref<boolean>>): Readonly<Ref<boolean>>;
6
+ /** Private connected host contract shared by scoped overlay owners. / Приватный connected host для scoped overlay owners. */
7
+ export interface OverlayHostContext {
8
+ readonly root: Readonly<Ref<HTMLElement | null>>;
9
+ readonly content: Readonly<Ref<HTMLElement | null>>;
10
+ readonly portal: Readonly<Ref<HTMLElement | null>>;
11
+ /** Acquire local content inertness; release is idempotent, retirement invokes the callback once. */
12
+ acquire: (onRetire: () => void) => () => void;
13
+ }
14
+ export declare const overlayHostKey: InjectionKey<OverlayHostContext>;
15
+ /** Resolves the nearest host; required ownership has no global-body fallback. */
16
+ export declare function useOverlayHost(owner: string, required: true): OverlayHostContext;
17
+ export declare function useOverlayHost(owner: string, required: false): OverlayHostContext | undefined;
18
+ export declare function useOverlayHost(owner: string, required: boolean): OverlayHostContext | undefined;
@@ -0,0 +1,18 @@
1
+ import { computed as e, inject as t, provide as n } from "vue";
2
+ //#region src/internal/overlayHost.ts
3
+ var r = Symbol("ui-kit-overlay-admission"), i = e(() => !0);
4
+ function a() {
5
+ return t(r, i);
6
+ }
7
+ function o(t) {
8
+ let i = a(), o = e(() => i.value && t.value);
9
+ return n(r, o), o;
10
+ }
11
+ var s = Symbol("ui-kit-overlay-host");
12
+ function c(e, n) {
13
+ let r = t(s, void 0);
14
+ if (n && !r) throw TypeError(`${e}: scope="contained" requires a parent SOverlayHost. / Требуется родительский SOverlayHost.`);
15
+ return r;
16
+ }
17
+ //#endregion
18
+ export { s as overlayHostKey, o as provideOverlayAdmission, a as useOverlayAdmission, c as useOverlayHost };
@@ -0,0 +1,17 @@
1
+ import { ComputedRef, Ref } from 'vue';
2
+ /** Exact native dialog portal ownership; initial focus admission does not control this lifetime. */
3
+ export interface OverlayPortalContext {
4
+ readonly scope: Readonly<Ref<'document' | 'native'>>;
5
+ readonly subject: Readonly<Ref<HTMLDialogElement | null>>;
6
+ readonly target: Readonly<Ref<HTMLElement | null>>;
7
+ readonly admitted: Readonly<Ref<boolean>>;
8
+ }
9
+ /** Provides one viewport cycle; contained owners preserve the inherited viewport context. */
10
+ export declare function provideOverlayPortal(context: OverlayPortalContext): void;
11
+ /** Returns the logical native owner, or undefined for an unscoped document surface. */
12
+ export declare function useOverlayPortal(): OverlayPortalContext | undefined;
13
+ /**
14
+ * Unscoped layers use body. Scoped pending/retired layers have no target; a connected
15
+ * portal outside its exact same-document native subject is a contract error.
16
+ */
17
+ export declare function useOverlayPortalTarget(): ComputedRef<HTMLElement | 'body' | null>;
@@ -0,0 +1,23 @@
1
+ import { flatTreeContains as e } from "./flatTree.js";
2
+ import { computed as t, inject as n, provide as r } from "vue";
3
+ //#region src/internal/overlayPortal.ts
4
+ var i = Symbol("ui-kit-overlay-portal");
5
+ function a(e) {
6
+ r(i, e);
7
+ }
8
+ function o() {
9
+ return n(i, void 0);
10
+ }
11
+ function s() {
12
+ let n = o();
13
+ return t(() => {
14
+ if (!n || n.scope.value === "document") return "body";
15
+ if (!n.admitted.value) return null;
16
+ let t = n.subject.value, r = n.target.value;
17
+ if (!t || !r || !t.isConnected || !r.isConnected) return null;
18
+ if (t.ownerDocument !== r.ownerDocument || !e(t, r)) throw TypeError("ui-kit overlay portal: connected target must belong to its exact same-document native dialog");
19
+ return t.open ? r : null;
20
+ });
21
+ }
22
+ //#endregion
23
+ export { a as provideOverlayPortal, o as useOverlayPortal, s as useOverlayPortalTarget };
@@ -1,13 +1,21 @@
1
1
  import { AnchorHTMLAttributes, HTMLAttributes, InputHTMLAttributes, TextareaHTMLAttributes } from 'vue';
2
2
  type OwnedAttributeValueKind = 'aria' | 'aria-boolean' | 'aria-current' | 'aria-haspopup' | 'aria-pressed' | 'boolean-attribute' | 'data' | 'input-mode' | 'listener' | 'string' | 'string-or-boolean' | 'string-or-number';
3
3
  /**
4
- * Exact runtime allowlist каждого public owner.
5
- * Exact runtime allowlist for every public owner.
4
+ * Exact runtime allowlist каждого зарегистрированного attribute owner.
5
+ * Exact runtime allowlist for every registered attribute owner.
6
+ *
7
+ * Public owners обязаны иметь схему; private compound owners объявляют её при передаче attrs.
8
+ * Public owners require a schema; private compound owners declare one when forwarding attrs.
6
9
  *
7
10
  * Пустая схема означает, что компонент не принимает fallthrough attrs: его API целиком выражен props/emits/slots.
8
11
  * An empty schema means that the component accepts no fallthrough attrs: props/emits/slots express its entire API.
9
12
  */
10
13
  export declare const ownedAttributeSchemas: Readonly<{
14
+ readonly STableFrame: Readonly<{}>;
15
+ readonly SRichImage: Readonly<{}>;
16
+ readonly STableSection: Readonly<{}>;
17
+ readonly STableRow: Readonly<{}>;
18
+ readonly STableCell: Readonly<{}>;
11
19
  readonly SAppShell: Readonly<{}>;
12
20
  readonly SDockRegion: Readonly<{}>;
13
21
  readonly SResizeHandle: Readonly<{
@@ -40,6 +48,7 @@ export declare const ownedAttributeSchemas: Readonly<{
40
48
  readonly 'data-testid': "data";
41
49
  }>;
42
50
  readonly SDrawer: Readonly<{}>;
51
+ readonly SOverlayHost: Readonly<{}>;
43
52
  readonly SFormGrid: Readonly<{}>;
44
53
  readonly SFormGridItem: Readonly<{}>;
45
54
  readonly SLeftSidebar: Readonly<{}>;
@@ -187,7 +196,6 @@ export declare const ownedAttributeSchemas: Readonly<{
187
196
  readonly 'aria-label': "string";
188
197
  readonly 'data-s-app-shell-brand-passive': "data";
189
198
  readonly 'data-testid': "data";
190
- readonly download: "string-or-boolean";
191
199
  readonly title: "string";
192
200
  }>;
193
201
  readonly SListbox: Readonly<{
@@ -211,7 +219,9 @@ export declare const ownedAttributeSchemas: Readonly<{
211
219
  readonly 'data-testid': "data";
212
220
  }>;
213
221
  readonly STextarea: Readonly<{
222
+ readonly 'aria-controls': "string";
214
223
  readonly 'aria-describedby': "string";
224
+ readonly 'aria-haspopup': "aria-haspopup";
215
225
  readonly 'aria-label': "string";
216
226
  readonly 'data-testid': "data";
217
227
  readonly autocomplete: "string";