@tylertech/forge 3.10.5 → 3.12.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 (257) hide show
  1. package/custom-elements.json +594 -226
  2. package/dist/app-bar/forge-app-bar.css +13 -5
  3. package/dist/button/forge-button.css +14 -6
  4. package/dist/checkbox/forge-checkbox.css +23 -17
  5. package/dist/chips/forge-chips.css +12 -4
  6. package/dist/field/forge-field.css +7 -5
  7. package/dist/floating-action-button/forge-floating-action-button.css +12 -6
  8. package/dist/forge.css +6 -1
  9. package/dist/icon-button/forge-icon-button.css +12 -4
  10. package/dist/lib.js +22 -22
  11. package/dist/lib.js.map +4 -4
  12. package/dist/list/forge-list.css +59 -3
  13. package/dist/radio/forge-radio.css +22 -12
  14. package/dist/skip-link/forge-skip-link.css +38 -32
  15. package/dist/state-layer/forge-state-layer.css +2 -0
  16. package/dist/switch/forge-switch.css +9 -5
  17. package/dist/table/forge-table.css +6 -1
  18. package/dist/vscode.html-custom-data.json +104 -79
  19. package/esm/accordion/accordion.d.ts +2 -0
  20. package/esm/accordion/accordion.js +2 -0
  21. package/esm/app-bar/app-bar/app-bar-adapter.js +2 -2
  22. package/esm/app-bar/app-bar/app-bar.d.ts +1 -1
  23. package/esm/app-bar/app-bar/app-bar.js +1 -1
  24. package/esm/app-bar/help-button/app-bar-help-button.d.ts +1 -1
  25. package/esm/app-bar/help-button/app-bar-help-button.js +1 -1
  26. package/esm/app-bar/menu-button/app-bar-menu-button.d.ts +1 -1
  27. package/esm/app-bar/menu-button/app-bar-menu-button.js +1 -1
  28. package/esm/app-bar/notification-button/app-bar-notification-button.d.ts +2 -0
  29. package/esm/app-bar/notification-button/app-bar-notification-button.js +2 -0
  30. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.d.ts +2 -1
  31. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +2 -0
  32. package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +2 -0
  33. package/esm/app-bar/profile-button/app-bar-profile-button.js +2 -0
  34. package/esm/app-bar/search/app-bar-search.d.ts +2 -0
  35. package/esm/app-bar/search/app-bar-search.js +2 -0
  36. package/esm/autocomplete/autocomplete-core.js +16 -3
  37. package/esm/autocomplete/autocomplete.d.ts +2 -0
  38. package/esm/autocomplete/autocomplete.js +2 -0
  39. package/esm/avatar/avatar.d.ts +1 -1
  40. package/esm/avatar/avatar.js +1 -1
  41. package/esm/backdrop/backdrop.d.ts +2 -0
  42. package/esm/backdrop/backdrop.js +2 -0
  43. package/esm/badge/badge.d.ts +2 -0
  44. package/esm/badge/badge.js +2 -0
  45. package/esm/banner/banner.d.ts +1 -1
  46. package/esm/banner/banner.js +1 -1
  47. package/esm/button/base/base-button-adapter.js +2 -2
  48. package/esm/button/button.d.ts +1 -6
  49. package/esm/button/button.js +1 -6
  50. package/esm/button-area/button-area-adapter.js +2 -2
  51. package/esm/button-area/button-area.d.ts +1 -4
  52. package/esm/button-area/button-area.js +1 -4
  53. package/esm/button-toggle/button-toggle/button-toggle-adapter.js +2 -2
  54. package/esm/button-toggle/button-toggle/button-toggle.d.ts +2 -0
  55. package/esm/button-toggle/button-toggle/button-toggle.js +2 -0
  56. package/esm/button-toggle/button-toggle-group/button-toggle-group.d.ts +1 -1
  57. package/esm/button-toggle/button-toggle-group/button-toggle-group.js +1 -1
  58. package/esm/calendar/calendar-menu/calendar-menu.js +1 -1
  59. package/esm/calendar/calendar.d.ts +2 -0
  60. package/esm/calendar/calendar.js +3 -1
  61. package/esm/card/card.d.ts +2 -0
  62. package/esm/card/card.js +2 -0
  63. package/esm/chip-field/chip-field.d.ts +2 -0
  64. package/esm/chip-field/chip-field.js +2 -0
  65. package/esm/chips/chip/chip-adapter.d.ts +3 -0
  66. package/esm/chips/chip/chip-adapter.js +14 -4
  67. package/esm/chips/chip/chip-constants.d.ts +2 -0
  68. package/esm/chips/chip/chip-constants.js +2 -1
  69. package/esm/chips/chip/chip-core.d.ts +4 -0
  70. package/esm/chips/chip/chip-core.js +9 -0
  71. package/esm/chips/chip/chip.d.ts +6 -0
  72. package/esm/chips/chip/chip.js +10 -0
  73. package/esm/chips/chip-set/chip-set.d.ts +1 -1
  74. package/esm/chips/chip-set/chip-set.js +1 -1
  75. package/esm/circular-progress/circular-progress.d.ts +1 -2
  76. package/esm/circular-progress/circular-progress.js +1 -2
  77. package/esm/color-picker/color-picker.d.ts +2 -0
  78. package/esm/color-picker/color-picker.js +3 -1
  79. package/esm/core/utils/a11y-utils.js +17 -0
  80. package/esm/core/utils/utils.js +8 -2
  81. package/esm/date-picker/date-picker.d.ts +2 -0
  82. package/esm/date-picker/date-picker.js +2 -0
  83. package/esm/date-range-picker/date-range-picker.d.ts +2 -0
  84. package/esm/date-range-picker/date-range-picker.js +2 -0
  85. package/esm/deprecated/button/deprecated-button.js +3 -3
  86. package/esm/deprecated/icon-button/deprecated-icon-button.js +2 -2
  87. package/esm/dialog/dialog.d.ts +1 -1
  88. package/esm/dialog/dialog.js +1 -1
  89. package/esm/divider/divider.d.ts +1 -1
  90. package/esm/divider/divider.js +1 -1
  91. package/esm/drawer/base/base-drawer-adapter.d.ts +2 -0
  92. package/esm/drawer/base/base-drawer-adapter.js +3 -0
  93. package/esm/drawer/base/base-drawer-core.js +3 -0
  94. package/esm/drawer/drawer/drawer.d.ts +2 -0
  95. package/esm/drawer/drawer/drawer.js +3 -1
  96. package/esm/drawer/mini-drawer/mini-drawer.d.ts +2 -0
  97. package/esm/drawer/mini-drawer/mini-drawer.js +3 -1
  98. package/esm/drawer/modal-drawer/modal-drawer.d.ts +2 -0
  99. package/esm/drawer/modal-drawer/modal-drawer.js +3 -1
  100. package/esm/expansion-panel/expansion-panel.d.ts +1 -1
  101. package/esm/expansion-panel/expansion-panel.js +1 -1
  102. package/esm/field/field-adapter.js +2 -2
  103. package/esm/field/field-core.d.ts +3 -3
  104. package/esm/field/field.d.ts +1 -2
  105. package/esm/field/field.js +1 -2
  106. package/esm/file-picker/file-picker.d.ts +2 -3
  107. package/esm/file-picker/file-picker.js +2 -3
  108. package/esm/floating-action-button/floating-action-button.d.ts +1 -1
  109. package/esm/floating-action-button/floating-action-button.js +1 -1
  110. package/esm/focus-indicator/focus-indicator-constants.d.ts +1 -11
  111. package/esm/focus-indicator/focus-indicator-constants.js +2 -17
  112. package/esm/focus-indicator/focus-indicator.d.ts +53 -26
  113. package/esm/focus-indicator/focus-indicator.js +139 -62
  114. package/esm/focus-indicator/index.d.ts +0 -2
  115. package/esm/focus-indicator/index.js +0 -2
  116. package/esm/icon/icon.d.ts +1 -1
  117. package/esm/icon/icon.js +1 -1
  118. package/esm/icon-button/icon-button.d.ts +2 -0
  119. package/esm/icon-button/icon-button.js +2 -0
  120. package/esm/inline-message/inline-message.d.ts +1 -1
  121. package/esm/inline-message/inline-message.js +1 -1
  122. package/esm/keyboard-shortcut/keyboard-shortcut.d.ts +2 -0
  123. package/esm/keyboard-shortcut/keyboard-shortcut.js +2 -0
  124. package/esm/label/label.d.ts +1 -1
  125. package/esm/label/label.js +1 -1
  126. package/esm/label-value/label-value.d.ts +1 -1
  127. package/esm/label-value/label-value.js +1 -1
  128. package/esm/linear-progress/linear-progress.d.ts +1 -2
  129. package/esm/linear-progress/linear-progress.js +1 -2
  130. package/esm/list/list/list.d.ts +1 -1
  131. package/esm/list/list/list.js +2 -2
  132. package/esm/list/list-item/list-item-constants.js +1 -1
  133. package/esm/list/list-item/list-item-core.d.ts +2 -0
  134. package/esm/list/list-item/list-item-core.js +29 -6
  135. package/esm/list/list-item/list-item.d.ts +1 -0
  136. package/esm/list/list-item/list-item.js +2 -1
  137. package/esm/list-dropdown/list-dropdown-constants.d.ts +11 -1
  138. package/esm/list-dropdown/list-dropdown-constants.js +6 -1
  139. package/esm/list-dropdown/list-dropdown-utils.d.ts +3 -1
  140. package/esm/list-dropdown/list-dropdown-utils.js +69 -21
  141. package/esm/menu/menu-adapter.d.ts +2 -0
  142. package/esm/menu/menu-adapter.js +12 -8
  143. package/esm/menu/menu-constants.d.ts +1 -0
  144. package/esm/menu/menu-constants.js +3 -2
  145. package/esm/menu/menu-core.d.ts +5 -0
  146. package/esm/menu/menu-core.js +41 -2
  147. package/esm/menu/menu.d.ts +17 -0
  148. package/esm/menu/menu.js +15 -1
  149. package/esm/open-icon/open-icon.d.ts +2 -1
  150. package/esm/open-icon/open-icon.js +2 -1
  151. package/esm/overlay/overlay.d.ts +1 -2
  152. package/esm/overlay/overlay.js +1 -2
  153. package/esm/page-state/page-state.d.ts +2 -1
  154. package/esm/page-state/page-state.js +2 -1
  155. package/esm/paginator/paginator-core.d.ts +16 -0
  156. package/esm/paginator/paginator-core.js +29 -9
  157. package/esm/paginator/paginator.d.ts +38 -0
  158. package/esm/paginator/paginator.js +46 -0
  159. package/esm/popover/popover-adapter.js +1 -1
  160. package/esm/popover/popover-constants.d.ts +4 -0
  161. package/esm/popover/popover-constants.js +4 -2
  162. package/esm/popover/popover-core.d.ts +5 -1
  163. package/esm/popover/popover-core.js +13 -0
  164. package/esm/popover/popover.d.ts +6 -2
  165. package/esm/popover/popover.js +10 -2
  166. package/esm/profile-card/profile-card.d.ts +3 -0
  167. package/esm/profile-card/profile-card.js +3 -0
  168. package/esm/radio/radio/radio.d.ts +1 -2
  169. package/esm/radio/radio/radio.js +1 -2
  170. package/esm/scaffold/scaffold.d.ts +1 -1
  171. package/esm/scaffold/scaffold.js +1 -1
  172. package/esm/select/core/base-select-constants.d.ts +4 -0
  173. package/esm/select/core/base-select-core.d.ts +22 -2
  174. package/esm/select/core/base-select-core.js +217 -40
  175. package/esm/select/option/option.d.ts +2 -0
  176. package/esm/select/option/option.js +2 -0
  177. package/esm/select/option-group/option-group.d.ts +2 -0
  178. package/esm/select/option-group/option-group.js +2 -0
  179. package/esm/select/select/select-constants.d.ts +5 -0
  180. package/esm/select/select/select-constants.js +5 -2
  181. package/esm/select/select/select.d.ts +14 -2
  182. package/esm/select/select/select.js +23 -2
  183. package/esm/select/select-dropdown/select-dropdown.d.ts +2 -0
  184. package/esm/select/select-dropdown/select-dropdown.js +2 -0
  185. package/esm/skeleton/skeleton.d.ts +1 -1
  186. package/esm/skeleton/skeleton.js +1 -1
  187. package/esm/skip-link/skip-link.d.ts +1 -1
  188. package/esm/skip-link/skip-link.js +1 -1
  189. package/esm/slider/slider.d.ts +1 -1
  190. package/esm/slider/slider.js +1 -1
  191. package/esm/split-button/split-button.d.ts +1 -1
  192. package/esm/split-button/split-button.js +2 -2
  193. package/esm/split-view/split-view/split-view.d.ts +2 -0
  194. package/esm/split-view/split-view/split-view.js +2 -0
  195. package/esm/split-view/split-view-panel/split-view-panel.d.ts +2 -0
  196. package/esm/split-view/split-view-panel/split-view-panel.js +3 -1
  197. package/esm/stack/stack.d.ts +1 -8
  198. package/esm/stack/stack.js +1 -8
  199. package/esm/state-layer/state-layer.d.ts +1 -1
  200. package/esm/state-layer/state-layer.js +2 -2
  201. package/esm/stepper/step/step.d.ts +2 -0
  202. package/esm/stepper/step/step.js +3 -1
  203. package/esm/stepper/stepper/stepper.d.ts +2 -0
  204. package/esm/stepper/stepper/stepper.js +2 -0
  205. package/esm/table/table-adapter.d.ts +4 -4
  206. package/esm/table/table-adapter.js +4 -4
  207. package/esm/table/table-core.js +2 -2
  208. package/esm/table/table-utils.d.ts +2 -2
  209. package/esm/table/table-utils.js +25 -18
  210. package/esm/table/table.d.ts +3 -1
  211. package/esm/table/table.js +4 -1
  212. package/esm/tabs/tab/tab-adapter.js +2 -2
  213. package/esm/tabs/tab/tab.d.ts +2 -0
  214. package/esm/tabs/tab/tab.js +2 -0
  215. package/esm/tabs/tab-bar/tab-bar.d.ts +1 -1
  216. package/esm/tabs/tab-bar/tab-bar.js +1 -1
  217. package/esm/text-field/text-field-adapter.d.ts +6 -4
  218. package/esm/text-field/text-field-adapter.js +11 -4
  219. package/esm/text-field/text-field-core.d.ts +4 -0
  220. package/esm/text-field/text-field-core.js +13 -2
  221. package/esm/text-field/text-field.d.ts +1 -1
  222. package/esm/text-field/text-field.js +1 -1
  223. package/esm/time-picker/time-picker-adapter.js +1 -0
  224. package/esm/time-picker/time-picker-core.js +3 -3
  225. package/esm/time-picker/time-picker.d.ts +2 -0
  226. package/esm/time-picker/time-picker.js +2 -0
  227. package/esm/toast/toast-adapter.d.ts +20 -0
  228. package/esm/toast/toast-adapter.js +30 -0
  229. package/esm/toast/toast-core.d.ts +17 -0
  230. package/esm/toast/toast-core.js +66 -0
  231. package/esm/toast/toast.d.ts +9 -2
  232. package/esm/toast/toast.js +10 -1
  233. package/esm/toolbar/toolbar.d.ts +1 -3
  234. package/esm/toolbar/toolbar.js +1 -3
  235. package/esm/tooltip/tooltip-adapter.d.ts +6 -0
  236. package/esm/tooltip/tooltip-adapter.js +9 -0
  237. package/esm/tooltip/tooltip-constants.d.ts +1 -0
  238. package/esm/tooltip/tooltip-constants.js +2 -1
  239. package/esm/tooltip/tooltip-core.d.ts +20 -0
  240. package/esm/tooltip/tooltip-core.js +96 -2
  241. package/esm/tooltip/tooltip.d.ts +1 -1
  242. package/esm/tooltip/tooltip.js +2 -2
  243. package/esm/view-switcher/view/view.d.ts +2 -0
  244. package/esm/view-switcher/view/view.js +2 -0
  245. package/esm/view-switcher/view-switcher.d.ts +2 -0
  246. package/esm/view-switcher/view-switcher.js +2 -0
  247. package/package.json +4 -4
  248. package/sass/focus-indicator/focus-indicator.scss +1 -1
  249. package/sass/icon-button/forge-icon-button.scss +3 -3
  250. package/sass/list/forge-list.scss +6 -6
  251. package/sass/state-layer/_core.scss +2 -0
  252. package/sass/table/_core.scss +13 -1
  253. package/sass/tooltip/_core.scss +0 -2
  254. package/esm/focus-indicator/focus-indicator-adapter.d.ts +0 -29
  255. package/esm/focus-indicator/focus-indicator-adapter.js +0 -37
  256. package/esm/focus-indicator/focus-indicator-core.d.ts +0 -48
  257. package/esm/focus-indicator/focus-indicator-core.js +0 -129
@@ -14,7 +14,7 @@ declare global {
14
14
  /**
15
15
  * @tag forge-skeleton
16
16
  *
17
- * @summary Skeleton is used to provide a placeholder for content that is loading.
17
+ * @summary Skeletons are used to provide a placeholder for content that is loading. They have various styles to represent different types of content.
18
18
  *
19
19
  * @attribute {string} form-field - Apply form field styles to the skeleton.
20
20
  * @attribute {string} button - Apply button styles to the skeleton.
@@ -12,7 +12,7 @@ const styles = '@keyframes forge-skeleton-loading{100%,25%{transform:translateX(
12
12
  /**
13
13
  * @tag forge-skeleton
14
14
  *
15
- * @summary Skeleton is used to provide a placeholder for content that is loading.
15
+ * @summary Skeletons are used to provide a placeholder for content that is loading. They have various styles to represent different types of content.
16
16
  *
17
17
  * @attribute {string} form-field - Apply form field styles to the skeleton.
18
18
  * @attribute {string} button - Apply button styles to the skeleton.
@@ -21,7 +21,7 @@ declare global {
21
21
  /**
22
22
  * @tag forge-skip-link
23
23
  *
24
- * @summary The Forge Skip Link component is used to provide a way for users to skip repetitive content and navigate directly to a section of the page.
24
+ * @summary The Forge Skip Link component is used to provide an accessible way for users to skip repetitive content and navigate directly to a section of the page. This is used for screen reader and keyboard users to improve the overall accessibility of web applications.
25
25
  *
26
26
  * @cssproperty --forge-skip-link-background - The background color of the skip link.
27
27
  * @cssproperty --forge-skip-link-color - The text color of the skip link.
@@ -14,7 +14,7 @@ const style = ':host{--_skip-link-inset:var(--forge-skip-link-inset, var(--forge
14
14
  /**
15
15
  * @tag forge-skip-link
16
16
  *
17
- * @summary The Forge Skip Link component is used to provide a way for users to skip repetitive content and navigate directly to a section of the page.
17
+ * @summary The Forge Skip Link component is used to provide an accessible way for users to skip repetitive content and navigate directly to a section of the page. This is used for screen reader and keyboard users to improve the overall accessibility of web applications.
18
18
  *
19
19
  * @cssproperty --forge-skip-link-background - The background color of the skip link.
20
20
  * @cssproperty --forge-skip-link-color - The text color of the skip link.
@@ -36,7 +36,7 @@ declare global {
36
36
  /**
37
37
  * @tag forge-slider
38
38
  *
39
- * @summary Sliders allow users to make selections from a range of values.
39
+ * @summary Sliders allow users to make selections from a range of values. You can use sliders for selecting values from either a continuous or discrete range, and they can also be used for selecting a single value or a range of values.
40
40
  *
41
41
  * @description Use sliders to enable users to select a value from a continuous or discrete range of values.
42
42
  *
@@ -17,7 +17,7 @@ const styles = ':host{display:inline-flex;vertical-align:middle;min-inline-size:
17
17
  /**
18
18
  * @tag forge-slider
19
19
  *
20
- * @summary Sliders allow users to make selections from a range of values.
20
+ * @summary Sliders allow users to make selections from a range of values. You can use sliders for selecting values from either a continuous or discrete range, and they can also be used for selecting a single value or a range of values.
21
21
  *
22
22
  * @description Use sliders to enable users to select a value from a continuous or discrete range of values.
23
23
  *
@@ -21,7 +21,7 @@ declare global {
21
21
  /**
22
22
  * @tag forge-split-button
23
23
  *
24
- * @summary Split buttons are used for splitting an action into two parts.
24
+ * @summary Split buttons are used for splitting an action into two parts, typically a primary action and a secondary action that opens a menu or performs an alternative action. Split buttons expect child Forge buttons as their content.
25
25
  *
26
26
  * @dependency forge-button
27
27
  *
@@ -11,11 +11,11 @@ import { SplitButtonAdapter } from './split-button-adapter';
11
11
  import { SPLIT_BUTTON_CONSTANTS } from './split-button-constants';
12
12
  import { SplitButtonCore } from './split-button-core';
13
13
  const template = '<template><slot></slot></template>';
14
- const styles = ':host{--_split-button-min-width:var(--forge-split-button-min-width, 0);--_split-button-gap:var(--forge-split-button-gap, var(--forge-border-thin, 1px));--_split-button-focus-indicator-offset:var(--forge-split-button-focus-indicator-offset, var(--forge-button-focus-indicator-offset, 4px));--_split-button-focus-indicator-divider-offset:var(--forge-split-button-focus-indicator-divider-offset, var(--_split-button-gap));--_split-button-focus-indicator-offset-adjusted:calc(var(--_split-button-focus-indicator-offset) + var(--_split-button-focus-indicator-divider-offset) * 2)}:host{display:inline-flex;justify-content:center;align-items:center}:host([hidden]){display:none}::slotted(*){--forge-button-min-width:var(--_split-button-min-width);--forge-button-focus-indicator-offset:var(--_split-button-focus-indicator-offset)}::slotted(:first-child){--forge-button-shape-start-end-radius:0;--forge-button-shape-end-end-radius:0;--forge-focus-indicator-shape-start-end:0;--forge-focus-indicator-shape-end-end:0;--forge-focus-indicator-offset-inline:0 var(--_split-button-focus-indicator-offset-adjusted)}::slotted(:not(:first-child):not(:last-child)){--forge-button-shape:0;--forge-focus-indicator-shape:0;--forge-focus-indicator-offset-inline:var(--_split-button-focus-indicator-offset-adjusted)}::slotted(:last-child){--forge-button-shape-start-start-radius:0;--forge-button-shape-end-start-radius:0;--forge-focus-indicator-shape-start-start:0;--forge-focus-indicator-shape-end-start:0;--forge-focus-indicator-offset-inline:var(--_split-button-focus-indicator-offset-adjusted) 0}:host([variant=outlined]){--_split-button-focus-indicator-divider-offset:var(--forge-split-button-focus-indicator-divider-offset, 0px)}:host([variant=outlined]) ::slotted(:not(:first-child)){margin-inline-start:calc(-1 * var(--_split-button-gap))}:host(:is([variant=tonal],[variant=filled],[variant=raised],:not([variant]))) ::slotted(:not(:last-child)){margin-inline-end:var(--_split-button-gap)}';
14
+ const styles = ':host{--_split-button-min-width:var(--forge-split-button-min-width, 0);--_split-button-gap:var(--forge-split-button-gap, var(--forge-border-thin, 1px));--_split-button-focus-indicator-offset:var(--forge-split-button-focus-indicator-offset, var(--forge-button-focus-indicator-offset, 4px));--_split-button-focus-indicator-divider-offset:var(--forge-split-button-focus-indicator-divider-offset, var(--_split-button-gap));--_split-button-focus-indicator-offset-adjusted:calc(var(--_split-button-focus-indicator-offset) + var(--_split-button-focus-indicator-divider-offset) * 2)}:host{display:inline-flex;justify-content:center;align-items:center}:host([hidden]){display:none}::slotted(*){--forge-button-min-width:var(--_split-button-min-width);--forge-button-focus-indicator-offset:var(--_split-button-focus-indicator-offset)}::slotted(:first-child){--forge-button-shape-start-end-radius:0;--forge-button-shape-end-end-radius:0;--forge-focus-indicator-shape-start-end:0;--forge-focus-indicator-shape-end-end:0;--forge-focus-indicator-offset-inline:0 var(--_split-button-focus-indicator-offset-adjusted)}::slotted(:not(:first-child):not(:last-child)){--forge-button-shape:0;--forge-focus-indicator-shape:0;--forge-focus-indicator-offset-inline:var(--_split-button-focus-indicator-offset-adjusted)}::slotted(:last-child){--forge-button-shape-start-start-radius:0;--forge-button-shape-end-start-radius:0;--forge-focus-indicator-shape-start-start:0;--forge-focus-indicator-shape-end-start:0;--forge-focus-indicator-offset-inline:var(--_split-button-focus-indicator-offset-adjusted) 0}:host([variant=outlined]) ::slotted(:not(:first-child)){margin-inline-start:calc(-1 * var(--_split-button-gap))}:host([variant=outlined]){--_split-button-focus-indicator-divider-offset:var(--forge-split-button-focus-indicator-divider-offset, 0px)}:host(:is([variant=tonal],[variant=filled],[variant=raised],:not([variant]))) ::slotted(:not(:last-child)){margin-inline-end:var(--_split-button-gap)}';
15
15
  /**
16
16
  * @tag forge-split-button
17
17
  *
18
- * @summary Split buttons are used for splitting an action into two parts.
18
+ * @summary Split buttons are used for splitting an action into two parts, typically a primary action and a secondary action that opens a menu or performs an alternative action. Split buttons expect child Forge buttons as their content.
19
19
  *
20
20
  * @dependency forge-button
21
21
  *
@@ -21,6 +21,8 @@ declare global {
21
21
  }
22
22
  /**
23
23
  * @tag forge-split-view
24
+ *
25
+ * @summary Split views create resizable panels that allow users to adjust the space between content areas.
24
26
  */
25
27
  export declare class SplitViewComponent extends BaseComponent implements ISplitViewComponent {
26
28
  static get observedAttributes(): string[];
@@ -14,6 +14,8 @@ const template = '<template><div class=\"forge-split-view\" id=\"root\" part=\"r
14
14
  const styles = '.forge-split-view{display:flex;width:100%;height:100%}:host{--forge-split-view-handle-width:8px;display:block;height:100%;width:100%;overflow:hidden}:host([hidden]){display:none}:host([orientation=horizontal]) .forge-split-view{flex-direction:row}:host([orientation=vertical]) .forge-split-view{flex-direction:column}';
15
15
  /**
16
16
  * @tag forge-split-view
17
+ *
18
+ * @summary Split views create resizable panels that allow users to adjust the space between content areas.
17
19
  */
18
20
  let SplitViewComponent = class SplitViewComponent extends BaseComponent {
19
21
  static get observedAttributes() {
@@ -37,6 +37,8 @@ declare global {
37
37
  /**
38
38
  * @tag forge-split-view-panel
39
39
  *
40
+ * @summary Individual panels within split views that can be resized and collapsed.
41
+ *
40
42
  * @dependency forge-icon
41
43
  * @dependency forge-state-layer
42
44
  * @dependency forge-focus-indicator
@@ -14,10 +14,12 @@ import { IconComponent, IconRegistry } from '../../icon';
14
14
  import { StateLayerComponent } from '../../state-layer';
15
15
  import { FocusIndicatorComponent } from '../../focus-indicator';
16
16
  const template = '<template><div class=\"forge-split-view-panel\" id=\"root\" part=\"root\"><div class=\"forge-split-view-panel__handle\" id=\"handle\" part=\"handle\" role=\"separator\" aria-controls=\"content\" aria-grabbed=\"false\" tabindex=\"0\"><forge-icon class=\"forge-split-view-panel__icon\" id=\"icon\" part=\"icon\"></forge-icon><forge-state-layer target=\"handle\" id=\"state-layer\" exportparts=\"surface:state-layer\"></forge-state-layer><forge-focus-indicator inward target=\"handle\" part=\"focus-indicator\"></forge-focus-indicator></div><div class=\"forge-split-view-panel__content\" id=\"content\" part=\"content\" role=\"group\"><slot></slot></div></div></template>';
17
- const styles = '.forge-split-view-panel{display:flex;width:100%;height:100%;overflow:hidden}.forge-split-view-panel__handle{color:var(--forge-theme-text-medium,rgba(0,0,0,.6));background-color:var(--forge-theme-outline,#e0e0e0);position:relative;display:flex;flex-shrink:0;justify-content:center;align-items:center;outline:0}.forge-split-view-panel__content{flex:1;overflow:hidden}.forge-split-view-panel--closed{display:none}.forge-split-view-panel--disabled #handle{pointer-events:none}.forge-split-view-panel--disabled .forge-split-view-panel__icon{display:none}.forge-split-view-panel[orientation=horizontal]{min-width:var(--forge-split-view-handle-width,8px);width:calc(var(--forge-split-view-panel-size,unset) + var(--forge-split-view-handle-width,8px));flex-direction:row}.forge-split-view-panel[orientation=horizontal] .forge-split-view-panel__handle{width:var(--forge-split-view-handle-width,8px);cursor:var(--forge-split-view-panel-cursor)}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--closing[resizable=end]{position:absolute;top:0;left:0;animation-name:uhqbsid;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes uhqbsid{from{transform:none}to{transform:translateX(-100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--closing[resizable=start]{position:absolute;top:0;right:0;animation-name:uhqbsj9;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes uhqbsj9{from{transform:none}to{transform:translateX(100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--opening[resizable=end]{position:absolute;top:0;left:0;animation-name:uhqbsjp;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1));animation-direction:reverse}@keyframes uhqbsjp{from{transform:none}to{transform:translateX(-100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--opening[resizable=start]{position:absolute;top:0;right:0;animation-name:uhqbskm;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1));animation-direction:reverse}@keyframes uhqbskm{from{transform:none}to{transform:translateX(100%)}}.forge-split-view-panel[orientation=vertical]{min-height:var(--forge-split-view-handle-width,8px);height:calc(var(--forge-split-view-panel-size,unset) + var(--forge-split-view-handle-width,8px));flex-direction:column}.forge-split-view-panel[orientation=vertical] .forge-split-view-panel__handle{height:var(--forge-split-view-handle-width,8px);cursor:var(--forge-split-view-panel-cursor)}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--closing[resizable=end]{position:absolute;top:0;left:0;animation-name:uhqbslj;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes uhqbslj{from{transform:none}to{transform:translateY(-100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--closing[resizable=start]{position:absolute;bottom:0;left:0;animation-name:uhqbslt;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes uhqbslt{from{transform:none}to{transform:translateY(100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--opening[resizable=end]{position:absolute;top:0;left:0;animation-name:uhqbsm4;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1));animation-direction:reverse}@keyframes uhqbsm4{from{transform:none}to{transform:translateY(-100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--opening[resizable=start]{position:absolute;bottom:0;left:0;animation-name:uhqbsmg;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1));animation-direction:reverse}@keyframes uhqbsmg{from{transform:none}to{transform:translateY(100%)}}:host{z-index:var(--forge-split-view-animating-layer)!important;display:block;position:relative;height:100%;width:100%;flex:0}:host([hidden]){display:none}:host(:not([resizable=start],[resizable=end])){flex:1}:host(:not([resizable=start],[resizable=end])) .forge-split-view-panel{width:100%;height:100%;min-width:0;min-height:0}:host(:not([resizable=start],[resizable=end])) .forge-split-view-panel__handle{display:none}forge-focus-indicator{--forge-focus-indicator-active-width:2px}';
17
+ const styles = '.forge-split-view-panel{display:flex;width:100%;height:100%;overflow:hidden}.forge-split-view-panel__handle{color:var(--forge-theme-text-medium,rgba(0,0,0,.6));background-color:var(--forge-theme-outline,#e0e0e0);position:relative;display:flex;flex-shrink:0;justify-content:center;align-items:center;outline:0}.forge-split-view-panel__content{flex:1;overflow:hidden}.forge-split-view-panel--closed{display:none}.forge-split-view-panel--disabled #handle{pointer-events:none}.forge-split-view-panel--disabled .forge-split-view-panel__icon{display:none}.forge-split-view-panel[orientation=horizontal]{min-width:var(--forge-split-view-handle-width,8px);width:calc(var(--forge-split-view-panel-size,unset) + var(--forge-split-view-handle-width,8px));flex-direction:row}.forge-split-view-panel[orientation=horizontal] .forge-split-view-panel__handle{width:var(--forge-split-view-handle-width,8px);cursor:var(--forge-split-view-panel-cursor)}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--closing[resizable=end]{position:absolute;top:0;left:0;animation-name:u1p3dq5;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes u1p3dq5{from{transform:none}to{transform:translateX(-100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--closing[resizable=start]{position:absolute;top:0;right:0;animation-name:u1p3dr4;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes u1p3dr4{from{transform:none}to{transform:translateX(100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--opening[resizable=end]{position:absolute;top:0;left:0;animation-name:u1p3dra;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes u1p3dra{from{transform:none}to{transform:translateX(-100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--opening[resizable=end]{animation-direction:reverse}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--opening[resizable=start]{position:absolute;top:0;right:0;animation-name:u1p3dro;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes u1p3dro{from{transform:none}to{transform:translateX(100%)}}.forge-split-view-panel[orientation=horizontal].forge-split-view-panel--opening[resizable=start]{animation-direction:reverse}.forge-split-view-panel[orientation=vertical]{min-height:var(--forge-split-view-handle-width,8px);height:calc(var(--forge-split-view-panel-size,unset) + var(--forge-split-view-handle-width,8px));flex-direction:column}.forge-split-view-panel[orientation=vertical] .forge-split-view-panel__handle{height:var(--forge-split-view-handle-width,8px);cursor:var(--forge-split-view-panel-cursor)}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--closing[resizable=end]{position:absolute;top:0;left:0;animation-name:u1p3ds7;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes u1p3ds7{from{transform:none}to{transform:translateY(-100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--closing[resizable=start]{position:absolute;bottom:0;left:0;animation-name:u1p3dsd;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes u1p3dsd{from{transform:none}to{transform:translateY(100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--opening[resizable=end]{position:absolute;top:0;left:0;animation-name:u1p3dtb;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes u1p3dtb{from{transform:none}to{transform:translateY(-100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--opening[resizable=end]{animation-direction:reverse}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--opening[resizable=start]{position:absolute;bottom:0;left:0;animation-name:u1p3dtn;animation-duration:var(--forge-animation-duration-medium2, 300ms);animation-timing-function:var(--forge-animation-easing-standard,cubic-bezier(0.2,0,0,1))}@keyframes u1p3dtn{from{transform:none}to{transform:translateY(100%)}}.forge-split-view-panel[orientation=vertical].forge-split-view-panel--opening[resizable=start]{animation-direction:reverse}:host{z-index:var(--forge-split-view-animating-layer)!important;display:block;position:relative;height:100%;width:100%;flex:0}:host([hidden]){display:none}:host(:not([resizable=start],[resizable=end])){flex:1}:host(:not([resizable=start],[resizable=end])) .forge-split-view-panel{width:100%;height:100%;min-width:0;min-height:0}:host(:not([resizable=start],[resizable=end])) .forge-split-view-panel__handle{display:none}forge-focus-indicator{--forge-focus-indicator-active-width:2px}';
18
18
  /**
19
19
  * @tag forge-split-view-panel
20
20
  *
21
+ * @summary Individual panels within split views that can be resized and collapsed.
22
+ *
21
23
  * @dependency forge-icon
22
24
  * @dependency forge-state-layer
23
25
  * @dependency forge-focus-indicator
@@ -21,14 +21,7 @@ declare global {
21
21
  /**
22
22
  * @tag forge-stack
23
23
  *
24
- * @summary The stack is a utility component that helps manage spacing and alignment of immediate children along a vertical or horizontal axis.
25
- *
26
- * @description
27
- * The stack utility component uses flexbox under the hood, but it is not meant to be an abstraction or replacement for CSS flexbox.
28
- * Stack is simply a utility component for developer convenience. There are many UI patterns and situations where elements need to be
29
- * arranged horizontally or vertically with a specific gap inbetween. Instead of having to use an inline style or create a new CSS class for
30
- * these scenarios, you can reach for the stack. This keeps developers within a template and prevents having to jump around from HTML
31
- * to CSS. It also helps minimize the number of CSS classes being used for simple situations where basic flexbox is needed.
24
+ * @summary The stack is a utility component that helps manage spacing and alignment of immediate children along a vertical or horizontal axis. Use stacks sparingly to avoid unnecessary DOM complexity, and prefer CSS flexbox or grid for more complex layouts.
32
25
  *
33
26
  * @cssproperty --forge-stack-alignment - Controls the align-items CSS property of the root stack element.
34
27
  * @cssproperty --forge-stack-justify - Controls the justify-content CSS property of the root stack element.
@@ -14,14 +14,7 @@ const styles = '.forge-stack{display:flex;flex-direction:column;align-items:var(
14
14
  /**
15
15
  * @tag forge-stack
16
16
  *
17
- * @summary The stack is a utility component that helps manage spacing and alignment of immediate children along a vertical or horizontal axis.
18
- *
19
- * @description
20
- * The stack utility component uses flexbox under the hood, but it is not meant to be an abstraction or replacement for CSS flexbox.
21
- * Stack is simply a utility component for developer convenience. There are many UI patterns and situations where elements need to be
22
- * arranged horizontally or vertically with a specific gap inbetween. Instead of having to use an inline style or create a new CSS class for
23
- * these scenarios, you can reach for the stack. This keeps developers within a template and prevents having to jump around from HTML
24
- * to CSS. It also helps minimize the number of CSS classes being used for simple situations where basic flexbox is needed.
17
+ * @summary The stack is a utility component that helps manage spacing and alignment of immediate children along a vertical or horizontal axis. Use stacks sparingly to avoid unnecessary DOM complexity, and prefer CSS flexbox or grid for more complex layouts.
25
18
  *
26
19
  * @cssproperty --forge-stack-alignment - Controls the align-items CSS property of the root stack element.
27
20
  * @cssproperty --forge-stack-justify - Controls the justify-content CSS property of the root stack element.
@@ -19,7 +19,7 @@ declare global {
19
19
  /**
20
20
  * @tag forge-state-layer
21
21
  *
22
- * @summary State layers show the interaction status of an element.
22
+ * @summary State layers show the interaction status of an element. These layers are semi-transparent overlays that indicate hover, focus, press, and drag states. State layers are building blocks for components and should generally not be used directly, but part of other components that have interactive states.
23
23
  *
24
24
  * @description A state layer is a semi-transparent overlay on an element that indicates its interaction
25
25
  * state. State layers provide a systematic approach to visualizing states by using opacity.
@@ -10,11 +10,11 @@ import { StateLayerCore } from './state-layer-core';
10
10
  import { STATE_LAYER_CONSTANTS } from './state-layer-constants';
11
11
  import { BaseComponent } from '../core/base/base-component';
12
12
  const template = '<template><div class=\"forge-state-layer\" part=\"surface\"></div></template>';
13
- const styles = ':host{--_state-layer-display:var(--forge-state-layer-display, flex)}:host{border-radius:inherit;position:absolute;inset:0;overflow:hidden;display:var(--_state-layer-display);margin:auto;pointer-events:none;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}:host([disabled]){display:none}.forge-state-layer{--_state-layer-color:var(--forge-state-layer-color, var(--forge-theme-on-surface, #000000));--_state-layer-hover-color:var(--forge-state-layer-hover-color, var(--_state-layer-color));--_state-layer-hover-opacity:var(--forge-state-layer-hover-opacity, 0.08);--_state-layer-pressed-color:var(--forge-state-layer-pressed-color, var(--_state-layer-color));--_state-layer-pressed-opacity:var(--forge-state-layer-pressed-opacity, 0.12);--_state-layer-hover-duration:var(--forge-state-layer-hover-duration, 15ms);--_state-layer-pressed-duration:var(--forge-state-layer-pressed-duration, 105ms);--_state-layer-animation-duration:var(--forge-state-layer-animation-duration, 375ms)}.forge-state-layer::after,.forge-state-layer::before{content:\"\";opacity:0;position:absolute}.forge-state-layer::before{background-color:var(--_state-layer-hover-color);inset:0;transition:opacity var(--_state-layer-hover-duration) linear,background-color var(--_state-layer-hover-duration) linear}.forge-state-layer::after{background:radial-gradient(closest-side,var(--_state-layer-pressed-color) max(100% - 70px,65%),transparent 100%);transform-origin:center center;transition:opacity var(--_state-layer-animation-duration) linear}.forge-state-layer--hovered::before{background-color:var(--_state-layer-hover-color);opacity:var(--_state-layer-hover-opacity)}.forge-state-layer--pressed::after{opacity:var(--_state-layer-pressed-opacity);transition-duration:var(--_state-layer-pressed-duration)}@media screen and (forced-colors:active){:host{display:none}}';
13
+ const styles = ':host{--_state-layer-display:var(--forge-state-layer-display, flex)}:host{border-radius:inherit;position:absolute;inset:0;overflow:hidden;display:var(--_state-layer-display);margin:auto;pointer-events:none;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}:host([disabled]){display:none}.forge-state-layer{--_state-layer-color:var(--forge-state-layer-color, var(--forge-theme-on-surface, #000000));--_state-layer-hover-color:var(--forge-state-layer-hover-color, var(--_state-layer-color));--_state-layer-hover-opacity:var(--forge-state-layer-hover-opacity, 0.08);--_state-layer-pressed-color:var(--forge-state-layer-pressed-color, var(--_state-layer-color));--_state-layer-pressed-opacity:var(--forge-state-layer-pressed-opacity, 0.12);--_state-layer-hover-duration:var(--forge-state-layer-hover-duration, 15ms);--_state-layer-pressed-duration:var(--forge-state-layer-pressed-duration, 105ms);--_state-layer-animation-duration:var(--forge-state-layer-animation-duration, 375ms)}.forge-state-layer::after,.forge-state-layer::before{content:\"\";opacity:0;position:absolute;backface-visibility:hidden;transform:translateZ(0)}.forge-state-layer::before{background-color:var(--_state-layer-hover-color);inset:0;transition:opacity var(--_state-layer-hover-duration) linear,background-color var(--_state-layer-hover-duration) linear}.forge-state-layer::after{background:radial-gradient(closest-side,var(--_state-layer-pressed-color) max(100% - 70px,65%),transparent 100%);transform-origin:center center;transition:opacity var(--_state-layer-animation-duration) linear}.forge-state-layer--hovered::before{background-color:var(--_state-layer-hover-color);opacity:var(--_state-layer-hover-opacity)}.forge-state-layer--pressed::after{opacity:var(--_state-layer-pressed-opacity);transition-duration:var(--_state-layer-pressed-duration)}@media screen and (forced-colors:active){:host{display:none}}';
14
14
  /**
15
15
  * @tag forge-state-layer
16
16
  *
17
- * @summary State layers show the interaction status of an element.
17
+ * @summary State layers show the interaction status of an element. These layers are semi-transparent overlays that indicate hover, focus, press, and drag states. State layers are building blocks for components and should generally not be used directly, but part of other components that have interactive states.
18
18
  *
19
19
  * @description A state layer is a semi-transparent overlay on an element that indicates its interaction
20
20
  * state. State layers provide a systematic approach to visualizing states by using opacity.
@@ -29,6 +29,8 @@ declare global {
29
29
  /**
30
30
  * @tag forge-step
31
31
  *
32
+ * @summary Individual steps within a stepper component that represent progress in a multi-step process.
33
+ *
32
34
  * @property {boolean} [alternative=false] - Whether the step is in the alternative style.
33
35
  * @property {boolean} [completed=false] - Whether the step is completed.
34
36
  * @property {boolean} [editable=false] - Whether the step is editable.
@@ -15,10 +15,12 @@ import { ExpansionPanelComponent } from '../../expansion-panel';
15
15
  import { StateLayerComponent } from '../../state-layer';
16
16
  import { FocusIndicatorComponent } from '../../focus-indicator';
17
17
  const template = '<template><div class=\"container\" part=\"root\"><div class=\"forge-step\" part=\"step\"><div class=\"before\" part=\"before\"></div><div class=\"icon-container\" part=\"icon-container\"><div class=\"icon-content\" part=\"icon-content\"><span class=\"index\" part=\"index\"></span><forge-icon class=\"icon\" part=\"icon\"></forge-icon></div></div><div class=\"text-container\" part=\"text-container\"><div class=\"title\" part=\"title-container\"><slot></slot></div><div class=\"subtitle\" part=\"subtitle-container\"><slot name=\"optional\"></slot></div></div><div class=\"after\" part=\"after\"></div><forge-state-layer exportparts=\"surface:state-layer\" target=\":host\"></forge-state-layer><forge-focus-indicator part=\"focus-indicator\" target=\":host\" inward></forge-focus-indicator></div></div></template>';
18
- const styles = ':host{--_step-primary-color:var(--forge-step-primary-color, var(--forge-theme-primary, #3f51b5));--_step-text-color:var(--forge-step-text-color, var(--forge-theme-on-primary, #ffffff));--_step-border-radius:var(--forge-step-border-radius, calc(var(--forge-shape-extra-large, 16px) * var(--forge-shape-factor, 1)));--_step-border-radius-vertical:var(--forge-step-border-radius-vertical, calc(var(--forge-shape-medium, 4px) * var(--forge-shape-factor, 1)));--_step-disabled-text-color:var(--forge-step-disabled-text-color, var(--forge-theme-text-low, rgba(0, 0, 0, 0.38)));--_step-disabled-color:var(--forge-step-disabled-color, var(--forge-theme-surface-container-minimum, #f5f5f5));--_step-icon-fill:var(--forge-step-icon-fill, unset);--_step-icon-fill-active:var(--forge-step-icon-fill-active, var(--_step-primary-color));--_step-icon-text-color:var(--forge-step-icon-text-color, var(--forge-theme-primary, #3f51b5));--_step-icon-text-color-active:var(--forge-step-icon-text-color-active, var(--forge-theme-on-primary, #ffffff));--_step-icon-content-size:var(--forge-step-icon-content-size, 24px);--_step-icon-size:var(--forge-step-icon-size, calc(var(--forge-typography-font-size, 1rem) * 0.875));--_step-icon-transition-duration:var(--forge-step-icon-transition-duration, var(--forge-animation-duration-medium4, 400ms));--_step-icon-transition-easing:var(--forge-step-icon-transition-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_step-line-color:var(--forge-step-line-color, var(--forge-theme-outline, #e0e0e0));--_step-line-min-width:var(--forge-step-line-min-width, 10px);--_step-line-min-width-clustered:var(--forge-step-line-min-width-clustered, 25px);--_step-label-color:var(--forge-step-label-color, var(--forge-theme-text-high, rgba(0, 0, 0, 0.87)));--_step-sub-label-color:var(--forge-step-sub-label-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.6)));--_step-error-color:var(--forge-step-error-color, var(--forge-theme-error, #b00020));--_step-error-text-color:var(--forge-step-error-text-color, var(--forge-theme-on-error, #ffffff));--_step-expansion-panel-border-left-width:var(--forge-step-expansion-panel-border-left-width, 1px);--_step-expansion-panel-margin-bottom:var(--forge-step-expansion-panel-margin-bottom, 4px);--_step-expansion-panel-margin-left:var(--forge-step-expansion-panel-margin-left, 60px);--_step-expansion-panel-margin-top:var(--forge-step-expansion-panel-margin-top, 4px);--_step-expansion-panel-icon-color:var(--forge-step-expansion-panel-icon-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.6)))}:host(:focus){outline:0}:host([error]){--forge-state-layer-color:var(--_step-error-color)}:host(:first-child[alternative])::after{align-self:flex-start;top:22px;margin:0}:host(:last-child[alternative])::before{align-self:flex-start;top:22px;margin:0}:host(:not(:first-child):not(:last-child)[alternative])::after,:host(:not(:first-child):not(:last-child)[alternative])::before{align-self:flex-start;top:22px;min-width:7px;margin:0}:host(:not(:last-child)[alternative]) .after{align-self:flex-start;top:22px;position:absolute;width:calc(50% - 18px);left:calc(50% + 18px);height:0;right:0}:host(:not(:first-child)[alternative]) .before{align-self:flex-start;top:22px;position:absolute;left:0;width:calc(50% - 18px);height:0}:host(:not(:first-child):not(:last-child)):host(:not([vertical]))::after,:host(:not(:first-child):not(:last-child)):host(:not([vertical]))::before{border-color:var(--_step-line-color);min-width:var(--_step-line-min-width);content:\"\";position:relative;height:0;flex:1;flex-basis:0.000000001px;border-top-style:solid;border-top-width:1px;border-radius:1px 0 0 1px;margin:0 -10px}:host(:last-child):host(:not([vertical]))::before{border-color:var(--_step-line-color);min-width:var(--_step-line-min-width);content:\"\";position:relative;height:0;flex:1;flex-basis:0.000000001px;border-top-style:solid;border-top-width:1px;border-radius:1px 0 0 1px;margin:0 -10px 0 0}:host(:is(:first-child)):host(:not([vertical]))::after{border-color:var(--_step-line-color);min-width:var(--_step-line-min-width);content:\"\";position:relative;height:0;flex:1;flex-basis:0.000000001px;border-top-style:solid;border-top-width:1px;border-radius:1px 0 0 1px;margin:0 -10px}:host([vertical]){flex-direction:column}:host([vertical])::after{content:none}:host([vertical])::before{content:none}:host([vertical]) .forge-step{--_step-border-radius:var(--_step-border-radius-vertical);width:100%;min-height:52px}:host([vertical]) .forge-step .text-container{white-space:normal}:host([vertical]) .icon-container .icon-content{margin:0 16px 0 0}:host([vertical]) .expansion-panel{display:none}:host([vertical]) .expanded-icon{color:var(--_step-expansion-panel-icon-color);display:none;margin-left:auto}:host([vertical][expandable]) .expansion-panel{display:block}:host([ignore-user-expansion]) .forge-step .expanded-icon{display:none}forge-expansion-panel::part(root){border-color:var(--_step-line-color);margin-left:var(--_step-expansion-panel-margin-left);margin-top:var(--_step-expansion-panel-margin-top);margin-bottom:var(--_step-expansion-panel-margin-bottom);border-left-width:var(--_step-expansion-panel-border-left-width);border-left-style:solid}forge-focus-indicator{--forge-focus-indicator-color:var(--_step-primary-color);--forge-focus-indicator-shape:16px}.container{display:contents}.forge-step{-webkit-tap-highlight-color:transparent;padding:12px 16px;outline:0;background:0 0;border:none;border-radius:var(--_step-border-radius);position:relative;display:flex;overflow:hidden;align-items:center;box-sizing:border-box;cursor:pointer}.forge-step:focus{outline:0}.forge-step::-moz-focus-inner,.forge-step::-moz-focus-outer{padding:0;border:0}.forge-step.error forge-focus-indicator{--forge-focus-indicator-color:var(--_step-error-color)}.forge-step.vertical forge-focus-indicator{--forge-focus-indicator-shape:4px}.forge-step.selected:not(.disabled){--forge-state-layer-color:var(--_step-primary-color)}.forge-step.selected:not(.disabled)::before{background-color:var(--_step-primary-color);content:\"\";position:absolute;inset:0;opacity:.08;height:100%;width:100%}.forge-step.selected:not(.disabled).error{--_step-primary-color:var(--_step-error-color)}.forge-step .title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body1-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-body1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, .875)));font-weight:var(--forge-typography-body1-font-weight,400);line-height:var(--forge-typography-body1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-body1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-body1-text-transform,inherit);text-decoration:var(--forge-typography-body1-text-decoration,inherit);color:var(--_step-label-color);text-align:left;overflow:hidden;text-overflow:ellipsis}.forge-step .subtitle{text-align:left;overflow:hidden;text-overflow:ellipsis}.forge-step .subtitle ::slotted(*){color:var(--_step-sub-label-color);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label1-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-label1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));font-weight:var(--forge-typography-label1-font-weight,400);line-height:var(--forge-typography-label1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label1-text-transform,inherit);text-decoration:var(--forge-typography-label1-text-decoration,inherit)}.forge-step .icon-container .icon-content{color:var(--_step-icon-text-color);background-color:var(--_step-icon-fill);height:var(--_step-icon-content-size);width:var(--_step-icon-content-size);border-style:solid;border-width:2px;border-color:transparent;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color var(--_step-icon-transition-duration) var(--_step-icon-transition-easing);margin:0 8px 0 0;flex:none}.forge-step .icon-container .icon-content forge-icon{font-size:var(--_step-icon-size)}.forge-step.disabled{color:var(--_step-disabled-text-color);cursor:not-allowed}.forge-step.disabled.forge-step .icon-container .icon-content{--_step-icon-fill:var(--_step-disabled-color);--_step-icon-text-color:var(--_step-disabled-text-color)}.forge-step.disabled .text-container .title{color:var(--_step-disabled-text-color)}.forge-step.disabled .text-container .subtitle ::slotted(*){color:var(--_step-disabled-text-color)}.forge-step.alternative{flex-direction:column}.forge-step.alternative .icon-container .icon-content{margin:0}.forge-step.alternative .text-container{margin-top:8px;place-items:center}.forge-step:not(.selected):not(.disabled).editable:not(.completed):not(.error) .icon-content,.forge-step:not(.selected):not(.disabled):not(.editable):not(.completed):not(.error) .icon-content{border-color:var(--_step-primary-color)}.forge-step:not(.selected):not(.disabled).editable:not(.completed):not(.error) .icon-content .index,.forge-step:not(.selected):not(.disabled):not(.editable):not(.completed):not(.error) .icon-content .index{color:var(--_step-primary-color)}.forge-step.selected.disabled .icon-content{--_step-icon-fill:var(--_step-disabled-color);--_step-icon-text-color:var(--_step-disabled-text-color)}.forge-step.selected:not(.disabled) .icon-container .icon-content{--_step-icon-fill:var(--_step-icon-fill-active);--_step-icon-text-color:var(--_step-icon-text-color-active)}.forge-step.selected:not(.disabled) .title{color:var(--_step-primary-color);font-weight:500}.forge-step.selected:not(.disabled) .subtitle ::slotted(*){color:var(--_step-primary-color);font-weight:500}.forge-step.error:not(.disabled) .title{color:var(--_step-error-color)}.forge-step.error:not(.disabled) .subtitle ::slotted(*){color:var(--_step-error-color)}.forge-step.error:not(.disabled) .icon-container .icon-content{--_step-icon-fill:var(--_step-error-color);--_step-icon-text-color:var(--_step-error-text-color)}.forge-step.completed:not(.disabled):not(.error):not(.editable) .icon-content{--_step-icon-fill:var(--_step-icon-fill-active);--_step-icon-text-color:var(--_step-icon-text-color-active)}.forge-step.completed:not(.disabled):not(.error).editable .icon-content{--_step-icon-fill:var(--_step-icon-fill-active);--_step-icon-text-color:var(--_step-icon-text-color-active)}.forge-step.expandable .expanded-icon{display:inline-block;transition:transform .3s ease-in-out}.forge-step.expandable.expanded .expanded-icon{transform:rotate(180deg)}.forge-step.expandable .icon-container .icon-content{margin:0 16px 0 0}.forge-step .text-container{display:flex;flex-direction:column;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(:not(:last-child)[clustered])::after{--_step-line-min-width:var(--_step-line-min-width-clustered)}:host(:last-child[clustered])::before{--_step-line-min-width:var(--_step-line-min-width-clustered)}:host(:not(:first-child):not(:last-child)[clustered])::after,:host(:not(:first-child):not(:last-child)[clustered])::before{--_step-line-min-width:var(--_step-line-min-width-clustered)}';
18
+ const styles = ':host{--_step-primary-color:var(--forge-step-primary-color, var(--forge-theme-primary, #3f51b5));--_step-text-color:var(--forge-step-text-color, var(--forge-theme-on-primary, #ffffff));--_step-border-radius:var(--forge-step-border-radius, calc(var(--forge-shape-extra-large, 16px) * var(--forge-shape-factor, 1)));--_step-border-radius-vertical:var(--forge-step-border-radius-vertical, calc(var(--forge-shape-medium, 4px) * var(--forge-shape-factor, 1)));--_step-disabled-text-color:var(--forge-step-disabled-text-color, var(--forge-theme-text-low, rgba(0, 0, 0, 0.38)));--_step-disabled-color:var(--forge-step-disabled-color, var(--forge-theme-surface-container-minimum, #f5f5f5));--_step-icon-fill:var(--forge-step-icon-fill, unset);--_step-icon-fill-active:var(--forge-step-icon-fill-active, var(--_step-primary-color));--_step-icon-text-color:var(--forge-step-icon-text-color, var(--forge-theme-primary, #3f51b5));--_step-icon-text-color-active:var(--forge-step-icon-text-color-active, var(--forge-theme-on-primary, #ffffff));--_step-icon-content-size:var(--forge-step-icon-content-size, 24px);--_step-icon-size:var(--forge-step-icon-size, calc(var(--forge-typography-font-size, 1rem) * 0.875));--_step-icon-transition-duration:var(--forge-step-icon-transition-duration, var(--forge-animation-duration-medium4, 400ms));--_step-icon-transition-easing:var(--forge-step-icon-transition-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_step-line-color:var(--forge-step-line-color, var(--forge-theme-outline, #e0e0e0));--_step-line-min-width:var(--forge-step-line-min-width, 10px);--_step-line-min-width-clustered:var(--forge-step-line-min-width-clustered, 25px);--_step-label-color:var(--forge-step-label-color, var(--forge-theme-text-high, rgba(0, 0, 0, 0.87)));--_step-sub-label-color:var(--forge-step-sub-label-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.6)));--_step-error-color:var(--forge-step-error-color, var(--forge-theme-error, #b00020));--_step-error-text-color:var(--forge-step-error-text-color, var(--forge-theme-on-error, #ffffff));--_step-expansion-panel-border-left-width:var(--forge-step-expansion-panel-border-left-width, 1px);--_step-expansion-panel-margin-bottom:var(--forge-step-expansion-panel-margin-bottom, 4px);--_step-expansion-panel-margin-left:var(--forge-step-expansion-panel-margin-left, 60px);--_step-expansion-panel-margin-top:var(--forge-step-expansion-panel-margin-top, 4px);--_step-expansion-panel-icon-color:var(--forge-step-expansion-panel-icon-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.6)))}:host(:focus){outline:0}:host([error]){--forge-state-layer-color:var(--_step-error-color)}:host(:first-child[alternative])::after{align-self:flex-start;top:22px;margin:0}:host(:last-child[alternative])::before{align-self:flex-start;top:22px;margin:0}:host(:not(:first-child):not(:last-child)[alternative])::after,:host(:not(:first-child):not(:last-child)[alternative])::before{align-self:flex-start;top:22px;min-width:7px;margin:0}:host(:not(:last-child)[alternative]) .after{align-self:flex-start;top:22px;position:absolute;width:calc(50% - 18px);left:calc(50% + 18px);height:0;right:0}:host(:not(:first-child)[alternative]) .before{align-self:flex-start;top:22px;position:absolute;left:0;width:calc(50% - 18px);height:0}:host(:not(:first-child):not(:last-child)):host(:not([vertical]))::after,:host(:not(:first-child):not(:last-child)):host(:not([vertical]))::before{border-color:var(--_step-line-color);min-width:var(--_step-line-min-width);content:\"\";position:relative;height:0;flex:1;flex-basis:0.000000001px;border-top-style:solid;border-top-width:1px;border-radius:1px 0 0 1px;margin:0 -10px}:host(:last-child):host(:not([vertical]))::before{border-color:var(--_step-line-color);min-width:var(--_step-line-min-width);content:\"\";position:relative;height:0;flex:1;flex-basis:0.000000001px;border-top-style:solid;border-top-width:1px;border-radius:1px 0 0 1px;margin:0 -10px 0 0}:host(:is(:first-child)):host(:not([vertical]))::after{border-color:var(--_step-line-color);min-width:var(--_step-line-min-width);content:\"\";position:relative;height:0;flex:1;flex-basis:0.000000001px;border-top-style:solid;border-top-width:1px;border-radius:1px 0 0 1px;margin:0 -10px}:host([vertical]){flex-direction:column}:host([vertical])::after{content:none}:host([vertical])::before{content:none}:host([vertical]) .forge-step{--_step-border-radius:var(--_step-border-radius-vertical);width:100%;min-height:52px}:host([vertical]) .forge-step .text-container{white-space:normal}:host([vertical]) .icon-container .icon-content{margin:0 16px 0 0}:host([vertical]) .expansion-panel{display:none}:host([vertical]) .expanded-icon{color:var(--_step-expansion-panel-icon-color);display:none;margin-left:auto}:host([vertical][expandable]) .expansion-panel{display:block}:host([ignore-user-expansion]) .forge-step .expanded-icon{display:none}forge-expansion-panel::part(root){border-color:var(--_step-line-color);margin-left:var(--_step-expansion-panel-margin-left);margin-top:var(--_step-expansion-panel-margin-top);margin-bottom:var(--_step-expansion-panel-margin-bottom);border-left-width:var(--_step-expansion-panel-border-left-width);border-left-style:solid}forge-focus-indicator{--forge-focus-indicator-color:var(--_step-primary-color);--forge-focus-indicator-shape:16px}.container{display:contents}.forge-step{-webkit-tap-highlight-color:transparent;padding:12px 16px;outline:0;background:0 0;border:none;border-radius:var(--_step-border-radius);position:relative;display:flex;overflow:hidden;align-items:center;box-sizing:border-box}.forge-step:focus{outline:0}.forge-step::-moz-focus-inner,.forge-step::-moz-focus-outer{padding:0;border:0}.forge-step{cursor:pointer}.forge-step.error forge-focus-indicator{--forge-focus-indicator-color:var(--_step-error-color)}.forge-step.vertical forge-focus-indicator{--forge-focus-indicator-shape:4px}.forge-step.selected:not(.disabled){--forge-state-layer-color:var(--_step-primary-color)}.forge-step.selected:not(.disabled)::before{background-color:var(--_step-primary-color);content:\"\";position:absolute;inset:0;opacity:.08;height:100%;width:100%}.forge-step.selected:not(.disabled).error{--_step-primary-color:var(--_step-error-color)}.forge-step .title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body1-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-body1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, .875)));font-weight:var(--forge-typography-body1-font-weight,400);line-height:var(--forge-typography-body1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-body1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-body1-text-transform,inherit);text-decoration:var(--forge-typography-body1-text-decoration,inherit);color:var(--_step-label-color);text-align:left;overflow:hidden;text-overflow:ellipsis}.forge-step .subtitle{text-align:left;overflow:hidden;text-overflow:ellipsis}.forge-step .subtitle ::slotted(*){color:var(--_step-sub-label-color);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label1-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-label1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));font-weight:var(--forge-typography-label1-font-weight,400);line-height:var(--forge-typography-label1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label1-text-transform,inherit);text-decoration:var(--forge-typography-label1-text-decoration,inherit)}.forge-step .icon-container .icon-content{color:var(--_step-icon-text-color);background-color:var(--_step-icon-fill);height:var(--_step-icon-content-size);width:var(--_step-icon-content-size);border-style:solid;border-width:2px;border-color:transparent;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color var(--_step-icon-transition-duration) var(--_step-icon-transition-easing);margin:0 8px 0 0;flex:none}.forge-step .icon-container .icon-content forge-icon{font-size:var(--_step-icon-size)}.forge-step.disabled{color:var(--_step-disabled-text-color);cursor:not-allowed}.forge-step.disabled.forge-step .icon-container .icon-content{--_step-icon-fill:var(--_step-disabled-color);--_step-icon-text-color:var(--_step-disabled-text-color)}.forge-step.disabled .text-container .title{color:var(--_step-disabled-text-color)}.forge-step.disabled .text-container .subtitle ::slotted(*){color:var(--_step-disabled-text-color)}.forge-step.alternative{flex-direction:column}.forge-step.alternative .icon-container .icon-content{margin:0}.forge-step.alternative .text-container{margin-top:8px;place-items:center}.forge-step:not(.selected):not(.disabled).editable:not(.completed):not(.error) .icon-content,.forge-step:not(.selected):not(.disabled):not(.editable):not(.completed):not(.error) .icon-content{border-color:var(--_step-primary-color)}.forge-step:not(.selected):not(.disabled).editable:not(.completed):not(.error) .icon-content .index,.forge-step:not(.selected):not(.disabled):not(.editable):not(.completed):not(.error) .icon-content .index{color:var(--_step-primary-color)}.forge-step.selected.disabled .icon-content{--_step-icon-fill:var(--_step-disabled-color);--_step-icon-text-color:var(--_step-disabled-text-color)}.forge-step.selected:not(.disabled) .icon-container .icon-content{--_step-icon-fill:var(--_step-icon-fill-active);--_step-icon-text-color:var(--_step-icon-text-color-active)}.forge-step.selected:not(.disabled) .title{color:var(--_step-primary-color);font-weight:500}.forge-step.selected:not(.disabled) .subtitle ::slotted(*){color:var(--_step-primary-color);font-weight:500}.forge-step.error:not(.disabled) .title{color:var(--_step-error-color)}.forge-step.error:not(.disabled) .subtitle ::slotted(*){color:var(--_step-error-color)}.forge-step.error:not(.disabled) .icon-container .icon-content{--_step-icon-fill:var(--_step-error-color);--_step-icon-text-color:var(--_step-error-text-color)}.forge-step.completed:not(.disabled):not(.error):not(.editable) .icon-content{--_step-icon-fill:var(--_step-icon-fill-active);--_step-icon-text-color:var(--_step-icon-text-color-active)}.forge-step.completed:not(.disabled):not(.error).editable .icon-content{--_step-icon-fill:var(--_step-icon-fill-active);--_step-icon-text-color:var(--_step-icon-text-color-active)}.forge-step.expandable .expanded-icon{display:inline-block;transition:transform .3s ease-in-out}.forge-step.expandable.expanded .expanded-icon{transform:rotate(180deg)}.forge-step.expandable .icon-container .icon-content{margin:0 16px 0 0}.forge-step .text-container{display:flex;flex-direction:column;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(:not(:last-child)[clustered])::after{--_step-line-min-width:var(--_step-line-min-width-clustered)}:host(:last-child[clustered])::before{--_step-line-min-width:var(--_step-line-min-width-clustered)}:host(:not(:first-child):not(:last-child)[clustered])::after,:host(:not(:first-child):not(:last-child)[clustered])::before{--_step-line-min-width:var(--_step-line-min-width-clustered)}';
19
19
  /**
20
20
  * @tag forge-step
21
21
  *
22
+ * @summary Individual steps within a stepper component that represent progress in a multi-step process.
23
+ *
22
24
  * @property {boolean} [alternative=false] - Whether the step is in the alternative style.
23
25
  * @property {boolean} [completed=false] - Whether the step is completed.
24
26
  * @property {boolean} [editable=false] - Whether the step is editable.
@@ -23,6 +23,8 @@ declare global {
23
23
  /**
24
24
  * @tag forge-stepper
25
25
  *
26
+ * @summary Steppers guide users through multi-step processes by breaking them into logical steps.
27
+ *
26
28
  * @dependency forge-step
27
29
  *
28
30
  * @event {CustomEvent<number>} forge-step-select - Emits the index when a step is selected.
@@ -15,6 +15,8 @@ const styles = ':host{display:block}:host([hidden]){display:none}:host([vertical
15
15
  /**
16
16
  * @tag forge-stepper
17
17
  *
18
+ * @summary Steppers guide users through multi-step processes by breaking them into logical steps.
19
+ *
18
20
  * @dependency forge-step
19
21
  *
20
22
  * @event {CustomEvent<number>} forge-step-select - Emits the index when a step is selected.
@@ -19,11 +19,11 @@ export interface ITableAdapter extends IBaseAdapter {
19
19
  setSortedColumn: (tableElement: HTMLTableElement, columnIndex: number, sortDirection: SortDirection) => void;
20
20
  removeColumnSort: (tableElement: HTMLTableElement, columnIndex: number) => void;
21
21
  setSortDirection: (tableElement: HTMLTableElement, columnIndex: number, sortDirection: SortDirection) => void;
22
- setSelectColumnVisibility: (tableElement: HTMLTableElement, isVisible: boolean, selectListener: (evt: Event) => void, selectAllListener?: (evt: Event) => void, selectAllTemplate?: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment?: CellAlign, data?: TableRow[], tooltipSelect?: string | TableSelectTooltipCallback, tooltipSelectAll?: string) => void;
22
+ setSelectColumnVisibility: (tableElement: HTMLTableElement, dense: boolean, isVisible: boolean, selectListener: (evt: Event) => void, selectAllListener?: (evt: Event) => void, selectAllTemplate?: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment?: CellAlign, data?: TableRow[], tooltipSelect?: string | TableSelectTooltipCallback, tooltipSelectAll?: string) => void;
23
23
  setDense: (tableElement: HTMLTableElement, isDense: boolean) => void;
24
24
  setRoomy(tableElement: HTMLTableElement, isRoomy: boolean): void;
25
25
  setResizable: (configuration: ITableConfiguration) => void;
26
- setSelectAllVisibility: (tableElement: HTMLTableElement, isVisible: boolean, listener: ((evt: Event) => void) | null, selectAllTemplate: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment?: CellAlign, tooltipSelectAll?: string) => void;
26
+ setSelectAllVisibility: (tableElement: HTMLTableElement, dense: boolean, isVisible: boolean, listener: ((evt: Event) => void) | null, selectAllTemplate: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment?: CellAlign, tooltipSelectAll?: string) => void;
27
27
  setFilterRow: (configuration: ITableConfiguration) => void;
28
28
  expandRow(configuration: ITableConfiguration, rowIndex: number, template: TableViewTemplate): Promise<void>;
29
29
  collapseRow(configuration: ITableConfiguration, rowIndex: number): Promise<void>;
@@ -57,11 +57,11 @@ export declare class TableAdapter extends BaseAdapter<ITableComponent> implement
57
57
  setSortedColumn(tableElement: HTMLTableElement, columnIndex: number, sortDirection: SortDirection): void;
58
58
  removeColumnSort(tableElement: HTMLTableElement, columnIndex: number): void;
59
59
  setSortDirection(tableElement: HTMLTableElement, columnIndex: number, sortDirection: SortDirection): void;
60
- setSelectColumnVisibility(tableElement: HTMLTableElement, isVisible: boolean, selectListener: (evt: Event) => void, selectAllListener?: (evt: Event) => void, selectAllTemplate?: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment?: CellAlign, data?: TableRow[], tooltipSelect?: string | TableSelectTooltipCallback, tooltipSelectAll?: string): void;
60
+ setSelectColumnVisibility(tableElement: HTMLTableElement, dense: boolean, isVisible: boolean, selectListener: (evt: Event) => void, selectAllListener?: (evt: Event) => void, selectAllTemplate?: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment?: CellAlign, data?: TableRow[], tooltipSelect?: string | TableSelectTooltipCallback, tooltipSelectAll?: string): void;
61
61
  setDense(tableElement: HTMLTableElement, isDense: boolean): void;
62
62
  setRoomy(tableElement: HTMLTableElement, isRoomy: boolean): void;
63
63
  setResizable(configuration: ITableConfiguration): void;
64
- setSelectAllVisibility(tableElement: HTMLTableElement, isVisible: boolean, listener: ((evt: Event) => void) | null, selectAllTemplate: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment?: CellAlign, tooltipSelectAll?: string | null): void;
64
+ setSelectAllVisibility(tableElement: HTMLTableElement, dense: boolean, isVisible: boolean, listener: ((evt: Event) => void) | null, selectAllTemplate: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment?: CellAlign, tooltipSelectAll?: string | null): void;
65
65
  setFilterRow(configuration: ITableConfiguration): void;
66
66
  expandRow(configuration: ITableConfiguration, rowIndex: number, template: TableViewTemplate): Promise<void>;
67
67
  collapseRow(configuration: ITableConfiguration, rowIndex: number): Promise<void>;
@@ -57,8 +57,8 @@ export class TableAdapter extends BaseAdapter {
57
57
  setSortDirection(tableElement, columnIndex, sortDirection) {
58
58
  TableUtils.setSortDirection(tableElement, columnIndex, sortDirection);
59
59
  }
60
- setSelectColumnVisibility(tableElement, isVisible, selectListener, selectAllListener, selectAllTemplate, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll) {
61
- TableUtils.setSelectColumnVisibility(tableElement, isVisible, selectListener, selectAllListener || null, selectAllTemplate || null, selectCheckboxAlignment || null, data || [], tooltipSelect || null, tooltipSelectAll || null);
60
+ setSelectColumnVisibility(tableElement, dense, isVisible, selectListener, selectAllListener, selectAllTemplate, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll) {
61
+ TableUtils.setSelectColumnVisibility(tableElement, dense, isVisible, selectListener, selectAllListener || null, selectAllTemplate || null, selectCheckboxAlignment || null, data || [], tooltipSelect || null, tooltipSelectAll || null);
62
62
  }
63
63
  setDense(tableElement, isDense) {
64
64
  TableUtils.setDenseState(tableElement, isDense);
@@ -69,8 +69,8 @@ export class TableAdapter extends BaseAdapter {
69
69
  setResizable(configuration) {
70
70
  TableUtils.setResizable(configuration);
71
71
  }
72
- setSelectAllVisibility(tableElement, isVisible, listener, selectAllTemplate, selectCheckboxAlignment, tooltipSelectAll = null) {
73
- TableUtils.setSelectAllVisibility(tableElement, isVisible, listener, selectAllTemplate, selectCheckboxAlignment || null, tooltipSelectAll || null);
72
+ setSelectAllVisibility(tableElement, dense, isVisible, listener, selectAllTemplate, selectCheckboxAlignment, tooltipSelectAll = null) {
73
+ TableUtils.setSelectAllVisibility(tableElement, dense, isVisible, listener, selectAllTemplate, selectCheckboxAlignment || null, tooltipSelectAll || null);
74
74
  }
75
75
  setFilterRow(configuration) {
76
76
  TableUtils.setFilterRow(configuration);
@@ -141,7 +141,7 @@ export class TableCore {
141
141
  if (this._select !== value) {
142
142
  this._select = value;
143
143
  // Now we can add/remove the column
144
- this._adapter.setSelectColumnVisibility(this._adapter.getTableElement(), this._select, this._selectRowListener, this._multiselect ? this._selectAllListener : undefined, this._multiselect ? this._selectAllTemplate : null, this._selectCheckboxAlignment, this._tableRows, this._tooltipSelect, this._tooltipSelectAll);
144
+ this._adapter.setSelectColumnVisibility(this._adapter.getTableElement(), this._dense, this._select, this._selectRowListener, this._multiselect ? this._selectAllListener : undefined, this._multiselect ? this._selectAllTemplate : null, this._selectCheckboxAlignment, this._tableRows, this._tooltipSelect, this._tooltipSelectAll);
145
145
  this._updateSelections(true);
146
146
  // Update the attribute on the host element
147
147
  if (this._select) {
@@ -160,7 +160,7 @@ export class TableCore {
160
160
  if (this._multiselect !== value) {
161
161
  this._multiselect = value;
162
162
  if (this._select) {
163
- this._adapter.setSelectAllVisibility(this._adapter.getTableElement(), this._multiselect, this._multiselect ? this._selectAllListener : null, this._multiselect ? this.selectAllTemplate : null, this._selectCheckboxAlignment, this._tooltipSelectAll);
163
+ this._adapter.setSelectAllVisibility(this._adapter.getTableElement(), this._dense, this._multiselect, this._multiselect ? this._selectAllListener : null, this._multiselect ? this.selectAllTemplate : null, this._selectCheckboxAlignment, this._tooltipSelectAll);
164
164
  this._updateSelections(true);
165
165
  }
166
166
  this._adapter.setHostAttribute(TABLE_CONSTANTS.attributes.MULTISELECT, this._multiselect.toString());
@@ -282,7 +282,7 @@ export declare class TableUtils {
282
282
  /**
283
283
  * Adds/removes the select column on the table.
284
284
  */
285
- static setSelectColumnVisibility(tableElement: HTMLTableElement, isVisible: boolean, selectListener: ((evt: Event) => void) | null, selectAllListener: ((evt: Event) => void) | null, selectAllTemplate: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment: CellAlign | null, data: TableRow[], tooltipSelect: string | TableSelectTooltipCallback | null, tooltipSelectAll: string | null): void;
285
+ static setSelectColumnVisibility(tableElement: HTMLTableElement, dense: boolean, isVisible: boolean, selectListener: ((evt: Event) => void) | null, selectAllListener: ((evt: Event) => void) | null, selectAllTemplate: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment: CellAlign | null, data: TableRow[], tooltipSelect: string | TableSelectTooltipCallback | null, tooltipSelectAll: string | null): void;
286
286
  /**
287
287
  * Adds the select column to the thead/tbody elements and attaches the provided click listeners.
288
288
  * @param theadElement The table head element.
@@ -311,7 +311,7 @@ export declare class TableUtils {
311
311
  * @param {HTMLTableElement} tableElement The table element.
312
312
  * @param {boolean} isVisible Whether the select all option is visible or not.
313
313
  */
314
- static setSelectAllVisibility(tableElement: HTMLTableElement, isVisible: boolean, listener: ((evt: Event) => void) | null, selectAllTemplate: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment: CellAlign | null, tooltipSelectAll: string | null): void;
314
+ static setSelectAllVisibility(tableElement: HTMLTableElement, dense: boolean, isVisible: boolean, listener: ((evt: Event) => void) | null, selectAllTemplate: TableHeaderSelectAllTemplate | null, selectCheckboxAlignment: CellAlign | null, tooltipSelectAll: string | null): void;
315
315
  /**
316
316
  * Controls the visibility of the table filter row.
317
317
  * @param {ITableConfiguration} configuration The table configuration.
@@ -51,7 +51,7 @@ export class TableUtils {
51
51
  }
52
52
  // Add the select column
53
53
  if (configuration.selectListener) {
54
- TableUtils._addSelectColumn(thead, tbody, configuration.selectListener, configuration.selectAllListener, configuration.selectAllTemplate, configuration.selectCheckboxAlignment, configuration.data, configuration.tooltipSelect, configuration.tooltipSelectAll);
54
+ TableUtils._addSelectColumn(thead, tbody, configuration.dense, configuration.selectListener, configuration.selectAllListener, configuration.selectAllTemplate, configuration.selectCheckboxAlignment, configuration.data, configuration.tooltipSelect, configuration.tooltipSelectAll);
55
55
  }
56
56
  if (configuration.resizable || configuration.columnConfigurations.some(c => !!c.sortable)) {
57
57
  TableUtils._attachHeadRowMouseDownListener(thead, configuration.headRowMouseDownListener);
@@ -97,7 +97,7 @@ export class TableUtils {
97
97
  }
98
98
  // Add the select column if necessary
99
99
  if (configuration.selectListener) {
100
- TableUtils._createBodySelectColumn(tbody, configuration.selectCheckboxAlignment, configuration.data, configuration.tooltipSelect, configuration.tooltipSelectAll);
100
+ TableUtils._createBodySelectColumn(tbody, configuration.dense, configuration.selectCheckboxAlignment, configuration.data, configuration.tooltipSelect, configuration.tooltipSelectAll);
101
101
  TableUtils._attachRowSelectListeners(tbody, configuration.selectListener);
102
102
  }
103
103
  TableUtils._setTableBody(configuration.tableElement, tbody);
@@ -144,6 +144,9 @@ export class TableUtils {
144
144
  if (columnConfig.sortable) {
145
145
  cellContainer = document.createElement('button');
146
146
  cellContainer.type = 'button';
147
+ const focusIndicator = document.createElement('forge-focus-indicator');
148
+ focusIndicator.inward = true;
149
+ cellContainer.appendChild(focusIndicator);
147
150
  cellContainer.addEventListener('keydown', tableConfiguration.sortableHeadCellKeydownListener);
148
151
  }
149
152
  else {
@@ -591,12 +594,12 @@ export class TableUtils {
591
594
  * @param theadElement
592
595
  * @param tbodyElement
593
596
  */
594
- static _createSelectColumn(theadElement, tbodyElement, showSelectAll, selectAllTemplate, registerListener, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll) {
597
+ static _createSelectColumn(theadElement, tbodyElement, dense, showSelectAll, selectAllTemplate, registerListener, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll) {
595
598
  if (theadElement) {
596
- TableUtils._createHeadSelectColumn(theadElement, showSelectAll, selectAllTemplate, registerListener, selectCheckboxAlignment, tooltipSelectAll);
599
+ TableUtils._createHeadSelectColumn(theadElement, dense, showSelectAll, selectAllTemplate, registerListener, selectCheckboxAlignment, tooltipSelectAll);
597
600
  }
598
601
  if (tbodyElement) {
599
- TableUtils._createBodySelectColumn(tbodyElement, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll);
602
+ TableUtils._createBodySelectColumn(tbodyElement, dense, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll);
600
603
  }
601
604
  }
602
605
  /**
@@ -604,7 +607,7 @@ export class TableUtils {
604
607
  * @param {HTMLTableSectionElement} theadElement The table head element.
605
608
  * @param {boolean} showSelectAll Whether to show the select all checkbox or not.
606
609
  */
607
- static _createHeadSelectColumn(theadElement, showSelectAll, selectAllTemplate, registerListener, selectCheckboxAlignment, tooltipSelectAll) {
610
+ static _createHeadSelectColumn(theadElement, dense, showSelectAll, selectAllTemplate, registerListener, selectCheckboxAlignment, tooltipSelectAll) {
608
611
  Array.from(theadElement.rows).forEach(row => {
609
612
  const th = document.createElement('th');
610
613
  addClass([TABLE_CONSTANTS.classes.TABLE_CELL, TABLE_CONSTANTS.classes.TABLE_HEAD_CELL], th);
@@ -621,7 +624,7 @@ export class TableUtils {
621
624
  });
622
625
  }
623
626
  else {
624
- lastRowFirstCell?.appendChild(TableUtils._createCheckboxElement(true, selectCheckboxAlignment, null, null, null, tooltipSelectAll));
627
+ lastRowFirstCell?.appendChild(TableUtils._createCheckboxElement(true, dense, selectCheckboxAlignment, null, null, null, tooltipSelectAll));
625
628
  }
626
629
  }
627
630
  }
@@ -629,9 +632,9 @@ export class TableUtils {
629
632
  * Creates the select column in the table body.
630
633
  * @param {HTMLTableSectionElement} tbodyElement The table body element.
631
634
  */
632
- static _createBodySelectColumn(tbodyElement, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll) {
635
+ static _createBodySelectColumn(tbodyElement, dense, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll) {
633
636
  const nonExpandedRows = TableUtils._getNonExpandedRows(tbodyElement.rows);
634
- nonExpandedRows.forEach((row, rowIndex) => TableUtils._addRowSelectColumn(row, selectCheckboxAlignment, rowIndex, data[rowIndex], tooltipSelect, tooltipSelectAll));
637
+ nonExpandedRows.forEach((row, rowIndex) => TableUtils._addRowSelectColumn(row, dense, selectCheckboxAlignment, rowIndex, data[rowIndex], tooltipSelect, tooltipSelectAll));
635
638
  // Update the colspan on the expanded rows
636
639
  if (tbodyElement.rows.length) {
637
640
  const firstRow = tbodyElement.rows.item(0);
@@ -640,10 +643,10 @@ export class TableUtils {
640
643
  }
641
644
  }
642
645
  }
643
- static _addRowSelectColumn(row, selectCheckboxAlignment, rowIndex, rowData, tooltipSelect, tooltipSelectAll) {
646
+ static _addRowSelectColumn(row, dense, selectCheckboxAlignment, rowIndex, rowData, tooltipSelect, tooltipSelectAll) {
644
647
  const td = row.insertCell(0);
645
648
  addClass([TABLE_CONSTANTS.classes.TABLE_CELL, TABLE_CONSTANTS.classes.TABLE_BODY_CELL, TABLE_CONSTANTS.classes.TABLE_CELL_SELECT], td);
646
- td.appendChild(TableUtils._createCheckboxElement(false, selectCheckboxAlignment, rowIndex, rowData, tooltipSelect, tooltipSelectAll));
649
+ td.appendChild(TableUtils._createCheckboxElement(false, dense, selectCheckboxAlignment, rowIndex, rowData, tooltipSelect, tooltipSelectAll));
647
650
  }
648
651
  /**
649
652
  * Removes the first cell (select cell) in every row in the table head and table body elements.
@@ -675,7 +678,7 @@ export class TableUtils {
675
678
  /**
676
679
  * Creates a checkbox element for the select column.
677
680
  */
678
- static _createCheckboxElement(isHeader, alignment, rowIndex, rowData, tooltipSelect, tooltipSelectAll) {
681
+ static _createCheckboxElement(isHeader, dense, alignment, rowIndex, rowData, tooltipSelect, tooltipSelectAll) {
679
682
  const checkboxContainer = document.createElement('div');
680
683
  checkboxContainer.classList.add(TABLE_CONSTANTS.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER);
681
684
  if (alignment) {
@@ -693,6 +696,7 @@ export class TableUtils {
693
696
  }
694
697
  const checkboxElement = document.createElement(CHECKBOX_CONSTANTS.elementName);
695
698
  checkboxElement.setAttribute(TABLE_CONSTANTS.attributes.SELECT_CHECKBOX, '');
699
+ checkboxElement.dense = dense;
696
700
  checkboxContainer.appendChild(checkboxElement);
697
701
  const tooltipFactory = (text) => {
698
702
  const tooltipEl = document.createElement('forge-tooltip');
@@ -954,14 +958,14 @@ export class TableUtils {
954
958
  /**
955
959
  * Adds/removes the select column on the table.
956
960
  */
957
- static setSelectColumnVisibility(tableElement, isVisible, selectListener, selectAllListener, selectAllTemplate, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll) {
961
+ static setSelectColumnVisibility(tableElement, dense, isVisible, selectListener, selectAllListener, selectAllTemplate, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll) {
958
962
  const theadElement = tableElement.tHead;
959
963
  const tbodyElement = tableElement.tBodies[0];
960
964
  if (!theadElement || !tbodyElement) {
961
965
  return;
962
966
  }
963
967
  if (isVisible) {
964
- TableUtils._addSelectColumn(theadElement, tbodyElement, selectListener, selectAllListener, selectAllTemplate, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll);
968
+ TableUtils._addSelectColumn(theadElement, tbodyElement, dense, selectListener, selectAllListener, selectAllTemplate, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll);
965
969
  }
966
970
  else if (TableUtils._hasSelectColumn(theadElement, tbodyElement)) {
967
971
  if (selectListener) {
@@ -980,8 +984,8 @@ export class TableUtils {
980
984
  * @param selectListener The row select listener.
981
985
  * @param selectAllListener The select all checkbox listener.
982
986
  */
983
- static _addSelectColumn(theadElement, tbodyElement, selectListener, selectAllListener, selectAllTemplate, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll) {
984
- TableUtils._createSelectColumn(theadElement, tbodyElement, !!selectAllListener, selectAllTemplate, () => {
987
+ static _addSelectColumn(theadElement, tbodyElement, dense, selectListener, selectAllListener, selectAllTemplate, selectCheckboxAlignment, data, tooltipSelect, tooltipSelectAll) {
988
+ TableUtils._createSelectColumn(theadElement, tbodyElement, dense, !!selectAllListener, selectAllTemplate, () => {
985
989
  if (selectAllListener) {
986
990
  TableUtils._tryAttachSelectAllTemplateListener(theadElement, selectAllListener);
987
991
  }
@@ -1003,6 +1007,9 @@ export class TableUtils {
1003
1007
  if (isDense) {
1004
1008
  tableElement.classList.add(TABLE_CONSTANTS.classes.TABLE_DENSE);
1005
1009
  }
1010
+ // Update the select column checkboxes if they exist
1011
+ const selectColumnCheckboxes = tableElement.querySelectorAll(`forge-checkbox[${TABLE_CONSTANTS.attributes.SELECT_CHECKBOX}]`);
1012
+ selectColumnCheckboxes.forEach(checkboxEl => (checkboxEl.dense = isDense));
1006
1013
  }
1007
1014
  /**
1008
1015
  * Adds/removes the roomy class on the table.
@@ -1083,7 +1090,7 @@ export class TableUtils {
1083
1090
  * @param {HTMLTableElement} tableElement The table element.
1084
1091
  * @param {boolean} isVisible Whether the select all option is visible or not.
1085
1092
  */
1086
- static setSelectAllVisibility(tableElement, isVisible, listener, selectAllTemplate, selectCheckboxAlignment, tooltipSelectAll) {
1093
+ static setSelectAllVisibility(tableElement, dense, isVisible, listener, selectAllTemplate, selectCheckboxAlignment, tooltipSelectAll) {
1087
1094
  const theadElement = tableElement.tHead;
1088
1095
  if (!theadElement) {
1089
1096
  return;
@@ -1105,7 +1112,7 @@ export class TableUtils {
1105
1112
  });
1106
1113
  }
1107
1114
  else {
1108
- selectAllCell.appendChild(TableUtils._createCheckboxElement(true, selectCheckboxAlignment || null, null, null, null, tooltipSelectAll));
1115
+ selectAllCell.appendChild(TableUtils._createCheckboxElement(true, dense, selectCheckboxAlignment || null, null, null, null, tooltipSelectAll));
1109
1116
  }
1110
1117
  if (listener && !selectAllTemplate) {
1111
1118
  TableUtils._attachSelectAllListener(theadElement, listener);
@@ -64,6 +64,8 @@ declare global {
64
64
  }
65
65
  }
66
66
  /**
67
+ * @summary Tables are used to display sets of data. They organize information into rows and columns, making it easier to read, compare, and analyze. The Forge table provides a configuration-based approach to building data tables with means for sorting, filtering, selecting, and customizing the display of tabular data.
68
+ *
67
69
  * @tag forge-table
68
70
  *
69
71
  * @dependency forge-expansion-panel
@@ -183,7 +185,7 @@ export declare class TableComponent extends BaseComponent implements ITableCompo
183
185
  columnConfigurations: IColumnConfiguration[];
184
186
  /**
185
187
  * Controls the visibility of the select column.
186
- * @default true
188
+ * @default false
187
189
  * @attribute
188
190
  */
189
191
  select: boolean;