@fabric-msft/fabric-web 5.0.0 → 5.0.1

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 (230) hide show
  1. package/CHANGELOG.json +180 -0
  2. package/CHANGELOG.md +56 -1
  3. package/dist/dts/components/accordion-menu/accordion-menu.d.ts +1 -1
  4. package/dist/dts/components/accordion-menu/accordion-menu.d.ts.map +1 -1
  5. package/dist/dts/components/accordion-menu-panel/accordion-menu-panel.d.ts +2 -2
  6. package/dist/dts/components/accordion-menu-panel/accordion-menu-panel.d.ts.map +1 -1
  7. package/dist/dts/components/component-register.d.ts +67 -0
  8. package/dist/dts/components/component-register.d.ts.map +1 -0
  9. package/dist/dts/components/field/field.d.ts +32 -1
  10. package/dist/dts/components/field/field.d.ts.map +1 -1
  11. package/dist/dts/components/filter-pill/filter-pill.d.ts +1 -1
  12. package/dist/dts/components/filter-pill/filter-pill.d.ts.map +1 -1
  13. package/dist/dts/components/listbox/listbox.d.ts +1 -1
  14. package/dist/dts/components/listbox/listbox.d.ts.map +1 -1
  15. package/dist/dts/components/menu/menu.d.ts +71 -83
  16. package/dist/dts/components/menu/menu.d.ts.map +1 -1
  17. package/dist/dts/components/menu/menu.positioning.d.ts +26 -67
  18. package/dist/dts/components/menu/menu.positioning.d.ts.map +1 -1
  19. package/dist/dts/components/menu/menu.styles.d.ts.map +1 -1
  20. package/dist/dts/components/menu-item/menu-item.d.ts +4 -4
  21. package/dist/dts/components/menu-item/menu-item.d.ts.map +1 -1
  22. package/dist/dts/components/menu-list/menu-list.d.ts +1 -1
  23. package/dist/dts/components/menu-list/menu-list.d.ts.map +1 -1
  24. package/dist/dts/components/option-group/option-group.d.ts +1 -1
  25. package/dist/dts/components/option-group/option-group.d.ts.map +1 -1
  26. package/dist/dts/components/popover/popover.d.ts +48 -69
  27. package/dist/dts/components/popover/popover.d.ts.map +1 -1
  28. package/dist/dts/components/popover/popover.definition.d.ts +1 -1
  29. package/dist/dts/components/popover/popover.definition.d.ts.map +1 -1
  30. package/dist/dts/components/popover/popover.options.d.ts +2 -2
  31. package/dist/dts/components/popover/popover.options.d.ts.map +1 -1
  32. package/dist/dts/components/popover/popover.positioning.d.ts +92 -0
  33. package/dist/dts/components/popover/popover.positioning.d.ts.map +1 -0
  34. package/dist/dts/components/popover/popover.styles.d.ts.map +1 -1
  35. package/dist/dts/components/search-box/search-box.d.ts +1 -1
  36. package/dist/dts/components/search-box/search-box.d.ts.map +1 -1
  37. package/dist/dts/components/search-box/search-box.options.d.ts.map +1 -1
  38. package/dist/dts/components/table/table.d.ts +1 -1
  39. package/dist/dts/components/table/table.d.ts.map +1 -1
  40. package/dist/dts/components/text-input/text-input.base.d.ts +3 -3
  41. package/dist/dts/components/text-input/text-input.base.d.ts.map +1 -1
  42. package/dist/dts/components/text-input/text-input.d.ts.map +1 -1
  43. package/dist/dts/components/tooltip/tooltip.d.ts +5 -0
  44. package/dist/dts/components/tooltip/tooltip.d.ts.map +1 -1
  45. package/dist/dts/components/tooltip/tooltip.template.d.ts +13 -0
  46. package/dist/dts/components/tooltip/tooltip.template.d.ts.map +1 -0
  47. package/dist/dts/components/tree/tree.d.ts +16 -0
  48. package/dist/dts/components/tree/tree.d.ts.map +1 -1
  49. package/dist/dts/components/tree-item/index.d.ts +2 -1
  50. package/dist/dts/components/tree-item/index.d.ts.map +1 -1
  51. package/dist/dts/components/tree-item/tree-item.definition.d.ts.map +1 -1
  52. package/dist/dts/components/tree-item/tree-item.styles.d.ts +2 -0
  53. package/dist/dts/components/tree-item/tree-item.styles.d.ts.map +1 -0
  54. package/dist/dts/components/tree-item/tree-item.template.d.ts +4 -0
  55. package/dist/dts/components/tree-item/tree-item.template.d.ts.map +1 -0
  56. package/dist/dts/components/wizard/wizard.d.ts +1 -1
  57. package/dist/dts/components/wizard/wizard.d.ts.map +1 -1
  58. package/dist/dts/components/wizard-step/wizard-step.d.ts +1 -1
  59. package/dist/dts/components/wizard-step/wizard-step.d.ts.map +1 -1
  60. package/dist/dts/index.d.ts +3 -2
  61. package/dist/dts/index.d.ts.map +1 -1
  62. package/dist/dts/util/accessibility-utilities.d.ts +23 -0
  63. package/dist/dts/util/accessibility-utilities.d.ts.map +1 -0
  64. package/dist/dts/util/attribute-utilities.d.ts +9 -0
  65. package/dist/dts/util/attribute-utilities.d.ts.map +1 -0
  66. package/dist/dts/util/debounce.d.ts.map +1 -0
  67. package/dist/dts/util/debug.d.ts +32 -0
  68. package/dist/dts/util/debug.d.ts.map +1 -0
  69. package/dist/dts/util/direction.d.ts +193 -0
  70. package/dist/dts/util/direction.d.ts.map +1 -1
  71. package/dist/dts/util/dom.d.ts +2 -0
  72. package/dist/dts/util/dom.d.ts.map +1 -0
  73. package/dist/dts/util/element-internal-mocks.d.ts +67 -0
  74. package/dist/dts/util/element-internal-mocks.d.ts.map +1 -0
  75. package/dist/dts/util/focus-management.d.ts +132 -0
  76. package/dist/dts/util/focus-management.d.ts.map +1 -0
  77. package/dist/dts/util/hash-utilities.d.ts +8 -0
  78. package/dist/dts/util/hash-utilities.d.ts.map +1 -0
  79. package/dist/dts/util/index.d.ts +13 -6
  80. package/dist/dts/util/index.d.ts.map +1 -1
  81. package/dist/dts/util/positioning/flexible-position-strategy.d.ts +87 -0
  82. package/dist/dts/util/positioning/flexible-position-strategy.d.ts.map +1 -0
  83. package/dist/dts/util/positioning/index.d.ts +9 -0
  84. package/dist/dts/util/positioning/index.d.ts.map +1 -0
  85. package/dist/dts/util/positioning/position-calculator.d.ts +46 -0
  86. package/dist/dts/util/positioning/position-calculator.d.ts.map +1 -0
  87. package/dist/dts/util/positioning/types.d.ts +181 -0
  88. package/dist/dts/util/positioning/types.d.ts.map +1 -0
  89. package/dist/esm/components/accordion-menu/accordion-menu.js +1 -1
  90. package/dist/esm/components/accordion-menu/accordion-menu.js.map +1 -1
  91. package/dist/esm/components/accordion-menu/accordion-menu.styles.js +1 -1
  92. package/dist/esm/components/accordion-menu-panel/accordion-menu-panel.js +2 -2
  93. package/dist/esm/components/accordion-menu-panel/accordion-menu-panel.js.map +1 -1
  94. package/dist/esm/components/accordion-menu-panel/accordion-menu-panel.styles.js +1 -1
  95. package/dist/esm/components/card/card.styles.js +1 -1
  96. package/dist/esm/components/card-footer/card-footer.styles.js +1 -1
  97. package/dist/esm/components/card-header/card-header.styles.js +1 -1
  98. package/dist/esm/components/card-preview/card-preview.styles.js +1 -1
  99. package/dist/esm/components/carousel/carousel.js +1 -1
  100. package/dist/esm/components/carousel/carousel.js.map +1 -1
  101. package/dist/esm/components/carousel/carousel.styles.js +1 -1
  102. package/dist/esm/components/component-register.js +67 -0
  103. package/dist/esm/components/component-register.js.map +1 -0
  104. package/dist/esm/components/compound-button/compound-button.options.js +1 -1
  105. package/dist/esm/components/field/field.js +68 -1
  106. package/dist/esm/components/field/field.js.map +1 -1
  107. package/dist/esm/components/filter-pill/filter-pill.js +1 -1
  108. package/dist/esm/components/filter-pill/filter-pill.js.map +1 -1
  109. package/dist/esm/components/filter-pill/filter-pill.options.js +1 -1
  110. package/dist/esm/components/filter-pill/filter-pill.styles.js +3 -2
  111. package/dist/esm/components/listbox/listbox.js +1 -1
  112. package/dist/esm/components/listbox/listbox.js.map +1 -1
  113. package/dist/esm/components/loading-button/loading-button.js.map +1 -1
  114. package/dist/esm/components/menu/menu.js +158 -230
  115. package/dist/esm/components/menu/menu.js.map +1 -1
  116. package/dist/esm/components/menu/menu.options.js +1 -1
  117. package/dist/esm/components/menu/menu.options.js.map +1 -1
  118. package/dist/esm/components/menu/menu.positioning.js +98 -201
  119. package/dist/esm/components/menu/menu.positioning.js.map +1 -1
  120. package/dist/esm/components/menu/menu.styles.js +2 -2
  121. package/dist/esm/components/menu/menu.styles.js.map +1 -1
  122. package/dist/esm/components/menu-item/menu-item.js +4 -4
  123. package/dist/esm/components/menu-item/menu-item.js.map +1 -1
  124. package/dist/esm/components/menu-item/menu-item.styles.js +1 -1
  125. package/dist/esm/components/menu-list/menu-list.js +1 -1
  126. package/dist/esm/components/menu-list/menu-list.js.map +1 -1
  127. package/dist/esm/components/menu-list/menu-list.styles.js +1 -1
  128. package/dist/esm/components/multi-view/multi-view.styles.js +1 -1
  129. package/dist/esm/components/multi-view-controller/multi-view-controller.styles.js +1 -1
  130. package/dist/esm/components/multi-view-group/multi-view-group.styles.js +1 -1
  131. package/dist/esm/components/option-group/option-group.js +1 -1
  132. package/dist/esm/components/option-group/option-group.js.map +1 -1
  133. package/dist/esm/components/popover/define.js +2 -2
  134. package/dist/esm/components/popover/define.js.map +1 -1
  135. package/dist/esm/components/popover/popover.definition.js.map +1 -1
  136. package/dist/esm/components/popover/popover.js +82 -122
  137. package/dist/esm/components/popover/popover.js.map +1 -1
  138. package/dist/esm/components/popover/popover.options.js +2 -2
  139. package/dist/esm/components/popover/popover.options.js.map +1 -1
  140. package/dist/esm/components/popover/popover.positioning.js +314 -0
  141. package/dist/esm/components/popover/popover.positioning.js.map +1 -0
  142. package/dist/esm/components/popover/popover.styles.js +14 -18
  143. package/dist/esm/components/popover/popover.styles.js.map +1 -1
  144. package/dist/esm/components/search-box/search-box.js +1 -1
  145. package/dist/esm/components/search-box/search-box.js.map +1 -1
  146. package/dist/esm/components/search-box/search-box.options.js +1 -1
  147. package/dist/esm/components/search-box/search-box.options.js.map +1 -1
  148. package/dist/esm/components/simple-table/simple-table.styles.js +2 -1
  149. package/dist/esm/components/table/table.js +1 -1
  150. package/dist/esm/components/table/table.js.map +1 -1
  151. package/dist/esm/components/table/table.styles.js +1 -1
  152. package/dist/esm/components/table-cell/table-cell.styles.js +1 -1
  153. package/dist/esm/components/tag/tag.styles.js +1 -1
  154. package/dist/esm/components/teaching-bubble/teaching-bubble.styles.js +1 -1
  155. package/dist/esm/components/text-input/text-input.base.js +3 -3
  156. package/dist/esm/components/text-input/text-input.base.js.map +1 -1
  157. package/dist/esm/components/text-input/text-input.js +1 -0
  158. package/dist/esm/components/text-input/text-input.js.map +1 -1
  159. package/dist/esm/components/text-input/text-input.styles.js +1 -1
  160. package/dist/esm/components/tooltip/tooltip.js +23 -0
  161. package/dist/esm/components/tooltip/tooltip.js.map +1 -1
  162. package/dist/esm/components/tooltip/tooltip.template.js +16 -0
  163. package/dist/esm/components/tooltip/tooltip.template.js.map +1 -0
  164. package/dist/esm/components/tree/tree.js +38 -1
  165. package/dist/esm/components/tree/tree.js.map +1 -1
  166. package/dist/esm/components/tree-item/index.js +2 -1
  167. package/dist/esm/components/tree-item/index.js.map +1 -1
  168. package/dist/esm/components/tree-item/tree-item.definition.js +4 -3
  169. package/dist/esm/components/tree-item/tree-item.definition.js.map +1 -1
  170. package/dist/esm/components/tree-item/tree-item.styles.js +9 -0
  171. package/dist/esm/components/tree-item/tree-item.styles.js.map +1 -0
  172. package/dist/esm/components/tree-item/tree-item.template.js +6 -0
  173. package/dist/esm/components/tree-item/tree-item.template.js.map +1 -0
  174. package/dist/esm/components/wizard/wizard.js +3 -3
  175. package/dist/esm/components/wizard/wizard.js.map +1 -1
  176. package/dist/esm/components/wizard/wizard.styles.js +1 -1
  177. package/dist/esm/components/wizard-panel/wizard-panel.styles.js +1 -1
  178. package/dist/esm/components/wizard-step/wizard-step.js +1 -1
  179. package/dist/esm/components/wizard-step/wizard-step.js.map +1 -1
  180. package/dist/esm/components/wizard-step/wizard-step.styles.js +1 -1
  181. package/dist/esm/index.js +17 -7
  182. package/dist/esm/index.js.map +1 -1
  183. package/dist/esm/util/accessibility-utilities.js +40 -0
  184. package/dist/esm/util/accessibility-utilities.js.map +1 -0
  185. package/dist/esm/util/attribute-utilities.js +12 -0
  186. package/dist/esm/util/attribute-utilities.js.map +1 -0
  187. package/dist/esm/util/debounce.js.map +1 -0
  188. package/dist/esm/util/debug.js +74 -0
  189. package/dist/esm/util/debug.js.map +1 -0
  190. package/dist/esm/util/direction.js +240 -8
  191. package/dist/esm/util/direction.js.map +1 -1
  192. package/dist/esm/util/dom.js +3 -0
  193. package/dist/esm/util/dom.js.map +1 -0
  194. package/dist/esm/util/element-internal-mocks.js +114 -0
  195. package/dist/esm/util/element-internal-mocks.js.map +1 -0
  196. package/dist/esm/util/focus-management.js +247 -0
  197. package/dist/esm/util/focus-management.js.map +1 -0
  198. package/dist/esm/util/hash-utilities.js +12 -0
  199. package/dist/esm/util/hash-utilities.js.map +1 -0
  200. package/dist/esm/util/index.js +13 -6
  201. package/dist/esm/util/index.js.map +1 -1
  202. package/dist/esm/util/positioning/flexible-position-strategy.js +232 -0
  203. package/dist/esm/util/positioning/flexible-position-strategy.js.map +1 -0
  204. package/dist/esm/util/positioning/index.js +10 -0
  205. package/dist/esm/util/positioning/index.js.map +1 -0
  206. package/dist/esm/util/positioning/position-calculator.js +196 -0
  207. package/dist/esm/util/positioning/position-calculator.js.map +1 -0
  208. package/dist/esm/util/positioning/types.js +30 -0
  209. package/dist/esm/util/positioning/types.js.map +1 -0
  210. package/dist/index.d.ts +697 -223
  211. package/dist/index.d.ts.map +1 -1
  212. package/dist/index.js +2365 -1215
  213. package/dist/index.js.map +1 -1
  214. package/dist/index.min.js +109 -110
  215. package/dist/index.min.js.map +1 -1
  216. package/package.json +6 -8
  217. package/dist/component-utilities.js +0 -43
  218. package/dist/dts/components/popover/positioning.d.ts +0 -51
  219. package/dist/dts/components/popover/positioning.d.ts.map +0 -1
  220. package/dist/dts/util/positioning.d.ts +0 -129
  221. package/dist/dts/util/positioning.d.ts.map +0 -1
  222. package/dist/dts/utils/debounce.d.ts.map +0 -1
  223. package/dist/esm/component-utilities.js +0 -13
  224. package/dist/esm/components/popover/positioning.js +0 -189
  225. package/dist/esm/components/popover/positioning.js.map +0 -1
  226. package/dist/esm/util/positioning.js +0 -130
  227. package/dist/esm/util/positioning.js.map +0 -1
  228. package/dist/esm/utils/debounce.js.map +0 -1
  229. /package/dist/dts/{utils → util}/debounce.d.ts +0 -0
  230. /package/dist/esm/{utils → util}/debounce.js +0 -0
package/dist/index.d.ts CHANGED
@@ -2,9 +2,10 @@ import * as _microsoft_fast_element from '@microsoft/fast-element';
2
2
  import { FASTElement, ElementViewTemplate, ElementStyles, HTMLDirective, SyntheticViewTemplate, CaptureType, ElementsFilter } from '@microsoft/fast-element';
3
3
  import * as _fluentui_web_components from '@fluentui/web-components';
4
4
  import { BaseButton, Button as Button$1, AccordionItem as AccordionItem$1, Accordion as Accordion$1, Link as Link$1, Avatar as Avatar$1, Badge as Badge$1, Checkbox as Checkbox$1, CounterBadge as CounterBadge$1, Dialog as Dialog$1, DialogBody as DialogBody$1, Divider as Divider$1, Drawer as Drawer$1, DrawerBody as DrawerBody$1, Dropdown as Dropdown$1, DropdownOption as DropdownOption$1, Listbox as Listbox$1, Field as Field$1, SlottableInput as SlottableInput$1, Image as Image$1, Label as Label$1, AnchorButton as AnchorButton$1, MessageBar as MessageBar$1, MenuButton as MenuButton$1, ProgressBar as ProgressBar$1, RadioGroup as RadioGroup$1, Radio as Radio$1, RatingDisplay as RatingDisplay$1, StartEndOptions, StartEnd, Slider as Slider$1, Spinner as Spinner$1, Switch as Switch$1, Tab as Tab$1, Tablist as Tablist$1, TextArea as TextArea$1, TextAreaAppearance, Text as Text$1, Tree as Tree$1, TreeItem as TreeItem$1, ToggleButton as ToggleButton$1, Tooltip as Tooltip$1 } from '@fluentui/web-components';
5
- export { AnchorButtonTemplate, AvatarStyles, AvatarTemplate, BadgeStyles, BadgeTemplate, BaseAccordionItem, BaseAnchor, BaseAvatar, BaseButton, BaseCheckbox, BaseDivider, BaseField, BaseProgressBar, BaseRatingDisplay, BaseSpinner, BaseTablist, BaseTextArea, BaseTextInput, CheckboxOptions, CheckboxStyles, CheckboxTemplate, DialogBodyStyles, DialogBodyTemplate, DialogTemplate, ListboxStyles, ListboxTemplate, MenuButtonOptions, MessageBarIntent, MessageBarLayout, MessageBarShape, MessageBarStyles, MessageBarTemplate, SliderConfiguration, SliderOptions, SwitchStyles, SwitchTemplate, TabOptions, TextAreaStyles, TextAreaTemplate, TreeItemStyles, TreeItemTemplate, TreeStyles, TreeTemplate, isDropdownOption, isListbox } from '@fluentui/web-components';
5
+ export { AnchorButtonTemplate, AvatarStyles, AvatarTemplate, BadgeStyles, BadgeTemplate, BaseAccordionItem, BaseAnchor, BaseAvatar, BaseButton, BaseCheckbox, BaseDivider, BaseField, BaseProgressBar, BaseRatingDisplay, BaseSpinner, BaseTablist, BaseTextArea, BaseTextInput, CheckboxOptions, CheckboxStyles, CheckboxTemplate, DialogBodyStyles, DialogBodyTemplate, DialogTemplate, ListboxStyles, ListboxTemplate, MenuButtonOptions, MessageBarIntent, MessageBarLayout, MessageBarShape, MessageBarStyles, MessageBarTemplate, SliderConfiguration, SliderOptions, SwitchStyles, SwitchTemplate, TabOptions, TextAreaStyles, TextAreaTemplate, TreeStyles, TreeTemplate, isDropdownOption, isListbox } from '@fluentui/web-components';
6
6
  import { ValuesOf as ValuesOf$1 } from '@microsoft/fast-foundation';
7
7
  export { Theme, fabricDarkTheme, fabricLightTheme, setTheme, sizeHorizontalL, sizeHorizontalM, sizeHorizontalMNudge, sizeHorizontalNone, sizeHorizontalS, sizeHorizontalSNudge, sizeHorizontalXL, sizeHorizontalXS, sizeHorizontalXXL, sizeHorizontalXXS, sizeHorizontalXXXL, sizeVerticalL, sizeVerticalM, sizeVerticalMNudge, sizeVerticalNone, sizeVerticalS, sizeVerticalSNudge, sizeVerticalXL, sizeVerticalXS, sizeVerticalXXL, sizeVerticalXXS, sizeVerticalXXXL, webDarkTheme, webLightTheme } from '@fabric-msft/theme';
8
+ import { Direction } from '@microsoft/fast-web-utilities';
8
9
 
9
10
  /**
10
11
  * Helper for enumerating a type from a const object
@@ -93,7 +94,7 @@ declare class AccordionMenu extends FASTElement {
93
94
  * @param prev - The previous value.
94
95
  * @param next - The next value.
95
96
  */
96
- expandmodeChanged(prev: AccordionMenuExpandMode, next: AccordionMenuExpandMode): void;
97
+ expandmodeChanged(_prev: AccordionMenuExpandMode, next: AccordionMenuExpandMode): void;
97
98
  /**
98
99
  * The slotted accordion menu items.
99
100
  * @public
@@ -136,9 +137,9 @@ declare class AccordionMenu extends FASTElement {
136
137
  private removeItemListeners;
137
138
  }
138
139
 
139
- declare const template$c: ElementViewTemplate<AccordionMenu>;
140
+ declare const template$d: ElementViewTemplate<AccordionMenu>;
140
141
 
141
- declare const styles$f: _microsoft_fast_element.ElementStyles;
142
+ declare const styles$g: _microsoft_fast_element.ElementStyles;
142
143
 
143
144
  /**
144
145
  *
@@ -268,7 +269,7 @@ declare class MenuList extends FASTElement {
268
269
  /**
269
270
  * Method for Observable changes to the hidden attribute of child elements
270
271
  */
271
- handleChange(source: unknown, propertyName: string): void;
272
+ handleChange(_source: unknown, propertyName: string): void;
272
273
  /**
273
274
  * Handle change from child MenuItem element and set radio group behavior
274
275
  */
@@ -397,7 +398,7 @@ declare class AccordionMenuPanel extends FASTElement {
397
398
  * @param prev - previous value
398
399
  * @param next - next value
399
400
  */
400
- disabledChanged(prev: boolean, next: boolean): void;
401
+ disabledChanged(_prev: boolean, next: boolean): void;
401
402
  /**
402
403
  * The item ID
403
404
  *
@@ -433,7 +434,7 @@ declare class AccordionMenuPanel extends FASTElement {
433
434
  * @param prev - previous value
434
435
  * @param next - next value
435
436
  */
436
- blockChanged(prev: boolean, next: boolean): void;
437
+ blockChanged(_prev: boolean, next: boolean): void;
437
438
  /**
438
439
  * Sets expand and collapsed icon position.
439
440
  *
@@ -454,9 +455,9 @@ declare class AccordionMenuPanel extends FASTElement {
454
455
  * The template for the accordion menu panel component.
455
456
  * @public
456
457
  */
457
- declare const template$b: ElementViewTemplate<AccordionMenuPanel>;
458
+ declare const template$c: ElementViewTemplate<AccordionMenuPanel>;
458
459
 
459
- declare const styles$e: _microsoft_fast_element.ElementStyles;
460
+ declare const styles$f: _microsoft_fast_element.ElementStyles;
460
461
 
461
462
  declare const definition$10: _microsoft_fast_element.FASTElementDefinition<typeof AccordionMenuPanel>;
462
463
 
@@ -811,9 +812,9 @@ declare const definition$$: _microsoft_fast_element.FASTElementDefinition<typeof
811
812
  /** Card styles
812
813
  * @public
813
814
  */
814
- declare const styles$d: _microsoft_fast_element.ElementStyles;
815
+ declare const styles$e: _microsoft_fast_element.ElementStyles;
815
816
 
816
- declare const template$a: ElementViewTemplate<Card>;
817
+ declare const template$b: ElementViewTemplate<Card>;
817
818
 
818
819
  /**
819
820
  * CardFooter
@@ -1195,9 +1196,9 @@ declare class Carousel extends FASTElement {
1195
1196
  */
1196
1197
  declare const definition$X: _microsoft_fast_element.FASTElementDefinition<typeof Carousel>;
1197
1198
 
1198
- declare const styles$c: _microsoft_fast_element.ElementStyles;
1199
+ declare const styles$d: _microsoft_fast_element.ElementStyles;
1199
1200
 
1200
- declare const template$9: ElementViewTemplate<Carousel>;
1201
+ declare const template$a: ElementViewTemplate<Carousel>;
1201
1202
 
1202
1203
  /** Appearance values for {@link Button}. */
1203
1204
  declare const ButtonAppearances: {
@@ -1481,7 +1482,7 @@ declare class FilterPill extends Button {
1481
1482
  * @param {boolean} prev - The previous value of the iconOnly attribute.
1482
1483
  * @param {boolean} next - The new value of the iconOnly attribute.
1483
1484
  */
1484
- iconOnlyChanged(prev: boolean, next: boolean): void;
1485
+ iconOnlyChanged(_prev: boolean, next: boolean): void;
1485
1486
  /**
1486
1487
  * Handles changes to the appearance attribute.
1487
1488
  * @param {FilterPillAppearance | undefined} prev - The previous value of the appearance attribute.
@@ -2211,8 +2212,12 @@ declare const MultiViewGroupPositions: {
2211
2212
  type MultiViewGroupPosition = ValuesOf<typeof MultiViewGroupPositions>;
2212
2213
 
2213
2214
  /**
2214
- * Collision edge values for positioning calculations
2215
- * @public
2215
+ * Core types for Angular CDK-inspired positioning engine.
2216
+ * Based on @angular/cdk/overlay positioning strategy.
2217
+ */
2218
+
2219
+ /**
2220
+ * Collision edges for boundary detection.
2216
2221
  */
2217
2222
  declare const CollisionEdges: {
2218
2223
  readonly top: "top";
@@ -2220,10 +2225,6 @@ declare const CollisionEdges: {
2220
2225
  readonly bottom: "bottom";
2221
2226
  readonly left: "left";
2222
2227
  };
2223
- /**
2224
- * Collision edge type
2225
- * @public
2226
- */
2227
2228
  type CollisionEdge = ValuesOf<typeof CollisionEdges>;
2228
2229
 
2229
2230
  declare const PositioningShorthands: {
@@ -2302,7 +2303,7 @@ declare const PopoverEventNames: {
2302
2303
  * @attr {PopoverMode} mode - The mode of the popover. In auto mode, the popover closes when the user clicks outside of it. In manual mode, the popover stays open.
2303
2304
  * @attr {PositioningShorthandValues} position - The position of the popover.
2304
2305
  * @attr {string} target-id - The ID of the target element.
2305
- * @attr {PopoverRepositionMode} reposition-mode - The mode for repositioning the popover.
2306
+ * @attr {PopoverRepositionMode} reposition-mode - Controls how the `FlexiblePositionStrategy` selects a fallback when the preferred `position` overflows the boundary. `"flip"` tries only the geometrically opposite position (default). `"auto"` evaluates all 12 positions and picks the one with the most available space. `"none"` disables automatic repositioning.
2306
2307
  * @attr {boolean} open - Whether the popover is open.
2307
2308
  * @attr {number} transition-duration - The duration of the transition of the popover. The default value is 100.
2308
2309
  * @attr {number} transition-delay - The delay of the transition of the popover. The default value is 0.
@@ -2312,10 +2313,9 @@ declare const PopoverEventNames: {
2312
2313
  * @prop {ElementStyles | undefined} styles - Stores the CSS variables required for animations.
2313
2314
  * @prop {boolean} transitionComplete - Indicates if the transition is complete.
2314
2315
  * @prop {PopoverRepositionMode} repositionMode - The mode for repositioning the popover.
2315
- * @prop {Array<PositioningShorthandValues>} openPositions - The array of open positions based on the collision edge.
2316
2316
  * @prop {HTMLPopoverElement | undefined} popoverReference - The reference to the popover element.
2317
2317
  * @prop {string | undefined} popoverRole - An optional user-defined role for the popover floating content element.
2318
- * @prop {HTMLElement | undefined} overflowBoundary - The boundary container element of the popover for repositioning.
2318
+ * @prop {HTMLElement | undefined} overflowBoundary - Optional scrolling container used as the collision boundary by `FlexiblePositionStrategy`. When set, overflow is measured against this element instead of the document viewport, and its `scroll` events trigger repositioning. Only relevant when `reposition-mode` is not `"none"`.
2319
2319
  *
2320
2320
  * @slot popover-trigger - Slot for the popover trigger element.
2321
2321
  * @slot popover-content - Slot for the popover content.
@@ -2392,6 +2392,13 @@ declare class Popover extends FASTElement {
2392
2392
  * @attr
2393
2393
  */
2394
2394
  position: PositioningShorthandValues;
2395
+ /**
2396
+ * Handles changes to the public `position` attribute.
2397
+ * Updates the positioning strategy and triggers a reposition if the
2398
+ * popover is currently open, without closing/reopening.
2399
+ * @public
2400
+ */
2401
+ positionChanged(): void;
2395
2402
  /**
2396
2403
  * ## targetId
2397
2404
  *
@@ -2413,9 +2420,9 @@ declare class Popover extends FASTElement {
2413
2420
  /**
2414
2421
  * Handles changes to the anchor references.
2415
2422
  * Adds anchor attributes and event listeners when the anchor is added to the DOM.
2416
- * @public
2423
+ * @internal
2417
2424
  */
2418
- anchorReferencesChanged(): void;
2425
+ private anchorReferencesChanged;
2419
2426
  /**
2420
2427
  * ## styles
2421
2428
  * @summary used in the class for storing the css variables required for animations
@@ -2473,7 +2480,14 @@ declare class Popover extends FASTElement {
2473
2480
  */
2474
2481
  removeTransitionStyles(): void;
2475
2482
  /**
2476
- * The mode for repositioning the popover.
2483
+ * The mode for repositioning the popover via `FlexiblePositionStrategy`.
2484
+ *
2485
+ * - `"flip"` (default) — tries only the geometrically opposite position
2486
+ * (e.g. `above-center` ↔ `below-center`) as a fallback.
2487
+ * - `"auto"` — evaluates all 12 `PositioningShorthand` positions and picks
2488
+ * the one with the most available space.
2489
+ * - `"none"` — disables automatic repositioning; the popover stays at the
2490
+ * declared `position`.
2477
2491
  * @public
2478
2492
  * @type {PopoverRepositionMode}
2479
2493
  * @attr reposition-mode
@@ -2487,22 +2501,6 @@ declare class Popover extends FASTElement {
2487
2501
  * @public
2488
2502
  */
2489
2503
  repositionModeChanged(): void;
2490
- /**
2491
- * ## openPositions
2492
- *
2493
- * @summary The array of open positions based on the collision edge.
2494
- *
2495
- * @public
2496
- * @type {Array<PositioningShorthandValues>}
2497
- * @observable
2498
- */
2499
- openPositions: Array<PositioningShorthandValues>;
2500
- /**
2501
- * The original position of the popover before repositioning.
2502
- * @private
2503
- * @type {PositioningShorthandValues | undefined}
2504
- */
2505
- private originalPopoverPosition;
2506
2504
  /**
2507
2505
  * ## open
2508
2506
  *
@@ -2534,7 +2532,11 @@ declare class Popover extends FASTElement {
2534
2532
  * @observable
2535
2533
  */
2536
2534
  popoverReference: HTMLPopoverElement | undefined;
2537
- popoverReferenceChanged(): void;
2535
+ /**
2536
+ * Handles changes to the popover reference element.
2537
+ * @internal
2538
+ */
2539
+ private popoverReferenceChanged;
2538
2540
  /**
2539
2541
  * ## popoverRole
2540
2542
  *
@@ -2550,7 +2552,12 @@ declare class Popover extends FASTElement {
2550
2552
  */
2551
2553
  private initializeTargetId;
2552
2554
  /**
2553
- * The boundary container element of the popover for repositioning.
2555
+ * Optional scrolling container used as the collision boundary by
2556
+ * `FlexiblePositionStrategy`.
2557
+ *
2558
+ * When set, the strategy measures overflow against this element instead of
2559
+ * the document viewport and listens for its `scroll` events to trigger
2560
+ * repositioning. Only relevant when `reposition-mode` is not `"none"`.
2554
2561
  * @public
2555
2562
  * @type {HTMLElement | undefined}
2556
2563
  * @observable
@@ -2613,11 +2620,6 @@ declare class Popover extends FASTElement {
2613
2620
  * @private
2614
2621
  */
2615
2622
  private removeMouseOverEventListeners;
2616
- /**
2617
- * Updates the popover position.
2618
- * @private
2619
- */
2620
- private updatePopoverPosition;
2621
2623
  /**
2622
2624
  * ## handleWindowChanges
2623
2625
  *
@@ -2667,28 +2669,14 @@ declare class Popover extends FASTElement {
2667
2669
  */
2668
2670
  private removeOverlayEventListeners;
2669
2671
  /**
2670
- * ## intersectionObserver
2671
- *
2672
- * @summary used for tracking the overflow / collision of the popover to adjacent edges on ui changes. The intersection observer for tracking overflow.
2672
+ * Checks for overflow and repositions the popover if needed.
2673
+ * Writes the resolved position to a `data-position` attribute on
2674
+ * the internal `.popover` element so shadow-DOM CSS can follow
2675
+ * the repositioned placement without mutating the public `position`
2676
+ * attribute.
2673
2677
  * @private
2674
- * @type {IntersectionObserver | undefined}
2675
2678
  */
2676
- private intersectionObserver;
2677
- /**
2678
- * ## createOverflowHandler
2679
- *
2680
- * @summary handles the overflow of the popover based on the overflowBoundary. Calls handleOverflow when the popover collides with its container or user defined overflowed boundary. Creates the overflow handler based on the overflow boundary.
2681
- * @private
2682
- */
2683
- private createOverflowHandler;
2684
- /**
2685
- * ## handleOverflow
2686
- *
2687
- * @summary Repositions the popover when it collides with its container or user defined overflowed boundary. Handles overflow collisions with the popover. Repositions the popover when it collides with its container or defined boundary. Called by the intersectionObserver in createOverflowHandler.
2688
- * @private
2689
- * @param {Array<IntersectionObserverEntry>} entries - The entries to observe.
2690
- */
2691
- private handleOverflow;
2679
+ private checkOverflow;
2692
2680
  /**
2693
2681
  * ## addRepositioningHandlers
2694
2682
  *
@@ -2697,9 +2685,13 @@ declare class Popover extends FASTElement {
2697
2685
  */
2698
2686
  addRepositioningHandlers(): void;
2699
2687
  /**
2700
- * ## addPositioningManager
2688
+ * Creates a new {@link Positioning} instance that wraps `FlexiblePositionStrategy`
2689
+ * for this popover.
2701
2690
  *
2702
- * @summary Creates a new positioning manager for the popover. The positioning manager is used to calculate the position of the popover based on the anchor and the popover's collision with the window or overflowBoundary. Creates the positioning manager for the popover.
2691
+ * Called every time the popover opens (`openChanged`). Passes the current
2692
+ * `repositionMode`, anchor reference, popover element, optional
2693
+ * `overflowBoundary`, and the `beak` flag so beak-gap offsets are applied
2694
+ * to every candidate position.
2703
2695
  * @public
2704
2696
  */
2705
2697
  createPositioningManager(): void;
@@ -2709,24 +2701,12 @@ declare class Popover extends FASTElement {
2709
2701
  */
2710
2702
  removeEventListeners(): void;
2711
2703
  /**
2712
- * ## releasePositions
2713
- *
2714
- * @summary cleans the positions that are not allowed. Releases the open positions for the popover. Cleans the positions that are not allowed.
2715
- * @private
2716
- */
2717
- private releasePositions;
2718
- /**
2719
- * ## repositionPopover
2704
+ * Schedules an overflow check via `FlexiblePositionStrategy` on the next
2705
+ * animation frame using `Updates.enqueue()`.
2720
2706
  *
2721
- * @summary Updates the position of the popover based on popover collisions. Repositions the popover based on collisions.
2722
- * @private
2723
- * @param {Array<PositioningShorthandValues>} openPositions - The array of open positions.
2724
- */
2725
- private repositionPopover;
2726
- /**
2727
- * ## observePopoverOverflow
2728
- *
2729
- * @summary Disconnects and re-observes the popoverReference for overflow. This is used to reposition the popover in the event that it collides with its container or user defined overflowed boundary. Disconnecting is required to reset the baseline for the intersection observer. This method will be called repeatedly on ui changes like resizing the window or scrolling the overflowBoundary. Observes the popover for overflow. Disconnects and re-observes the popoverReference for overflow.
2707
+ * Coordinates are applied before the popover becomes visible, preventing a
2708
+ * layout flash on open. Also called on every resize and scroll event while
2709
+ * the popover is open.
2730
2710
  * @private
2731
2711
  */
2732
2712
  private observePopoverOverflow;
@@ -2735,9 +2715,9 @@ declare class Popover extends FASTElement {
2735
2715
 
2736
2716
  declare const definition$Q: _microsoft_fast_element.FASTElementDefinition<typeof Popover>;
2737
2717
 
2738
- declare const template$8: ElementViewTemplate<Popover>;
2718
+ declare const template$9: ElementViewTemplate<Popover>;
2739
2719
 
2740
- declare const styles$b: _microsoft_fast_element.ElementStyles;
2720
+ declare const styles$c: _microsoft_fast_element.ElementStyles;
2741
2721
 
2742
2722
  /**
2743
2723
  * SvgIcon
@@ -3118,7 +3098,7 @@ declare class Table extends FASTElement {
3118
3098
  * @param {string} columnKey - The key of the column to sort by.
3119
3099
  * @public
3120
3100
  */
3121
- sortByColumn(event: Event, columnKey: string): void;
3101
+ sortByColumn(_event: Event, columnKey: string): void;
3122
3102
  /**
3123
3103
  * Creates an SVG icon element from an SVG string.
3124
3104
  * @param {typeof UP_ARROW | typeof DOWN_ARROW} icon - The SVG string to convert.
@@ -3207,9 +3187,9 @@ declare class Table extends FASTElement {
3207
3187
 
3208
3188
  declare const definition$O: _microsoft_fast_element.FASTElementDefinition<typeof Table>;
3209
3189
 
3210
- declare const template$7: ElementViewTemplate<Table>;
3190
+ declare const template$8: ElementViewTemplate<Table>;
3211
3191
 
3212
- declare const styles$a: _microsoft_fast_element.ElementStyles;
3192
+ declare const styles$b: _microsoft_fast_element.ElementStyles;
3213
3193
 
3214
3194
  /**
3215
3195
  * Simple Table
@@ -3332,9 +3312,9 @@ type TableCellSize = ValuesOf<typeof TableCellSizes>;
3332
3312
  */
3333
3313
  declare const definition$M: _microsoft_fast_element.FASTElementDefinition<typeof TableCell>;
3334
3314
 
3335
- declare const styles$9: _microsoft_fast_element.ElementStyles;
3315
+ declare const styles$a: _microsoft_fast_element.ElementStyles;
3336
3316
 
3337
- declare const template$6: ElementViewTemplate<TableCell>;
3317
+ declare const template$7: ElementViewTemplate<TableCell>;
3338
3318
 
3339
3319
  /** Size values for {@link Tag}. */
3340
3320
  declare const TagSizes: {
@@ -4114,7 +4094,7 @@ declare class WizardStep extends FASTElement {
4114
4094
  * Toggles the active state of the step.
4115
4095
  * @public
4116
4096
  */
4117
- toggleActive(event?: Event): void;
4097
+ toggleActive(_event?: Event): void;
4118
4098
  /**
4119
4099
  * Sets the step to a complete state.
4120
4100
  * @public
@@ -4353,7 +4333,7 @@ declare class Wizard extends FASTElement {
4353
4333
  * @param {string} oldValue - The previous value of the active ID.
4354
4334
  * @param {string} newValue - The new value of the active ID.
4355
4335
  */
4356
- activeidChanged(oldValue: string, newValue: string): void;
4336
+ activeidChanged(oldValue: string, _newValue: string): void;
4357
4337
  /**
4358
4338
  * Handles changes to the slotted panels.
4359
4339
  * @public
@@ -5325,7 +5305,7 @@ declare const BadgeSize: {
5325
5305
  */
5326
5306
  declare const definition$C: _microsoft_fast_element.FASTElementDefinition<typeof Badge>;
5327
5307
 
5328
- declare const styles$8: _microsoft_fast_element.ElementStyles;
5308
+ declare const styles$9: _microsoft_fast_element.ElementStyles;
5329
5309
 
5330
5310
  /**
5331
5311
  *
@@ -5542,7 +5522,7 @@ declare const definition$z: _microsoft_fast_element.FASTElementDefinition<typeof
5542
5522
  declare class Dialog extends Dialog$1 {
5543
5523
  }
5544
5524
 
5545
- declare const styles$7: _microsoft_fast_element.ElementStyles;
5525
+ declare const styles$8: _microsoft_fast_element.ElementStyles;
5546
5526
 
5547
5527
  /**
5548
5528
  * The Fabric Dialog component.
@@ -5689,13 +5669,13 @@ declare const DividerRoles: {
5689
5669
  */
5690
5670
  type DividerRole = ValuesOf<typeof DividerRoles>;
5691
5671
 
5692
- declare const styles$6: _microsoft_fast_element.ElementStyles;
5672
+ declare const styles$7: _microsoft_fast_element.ElementStyles;
5693
5673
 
5694
5674
  /**
5695
5675
  * Template for the {@link Divider} component.
5696
5676
  * @public
5697
5677
  */
5698
- declare const template$5: _microsoft_fast_element.ElementViewTemplate<_fluentui_web_components.Divider, any>;
5678
+ declare const template$6: _microsoft_fast_element.ElementViewTemplate<_fluentui_web_components.Divider, any>;
5699
5679
 
5700
5680
  /**
5701
5681
  * The Fabric Divider component.
@@ -6083,7 +6063,7 @@ declare class Listbox extends Listbox$1 {
6083
6063
  * @param prev - the previous multiple value
6084
6064
  * @param next - the current multiple value
6085
6065
  */
6086
- multipleChanged(prev: boolean | undefined, next: boolean | undefined): void;
6066
+ multipleChanged(_prev: boolean | undefined, next: boolean | undefined): void;
6087
6067
  }
6088
6068
 
6089
6069
  /**
@@ -6129,9 +6109,40 @@ declare const definition$r: _microsoft_fast_element.FASTElementDefinition<typeof
6129
6109
  * @public
6130
6110
  */
6131
6111
  declare class Field extends Field$1 {
6112
+ /**
6113
+ * Sets ARIA and form-related attributes on slotted label elements.
6114
+ * Extends the base implementation to support custom label elements (e.g., fabric-label)
6115
+ * in addition to native HTMLLabelElement.
6116
+ *
6117
+ * @remarks
6118
+ * The base FluentUI implementation only handles native `<label>` elements.
6119
+ * This method ensures that custom elements like `<fabric-label>` are properly
6120
+ * associated with the input via `aria-labelledby`, enabling screen reader support.
6121
+ *
6122
+ * @internal
6123
+ */
6124
+ private setLabelPropertiesExtended;
6125
+ /**
6126
+ * Updates attributes on the slotted label elements.
6127
+ * Overrides base to add support for custom label elements.
6128
+ *
6129
+ * @param prev - the previous list of slotted label elements
6130
+ * @param next - the current list of slotted label elements
6131
+ * @internal
6132
+ */
6133
+ labelSlotChanged(prev: Node[], next: Node[]): void;
6134
+ /**
6135
+ * Updates the field's states and label properties when the assigned input changes.
6136
+ * Overrides base to add support for custom label elements.
6137
+ *
6138
+ * @param prev - the previous input
6139
+ * @param next - the current input
6140
+ * @internal
6141
+ */
6142
+ inputChanged(prev: SlottableInput$1 | undefined, next: SlottableInput$1 | undefined): void;
6132
6143
  }
6133
6144
 
6134
- declare const styles$5: _microsoft_fast_element.ElementStyles;
6145
+ declare const styles$6: _microsoft_fast_element.ElementStyles;
6135
6146
 
6136
6147
  /**
6137
6148
  * Label position values exposed by {@link Field}.
@@ -6697,7 +6708,7 @@ declare class MenuItem extends FASTElement {
6697
6708
  * @param prev - the previous state
6698
6709
  * @param next - the next state
6699
6710
  */
6700
- disabledChanged(prev: boolean | undefined, next: boolean | undefined): void;
6711
+ disabledChanged(_prev: boolean | undefined, next: boolean | undefined): void;
6701
6712
  /**
6702
6713
  * The role of the element.
6703
6714
  *
@@ -6711,7 +6722,7 @@ declare class MenuItem extends FASTElement {
6711
6722
  * @param prev - the previous state
6712
6723
  * @param next - the next state
6713
6724
  */
6714
- roleChanged(prev: MenuItemRole | undefined, next: MenuItemRole | undefined): void;
6725
+ roleChanged(_prev: MenuItemRole | undefined, next: MenuItemRole | undefined): void;
6715
6726
  /**
6716
6727
  * The checked value of the element.
6717
6728
  *
@@ -6725,7 +6736,7 @@ declare class MenuItem extends FASTElement {
6725
6736
  * @param prev - the previous state
6726
6737
  * @param next - the next state
6727
6738
  */
6728
- protected checkedChanged(prev: boolean, next: boolean): void;
6739
+ protected checkedChanged(_prev: boolean, next: boolean): void;
6729
6740
  /**
6730
6741
  * The hidden attribute.
6731
6742
  *
@@ -6745,7 +6756,7 @@ declare class MenuItem extends FASTElement {
6745
6756
  *
6746
6757
  * @internal
6747
6758
  */
6748
- protected slottedSubmenuChanged(prev: HTMLElement[] | undefined, next: HTMLElement[]): void;
6759
+ protected slottedSubmenuChanged(_prev: HTMLElement[] | undefined, next: HTMLElement[]): void;
6749
6760
  /**
6750
6761
  * @public
6751
6762
  */
@@ -6829,9 +6840,9 @@ type MenuItemColumnCount = 0 | 1 | 2;
6829
6840
  /** MenuItem styles
6830
6841
  * @public
6831
6842
  */
6832
- declare const styles$4: _microsoft_fast_element.ElementStyles;
6843
+ declare const styles$5: _microsoft_fast_element.ElementStyles;
6833
6844
 
6834
- declare const template$4: ElementViewTemplate<MenuItem>;
6845
+ declare const template$5: ElementViewTemplate<MenuItem>;
6835
6846
 
6836
6847
  /**
6837
6848
  *
@@ -6844,9 +6855,9 @@ declare const definition$k: _microsoft_fast_element.FASTElementDefinition<typeof
6844
6855
  /** MenuList styles
6845
6856
  * @public
6846
6857
  */
6847
- declare const styles$3: _microsoft_fast_element.ElementStyles;
6858
+ declare const styles$4: _microsoft_fast_element.ElementStyles;
6848
6859
 
6849
- declare const template$3: ElementViewTemplate<MenuList>;
6860
+ declare const template$4: ElementViewTemplate<MenuList>;
6850
6861
 
6851
6862
  /**
6852
6863
  *
@@ -6887,6 +6898,12 @@ type MenuRepositionMode = ValuesOf<typeof MenuRepositionModes>;
6887
6898
  * Menu
6888
6899
  * @summary A Menu component that provides an interactive menu interface with support for various trigger and open behaviors.
6889
6900
  *
6901
+ * When `reposition-mode="auto"` is set the component creates a {@link MenuPositioning} manager backed by
6902
+ * `FlexiblePositionStrategy`. On every open/resize/scroll cycle the strategy measures available space, picks
6903
+ * the best-fitting position from the preferred position plus its fallbacks, and resizes the menu if there is
6904
+ * not enough available space. Supply `overflowBoundary` to scope collision detection to a specific scrolling
6905
+ * container instead of the viewport.
6906
+ *
6890
6907
  * @example
6891
6908
  * ```html
6892
6909
  * <fabric-menu open-on-hover="true" open-on-context="true" close-on-scroll="true" persist-on-item-click="true">
@@ -6904,8 +6921,10 @@ type MenuRepositionMode = ValuesOf<typeof MenuRepositionModes>;
6904
6921
  * @attr {boolean | undefined} close-on-scroll - Determines if the menu should close on scroll.
6905
6922
  * @attr {boolean | undefined} persist-on-item-click - Determines if the menu open state should persist on click of a menu item.
6906
6923
  * @attr {boolean | undefined} split - Determines if the menu is in split state (for split button pattern).
6907
- * @attr {MenuPosition | undefined} menu-position - Determines whether the menu list is above or below the trigger.
6908
- * @attr {MenuRepositionMode | undefined} reposition-mode - The mode for repositioning the menu. Default is "none".
6924
+ * @attr {MenuPosition | undefined} menu-position - Determines whether the menu list is above or below the trigger. Defaults to `"below"`.
6925
+ * @attr {MenuRepositionMode | undefined} reposition-mode - Controls JS-based repositioning. `"auto"` enables
6926
+ * `FlexiblePositionStrategy` which detects collisions and flips the menu to the best-fitting position on
6927
+ * every resize/scroll cycle. `"none"` (default) disables JS repositioning and relies on CSS anchored positioning.
6909
6928
  *
6910
6929
  * @prop {boolean | undefined} openOnHover - Determines if the menu should open on hover.
6911
6930
  * @prop {boolean | undefined} openOnContext - Determines if the menu should open on right click.
@@ -6914,9 +6933,12 @@ type MenuRepositionMode = ValuesOf<typeof MenuRepositionModes>;
6914
6933
  * @prop {boolean | undefined} split - Determines if the menu is in split state.
6915
6934
  * @prop {MenuList[]} slottedMenuList - Holds the slotted menu list.
6916
6935
  * @prop {HTMLElement[]} slottedTriggers - Holds the slotted triggers.
6917
- * @prop {MenuPosition | undefined} menuPosition - Determines whether the menu list is above or below the trigger.
6918
- * @prop {MenuRepositionMode | undefined} repositionMode - The mode for repositioning the menu.
6919
- * @prop {HTMLElement | undefined} overflowBoundary - The overflow boundary element reference.
6936
+ * @prop {MenuPosition | undefined} menuPosition - Reflects the active resolved position (`"above"` or `"below"`). May
6937
+ * differ from the authored `menu-position` attribute when `reposition-mode="auto"` has flipped the menu.
6938
+ * @prop {MenuRepositionMode | undefined} repositionMode - The active repositioning mode (`"auto"` | `"none"`).
6939
+ * @prop {HTMLElement | undefined} overflowBoundary - An optional scrolling container used by the
6940
+ * `FlexiblePositionStrategy` as the collision boundary instead of the viewport. Only relevant when
6941
+ * `reposition-mode="auto"`.
6920
6942
  *
6921
6943
  * @slot primary-action - Slot for the primary action element (used when split is true).
6922
6944
  * @slot trigger - Slot for the trigger element.
@@ -6946,21 +6968,6 @@ declare class Menu extends FASTElement {
6946
6968
  * @private
6947
6969
  */
6948
6970
  private positioning;
6949
- /**
6950
- * The intersection observer for tracking overflow.
6951
- * @private
6952
- */
6953
- private intersectionObserver;
6954
- /**
6955
- * The original position before repositioning.
6956
- * @private
6957
- */
6958
- private originalMenuPosition;
6959
- /**
6960
- * The array of open positions based on collision detection.
6961
- * @private
6962
- */
6963
- private openPositions;
6964
6971
  /**
6965
6972
  * Determines if the menu should open on hover.
6966
6973
  * @public
@@ -6991,14 +6998,34 @@ declare class Menu extends FASTElement {
6991
6998
  * @public
6992
6999
  */
6993
7000
  menuPosition?: MenuPosition;
7001
+ /**
7002
+ * Handles changes to the menuPosition attribute.
7003
+ * Updates the positioning strategy and triggers a reposition if
7004
+ * the menu is currently open, without mutating the public attribute.
7005
+ * @public
7006
+ */
7007
+ menuPositionChanged(): void;
6994
7008
  /**
6995
7009
  * The mode for repositioning the menu when it overflows the boundary.
7010
+ *
7011
+ * - `"none"` (default) — no JS-based repositioning; positioning is handled entirely by CSS anchored positioning.
7012
+ * - `"auto"` — enables `FlexiblePositionStrategy`. On every open, resize, and scroll event the strategy
7013
+ * measures available space, picks the best-fitting position from the preferred position plus its fallbacks,
7014
+ * and re-applies layout. When the chosen position is `"above"`, bottom-anchored positioning keeps the
7015
+ * menu's bottom edge pinned to the anchor's top edge so that height constraints shrink it upward.
7016
+ *
6996
7017
  * @public
6997
- * @default "auto"
7018
+ * @default "none"
6998
7019
  */
6999
7020
  repositionMode?: MenuRepositionMode;
7000
7021
  /**
7001
- * The overflow boundary element reference.
7022
+ * An optional scrolling container used as the collision boundary by `FlexiblePositionStrategy`.
7023
+ * When provided, the strategy measures overflow against this element's viewport instead of the
7024
+ * document viewport. Only takes effect when `reposition-mode="auto"`.
7025
+ *
7026
+ * Scroll events on this element are listened to and trigger a debounced reposition while the menu
7027
+ * is open.
7028
+ *
7002
7029
  * @public
7003
7030
  */
7004
7031
  overflowBoundary?: HTMLElement;
@@ -7012,6 +7039,16 @@ declare class Menu extends FASTElement {
7012
7039
  * @public
7013
7040
  */
7014
7041
  slottedTriggers: HTMLElement[];
7042
+ /**
7043
+ * Handles menu list slot changes.
7044
+ * @internal
7045
+ */
7046
+ private slottedMenuListChanged;
7047
+ /**
7048
+ * Handles trigger slot changes.
7049
+ * @internal
7050
+ */
7051
+ private slottedTriggersChanged;
7015
7052
  /**
7016
7053
  * Defines whether the menu is open or not.
7017
7054
  * @internal
@@ -7023,61 +7060,37 @@ declare class Menu extends FASTElement {
7023
7060
  */
7024
7061
  private _trigger?;
7025
7062
  /**
7026
- * The menu list element of the menu which has the popover behavior.
7063
+ * The menu list element of the menu.
7027
7064
  * @internal
7028
7065
  */
7029
7066
  private _menuList?;
7030
7067
  /**
7031
- * Creates the overflow handler using IntersectionObserver.
7032
- * Note: When a custom overflowBoundary is set, we use direct rect calculations
7033
- * instead because popovers render in the top layer and IntersectionObserver
7034
- * with a custom root won't work correctly.
7035
- * @private
7036
- */
7037
- private createOverflowHandler;
7038
- /**
7039
- * Checks overflow against custom boundary using direct rect calculations.
7040
- * Delegates to MenuPositioning for the actual calculation.
7068
+ * Updates menu list open state and ARIA expanded.
7041
7069
  * @private
7042
7070
  */
7043
- private checkOverflowWithBoundary;
7071
+ private setMenuOpenState;
7044
7072
  /**
7045
- * Handles overflow collisions with the menu.
7073
+ * Internal open handler used by multiple entry points.
7046
7074
  * @private
7047
7075
  */
7048
- private handleOverflow;
7076
+ private openMenuInternal;
7049
7077
  /**
7050
- * Applies height constraint to make menu scrollable when space is limited.
7078
+ * Internal close handler used by multiple entry points.
7051
7079
  * @private
7052
7080
  */
7053
- private applyHeightConstraint;
7081
+ private closeMenuInternal;
7054
7082
  /**
7055
- * Clears height constraint from the menu.
7056
- * @private
7057
- */
7058
- private clearHeightConstraint;
7059
- /**
7060
- * Repositions the menu based on collisions.
7083
+ * Delegates resize + flip logic to the positioning strategy.
7061
7084
  * @private
7062
7085
  */
7063
7086
  private repositionMenu;
7064
7087
  /**
7065
- * Releases positions and restores original if valid.
7066
- * @private
7067
- */
7068
- private releasePositions;
7069
- /**
7070
- * Observes the menu for overflow.
7088
+ * Schedules a reposition on the next microtask.
7071
7089
  * @private
7072
7090
  */
7073
- private observeMenuOverflow;
7091
+ private scheduleReposition;
7074
7092
  /**
7075
- * Updates the menu position on window changes.
7076
- * @private
7077
- */
7078
- private updateMenuPosition;
7079
- /**
7080
- * Debounced handler for window changes.
7093
+ * Debounced handler for window resize/scroll changes.
7081
7094
  * @private
7082
7095
  */
7083
7096
  private handleWindowChanges;
@@ -7126,11 +7139,6 @@ declare class Menu extends FASTElement {
7126
7139
  * @public
7127
7140
  */
7128
7141
  setComponent(): void;
7129
- /**
7130
- * Sets the menu position.
7131
- * @public
7132
- */
7133
- setMenuPosition(): void;
7134
7142
  /**
7135
7143
  * Toggles the open state of the menu.
7136
7144
  * @public
@@ -7156,13 +7164,6 @@ declare class Menu extends FASTElement {
7156
7164
  * @public
7157
7165
  */
7158
7166
  focusTrigger(): void;
7159
- /**
7160
- * Handles the 'toggle' event on the popover.
7161
- * @public
7162
- * @param e - the event
7163
- * @returns void
7164
- */
7165
- toggleHandler: (e: Event | ToggleEvent) => void;
7166
7167
  /**
7167
7168
  * Called whenever the 'openOnHover' property changes.
7168
7169
  *
@@ -7170,7 +7171,7 @@ declare class Menu extends FASTElement {
7170
7171
  * @param newValue - The new value of 'openOnHover'.
7171
7172
  * @public
7172
7173
  */
7173
- openOnHoverChanged(oldValue: boolean, newValue: boolean): void;
7174
+ openOnHoverChanged(_oldValue: boolean, newValue: boolean): void;
7174
7175
  /**
7175
7176
  * Called whenever the 'persistOnItemClick' property changes.
7176
7177
  *
@@ -7178,23 +7179,21 @@ declare class Menu extends FASTElement {
7178
7179
  * @param oldValue - The previous value of 'persistOnItemClick'.
7179
7180
  * @param newValue - The new value of 'persistOnItemClick'.
7180
7181
  */
7181
- persistOnItemClickChanged(oldValue: boolean, newValue: boolean): void;
7182
+ persistOnItemClickChanged(_oldValue: boolean, newValue: boolean): void;
7182
7183
  /**
7183
- * Called whenever the 'menuPosition' property changes.
7184
+ * Called whenever the 'repositionMode' property changes.
7184
7185
  *
7185
- * @param oldValue - The previous value of 'menuPosition'.
7186
- * @param newValue - The new value of 'menuPosition'.
7187
7186
  * @public
7187
+ * @param oldValue - The previous value of 'repositionMode'.
7188
+ * @param newValue - The new value of 'repositionMode'.
7188
7189
  */
7189
- menuPositionChanged(): void;
7190
+ repositionModeChanged(_oldValue: MenuRepositionMode, newValue: MenuRepositionMode): void;
7190
7191
  /**
7191
- * Called whenever the 'repositionMode' property changes.
7192
+ * Called whenever the 'overflowBoundary' property changes.
7192
7193
  *
7193
7194
  * @public
7194
- * @param oldValue - The previous value of 'repositionMode'.
7195
- * @param newValue - The new value of 'repositionMode'.
7196
7195
  */
7197
- repositionModeChanged(oldValue: MenuRepositionMode, newValue: MenuRepositionMode): void;
7196
+ overflowBoundaryChanged(oldValue: HTMLElement | undefined, newValue: HTMLElement | undefined): void;
7198
7197
  /**
7199
7198
  * Called whenever the 'openOnContext' property changes.
7200
7199
  *
@@ -7202,7 +7201,7 @@ declare class Menu extends FASTElement {
7202
7201
  * @param oldValue - The previous value of 'openOnContext'.
7203
7202
  * @param newValue - The new value of 'openOnContext'.
7204
7203
  */
7205
- openOnContextChanged(oldValue: boolean, newValue: boolean): void;
7204
+ openOnContextChanged(_oldValue: boolean, newValue: boolean): void;
7206
7205
  /**
7207
7206
  * Called whenever the 'closeOnScroll' property changes.
7208
7207
  *
@@ -7210,7 +7209,7 @@ declare class Menu extends FASTElement {
7210
7209
  * @param oldValue - The previous value of 'closeOnScroll'.
7211
7210
  * @param newValue - The new value of 'closeOnScroll'.
7212
7211
  */
7213
- closeOnScrollChanged(oldValue: boolean, newValue: boolean): void;
7212
+ closeOnScrollChanged(_oldValue: boolean, newValue: boolean): void;
7214
7213
  /**
7215
7214
  * Adds event listeners.
7216
7215
  *
@@ -7238,7 +7237,7 @@ declare class Menu extends FASTElement {
7238
7237
  */
7239
7238
  triggerKeydownHandler: (e: KeyboardEvent) => boolean | void;
7240
7239
  /**
7241
- * Handles document click events to close a menu opened with contextmenu in popover="manual" mode.
7240
+ * Handles document click events to close the menu when clicking outside (light dismiss).
7242
7241
  * @internal
7243
7242
  * @param e - The event triggered on document click.
7244
7243
  */
@@ -7256,9 +7255,9 @@ declare const definition$i: _microsoft_fast_element.FASTElementDefinition<typeof
7256
7255
  /** Menu styles
7257
7256
  * @public
7258
7257
  */
7259
- declare const styles$2: _microsoft_fast_element.ElementStyles;
7258
+ declare const styles$3: _microsoft_fast_element.ElementStyles;
7260
7259
 
7261
- declare const template$2: ElementViewTemplate<Menu>;
7260
+ declare const template$3: ElementViewTemplate<Menu>;
7262
7261
 
7263
7262
  /**
7264
7263
  * OptionGroup
@@ -7336,7 +7335,7 @@ declare class OptionGroup extends FASTElement {
7336
7335
  * @param next - The new disabled state.
7337
7336
  * @internal
7338
7337
  */
7339
- disabledChanged(prev: boolean | undefined, next: boolean | undefined): void;
7338
+ disabledChanged(_prev: boolean | undefined, next: boolean | undefined): void;
7340
7339
  connectedCallback(): void;
7341
7340
  /**
7342
7341
  * Handles changes to the label attribute.
@@ -7363,9 +7362,9 @@ declare const definition$h: _microsoft_fast_element.FASTElementDefinition<typeof
7363
7362
  *
7364
7363
  * @public
7365
7364
  */
7366
- declare const styles$1: _microsoft_fast_element.ElementStyles;
7365
+ declare const styles$2: _microsoft_fast_element.ElementStyles;
7367
7366
 
7368
- declare const template$1: ElementViewTemplate<OptionGroup>;
7367
+ declare const template$2: ElementViewTemplate<OptionGroup>;
7369
7368
 
7370
7369
  /**
7371
7370
  * Predicate function that determines if the element should be considered an option group.
@@ -7726,7 +7725,7 @@ declare class BaseTextInput extends FASTElement {
7726
7725
  *
7727
7726
  * @internal
7728
7727
  */
7729
- currentValueChanged(prev: string, next: string): void;
7728
+ currentValueChanged(_prev: string, next: string): void;
7730
7729
  /**
7731
7730
  * The default slotted content. This is the content that appears in the text field label.
7732
7731
  *
@@ -7738,7 +7737,7 @@ declare class BaseTextInput extends FASTElement {
7738
7737
  *
7739
7738
  * @internal
7740
7739
  */
7741
- defaultSlottedNodesChanged(prev: Node[] | undefined, next: Node[] | undefined): void;
7740
+ defaultSlottedNodesChanged(_prev: Node[] | undefined, next: Node[] | undefined): void;
7742
7741
  /**
7743
7742
  * Sets the directionality of the element to be submitted with form data.
7744
7743
  * @see The {@link https://developer.mozilla.org/docs/Web/HTML/Attributes/dirname | `dirname`} attribute
@@ -7872,7 +7871,7 @@ declare class BaseTextInput extends FASTElement {
7872
7871
  *
7873
7872
  * @internal
7874
7873
  */
7875
- requiredChanged(previous: boolean, next: boolean): void;
7874
+ requiredChanged(_previous: boolean, next: boolean): void;
7876
7875
  /**
7877
7876
  * Sets the width of the element to a specified number of characters.
7878
7877
  *
@@ -8281,7 +8280,7 @@ declare class SearchBox extends TextInput {
8281
8280
  *
8282
8281
  * @internal
8283
8282
  */
8284
- currentValueChanged(prev: string, next: string): void;
8283
+ currentValueChanged(_prev: string, next: string): void;
8285
8284
  /**
8286
8285
  * Clear the search box value
8287
8286
  * @method
@@ -8819,12 +8818,12 @@ type TextareaAppearancesForDisplayShadow = ValuesOf<typeof TextareaAppearancesFo
8819
8818
  *
8820
8819
  * @public
8821
8820
  */
8822
- declare const styles: ElementStyles;
8821
+ declare const styles$1: ElementStyles;
8823
8822
 
8824
8823
  /**
8825
8824
  * @internal
8826
8825
  */
8827
- declare const template: ElementViewTemplate<TextInput>;
8826
+ declare const template$1: ElementViewTemplate<TextInput>;
8828
8827
 
8829
8828
  /**
8830
8829
  * The Fabric Text Input component.
@@ -8957,6 +8956,22 @@ type TextWeight = ValuesOf<typeof TextWeights>;
8957
8956
  * @public
8958
8957
  */
8959
8958
  declare class Tree extends Tree$1 {
8959
+ /**
8960
+ * Overrides the upstream click handler to resolve the closest tree item
8961
+ * from the event target. The upstream implementation uses `e.target` directly,
8962
+ * which fails when the click originates from a child element (e.g., an icon
8963
+ * in the `start` slot or text inside the default slot wrapper).
8964
+ *
8965
+ * @internal
8966
+ */
8967
+ clickHandler(e: Event): boolean | void;
8968
+ /**
8969
+ * Walks up the DOM from the event target to find the nearest tree item.
8970
+ * The upstream `isTreeItem` check uses `e.target` directly, which fails
8971
+ * when the click originates from a slotted child element (e.g., an icon
8972
+ * in the `start` slot or text inside the default slot wrapper).
8973
+ */
8974
+ private findClosestTreeItem;
8960
8975
  }
8961
8976
 
8962
8977
  /**
@@ -9023,6 +9038,10 @@ declare const definition$3: _microsoft_fast_element.FASTElementDefinition<typeof
9023
9038
  declare class TreeItem extends TreeItem$1 {
9024
9039
  }
9025
9040
 
9041
+ declare const template: ElementViewTemplate<TreeItem>;
9042
+
9043
+ declare const styles: _microsoft_fast_element.ElementStyles;
9044
+
9026
9045
  /**
9027
9046
  * The Fabric TreeItem component.
9028
9047
  *
@@ -9190,6 +9209,11 @@ declare class Tooltip extends Tooltip$1 {
9190
9209
  * Resolves the anchor element from the DOM.
9191
9210
  */
9192
9211
  private get resolvedAnchorElement();
9212
+ /**
9213
+ * Handles Escape key to dismiss the tooltip.
9214
+ * Required because `popover="manual"` does not support native light-dismiss.
9215
+ */
9216
+ private handleKeydown;
9193
9217
  disconnectedCallback(): void;
9194
9218
  /**
9195
9219
  * Shows the tooltip after the specified delay.
@@ -9244,19 +9268,327 @@ declare const disabledState: ":state(disabled)" | "[state--disabled]";
9244
9268
  declare const expandedState: ":state(expanded)" | "[state--expanded]";
9245
9269
 
9246
9270
  /**
9247
- * A value that can be statically composed into a
9248
- * foundation template.
9249
- * @remarks
9250
- * When providing a string, take care to ensure that it is
9251
- * safe and will not enable an XSS attack.
9271
+ * Checks whether the specified element is disabled.
9272
+ * @param {Element} el The element to check.
9273
+ */
9274
+ declare function isDisabledElement(el: Element): el is HTMLElement;
9275
+ /**
9276
+ * Checks whether the specified element is hidden.
9277
+ * @param {Element} el The element to check.
9278
+ */
9279
+ declare function isHiddenElement(el: Element): el is HTMLElement;
9280
+ /**
9281
+ * Checks whether the specified element is focusable.
9282
+ * @param {Element} el The element to check.
9283
+ */
9284
+ declare function isFocusableElement(el: Element): el is HTMLElement;
9285
+ /**
9286
+ * Sets focusability of all focusable children within an element
9287
+ * @private
9288
+ * @param {HTMLElement} element - The parent element
9289
+ * @param {boolean} focusable - Whether children should be focusable
9290
+ */
9291
+ declare function setChildrenFocusability(element: HTMLElement, focusable: boolean): void;
9292
+
9293
+ type Constructor = new (...args: unknown[]) => unknown;
9294
+ /**
9295
+ * Apply mixins to a constructor.
9296
+ * Sourced from {@link https://www.typescriptlang.org/docs/handbook/mixins.html | TypeScript Documentation }.
9297
+ *
9298
+ * TODO: Remove with https://github.com/microsoft/fast/pull/6797
9299
+ * This was used for Badge where start/end was not yet implemented.
9300
+ * The method itself was deprecated as it was largely intended to be "internals" for Fast Foundation.
9301
+ * Adding here to avoid breaking of the existing API.
9302
+ * @internal
9303
+ */
9304
+ declare function applyMixins(derivedCtor: Constructor, ...baseCtors: Constructor[]): void;
9305
+
9306
+ /**
9307
+ * Sets the specified attributes on the given HTML element.
9308
+ * @param {HTMLElement} element The HTML element on which to set attributes.
9309
+ * @param {{[key: string]: string}} attributes An object mapping attribute names to values.
9310
+ */
9311
+ declare function setAttributes(element: HTMLElement, attributes: {
9312
+ [key: string]: string;
9313
+ }): void;
9314
+
9315
+ /**
9316
+ * debounce function
9317
+ * @param func - function to be debounced
9318
+ * @param delay - delay in milliseconds
9319
+ */
9320
+ declare function debounce(func: (...args: unknown[]) => void, delay: number): (this: unknown, ...args: unknown[]) => void;
9321
+
9322
+ /**
9323
+ * Holds a collection of debug-related functions. When the instance is not in debug mode, most/all of
9324
+ * the side-effects will be disabled.
9325
+ */
9326
+ declare class debug {
9327
+ static assertFailFunction: (message: string) => void;
9328
+ static setAssertFailFunction(f: (message: string) => void): void;
9329
+ /**
9330
+ * Asserts that the condition is true, fails otherwise.
9331
+ */
9332
+ static assert(conditionFunc: () => boolean, message?: string): void;
9333
+ /**
9334
+ * Asserts that the value is neither null nor undefined, fails otherwise.
9335
+ */
9336
+ static assertDefined<T>(value: T, message: string): void;
9337
+ /**
9338
+ * Asserts that the value is neither null nor undefined, and has a length property that returns greater than zero, fails otherwise.
9339
+ */
9340
+ static assertNonEmpty<T>(value: ArrayLike<T>, message: string): void;
9341
+ /**
9342
+ * Asserts that this function is never called. This is to be used
9343
+ */
9344
+ static assertNever(neverValue: never): void;
9345
+ static assertFail(message: string): void;
9346
+ static log(message: string, ...optionalParams: unknown[]): void;
9347
+ static logDebug(message: string, ...optionalParams: unknown[]): void;
9348
+ static warn(message: string, ...optionalParams: unknown[]): void;
9349
+ static execute(action: () => void): void;
9350
+ private static enabled;
9351
+ static enable(): void;
9352
+ }
9353
+
9354
+ /**
9355
+ * This module provides a composable system for detecting and monitoring text direction
9356
+ * (LTR/RTL) changes in web applications. It follows a strategy/observer pattern to allow
9357
+ * flexibility for the many ways that direction can be controlled in the document.
9358
+ *
9359
+ * ## Architecture
9360
+ *
9361
+ * The system uses two complementary interfaces:
9362
+ *
9363
+ * - **DirectionStrategy**: Detection - reads direction from a source (CSS, attributes, etc.)
9364
+ * - **DirectionObserver**: Change monitoring - watches for direction changes and notifies
9365
+ *
9366
+ * The `DirectionDetector` class combines the detection and observer strategies to provide
9367
+ * robust direction detection with automatic change notifications.
9368
+ *
9369
+ * ## Built-in Strategies
9370
+ *
9371
+ * - `DirAttributeStrategy`: Reads the `dir` attribute from elements
9372
+ * - `ElementCssStrategy`: Reads computed CSS `direction` property
9373
+ *
9374
+ * ## Built-in Observers
9375
+ *
9376
+ * - `DirAttributeObserver`: Watches for `dir` attribute mutations via MutationObserver
9377
+ *
9378
+ * ## Global DirectionDetector
9379
+ *
9380
+ * A singleton detector is available via `globalDirectionDetector()`. By default, it
9381
+ * monitors the `dir` attribute on the `<html>` element. This is the detector used by the
9382
+ * components in this package to correctly adjust layout, keyboard navigation, etc.
9383
+ *
9384
+ * To customize the global detector, call `setGlobalDirectionDetector()`:
9385
+ *
9386
+ * ```typescript
9387
+ * import {
9388
+ * setGlobalDirectionDetector,
9389
+ * DirectionDetector,
9390
+ * DirAttributeStrategy,
9391
+ * DirAttributeObserver
9392
+ * } from "@fabric-msft/fabric-web";
9393
+ *
9394
+ * setGlobalDirectionDetector(
9395
+ * new DirectionDetector({
9396
+ * strategies: [new DirAttributeStrategy([document.documentElement])],
9397
+ * observers: [new DirAttributeObserver("html")],
9398
+ * onChange: (dir) => console.log("Global direction:", dir)
9399
+ * })
9400
+ * );
9401
+ * ```
9402
+ *
9403
+ * ## Defaults
9404
+ *
9405
+ * The default global DirectionDetector will monitor the `dir` attribute on the
9406
+ * `html` element. You do not need to set anything if this is the strategy that your app
9407
+ * uses to control document direction.
9408
+ *
9409
+ * ```html
9410
+ * <html dir="rtl">
9411
+ * ```
9412
+ *
9413
+ * ## Custom DirectionDetector
9414
+ *
9415
+ * ```typescript
9416
+ * import {
9417
+ * DirectionDetector,
9418
+ * DirAttributeStrategy,
9419
+ * DirAttributeObserver
9420
+ * } from "@fabric-msft/fabric-web";
9421
+ *
9422
+ * const detector = new DirectionDetector({
9423
+ * strategies: [new DirAttributeStrategy([document.documentElement])],
9424
+ * observers: [new DirAttributeObserver("html")],
9425
+ * onChange: (dir, { previous }) => {
9426
+ * console.log(`Direction changed: ${previous} → ${dir}`);
9427
+ * }
9428
+ * });
9429
+ *
9430
+ * // Access current direction
9431
+ * console.log(detector.value); // 'ltr' or 'rtl'
9432
+ *
9433
+ * // Clean up when done
9434
+ * detector.stop();
9435
+ * ```
9436
+ */
9437
+ /**
9438
+ * Determines the current localization direction of an element.
9439
+ *
9440
+ * @param rootNode - the HTMLElement to begin the query from, usually "this" when used in a component controller
9441
+ * @returns the localization direction of the element
9442
+ *
9252
9443
  * @public
9253
9444
  */
9254
- type StaticallyComposableHTML<TSource = unknown, TParent = unknown> = string | HTMLDirective | SyntheticViewTemplate<TSource, TParent> | undefined;
9445
+ declare const getDirection: (rootNode: HTMLElement) => Direction;
9446
+ declare function isRtl(): boolean;
9447
+ type DirectionOrNull = Direction | null;
9255
9448
  /**
9256
- * A function to compose template options.
9449
+ * Interface for direction detection strategies.
9450
+ * Strategies are pure functions that detect direction from a source.
9257
9451
  * @public
9258
9452
  */
9259
- declare function staticallyCompose<TSource = unknown, TParent = unknown>(item: StaticallyComposableHTML<TSource, TParent>): CaptureType<TSource, TParent>;
9453
+ interface DirectionStrategy {
9454
+ /**
9455
+ * Get the current direction value.
9456
+ */
9457
+ getDirection(): DirectionOrNull;
9458
+ }
9459
+ /**
9460
+ * Interface for observing direction changes.
9461
+ * Observers monitor a source and notify when changes may have occurred.
9462
+ * @public
9463
+ */
9464
+ interface DirectionObserver {
9465
+ /**
9466
+ * Start observing for direction changes.
9467
+ * @param notify - Callback to invoke when a change may have occurred.
9468
+ */
9469
+ start(notify: () => void): void;
9470
+ /**
9471
+ * Stop observing and clean up resources.
9472
+ */
9473
+ stop(): void;
9474
+ }
9475
+ interface DirectionDetectorOptions {
9476
+ /**
9477
+ * Ordered list of strategies. First strategy that yields a non-null direction wins.
9478
+ */
9479
+ strategies: DirectionStrategy[];
9480
+ /**
9481
+ * Optional observers to monitor for direction changes.
9482
+ * When any observer fires, the detector will recompute direction.
9483
+ */
9484
+ observers?: DirectionObserver[];
9485
+ /**
9486
+ * Called when the resolved direction changes.
9487
+ */
9488
+ onChange?: (dir: DirectionOrNull, info: {
9489
+ previous: DirectionOrNull;
9490
+ }) => void;
9491
+ }
9492
+ /**
9493
+ * Detects and (optionally) observes direction using a chain of strategies.
9494
+ * The first strategy to return a non-null direction wins.
9495
+ * @public
9496
+ */
9497
+ declare class DirectionDetector {
9498
+ private readonly strategies;
9499
+ private readonly observers;
9500
+ private readonly onChange?;
9501
+ private rafId;
9502
+ private _value;
9503
+ private observing;
9504
+ constructor(options: DirectionDetectorOptions);
9505
+ get value(): Direction;
9506
+ /**
9507
+ * Start all observers.
9508
+ */
9509
+ private start;
9510
+ /**
9511
+ * Stop observing and cancel any scheduled refresh.
9512
+ */
9513
+ stop(): void;
9514
+ stable(): boolean;
9515
+ /**
9516
+ * Force recomputation; invokes onChange only if the resolved direction changed.
9517
+ */
9518
+ refresh(): DirectionOrNull;
9519
+ private computeDirection;
9520
+ }
9521
+ declare function setGlobalDirectionDetector(detector: DirectionDetector): void;
9522
+ declare function globalDirectionDetector(): DirectionDetector;
9523
+
9524
+ declare const inputElementMethods: string[];
9525
+
9526
+ declare class MockElementInternals implements ElementInternals {
9527
+ ariaDescription: string | null;
9528
+ ariaBrailleLabel: string | null;
9529
+ ariaBrailleRoleDescription: string | null;
9530
+ private _form;
9531
+ private _labels;
9532
+ private _element;
9533
+ constructor(element: HTMLElement);
9534
+ get form(): HTMLFormElement | null;
9535
+ get labels(): NodeList;
9536
+ get shadowRoot(): null;
9537
+ get states(): Set<string>;
9538
+ get validationMessage(): string;
9539
+ get validity(): ValidityState;
9540
+ get willValidate(): boolean;
9541
+ role: string;
9542
+ ariaAtomic: string;
9543
+ ariaAutoComplete: string;
9544
+ ariaBusy: string;
9545
+ ariaChecked: string;
9546
+ ariaColCount: string;
9547
+ ariaColIndex: string;
9548
+ ariaColIndexText: string;
9549
+ ariaColSpan: string;
9550
+ ariaCurrent: string;
9551
+ ariaDisabled: string;
9552
+ ariaExpanded: string;
9553
+ ariaHasPopup: string;
9554
+ ariaHidden: string;
9555
+ ariaInvalid: string;
9556
+ ariaKeyShortcuts: string;
9557
+ ariaLabel: string;
9558
+ ariaLevel: string;
9559
+ ariaLive: string;
9560
+ ariaModal: string;
9561
+ ariaMultiLine: string;
9562
+ ariaMultiSelectable: string;
9563
+ ariaOrientation: string;
9564
+ ariaPlaceholder: string;
9565
+ ariaPosInSet: string;
9566
+ ariaPressed: string;
9567
+ ariaReadOnly: string;
9568
+ ariaRelevant: string;
9569
+ ariaRequired: string;
9570
+ ariaRoleDescription: string;
9571
+ ariaRowCount: string;
9572
+ ariaRowIndex: string;
9573
+ ariaRowIndexText: string;
9574
+ ariaRowSpan: string;
9575
+ ariaSelected: string;
9576
+ ariaSetSize: string;
9577
+ ariaSort: string;
9578
+ ariaValueMax: string;
9579
+ ariaValueMin: string;
9580
+ ariaValueNow: string;
9581
+ ariaValueText: string;
9582
+ checkValidity(): boolean;
9583
+ reportValidity(): boolean;
9584
+ setFormValue(_value: File | string | FormData | null, _state?: File | string | FormData | null): void;
9585
+ setValidity(_flags: ValidityStateFlags, _message?: string, _anchor?: HTMLElement): void;
9586
+ }
9587
+ /**
9588
+ * If the HTMLElement prototype does not have the attachInternals method, add it.
9589
+ * This is used to create a new MockElementInternals instance when the element is attached to the DOM.
9590
+ */
9591
+ declare function attachMockElementInternals(): void;
9260
9592
 
9261
9593
  /**
9262
9594
  * This function is used to toggle a state on the control. If the browser supports Custom States, the state is toggled
@@ -9274,18 +9606,160 @@ declare function staticallyCompose<TSource = unknown, TParent = unknown>(item: S
9274
9606
  */
9275
9607
  declare function toggleState(elementInternals: ElementInternals | undefined, state: string | undefined, force?: boolean): void;
9276
9608
 
9277
- type Constructor = new (...args: unknown[]) => unknown;
9278
9609
  /**
9279
- * Apply mixins to a constructor.
9280
- * Sourced from {@link https://www.typescriptlang.org/docs/handbook/mixins.html | TypeScript Documentation }.
9610
+ * Options for creating a roving focus controller.
9281
9611
  *
9282
- * TODO: Remove with https://github.com/microsoft/fast/pull/6797
9283
- * This was used for Badge where start/end was not yet implemented.
9284
- * The method itself was deprecated as it was largely intended to be "internals" for Fast Foundation.
9285
- * Adding here to avoid breaking of the existing API.
9286
- * @internal
9612
+ * @public
9287
9613
  */
9288
- declare function applyMixins(derivedCtor: Constructor, ...baseCtors: Constructor[]): void;
9614
+ interface RovingFocusOptions {
9615
+ /**
9616
+ * Function that returns the current list of elements to manage.
9617
+ * Called fresh each time to support dynamic slot changes.
9618
+ */
9619
+ items: () => HTMLElement[];
9620
+ /**
9621
+ * Filter function to determine if an element is disabled.
9622
+ * Default: checks for `disabled`, `aria-disabled="true"`, or `inert` attributes.
9623
+ */
9624
+ isDisabled?: (el: HTMLElement) => boolean;
9625
+ /**
9626
+ * Navigation orientation.
9627
+ * - "vertical": ArrowUp/ArrowDown (default)
9628
+ * - "horizontal": ArrowLeft/ArrowRight
9629
+ * - "both": All four arrow keys
9630
+ */
9631
+ orientation?: "vertical" | "horizontal" | "both";
9632
+ /**
9633
+ * Enable Home/End key support.
9634
+ * @default true
9635
+ */
9636
+ enableHomeEnd?: boolean;
9637
+ /**
9638
+ * Enable wrapping at boundaries.
9639
+ * @default true
9640
+ */
9641
+ wrap?: boolean;
9642
+ /**
9643
+ * Whether handleKeydown calls preventDefault for handled keys.
9644
+ * @default true
9645
+ */
9646
+ preventDefault?: boolean;
9647
+ /**
9648
+ * Custom focus implementation for components with internal focusable elements
9649
+ * (e.g., Prompt with internal button). If not provided, calls `el.focus()`.
9650
+ */
9651
+ focusItem?: (el: HTMLElement) => void;
9652
+ /**
9653
+ * Callback fired when the active item changes.
9654
+ */
9655
+ onFocusChange?: (el: HTMLElement, index: number) => void;
9656
+ /**
9657
+ * Function to determine if the component is in RTL mode.
9658
+ * When true, horizontal arrow keys are swapped.
9659
+ * @default () => false
9660
+ */
9661
+ isRtl: () => boolean;
9662
+ }
9663
+ /**
9664
+ * Controller interface for managing roving tabindex focus.
9665
+ *
9666
+ * @remarks
9667
+ * Invariants enforced by this controller:
9668
+ * 1. Exactly one enabled item has `tabindex="0"` (the "active" item)
9669
+ * 2. All other managed items have `tabindex="-1"`
9670
+ * 3. When focus moves: new item gets tabindex=0, previous active gets -1, new item receives focus
9671
+ *
9672
+ * @public
9673
+ */
9674
+ interface RovingFocusController {
9675
+ /**
9676
+ * Apply roving tabindex. Preserves current active if still valid and enabled;
9677
+ * otherwise falls back to first enabled. If no enabled items, all get tabindex=-1.
9678
+ */
9679
+ applyTabindex(): void;
9680
+ /**
9681
+ * Move focus by delta (+1 or -1).
9682
+ * @returns true if focus moved successfully
9683
+ */
9684
+ move(delta: 1 | -1): boolean;
9685
+ /**
9686
+ * Focus first enabled item.
9687
+ * @returns true if successful
9688
+ */
9689
+ focusFirst(): boolean;
9690
+ /**
9691
+ * Focus last enabled item.
9692
+ * @returns true if successful
9693
+ */
9694
+ focusLast(): boolean;
9695
+ /**
9696
+ * Focus specific item.
9697
+ * @returns false if item is not in list or is disabled
9698
+ */
9699
+ focus(item: HTMLElement): boolean;
9700
+ /**
9701
+ * Sync active tabindex to match a target element (use on focusin/click).
9702
+ * Updates tabindex without calling focus() to avoid jumpy behavior.
9703
+ * @returns true if target was found and made active
9704
+ */
9705
+ sync(target: EventTarget | null): boolean;
9706
+ /**
9707
+ * Handle keydown event.
9708
+ * @returns true if handled. Calls preventDefault() when configured.
9709
+ */
9710
+ handleKeydown(event: KeyboardEvent): boolean;
9711
+ /**
9712
+ * Clean up (for lifecycle symmetry; currently a no-op).
9713
+ */
9714
+ destroy(): void;
9715
+ }
9716
+ /**
9717
+ * Creates a roving focus controller for managing keyboard navigation
9718
+ * across a list of elements using the roving tabindex pattern.
9719
+ *
9720
+ * @example
9721
+ * ```typescript
9722
+ * const controller = createRovingFocusController({
9723
+ * items: () => this.slottedPills ?? [],
9724
+ * orientation: "vertical",
9725
+ * enableHomeEnd: true,
9726
+ * wrap: true
9727
+ * });
9728
+ *
9729
+ * // In connectedCallback or setup:
9730
+ * controller.applyTabindex();
9731
+ *
9732
+ * // In keydown handler:
9733
+ * if (controller.handleKeydown(event)) return;
9734
+ * // ...handle other keys like Escape
9735
+ * ```
9736
+ *
9737
+ * @public
9738
+ */
9739
+ declare function createRovingFocusController(options: RovingFocusOptions): RovingFocusController;
9740
+
9741
+ /**
9742
+ * Creates a unique ID string using a prefix and counter as salt for the random hex.
9743
+ * @param prefix - The prefix string for the ID
9744
+ * @param counter - Optional. A counter value used as salt for additional uniqueness
9745
+ * @returns A unique ID string in the format `{prefix}{counter}-{randomHex}`
9746
+ */
9747
+ declare function createUniqueId(prefix: string, counter?: number): string;
9748
+
9749
+ /**
9750
+ * A value that can be statically composed into a
9751
+ * foundation template.
9752
+ * @remarks
9753
+ * When providing a string, take care to ensure that it is
9754
+ * safe and will not enable an XSS attack.
9755
+ * @public
9756
+ */
9757
+ type StaticallyComposableHTML<TSource = unknown, TParent = unknown> = string | HTMLDirective | SyntheticViewTemplate<TSource, TParent> | undefined;
9758
+ /**
9759
+ * A function to compose template options.
9760
+ * @public
9761
+ */
9762
+ declare function staticallyCompose<TSource = unknown, TParent = unknown>(item: StaticallyComposableHTML<TSource, TParent>): CaptureType<TSource, TParent>;
9289
9763
 
9290
9764
  /**
9291
9765
  * filters out any whitespace-only nodes, to be used inside a template.
@@ -9299,6 +9773,6 @@ declare function applyMixins(derivedCtor: Constructor, ...baseCtors: Constructor
9299
9773
  */
9300
9774
  declare const whitespaceFilter: ElementsFilter;
9301
9775
 
9302
- export { Accordion, definition$F as AccordionDefinition, AccordionExpandModes, AccordionItem, definition$G as AccordionItemDefinition, AccordionItemMarkerPositions, AccordionItemSizes, AccordionMenu, definition$11 as AccordionMenuDefinition, AccordionMenuExpandModes, AccordionMenuPanel, definition$10 as AccordionMenuPanelDefinition, AccordionMenuPanelMarkerPositions, AccordionMenuPanelSizes, styles$e as AccordionMenuPanelStyles, template$b as AccordionMenuPanelTemplate, styles$f as AccordionMenuStyles, template$c as AccordionMenuTemplate, AnchorButton, AnchorButtonAppearance, AnchorButtonAppearances, definition$n as AnchorButtonDefinition, AnchorButtonShape, AnchorButtonShapes, AnchorButtonSize, AnchorButtonSizes, AnchorTarget, AnchorTargets, Avatar, AvatarActive, AvatarActives, AvatarAppearance, AvatarAppearances, AvatarColor, AvatarColors, definition$D as AvatarDefinition, AvatarNamedColor, AvatarNamedColors, AvatarShape, AvatarShapes, AvatarSize, AvatarSizes, Badge, BadgeAppearance, BadgeAppearances, BadgeColor, BadgeColors, definition$C as BadgeDefinition, BadgeShape, BadgeShapes, BadgeSize, BadgeSizes, Button, ButtonAppearances, definition$B as ButtonDefinition, ButtonFormTargets, ButtonShapes, ButtonSizes, styles$8 as ButtonStyles, ButtonTypes, Card, CardAppearance, CardAppearances, definition$$ as CardDefinition, CardEventNames, CardFocusMode, CardFocusModes, CardFooter, definition$_ as CardFooterDefinition, CardHeader, definition$Z as CardHeaderDefinition, CardOrientation, CardOrientations, CardPreview, definition$Y as CardPreviewDefinition, styles$d as CardStyles, template$a as CardTemplate, Carousel, definition$X as CarouselDefinition, styles$c as CarouselStyles, template$9 as CarouselTemplate, Checkbox, definition$A as CheckboxDefinition, CheckboxShapes, CheckboxSizes, CollisionEdges, CompoundButton, CompoundButtonAppearances, definition$V as CompoundButtonDefinition, CompoundButtonFormTargets, CompoundButtonShapes, CompoundButtonSizes, CompoundButtonTypes, CounterBadge, CounterBadgeAppearances, CounterBadgeColors, definition$z as CounterBadgeDefinition, CounterBadgeShapes, CounterBadgeSizes, Dialog, DialogBody, definition$x as DialogBodyDefinition, definition$y as DialogDefinition, styles$7 as DialogStyles, DialogTypes, Divider, DividerAlignContents, DividerAppearances, definition$w as DividerDefinition, DividerOrientations, DividerRoles, styles$6 as DividerStyles, template$5 as DividerTemplate, Drawer, DrawerBody, definition$u as DrawerBodyDefinition, definition$v as DrawerDefinition, DrawerPositions, DrawerSizes, DrawerTypes, Dropdown, DropdownAppearances, definition$t as DropdownDefinition, DropdownOption, definition$s as DropdownOptionDefinition, DropdownSizes, DropdownTypes, DesignSystem as FabricDesignSystem, Field, definition$q as FieldDefinition, FieldLabelPosition, FieldLabelPositions, styles$5 as FieldStyles, FilterPill, FilterPillAppearances, definition$W as FilterPillDefinition, FilterPillEventNames, FilterPillFormTargets, FilterPillShapes, FilterPillSizes, FilterPillTypes, Image, definition$p as ImageDefinition, ImageFits, ImageShapes, ImplicitSubmissionBlockingTypes$1 as ImplicitSubmissionBlockingTypes, Label, definition$o as LabelDefinition, LabelPositions, LabelSizes, LabelWeights, Link, LinkAppearance, LinkAppearances, definition$E as LinkDefinition, LinkTarget, LinkTargets, Listbox, definition$r as ListboxDefinition, LoadingButton, definition$U as LoadingButtonDefinition, Menu, MenuButton, MenuButtonAppearances, definition$l as MenuButtonDefinition, MenuButtonShapes, MenuButtonSizes, definition$i as MenuDefinition, MenuGroupRoles, MenuItem, definition$k as MenuItemDefinition, MenuItemRoles, styles$4 as MenuItemStyles, template$4 as MenuItemTemplate, MenuList, definition$j as MenuListDefinition, styles$3 as MenuListStyles, template$3 as MenuListTemplate, MenuPositions, MenuRepositionModes, styles$2 as MenuStyles, template$2 as MenuTemplate, MessageBar, definition$m as MessageBarDefinition, MultiView, MultiViewController, definition$S as MultiViewControllerDefinition, definition$T as MultiViewDefinition, MultiViewEventNames, MultiViewGroup, definition$R as MultiViewGroupDefinition, MultiViewGroupPositions, OptionGroup, definition$h as OptionGroupDefinition, Popover, definition$Q as PopoverDefinition, PopoverEventNames, PopoverPositions, PopoverRepositionModes, styles$b as PopoverStyles, template$8 as PopoverTemplate, PositioningShorthand, ProgressBar, definition$g as ProgressBarDefinition, ProgressBarShapes, ProgressBarThicknesses, ProgressBarValidationStates, Radio, definition$e as RadioDefinition, RadioGroup, definition$f as RadioGroupDefinition, RadioGroupOrientations, RatingDisplay, RatingDisplayColors, definition$d as RatingDisplayDefinition, RatingDisplaySizes, SearchBox, SearchBoxAppearances, SearchBoxControlSizes, definition$c as SearchBoxDefinition, SearchBoxEventNames, ImplicitSubmissionBlockingTypes as SearchBoxImplicitSubmissionBlockingTypes, SearchBoxTypes, SimpleTable, definition$N as SimpleTableDefinition, Slider, definition$b as SliderDefinition, SliderEventNames, SliderModes, SliderOrientations, SliderSizes, SlottableInputs, SortDirections, Spinner, SpinnerAppearances, definition$a as SpinnerDefinition, SpinnerSizes, SvgIcon, definition$P as SvgIconDefinition, Switch, definition$9 as SwitchDefinition, Tab, definition$8 as TabDefinition, Table, TableCell, definition$M as TableCellDefinition, TableCellSizes, styles$9 as TableCellStyles, template$6 as TableCellTemplate, definition$O as TableDefinition, styles$a as TableStyles, template$7 as TableTemplate, Tablist, TablistAppearances, definition$7 as TablistDefinition, TablistEventNames, TablistOrientations, TablistSizes, Tag, TagAppearances, definition$L as TagDefinition, TagEventNames, TagShapes, TagSizes, TagTextSizes, TeachingBubble, definition$K as TeachingBubbleDefinition, TeachingBubbleEventNames, TeachingBubblePlacements, TeachingBubbleSizes, Text, TextAligns, TextArea, TextareaAppearances as TextAreaAppearances, TextareaAppearancesForDisplayShadows as TextAreaAppearancesForDisplayShadows, TextareaAutocompletes as TextAreaAutocompletes, definition$6 as TextAreaDefinition, TextareaResizes as TextAreaResizes, TextareaSizes as TextAreaSizes, definition$4 as TextDefinition, TextFonts, TextInput, TextInputAppearances, TextInputControlSizes, definition$5 as TextInputDefinition, styles as TextInputStyles, template as TextInputTemplate, TextInputTypes, TextSizes, TextWeights, ToggleButton, ToggleButtonAppearances, definition$1 as ToggleButtonDefinition, ToggleButtonFormTargets, ToggleButtonShapes, ToggleButtonSizes, ToggleButtonTypes, Tooltip, definition as TooltipDefinition, TooltipPositioningOptions, Tree, definition$3 as TreeDefinition, TreeItem, definition$2 as TreeItemDefinition, ValidationFlags, Wizard, definition$J as WizardDefinition, WizardEvents, WizardPanel, definition$I as WizardPanelDefinition, WizardPanelEventNames, WizardPanelStates, WizardStep, definition$H as WizardStepDefinition, WizardStepEvents, WizardStepStates, applyMixins, disabledState, expandedState, getOptionsFromElement, isOptionGroup, styles$1 as optionGroupStyles, template$1 as optionGroupTemplate, roleForMenuGroup, roleForMenuItem, staticallyCompose, toggleState, whitespaceFilter };
9303
- export type { AccordionExpandMode, AccordionItemMarkerPosition, AccordionItemSize, AccordionMenuExpandMode, AccordionMenuPanelMarkerPosition, AccordionMenuPanelSize, ButtonAppearance, ButtonFormTarget, ButtonShape, ButtonSize, ButtonType, CheckboxShape, CheckboxSize, CollisionEdge, CompoundButtonAppearance, CompoundButtonFormTarget, CompoundButtonShape, CompoundButtonSize, CompoundButtonType, CounterBadgeAppearance, CounterBadgeColor, CounterBadgeShape, CounterBadgeSize, DialogType, DividerAlignContent, DividerAppearance, DividerOrientation, DividerRole, DrawerPosition, DrawerSize, DrawerType, DropdownAppearance, DropdownSize, DropdownType, FilterPillAppearance, FilterPillFormTarget, FilterPillShape, FilterPillSize, FilterPillType, HTMLPopoverElement, ImageFit, ImageShape, LabelPosition, LabelSize, LabelWeight, MenuButtonAppearance, MenuButtonShape, MenuButtonSize, MenuGroupRole, MenuItemColumnCount, MenuItemRole, MenuPosition, MenuRepositionMode, MultiViewGroupPosition, PopoverEventData, PopoverMode, PopoverRepositionMode, PopoverSize, PositioningShorthandKeys, PositioningShorthandValues, ProgressBarShape, ProgressBarThickness, ProgressBarValidationState, RadioGroupOrientation, RatingDisplayColor, RatingDisplaySize, SearchBoxAppearance, SearchBoxControlSize, SearchBoxType, SliderMode, SliderOrientation, SliderSize, SlottableInput, SortDirection, SpinnerAppearance, SpinnerSize, StaticallyComposableHTML, TableCellRenderFunction, TableCellSize, TableColumnData, TableRowData, TablistAppearance, TablistOrientation, TablistSize, TagAppearance, TagShape, TagSize, TagTextSize, TeachingBubblePlacement, TeachingBubbleSize, TextAlign, TextareaAppearance as TextAreaAppearance, TextareaAppearancesForDisplayShadow as TextAreaAppearancesForDisplayShadow, TextareaAutocomplete as TextAreaAutocomplete, TextareaResize as TextAreaResize, TextareaSize as TextAreaSize, TextFont, TextInputAppearance, TextInputControlSize, TextInputOptions, TextInputType, TextSize, TextWeight, ToggleButtonAppearance, ToggleButtonFormTarget, ToggleButtonShape, ToggleButtonSize, ToggleButtonType, TooltipPositioningOption, ValidationFlag, WizardEvent, WizardPanelState, WizardStepEvent, WizardStepState };
9776
+ export { Accordion, definition$F as AccordionDefinition, AccordionExpandModes, AccordionItem, definition$G as AccordionItemDefinition, AccordionItemMarkerPositions, AccordionItemSizes, AccordionMenu, definition$11 as AccordionMenuDefinition, AccordionMenuExpandModes, AccordionMenuPanel, definition$10 as AccordionMenuPanelDefinition, AccordionMenuPanelMarkerPositions, AccordionMenuPanelSizes, styles$f as AccordionMenuPanelStyles, template$c as AccordionMenuPanelTemplate, styles$g as AccordionMenuStyles, template$d as AccordionMenuTemplate, AnchorButton, AnchorButtonAppearance, AnchorButtonAppearances, definition$n as AnchorButtonDefinition, AnchorButtonShape, AnchorButtonShapes, AnchorButtonSize, AnchorButtonSizes, AnchorTarget, AnchorTargets, Avatar, AvatarActive, AvatarActives, AvatarAppearance, AvatarAppearances, AvatarColor, AvatarColors, definition$D as AvatarDefinition, AvatarNamedColor, AvatarNamedColors, AvatarShape, AvatarShapes, AvatarSize, AvatarSizes, Badge, BadgeAppearance, BadgeAppearances, BadgeColor, BadgeColors, definition$C as BadgeDefinition, BadgeShape, BadgeShapes, BadgeSize, BadgeSizes, Button, ButtonAppearances, definition$B as ButtonDefinition, ButtonFormTargets, ButtonShapes, ButtonSizes, styles$9 as ButtonStyles, ButtonTypes, Card, CardAppearance, CardAppearances, definition$$ as CardDefinition, CardEventNames, CardFocusMode, CardFocusModes, CardFooter, definition$_ as CardFooterDefinition, CardHeader, definition$Z as CardHeaderDefinition, CardOrientation, CardOrientations, CardPreview, definition$Y as CardPreviewDefinition, styles$e as CardStyles, template$b as CardTemplate, Carousel, definition$X as CarouselDefinition, styles$d as CarouselStyles, template$a as CarouselTemplate, Checkbox, definition$A as CheckboxDefinition, CheckboxShapes, CheckboxSizes, CollisionEdges, CompoundButton, CompoundButtonAppearances, definition$V as CompoundButtonDefinition, CompoundButtonFormTargets, CompoundButtonShapes, CompoundButtonSizes, CompoundButtonTypes, CounterBadge, CounterBadgeAppearances, CounterBadgeColors, definition$z as CounterBadgeDefinition, CounterBadgeShapes, CounterBadgeSizes, Dialog, DialogBody, definition$x as DialogBodyDefinition, definition$y as DialogDefinition, styles$8 as DialogStyles, DialogTypes, DirectionDetector, Divider, DividerAlignContents, DividerAppearances, definition$w as DividerDefinition, DividerOrientations, DividerRoles, styles$7 as DividerStyles, template$6 as DividerTemplate, Drawer, DrawerBody, definition$u as DrawerBodyDefinition, definition$v as DrawerDefinition, DrawerPositions, DrawerSizes, DrawerTypes, Dropdown, DropdownAppearances, definition$t as DropdownDefinition, DropdownOption, definition$s as DropdownOptionDefinition, DropdownSizes, DropdownTypes, DesignSystem as FabricDesignSystem, Field, definition$q as FieldDefinition, FieldLabelPosition, FieldLabelPositions, styles$6 as FieldStyles, FilterPill, FilterPillAppearances, definition$W as FilterPillDefinition, FilterPillEventNames, FilterPillFormTargets, FilterPillShapes, FilterPillSizes, FilterPillTypes, Image, definition$p as ImageDefinition, ImageFits, ImageShapes, ImplicitSubmissionBlockingTypes$1 as ImplicitSubmissionBlockingTypes, Label, definition$o as LabelDefinition, LabelPositions, LabelSizes, LabelWeights, Link, LinkAppearance, LinkAppearances, definition$E as LinkDefinition, LinkTarget, LinkTargets, Listbox, definition$r as ListboxDefinition, LoadingButton, definition$U as LoadingButtonDefinition, Menu, MenuButton, MenuButtonAppearances, definition$l as MenuButtonDefinition, MenuButtonShapes, MenuButtonSizes, definition$i as MenuDefinition, MenuGroupRoles, MenuItem, definition$k as MenuItemDefinition, MenuItemRoles, styles$5 as MenuItemStyles, template$5 as MenuItemTemplate, MenuList, definition$j as MenuListDefinition, styles$4 as MenuListStyles, template$4 as MenuListTemplate, MenuPositions, MenuRepositionModes, styles$3 as MenuStyles, template$3 as MenuTemplate, MessageBar, definition$m as MessageBarDefinition, MockElementInternals, MultiView, MultiViewController, definition$S as MultiViewControllerDefinition, definition$T as MultiViewDefinition, MultiViewEventNames, MultiViewGroup, definition$R as MultiViewGroupDefinition, MultiViewGroupPositions, OptionGroup, definition$h as OptionGroupDefinition, Popover, definition$Q as PopoverDefinition, PopoverEventNames, PopoverPositions, PopoverRepositionModes, styles$c as PopoverStyles, template$9 as PopoverTemplate, PositioningShorthand, ProgressBar, definition$g as ProgressBarDefinition, ProgressBarShapes, ProgressBarThicknesses, ProgressBarValidationStates, Radio, definition$e as RadioDefinition, RadioGroup, definition$f as RadioGroupDefinition, RadioGroupOrientations, RatingDisplay, RatingDisplayColors, definition$d as RatingDisplayDefinition, RatingDisplaySizes, SearchBox, SearchBoxAppearances, SearchBoxControlSizes, definition$c as SearchBoxDefinition, SearchBoxEventNames, ImplicitSubmissionBlockingTypes as SearchBoxImplicitSubmissionBlockingTypes, SearchBoxTypes, SimpleTable, definition$N as SimpleTableDefinition, Slider, definition$b as SliderDefinition, SliderEventNames, SliderModes, SliderOrientations, SliderSizes, SlottableInputs, SortDirections, Spinner, SpinnerAppearances, definition$a as SpinnerDefinition, SpinnerSizes, SvgIcon, definition$P as SvgIconDefinition, Switch, definition$9 as SwitchDefinition, Tab, definition$8 as TabDefinition, Table, TableCell, definition$M as TableCellDefinition, TableCellSizes, styles$a as TableCellStyles, template$7 as TableCellTemplate, definition$O as TableDefinition, styles$b as TableStyles, template$8 as TableTemplate, Tablist, TablistAppearances, definition$7 as TablistDefinition, TablistEventNames, TablistOrientations, TablistSizes, Tag, TagAppearances, definition$L as TagDefinition, TagEventNames, TagShapes, TagSizes, TagTextSizes, TeachingBubble, definition$K as TeachingBubbleDefinition, TeachingBubbleEventNames, TeachingBubblePlacements, TeachingBubbleSizes, Text, TextAligns, TextArea, TextareaAppearances as TextAreaAppearances, TextareaAppearancesForDisplayShadows as TextAreaAppearancesForDisplayShadows, TextareaAutocompletes as TextAreaAutocompletes, definition$6 as TextAreaDefinition, TextareaResizes as TextAreaResizes, TextareaSizes as TextAreaSizes, definition$4 as TextDefinition, TextFonts, TextInput, TextInputAppearances, TextInputControlSizes, definition$5 as TextInputDefinition, styles$1 as TextInputStyles, template$1 as TextInputTemplate, TextInputTypes, TextSizes, TextWeights, ToggleButton, ToggleButtonAppearances, definition$1 as ToggleButtonDefinition, ToggleButtonFormTargets, ToggleButtonShapes, ToggleButtonSizes, ToggleButtonTypes, Tooltip, definition as TooltipDefinition, TooltipPositioningOptions, Tree, definition$3 as TreeDefinition, TreeItem, definition$2 as TreeItemDefinition, styles as TreeItemStyles, template as TreeItemTemplate, ValidationFlags, Wizard, definition$J as WizardDefinition, WizardEvents, WizardPanel, definition$I as WizardPanelDefinition, WizardPanelEventNames, WizardPanelStates, WizardStep, definition$H as WizardStepDefinition, WizardStepEvents, WizardStepStates, applyMixins, attachMockElementInternals, createRovingFocusController, createUniqueId, debounce, debug, disabledState, expandedState, getDirection, getOptionsFromElement, globalDirectionDetector, inputElementMethods, isDisabledElement, isFocusableElement, isHiddenElement, isOptionGroup, isRtl, styles$2 as optionGroupStyles, template$2 as optionGroupTemplate, roleForMenuGroup, roleForMenuItem, setAttributes, setChildrenFocusability, setGlobalDirectionDetector, staticallyCompose, toggleState, whitespaceFilter };
9777
+ export type { AccordionExpandMode, AccordionItemMarkerPosition, AccordionItemSize, AccordionMenuExpandMode, AccordionMenuPanelMarkerPosition, AccordionMenuPanelSize, ButtonAppearance, ButtonFormTarget, ButtonShape, ButtonSize, ButtonType, CheckboxShape, CheckboxSize, CollisionEdge, CompoundButtonAppearance, CompoundButtonFormTarget, CompoundButtonShape, CompoundButtonSize, CompoundButtonType, CounterBadgeAppearance, CounterBadgeColor, CounterBadgeShape, CounterBadgeSize, DialogType, DirectionDetectorOptions, DirectionObserver, DirectionOrNull, DirectionStrategy, DividerAlignContent, DividerAppearance, DividerOrientation, DividerRole, DrawerPosition, DrawerSize, DrawerType, DropdownAppearance, DropdownSize, DropdownType, FilterPillAppearance, FilterPillFormTarget, FilterPillShape, FilterPillSize, FilterPillType, HTMLPopoverElement, ImageFit, ImageShape, LabelPosition, LabelSize, LabelWeight, MenuButtonAppearance, MenuButtonShape, MenuButtonSize, MenuGroupRole, MenuItemColumnCount, MenuItemRole, MenuPosition, MenuRepositionMode, MultiViewGroupPosition, PopoverEventData, PopoverMode, PopoverRepositionMode, PopoverSize, PositioningShorthandKeys, PositioningShorthandValues, ProgressBarShape, ProgressBarThickness, ProgressBarValidationState, RadioGroupOrientation, RatingDisplayColor, RatingDisplaySize, RovingFocusController, RovingFocusOptions, SearchBoxAppearance, SearchBoxControlSize, SearchBoxType, SliderMode, SliderOrientation, SliderSize, SlottableInput, SortDirection, SpinnerAppearance, SpinnerSize, StaticallyComposableHTML, TableCellRenderFunction, TableCellSize, TableColumnData, TableRowData, TablistAppearance, TablistOrientation, TablistSize, TagAppearance, TagShape, TagSize, TagTextSize, TeachingBubblePlacement, TeachingBubbleSize, TextAlign, TextareaAppearance as TextAreaAppearance, TextareaAppearancesForDisplayShadow as TextAreaAppearancesForDisplayShadow, TextareaAutocomplete as TextAreaAutocomplete, TextareaResize as TextAreaResize, TextareaSize as TextAreaSize, TextFont, TextInputAppearance, TextInputControlSize, TextInputOptions, TextInputType, TextSize, TextWeight, ToggleButtonAppearance, ToggleButtonFormTarget, ToggleButtonShape, ToggleButtonSize, ToggleButtonType, TooltipPositioningOption, ValidationFlag, WizardEvent, WizardPanelState, WizardStepEvent, WizardStepState };
9304
9778
  //# sourceMappingURL=index.d.ts.map