@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
@@ -0,0 +1,466 @@
1
+ /** Closed semantic metadata; exact Unicode identities and ARIA references resolve inside one document. */
2
+ export interface SRichSemanticMetadata {
3
+ /** Document-local target identity; neither a DOM id nor an inferred heading slug. */
4
+ readonly anchorId?: string;
5
+ readonly title?: string;
6
+ /** Well-formed BCP47 syntax, preserved without canonicalization or registry lookup. */
7
+ readonly lang?: string;
8
+ readonly direction?: 'ltr' | 'rtl' | 'auto';
9
+ /** Naming metadata is valid only for the native semantic owners which permit accessible names. */
10
+ readonly accessibleLabel?: string;
11
+ readonly labelledBy?: readonly string[];
12
+ readonly describedBy?: readonly string[];
13
+ }
14
+ /** Non-naming metadata for native owners whose implicit role prohibits accessible names. */
15
+ export interface SRichPassiveMetadata extends Omit<SRichSemanticMetadata, 'accessibleLabel' | 'labelledBy'> {
16
+ readonly accessibleLabel?: never;
17
+ readonly labelledBy?: never;
18
+ }
19
+ /** Literal text content, including explicit empty text; markup is never interpreted. */
20
+ export interface SRichTextNode {
21
+ readonly type: 'text';
22
+ readonly value: string;
23
+ }
24
+ /** Strong importance, rendered with native strong semantics. */
25
+ export interface SRichStrongNode extends SRichPassiveMetadata {
26
+ readonly type: 'strong';
27
+ readonly children: readonly SRichInlineNode[];
28
+ }
29
+ /** Stress emphasis, distinct from idiomatic or visually differentiated phrasing. */
30
+ export interface SRichEmphasisNode extends SRichPassiveMetadata {
31
+ readonly type: 'emphasis';
32
+ readonly children: readonly SRichInlineNode[];
33
+ }
34
+ /** Attention without added importance; native b semantics. */
35
+ export interface SRichAttentionNode extends SRichPassiveMetadata {
36
+ readonly type: 'attention';
37
+ readonly children: readonly SRichInlineNode[];
38
+ }
39
+ /** Alternate voice or idiomatic phrasing; native i semantics. */
40
+ export interface SRichIdiomaticNode extends SRichPassiveMetadata {
41
+ readonly type: 'idiomatic';
42
+ readonly children: readonly SRichInlineNode[];
43
+ }
44
+ /** No longer accurate or relevant content; native s semantics, not a document edit. */
45
+ export interface SRichStrikethroughNode extends SRichPassiveMetadata {
46
+ readonly type: 'strikethrough';
47
+ readonly children: readonly SRichInlineNode[];
48
+ }
49
+ /** A deletion edit with optional safe citation and exact ISO date annotation. */
50
+ export interface SRichDeletionNode extends SRichPassiveMetadata {
51
+ readonly type: 'deletion';
52
+ readonly cite?: string;
53
+ readonly dateTime?: string;
54
+ readonly children: readonly SRichInlineNode[];
55
+ }
56
+ /** Keyboard content is either the documented text form or an explicit rich sequence. */
57
+ export type SRichKeyboardNode = SRichPassiveMetadata & {
58
+ readonly type: 'keyboard';
59
+ } & ({
60
+ readonly value: string;
61
+ readonly children?: never;
62
+ } | {
63
+ readonly children: readonly SRichInlineNode[];
64
+ readonly value?: never;
65
+ });
66
+ /** Superscript phrasing, retaining its child sequence rather than flattening text. */
67
+ export interface SRichSuperscriptNode extends SRichPassiveMetadata {
68
+ readonly type: 'superscript';
69
+ readonly children: readonly SRichInlineNode[];
70
+ }
71
+ /** Subscript phrasing, retaining its child sequence rather than flattening text. */
72
+ export interface SRichSubscriptNode extends SRichPassiveMetadata {
73
+ readonly type: 'subscript';
74
+ readonly children: readonly SRichInlineNode[];
75
+ }
76
+ /** One reference occurrence; occurrenceId defaults to id and is unique within that definition. */
77
+ export interface SRichFootnoteReferenceNode extends SRichSemanticMetadata {
78
+ readonly type: 'footnoteReference';
79
+ readonly id: string;
80
+ readonly label: string;
81
+ readonly marker?: string;
82
+ readonly occurrenceId?: string;
83
+ }
84
+ /** Return link to the exact reference occurrence selected by id and optional occurrenceId. */
85
+ export interface SRichFootnoteBacklinkNode extends SRichSemanticMetadata {
86
+ readonly type: 'footnoteBacklink';
87
+ readonly id: string;
88
+ readonly label: string;
89
+ readonly marker?: string;
90
+ readonly occurrenceId?: string;
91
+ }
92
+ /** Literal inline code; an empty code sequence is valid. */
93
+ export interface SRichInlineCodeNode extends SRichPassiveMetadata {
94
+ readonly type: 'inlineCode';
95
+ readonly code: string;
96
+ }
97
+ /** Admitted external or relative URL with non-interactive inline descendants. */
98
+ export interface SRichLinkNode extends SRichSemanticMetadata {
99
+ readonly type: 'link';
100
+ readonly href: string;
101
+ readonly title?: string;
102
+ readonly current?: boolean;
103
+ readonly children: readonly SRichInlineNode[];
104
+ }
105
+ /** Parser-free inline formula source passed to the isolated strict math owner. */
106
+ export interface SRichMathInlineNode extends SRichPassiveMetadata {
107
+ readonly type: 'mathInline';
108
+ readonly source: string;
109
+ }
110
+ /** Native hard line break within phrasing content, not a paragraph delimiter. */
111
+ export interface SRichHardBreakNode {
112
+ readonly type: 'hardBreak';
113
+ }
114
+ /** Image candidates use admitted resource identities and one descriptor family per set. */
115
+ export type SRichImageCandidate = {
116
+ readonly resourceId: string;
117
+ readonly width: number;
118
+ readonly density?: never;
119
+ } | {
120
+ readonly resourceId: string;
121
+ readonly density: number;
122
+ readonly width?: never;
123
+ };
124
+ /** One source element with a bounded media query and an admitted candidate set. */
125
+ export interface SRichPictureSource {
126
+ readonly media?: string;
127
+ readonly candidates: readonly SRichImageCandidate[];
128
+ }
129
+ /** Responsive media configuration uses resource IDs; raw src and srcset are not accepted. */
130
+ export interface SRichImagePresentation {
131
+ readonly resourceId: string;
132
+ readonly candidates?: readonly SRichImageCandidate[];
133
+ readonly pictureSources?: readonly SRichPictureSource[];
134
+ }
135
+ /** Image in phrasing content; metadata belongs to img even when picture sources are present. */
136
+ export interface SRichInlineImageNode extends SRichSemanticMetadata, SRichImagePresentation {
137
+ readonly type: 'inlineImage';
138
+ }
139
+ /** Document-local navigation; anchorId references a declared target rather than declaring a target. */
140
+ export interface SRichAnchorLinkNode extends Omit<SRichSemanticMetadata, 'anchorId'> {
141
+ readonly type: 'anchorLink';
142
+ readonly anchorId: string;
143
+ readonly children: readonly SRichInlineNode[];
144
+ }
145
+ /** Explicit passive target with optional phrasing content; never a descendant of another link. */
146
+ export interface SRichAnchorTargetNode extends SRichPassiveMetadata {
147
+ readonly type: 'anchorTarget';
148
+ readonly anchorId: string;
149
+ readonly children?: readonly SRichInlineNode[];
150
+ }
151
+ /** An insertion edit; citation and date annotation do not enable interactive content. */
152
+ export interface SRichInsertionNode extends SRichPassiveMetadata {
153
+ readonly type: 'insertion';
154
+ readonly cite?: string;
155
+ readonly dateTime?: string;
156
+ readonly children: readonly SRichInlineNode[];
157
+ }
158
+ /** Inline quotation with an optional admitted citation URL. */
159
+ export interface SRichQuotationNode extends SRichPassiveMetadata {
160
+ readonly type: 'quotation';
161
+ readonly cite?: string;
162
+ readonly children: readonly SRichInlineNode[];
163
+ }
164
+ /** Sample output, preserving native samp semantics. */
165
+ export interface SRichSampleNode extends SRichPassiveMetadata {
166
+ readonly type: 'sample';
167
+ readonly children: readonly SRichInlineNode[];
168
+ }
169
+ /** Explicit producer conversion of legacy monospace markup to native code semantics. */
170
+ export interface SRichMonospaceNode extends SRichPassiveMetadata {
171
+ readonly type: 'monospace';
172
+ readonly children: readonly SRichInlineNode[];
173
+ }
174
+ /** Variable or placeholder expression, preserving native var semantics. */
175
+ export interface SRichVariableNode extends SRichPassiveMetadata {
176
+ readonly type: 'variable';
177
+ readonly children: readonly SRichInlineNode[];
178
+ }
179
+ /** Passive phrasing group; no raw tag, styling or interactive channel. */
180
+ export interface SRichInlineGroupNode extends SRichPassiveMetadata {
181
+ readonly type: 'inlineGroup';
182
+ readonly children: readonly SRichInlineNode[];
183
+ }
184
+ /** Ruby annotation content; valid only as a direct member of a ruby sequence. */
185
+ export interface SRichRubyTextNode extends SRichPassiveMetadata {
186
+ readonly type: 'rubyText';
187
+ readonly children: readonly SRichInlineNode[];
188
+ }
189
+ /** Ruby fallback punctuation; valid only as a direct member of a ruby sequence. */
190
+ export interface SRichRubyFallbackNode extends SRichPassiveMetadata {
191
+ readonly type: 'rubyFallback';
192
+ readonly children: readonly SRichInlineNode[];
193
+ }
194
+ /** Ordered base, annotation and fallback sequence preserving native ruby reading semantics. */
195
+ export interface SRichRubyNode extends SRichSemanticMetadata {
196
+ readonly type: 'ruby';
197
+ readonly children: readonly (SRichInlineNode | SRichRubyTextNode | SRichRubyFallbackNode)[];
198
+ }
199
+ /** A readable checkbox in document content; it has no editable or event contract. */
200
+ export interface SRichInlineCheckboxNode extends SRichPassiveMetadata {
201
+ readonly type: 'inlineCheckbox';
202
+ readonly checked: boolean;
203
+ readonly label: string;
204
+ }
205
+ /** Closed inline content union. Raw HTML, VNodes, callbacks, and trust flags are intentionally absent. */
206
+ export type SRichInlineNode = SRichTextNode | SRichStrongNode | SRichAttentionNode | SRichEmphasisNode | SRichIdiomaticNode | SRichDeletionNode | SRichStrikethroughNode | SRichKeyboardNode | SRichSuperscriptNode | SRichSubscriptNode | SRichFootnoteReferenceNode | SRichFootnoteBacklinkNode | SRichInlineCodeNode | SRichLinkNode | SRichMathInlineNode | SRichHardBreakNode | SRichInlineImageNode | SRichAnchorLinkNode | SRichAnchorTargetNode | SRichInsertionNode | SRichQuotationNode | SRichSampleNode | SRichMonospaceNode | SRichVariableNode | SRichInlineGroupNode | SRichRubyNode | SRichInlineCheckboxNode;
207
+ /** Paragraph phrasing; empty semantic paragraphs are preserved. */
208
+ export interface SRichParagraphNode extends SRichPassiveMetadata {
209
+ readonly type: 'paragraph';
210
+ readonly children: readonly SRichInlineNode[];
211
+ }
212
+ /** Visible content or an accessible native heading outside normal layout flow. */
213
+ export type SRichHeadingPresentation = 'visible' | 'assistive';
214
+ /** Native heading level and explicit navigation identity; assistive content excludes interactive descendants. */
215
+ export interface SRichHeadingNode extends SRichSemanticMetadata {
216
+ readonly type: 'heading';
217
+ readonly level: 1 | 2 | 3 | 4 | 5 | 6;
218
+ readonly presentation?: SRichHeadingPresentation;
219
+ readonly children: readonly SRichInlineNode[];
220
+ }
221
+ /** Block list item; task state is read-only and value is valid only in ordered lists. */
222
+ export interface SRichListItemNode extends SRichSemanticMetadata {
223
+ readonly type: 'listItem';
224
+ readonly checked?: boolean;
225
+ readonly checkboxLabel?: string;
226
+ readonly value?: number;
227
+ readonly children: readonly SRichBlockNode[];
228
+ }
229
+ /** Native ordered or unordered list, including empty lists; start and item values are signed safe integers. */
230
+ export interface SRichListNode extends SRichSemanticMetadata {
231
+ readonly type: 'list';
232
+ readonly ordered: boolean;
233
+ readonly start?: number;
234
+ readonly children: readonly SRichListItemNode[];
235
+ }
236
+ /** Block quotation with optional admitted citation and retained block descendants. */
237
+ export interface SRichQuoteNode extends SRichSemanticMetadata {
238
+ readonly type: 'quote';
239
+ readonly cite?: string;
240
+ readonly children: readonly SRichBlockNode[];
241
+ }
242
+ /** Passive summaries use native details; interactive summaries use sibling toggle and rich content owners. */
243
+ export interface SRichDisclosureNode extends SRichSemanticMetadata {
244
+ readonly type: 'disclosure';
245
+ readonly summary: string;
246
+ readonly summaryChildren?: readonly SRichInlineNode[];
247
+ readonly open?: boolean;
248
+ readonly children: readonly SRichBlockNode[];
249
+ }
250
+ /** Definition shared by reference occurrences; id and anchorId inhabit separate identity namespaces. */
251
+ export interface SRichFootnoteDefinitionNode extends SRichSemanticMetadata {
252
+ readonly type: 'footnoteDefinition';
253
+ readonly id: string;
254
+ readonly label: string;
255
+ readonly children: readonly SRichBlockNode[];
256
+ }
257
+ /** Native thematic break with closed semantic metadata. */
258
+ export interface SRichDividerNode extends SRichSemanticMetadata {
259
+ readonly type: 'divider';
260
+ }
261
+ /** Block figure with admitted responsive media and an optional rich caption. */
262
+ export interface SRichImageNode extends SRichImagePresentation, SRichSemanticMetadata {
263
+ readonly type: 'image';
264
+ readonly resourceId: string;
265
+ readonly caption?: readonly SRichInlineNode[];
266
+ }
267
+ /** Resource action; its explicit label names the shared control and description is passive content. */
268
+ export interface SRichResourceNode extends SRichPassiveMetadata {
269
+ readonly type: 'resource';
270
+ readonly resourceId: string;
271
+ readonly label: string;
272
+ readonly description?: string;
273
+ }
274
+ /** Literal code with explicit syntax language; lang metadata describes human content language separately. */
275
+ export interface SRichCodeBlockNode extends SRichPassiveMetadata {
276
+ readonly type: 'codeBlock';
277
+ readonly code: string;
278
+ readonly language?: string;
279
+ readonly label?: string;
280
+ readonly showLineNumbers?: boolean;
281
+ }
282
+ /** Display formula source; label belongs to the shared math owner rather than its passive wrapper. */
283
+ export interface SRichMathBlockNode extends SRichPassiveMetadata {
284
+ readonly type: 'mathBlock';
285
+ readonly source: string;
286
+ readonly label?: string;
287
+ }
288
+ export type SRichTableAlignment = 'left' | 'center' | 'right';
289
+ export type SRichTableHeaderPresentation = 'visible' | 'assistive';
290
+ /** Rectangular table column; header names the column and headerChildren preserves rich visible content. */
291
+ export interface SRichTableColumn extends SRichSemanticMetadata {
292
+ readonly id: string;
293
+ readonly header: string;
294
+ readonly headerChildren?: readonly SRichInlineNode[];
295
+ readonly headerPresentation?: SRichTableHeaderPresentation;
296
+ readonly align?: SRichTableAlignment;
297
+ }
298
+ /** One rectangular table data cell with retained phrasing and semantic metadata. */
299
+ export interface SRichTableCell extends SRichSemanticMetadata {
300
+ readonly children: readonly SRichInlineNode[];
301
+ }
302
+ /** Stable rectangular row; cell count must match the declared columns exactly. */
303
+ export interface SRichTableRow extends SRichSemanticMetadata {
304
+ readonly id: string;
305
+ readonly cells: readonly SRichTableCell[];
306
+ }
307
+ /** Rectangular data table; row and column identities are unique inside this table. */
308
+ export interface SRichTableNode extends SRichSemanticMetadata {
309
+ readonly type: 'table';
310
+ readonly label: string;
311
+ readonly columns: readonly SRichTableColumn[];
312
+ readonly rows: readonly SRichTableRow[];
313
+ }
314
+ /** Passive block grouping without an inferred landmark or role. */
315
+ export interface SRichBlockGroupNode extends SRichPassiveMetadata {
316
+ readonly type: 'blockGroup';
317
+ readonly children: readonly SRichBlockNode[];
318
+ }
319
+ /** Native section; an explicit accessible name exposes its native region semantics. */
320
+ export interface SRichSectionNode extends SRichSemanticMetadata {
321
+ readonly type: 'section';
322
+ readonly children: readonly SRichBlockNode[];
323
+ }
324
+ /** Definition term preserving native dt phrasing and metadata. */
325
+ export interface SRichDefinitionTerm extends SRichSemanticMetadata {
326
+ readonly children: readonly SRichInlineNode[];
327
+ }
328
+ /** Definition description preserving native dd blocks and metadata. */
329
+ export interface SRichDefinitionDescription extends SRichSemanticMetadata {
330
+ readonly children: readonly SRichBlockNode[];
331
+ }
332
+ /** Explicit term/description grouping; each side contains at least one semantic owner. */
333
+ export interface SRichDefinitionEntry {
334
+ readonly terms: readonly SRichDefinitionTerm[];
335
+ readonly descriptions: readonly SRichDefinitionDescription[];
336
+ }
337
+ /** Native definition list with typed term/description groups. */
338
+ export interface SRichDefinitionListNode extends SRichSemanticMetadata {
339
+ readonly type: 'definitionList';
340
+ readonly entries: readonly SRichDefinitionEntry[];
341
+ }
342
+ export type SRichSemanticTableScope = 'row' | 'col' | 'rowgroup' | 'colgroup';
343
+ export type SRichSemanticTableCellContent = {
344
+ readonly content: 'inline';
345
+ readonly children: readonly SRichInlineNode[];
346
+ } | {
347
+ readonly content: 'block';
348
+ readonly children: readonly SRichBlockNode[];
349
+ };
350
+ /** Native cell metadata; cellId and headers resolve only within the owning table. */
351
+ export interface SRichSemanticTableCellMetadata extends SRichSemanticMetadata {
352
+ readonly cellId?: string;
353
+ readonly headers?: readonly string[];
354
+ /** Zero extends through the remaining rows of the current row group. */
355
+ readonly rowSpan?: number;
356
+ readonly colSpan?: number;
357
+ readonly align?: SRichTableAlignment;
358
+ }
359
+ /** Header cell; block content excludes heading and section descendants under native th rules. */
360
+ export type SRichSemanticTableHeaderCell = SRichSemanticTableCellMetadata & SRichSemanticTableCellContent & {
361
+ readonly type: 'header';
362
+ readonly scope?: SRichSemanticTableScope;
363
+ };
364
+ /** Data cell; inline and block content remain distinct and scope is not a data-cell attribute. */
365
+ export type SRichSemanticTableDataCell = SRichSemanticTableCellMetadata & SRichSemanticTableCellContent & {
366
+ readonly type: 'data';
367
+ readonly scope?: never;
368
+ };
369
+ export type SRichSemanticTableCell = SRichSemanticTableHeaderCell | SRichSemanticTableDataCell;
370
+ /** Structural row validated against spans and the exact occupied table grid. */
371
+ export interface SRichSemanticTableRow extends SRichSemanticMetadata {
372
+ readonly cells: readonly SRichSemanticTableCell[];
373
+ }
374
+ /** Explicit native column-group partition; spans cover the complete structural table width. */
375
+ export interface SRichSemanticTableColumnGroup {
376
+ readonly span: number;
377
+ }
378
+ /** Structural table semantics; spans and header references are validated before rendering. */
379
+ export interface SRichSemanticTableNode extends SRichSemanticMetadata {
380
+ readonly type: 'semanticTable';
381
+ readonly label: string;
382
+ readonly columnGroups?: readonly SRichSemanticTableColumnGroup[];
383
+ readonly caption?: readonly SRichInlineNode[];
384
+ readonly head?: readonly SRichSemanticTableRow[];
385
+ readonly body: readonly SRichSemanticTableRow[];
386
+ readonly foot?: readonly SRichSemanticTableRow[];
387
+ readonly headMetadata?: SRichSemanticMetadata;
388
+ readonly bodyMetadata?: SRichSemanticMetadata;
389
+ readonly footMetadata?: SRichSemanticMetadata;
390
+ }
391
+ export type SRichCalloutTone = 'neutral' | 'information' | 'success' | 'warning' | 'danger';
392
+ /** Shared feedback composition; title is its declared heading and wrapper metadata cannot rename it. */
393
+ export interface SRichCalloutNode extends SRichPassiveMetadata {
394
+ readonly type: 'callout';
395
+ readonly tone: SRichCalloutTone;
396
+ readonly title?: string;
397
+ readonly children: readonly SRichBlockNode[];
398
+ }
399
+ export type SRichActionAppearance = 'primary' | 'secondary' | 'danger';
400
+ /** Consumer-resolved action intent; label names the shared control, not the passive document wrapper. */
401
+ export interface SRichActionNode extends SRichPassiveMetadata {
402
+ readonly type: 'action';
403
+ readonly id: string;
404
+ readonly label: string;
405
+ readonly appearance?: SRichActionAppearance;
406
+ readonly disabled?: boolean;
407
+ }
408
+ /** Explicit native group of shared action controls. */
409
+ export interface SRichActionGroupNode extends SRichSemanticMetadata {
410
+ readonly type: 'actionGroup';
411
+ readonly label?: string;
412
+ readonly actions: readonly SRichActionNode[];
413
+ }
414
+ /** Closed block content union accepted by the renderer. */
415
+ export type SRichBlockNode = SRichParagraphNode | SRichHeadingNode | SRichListNode | SRichQuoteNode | SRichDisclosureNode | SRichFootnoteDefinitionNode | SRichDividerNode | SRichImageNode | SRichResourceNode | SRichCodeBlockNode | SRichMathBlockNode | SRichTableNode | SRichCalloutNode | SRichActionGroupNode | SRichBlockGroupNode | SRichSectionNode | SRichDefinitionListNode | SRichSemanticTableNode;
416
+ export type SRichDocumentNode = SRichInlineNode | SRichBlockNode | SRichListItemNode | SRichActionNode | SRichRubyTextNode | SRichRubyFallbackNode;
417
+ /** Versioned, serializable rich-document input. */
418
+ export interface SRichDocumentV1 {
419
+ readonly version: 1;
420
+ readonly id: string;
421
+ readonly nodes: readonly SRichBlockNode[];
422
+ }
423
+ interface SRichDocumentResourceBase {
424
+ readonly id: string;
425
+ readonly url: string;
426
+ readonly title?: string;
427
+ }
428
+ /** Consumer-admitted image; data URLs additionally require exact raster MIME, base64 and signature. */
429
+ export interface SRichDocumentImageResource extends SRichDocumentResourceBase {
430
+ readonly kind: 'image';
431
+ readonly alt: string;
432
+ }
433
+ /** Consumer-admitted file; data URLs are not a file-resource transport. */
434
+ export interface SRichDocumentFileResource extends SRichDocumentResourceBase {
435
+ readonly kind: 'file';
436
+ readonly label: string;
437
+ readonly mediaType?: string;
438
+ readonly byteSize?: number;
439
+ }
440
+ /** Consumer-owned resource descriptor resolved independently from the document AST. */
441
+ export type SRichDocumentResource = SRichDocumentImageResource | SRichDocumentFileResource;
442
+ /** Fully validated renderer input with resource references resolved by stable IDs. */
443
+ export interface SRichDocumentModel {
444
+ readonly document: SRichDocumentV1;
445
+ readonly resources: readonly SRichDocumentResource[];
446
+ }
447
+ /** Controlled external navigation intent with the exact document source coordinate. */
448
+ export interface SRichDocumentLinkActivate {
449
+ readonly documentId: string;
450
+ readonly path: string;
451
+ readonly href: string;
452
+ readonly title?: string;
453
+ }
454
+ /** Resource intent identifying the admitted descriptor without exposing arbitrary render callbacks. */
455
+ export interface SRichDocumentResourceActivate {
456
+ readonly documentId: string;
457
+ readonly path: string;
458
+ readonly resourceId: string;
459
+ }
460
+ /** Action intent resolved by the host using the declared stable action identity. */
461
+ export interface SRichDocumentActionIntent {
462
+ readonly documentId: string;
463
+ readonly path: string;
464
+ readonly actionId: string;
465
+ }
466
+ export {};
@@ -0,0 +1,65 @@
1
+ import { SRichSemanticMetadata } from './richDocumentTypes';
2
+ export declare const S_RICH_DOCUMENT_VERSION: 1;
3
+ export declare const S_RICH_DOCUMENT_MAX_NODES = 10000;
4
+ export declare const S_RICH_DOCUMENT_MAX_DEPTH = 32;
5
+ export declare const S_RICH_DOCUMENT_MAX_TEXT_LENGTH = 1048576;
6
+ export type SRichDocumentContractErrorCode = 'cyclic_value' | 'duplicate_id' | 'invalid_structure' | 'invalid_type' | 'invalid_value' | 'limit_exceeded' | 'missing_resource' | 'unknown_field' | 'unknown_node_type' | 'unsafe_url' | 'unsupported_version';
7
+ /** Typed contract failure with a stable machine code and exact source coordinate. */
8
+ export declare class SRichDocumentContractError extends TypeError {
9
+ readonly code: SRichDocumentContractErrorCode;
10
+ readonly path: string;
11
+ constructor(code: SRichDocumentContractErrorCode, path: string, detail: string);
12
+ }
13
+ export type PlainRecord = Readonly<Record<string, unknown>>;
14
+ export interface FootnoteOccurrence {
15
+ readonly id: string;
16
+ readonly occurrenceId: string;
17
+ readonly path: string;
18
+ readonly occurrencePath: string;
19
+ }
20
+ export interface ValidationContext {
21
+ readonly ancestors: Set<object>;
22
+ readonly actionIds: Set<string>;
23
+ readonly footnoteDefinitions: Map<string, string>;
24
+ readonly footnoteReferences: Map<string, FootnoteOccurrence>;
25
+ readonly footnoteBacklinks: Map<string, FootnoteOccurrence>;
26
+ readonly anchors: Map<string, string>;
27
+ readonly anchorReferences: Map<string, string>;
28
+ readonly accessibilityReferences: Map<string, string>;
29
+ nodeCount: number;
30
+ }
31
+ export declare function createValidationContext(): ValidationContext;
32
+ /** Structural semantic owners share the document depth and total-node budget. */
33
+ export declare function consumeRichNode(path: string, context: ValidationContext, depth: number): void;
34
+ export declare function fail(code: SRichDocumentContractErrorCode, path: string, detail: string): never;
35
+ export declare function enter(value: object, path: string, context: ValidationContext): void;
36
+ export declare function readRecord(value: unknown, path: string, context: ValidationContext): PlainRecord;
37
+ export declare function leave(value: object, context: ValidationContext): void;
38
+ export declare function assertFields(record: PlainRecord, path: string, fields: ReadonlySet<string>): void;
39
+ export declare function readArray(value: unknown, path: string, context: ValidationContext, bounds: {
40
+ readonly minimum: number;
41
+ readonly maximum: number;
42
+ }): readonly unknown[];
43
+ export declare function readString(value: unknown, path: string, options?: {
44
+ readonly allowEmpty?: boolean;
45
+ readonly stable?: boolean;
46
+ readonly maximum?: number;
47
+ }): string;
48
+ export declare function readOptionalString(value: unknown, path: string): string | undefined;
49
+ export declare function readLabel(value: unknown, path: string): string;
50
+ export declare function readOptionalLabel(value: unknown, path: string): string | undefined;
51
+ export declare function readFootnoteId(value: unknown, path: string): string;
52
+ export declare function readIdentity(value: unknown, path: string, maximum?: number): string;
53
+ export declare const SEMANTIC_METADATA_FIELDS: readonly ["anchorId", "title", "lang", "direction", "accessibleLabel", "labelledBy", "describedBy"];
54
+ export declare function readIdentityArray(value: unknown, path: string, context: ValidationContext): readonly string[];
55
+ export declare function readSemanticMetadata(record: PlainRecord, path: string, context: ValidationContext, declareAnchor?: boolean): SRichSemanticMetadata;
56
+ export declare function footnoteOccurrenceKey(id: string, occurrenceId: string): string;
57
+ export declare function readFootnoteOccurrence(record: PlainRecord, path: string, context: ValidationContext, kind: 'footnoteReference' | 'footnoteBacklink'): {
58
+ readonly id: string;
59
+ readonly occurrenceId?: string;
60
+ };
61
+ export declare function registerUniqueFootnote(occurrences: Map<string, string>, id: string, path: string, kind: string): void;
62
+ export declare function readBoolean(value: unknown, path: string): boolean;
63
+ export declare function readInteger(value: unknown, path: string, minimum: number, maximum: number): number;
64
+ export declare function readEnum<Value extends string>(value: unknown, path: string, values: ReadonlySet<Value>): Value;
65
+ export declare function validateUrl(value: unknown, path: string, kind: 'link' | 'resource'): string;