@fluentui/web-components 3.0.0-beta.71 → 3.0.0-beta.73

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 (179) hide show
  1. package/CHANGELOG.md +20 -2
  2. package/dist/dts/accordion/accordion.template.d.ts +1 -1
  3. package/dist/dts/accordion-item/accordion-item.d.ts +2 -2
  4. package/dist/dts/accordion-item/accordion-item.template.d.ts +1 -1
  5. package/dist/dts/anchor-button/anchor-button.d.ts +2 -2
  6. package/dist/dts/anchor-button/anchor-button.options.d.ts +1 -1
  7. package/dist/dts/anchor-button/anchor-button.template.d.ts +1 -1
  8. package/dist/dts/avatar/avatar.d.ts +1 -1
  9. package/dist/dts/avatar/avatar.template.d.ts +1 -1
  10. package/dist/dts/badge/badge.options.d.ts +1 -1
  11. package/dist/dts/badge/badge.template.d.ts +1 -1
  12. package/dist/dts/button/button.d.ts +1 -2
  13. package/dist/dts/button/button.options.d.ts +1 -1
  14. package/dist/dts/button/button.template.d.ts +2 -2
  15. package/dist/dts/compound-button/compound-button.options.d.ts +1 -1
  16. package/dist/dts/compound-button/compound-button.template.d.ts +1 -1
  17. package/dist/dts/counter-badge/counter-badge.options.d.ts +1 -1
  18. package/dist/dts/counter-badge/counter-badge.template.d.ts +2 -2
  19. package/dist/dts/dialog/dialog.template.d.ts +1 -1
  20. package/dist/dts/dialog-body/dialog-body.template.d.ts +1 -1
  21. package/dist/dts/divider/divider.d.ts +1 -1
  22. package/dist/dts/divider/divider.template.d.ts +1 -1
  23. package/dist/dts/drawer/drawer.template.d.ts +1 -1
  24. package/dist/dts/drawer-body/drawer-body.template.d.ts +1 -1
  25. package/dist/dts/field/field.d.ts +1 -1
  26. package/dist/dts/field/field.template.d.ts +1 -1
  27. package/dist/dts/image/image.template.d.ts +1 -1
  28. package/dist/dts/index-rollup.d.ts +1 -0
  29. package/dist/dts/index.d.ts +1 -0
  30. package/dist/dts/label/label.template.d.ts +2 -2
  31. package/dist/dts/link/link.d.ts +1 -1
  32. package/dist/dts/link/link.template.d.ts +1 -1
  33. package/dist/dts/menu/menu.d.ts +1 -1
  34. package/dist/dts/menu/menu.template.d.ts +1 -1
  35. package/dist/dts/menu-button/menu-button.template.d.ts +1 -1
  36. package/dist/dts/menu-item/menu-item.d.ts +1 -1
  37. package/dist/dts/menu-list/menu-list.template.d.ts +1 -1
  38. package/dist/dts/message-bar/message-bar.template.d.ts +1 -1
  39. package/dist/dts/patterns/start-end.d.ts +1 -1
  40. package/dist/dts/radio/radio.template.d.ts +1 -1
  41. package/dist/dts/radio-group/radio-group.template.d.ts +1 -1
  42. package/dist/dts/rating-display/rating-display.template.d.ts +1 -1
  43. package/dist/dts/slider/slider.d.ts +3 -3
  44. package/dist/dts/spinner/spinner.d.ts +1 -1
  45. package/dist/dts/spinner/spinner.template.d.ts +1 -1
  46. package/dist/dts/switch/switch.template.d.ts +2 -2
  47. package/dist/dts/tab/tab.d.ts +2 -1
  48. package/dist/dts/tab/tab.template.d.ts +1 -1
  49. package/dist/dts/tab-panel/tab-panel.template.d.ts +2 -2
  50. package/dist/dts/tablist/tablist.template.d.ts +1 -1
  51. package/dist/dts/tabs/tabs.d.ts +1 -1
  52. package/dist/dts/tabs/tabs.options.d.ts +2 -2
  53. package/dist/dts/tabs/tabs.template.d.ts +3 -3
  54. package/dist/dts/text/text.d.ts +1 -1
  55. package/dist/dts/text/text.template.d.ts +1 -1
  56. package/dist/dts/text-input/text-input.d.ts +1 -2
  57. package/dist/dts/textarea/textarea.template.d.ts +1 -1
  58. package/dist/dts/toggle-button/toggle-button.template.d.ts +1 -1
  59. package/dist/dts/tooltip/define.d.ts +1 -0
  60. package/dist/dts/tooltip/index.d.ts +5 -0
  61. package/dist/dts/tooltip/tooltip.d.ts +88 -0
  62. package/dist/dts/tooltip/tooltip.definition.d.ts +9 -0
  63. package/dist/dts/tooltip/tooltip.options.d.ts +24 -0
  64. package/dist/dts/tooltip/tooltip.styles.d.ts +5 -0
  65. package/dist/dts/tooltip/tooltip.template.d.ts +6 -0
  66. package/dist/dts/utils/element-internals.d.ts +23 -1
  67. package/dist/dts/utils/template-helpers.d.ts +1 -2
  68. package/dist/esm/accordion/accordion.template.js.map +1 -1
  69. package/dist/esm/accordion-item/accordion-item.js +4 -13
  70. package/dist/esm/accordion-item/accordion-item.js.map +1 -1
  71. package/dist/esm/accordion-item/accordion-item.template.js.map +1 -1
  72. package/dist/esm/anchor-button/anchor-button.js +5 -20
  73. package/dist/esm/anchor-button/anchor-button.js.map +1 -1
  74. package/dist/esm/anchor-button/anchor-button.template.js.map +1 -1
  75. package/dist/esm/avatar/avatar.js +3 -5
  76. package/dist/esm/avatar/avatar.js.map +1 -1
  77. package/dist/esm/avatar/avatar.template.js.map +1 -1
  78. package/dist/esm/badge/badge.js +6 -27
  79. package/dist/esm/badge/badge.js.map +1 -1
  80. package/dist/esm/badge/badge.template.js.map +1 -1
  81. package/dist/esm/button/button.js +6 -22
  82. package/dist/esm/button/button.js.map +1 -1
  83. package/dist/esm/button/button.template.js.map +1 -1
  84. package/dist/esm/checkbox/checkbox.js +5 -15
  85. package/dist/esm/checkbox/checkbox.js.map +1 -1
  86. package/dist/esm/compound-button/compound-button.template.js.map +1 -1
  87. package/dist/esm/counter-badge/counter-badge.js +6 -26
  88. package/dist/esm/counter-badge/counter-badge.js.map +1 -1
  89. package/dist/esm/counter-badge/counter-badge.template.js.map +1 -1
  90. package/dist/esm/dialog/dialog.template.js.map +1 -1
  91. package/dist/esm/dialog-body/dialog-body.template.js.map +1 -1
  92. package/dist/esm/divider/divider.js +6 -21
  93. package/dist/esm/divider/divider.js.map +1 -1
  94. package/dist/esm/divider/divider.template.js.map +1 -1
  95. package/dist/esm/drawer/drawer.template.js.map +1 -1
  96. package/dist/esm/drawer-body/drawer-body.template.js.map +1 -1
  97. package/dist/esm/field/field.js.map +1 -1
  98. package/dist/esm/field/field.template.js.map +1 -1
  99. package/dist/esm/image/image.js +4 -13
  100. package/dist/esm/image/image.js.map +1 -1
  101. package/dist/esm/image/image.template.js.map +1 -1
  102. package/dist/esm/index-rollup.js +1 -0
  103. package/dist/esm/index-rollup.js.map +1 -1
  104. package/dist/esm/index.js +1 -0
  105. package/dist/esm/index.js.map +1 -1
  106. package/dist/esm/label/label.js +4 -13
  107. package/dist/esm/label/label.js.map +1 -1
  108. package/dist/esm/label/label.template.js.map +1 -1
  109. package/dist/esm/link/link.js +3 -7
  110. package/dist/esm/link/link.js.map +1 -1
  111. package/dist/esm/link/link.template.js.map +1 -1
  112. package/dist/esm/menu/menu.js +0 -3
  113. package/dist/esm/menu/menu.js.map +1 -1
  114. package/dist/esm/menu/menu.template.js.map +1 -1
  115. package/dist/esm/menu-button/menu-button.template.js.map +1 -1
  116. package/dist/esm/menu-item/menu-item.js +0 -7
  117. package/dist/esm/menu-item/menu-item.js.map +1 -1
  118. package/dist/esm/menu-item/menu-item.template.js +1 -3
  119. package/dist/esm/menu-item/menu-item.template.js.map +1 -1
  120. package/dist/esm/menu-list/menu-list.js +1 -2
  121. package/dist/esm/menu-list/menu-list.js.map +1 -1
  122. package/dist/esm/menu-list/menu-list.template.js.map +1 -1
  123. package/dist/esm/message-bar/message-bar.js +5 -19
  124. package/dist/esm/message-bar/message-bar.js.map +1 -1
  125. package/dist/esm/message-bar/message-bar.template.js.map +1 -1
  126. package/dist/esm/patterns/start-end.js.map +1 -1
  127. package/dist/esm/progress-bar/progress-bar.js +5 -19
  128. package/dist/esm/progress-bar/progress-bar.js.map +1 -1
  129. package/dist/esm/progress-bar/progress-bar.options.js.map +1 -1
  130. package/dist/esm/radio/radio.template.js.map +1 -1
  131. package/dist/esm/radio-group/radio-group.js +1 -2
  132. package/dist/esm/radio-group/radio-group.js.map +1 -1
  133. package/dist/esm/radio-group/radio-group.template.js.map +1 -1
  134. package/dist/esm/rating-display/rating-display.js +4 -9
  135. package/dist/esm/rating-display/rating-display.js.map +1 -1
  136. package/dist/esm/rating-display/rating-display.template.js.map +1 -1
  137. package/dist/esm/slider/slider.js +5 -16
  138. package/dist/esm/slider/slider.js.map +1 -1
  139. package/dist/esm/spinner/spinner.js +4 -13
  140. package/dist/esm/spinner/spinner.js.map +1 -1
  141. package/dist/esm/switch/switch.template.js.map +1 -1
  142. package/dist/esm/tab/tab.js +1 -1
  143. package/dist/esm/tab/tab.js.map +1 -1
  144. package/dist/esm/tab/tab.template.js.map +1 -1
  145. package/dist/esm/tab-panel/tab-panel.template.js.map +1 -1
  146. package/dist/esm/tablist/tablist.js +6 -22
  147. package/dist/esm/tablist/tablist.js.map +1 -1
  148. package/dist/esm/tabs/tabs.js.map +1 -1
  149. package/dist/esm/tabs/tabs.template.js.map +1 -1
  150. package/dist/esm/text/text.js +6 -25
  151. package/dist/esm/text/text.js.map +1 -1
  152. package/dist/esm/text/text.template.js.map +1 -1
  153. package/dist/esm/text-input/text-input.js +5 -16
  154. package/dist/esm/text-input/text-input.js.map +1 -1
  155. package/dist/esm/textarea/textarea.js +10 -23
  156. package/dist/esm/textarea/textarea.js.map +1 -1
  157. package/dist/esm/textarea/textarea.template.js.map +1 -1
  158. package/dist/esm/tooltip/define.js +4 -0
  159. package/dist/esm/tooltip/define.js.map +1 -0
  160. package/dist/esm/tooltip/index.js +6 -0
  161. package/dist/esm/tooltip/index.js.map +1 -0
  162. package/dist/esm/tooltip/tooltip.definition.js +17 -0
  163. package/dist/esm/tooltip/tooltip.definition.js.map +1 -0
  164. package/dist/esm/tooltip/tooltip.js +188 -0
  165. package/dist/esm/tooltip/tooltip.js.map +1 -0
  166. package/dist/esm/tooltip/tooltip.options.js +19 -0
  167. package/dist/esm/tooltip/tooltip.options.js.map +1 -0
  168. package/dist/esm/tooltip/tooltip.styles.js +95 -0
  169. package/dist/esm/tooltip/tooltip.styles.js.map +1 -0
  170. package/dist/esm/tooltip/tooltip.template.js +11 -0
  171. package/dist/esm/tooltip/tooltip.template.js.map +1 -0
  172. package/dist/esm/utils/element-internals.js +45 -0
  173. package/dist/esm/utils/element-internals.js.map +1 -1
  174. package/dist/esm/utils/template-helpers.js +1 -1
  175. package/dist/esm/utils/template-helpers.js.map +1 -1
  176. package/dist/web-components.d.ts +130 -6
  177. package/dist/web-components.js +1134 -940
  178. package/dist/web-components.min.js +343 -330
  179. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,12 +1,30 @@
1
1
  # Change Log - @fluentui/web-components
2
2
 
3
- This log was last generated on Tue, 29 Oct 2024 04:06:37 GMT and should not be manually modified.
3
+ This log was last generated on Thu, 07 Nov 2024 04:07:30 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## [3.0.0-beta.73](https://github.com/microsoft/fluentui/tree/@fluentui/web-components_v3.0.0-beta.73)
8
+
9
+ Thu, 07 Nov 2024 04:07:30 GMT
10
+ [Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/web-components_v3.0.0-beta.72..@fluentui/web-components_v3.0.0-beta.73)
11
+
12
+ ### Changes
13
+
14
+ - feat: add Tooltip component ([PR #32852](https://github.com/microsoft/fluentui/pull/32852) by rupertdavid@microsoft.com)
15
+
16
+ ## [3.0.0-beta.72](https://github.com/microsoft/fluentui/tree/@fluentui/web-components_v3.0.0-beta.72)
17
+
18
+ Wed, 30 Oct 2024 04:06:53 GMT
19
+ [Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/web-components_v3.0.0-beta.71..@fluentui/web-components_v3.0.0-beta.72)
20
+
21
+ ### Changes
22
+
23
+ - add swapStates function for attribute-driven internal states ([PR #33156](https://github.com/microsoft/fluentui/pull/33156) by 863023+radium-v@users.noreply.github.com)
24
+
7
25
  ## [3.0.0-beta.71](https://github.com/microsoft/fluentui/tree/@fluentui/web-components_v3.0.0-beta.71)
8
26
 
9
- Tue, 29 Oct 2024 04:06:37 GMT
27
+ Tue, 29 Oct 2024 04:06:49 GMT
10
28
  [Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/web-components_v3.0.0-beta.70..@fluentui/web-components_v3.0.0-beta.71)
11
29
 
12
30
  ### Changes
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Accordion } from './accordion.js';
3
3
  /**
4
4
  * @public
@@ -101,7 +101,7 @@ export declare class AccordionItem extends BaseAccordionItem {
101
101
  * @param prev - previous value
102
102
  * @param next - next value
103
103
  */
104
- sizeChanged(prev: AccordionItemSize, next: AccordionItemSize): void;
104
+ sizeChanged(prev: AccordionItemSize | undefined, next: AccordionItemSize | undefined): void;
105
105
  /**
106
106
  * Sets expand and collapsed icon position.
107
107
  *
@@ -115,7 +115,7 @@ export declare class AccordionItem extends BaseAccordionItem {
115
115
  * @param prev - previous value
116
116
  * @param next - next value
117
117
  */
118
- markerPositionChanged(prev: AccordionItemMarkerPosition, next: AccordionItemMarkerPosition): void;
118
+ markerPositionChanged(prev: AccordionItemMarkerPosition | undefined, next: AccordionItemMarkerPosition | undefined): void;
119
119
  /**
120
120
  * Sets the width of the focus state.
121
121
  *
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { AccordionItem, AccordionItemOptions } from './accordion-item.js';
3
3
  export declare function accordionItemTemplate<T extends AccordionItem>(options?: AccordionItemOptions): ElementViewTemplate<T>;
4
4
  /**
@@ -1,7 +1,7 @@
1
1
  import { FASTElement } from '@microsoft/fast-element';
2
- import { StartEnd } from '../patterns/index.js';
3
2
  import type { StartEndOptions } from '../patterns/index.js';
4
- import { type AnchorButtonAppearance, type AnchorButtonShape, type AnchorButtonSize, type AnchorTarget } from './anchor-button.options.js';
3
+ import { StartEnd } from '../patterns/index.js';
4
+ import { AnchorButtonAppearance, AnchorButtonShape, AnchorButtonSize, type AnchorTarget } from './anchor-button.options.js';
5
5
  /**
6
6
  * Anchor configuration options
7
7
  * @public
@@ -43,7 +43,7 @@ export declare const AnchorButtonSize: {
43
43
  * @public
44
44
  */
45
45
  export type AnchorButtonSize = ValuesOf<typeof AnchorButtonSize>;
46
- export { AnchorOptions as AnchorButtonOptions };
46
+ export type { AnchorOptions as AnchorButtonOptions };
47
47
  /**
48
48
  * Anchor target values.
49
49
  *
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate, ViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate, type ViewTemplate } from '@microsoft/fast-element';
2
2
  import type { AnchorButton, AnchorOptions } from './anchor-button.js';
3
3
  /**
4
4
  * The template for the Button component.
@@ -1,5 +1,5 @@
1
1
  import { FASTElement } from '@microsoft/fast-element';
2
- import { AvatarActive, AvatarAppearance, AvatarColor, AvatarNamedColor, AvatarShape, AvatarSize } from './avatar.options.js';
2
+ import { type AvatarActive, type AvatarAppearance, AvatarColor, AvatarNamedColor, type AvatarShape, type AvatarSize } from './avatar.options.js';
3
3
  /**
4
4
  * The base class used for constructing a fluent-avatar custom element
5
5
  * @public
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Avatar } from './avatar.js';
3
3
  /**
4
4
  * The template for the Avatar component.
@@ -1,4 +1,4 @@
1
- import { StartEndOptions } from '../patterns/index.js';
1
+ import type { StartEndOptions } from '../patterns/index.js';
2
2
  import type { StaticallyComposableHTML, ValuesOf } from '../utils/index.js';
3
3
  import type { Badge } from './badge.js';
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Badge } from './badge.js';
3
3
  import type { BadgeOptions } from './badge.options.js';
4
4
  /**
@@ -1,7 +1,6 @@
1
1
  import { FASTElement } from '@microsoft/fast-element';
2
2
  import { StartEnd } from '../patterns/index.js';
3
- import type { ButtonAppearance, ButtonFormTarget, ButtonShape, ButtonSize } from './button.options.js';
4
- import { ButtonType } from './button.options.js';
3
+ import { ButtonAppearance, ButtonFormTarget, ButtonShape, ButtonSize, ButtonType } from './button.options.js';
5
4
  /**
6
5
  * A Button Custom HTML Element.
7
6
  * Based largely on the {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button | `<button>`} element.
@@ -1,4 +1,4 @@
1
- import { StartEndOptions } from '../patterns/index.js';
1
+ import type { StartEndOptions } from '../patterns/index.js';
2
2
  import type { ValuesOf } from '../utils/index.js';
3
3
  import type { Button } from './button.js';
4
4
  /**
@@ -1,6 +1,6 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Button } from './button.js';
3
- import { ButtonOptions } from './button.options.js';
3
+ import type { ButtonOptions } from './button.options.js';
4
4
  /**
5
5
  * Generates a template for the Button component.
6
6
  *
@@ -43,4 +43,4 @@ export declare const CompoundButtonSize: {
43
43
  * @public
44
44
  */
45
45
  export type CompoundButtonSize = ValuesOf<typeof CompoundButtonSize>;
46
- export { ButtonOptions as CompoundButtonOptions };
46
+ export type { ButtonOptions as CompoundButtonOptions };
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { CompoundButton } from './compound-button.js';
3
3
  import type { CompoundButtonOptions } from './compound-button.options.js';
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { BadgeOptions } from '../badge/badge.options.js';
1
+ import type { BadgeOptions } from '../badge/badge.options.js';
2
2
  import type { ValuesOf } from '../utils/index.js';
3
3
  /**
4
4
  * CounterBadge options
@@ -1,5 +1,5 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
2
- import { CounterBadge } from './counter-badge.js';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
+ import type { CounterBadge } from './counter-badge.js';
3
3
  /**
4
4
  * The template for the Counter Badge component.
5
5
  * @public
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Dialog } from './dialog.js';
3
3
  /**
4
4
  * Template for the Dialog component
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  /**
3
3
  * Template for the dialog form
4
4
  * @public
@@ -45,7 +45,7 @@ export declare class BaseDivider extends FASTElement {
45
45
  * @param next - the current orientation value
46
46
  * @internal
47
47
  */
48
- orientationChanged(previous: string | null, next: string | null): void;
48
+ orientationChanged(previous: DividerRole | undefined, next: DividerRole | undefined): void;
49
49
  }
50
50
  /**
51
51
  * A Divider Custom HTML Element.
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Divider } from './divider.js';
3
3
  export declare function dividerTemplate<T extends Divider>(): ElementViewTemplate<T>;
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Drawer } from './drawer.js';
3
3
  /**
4
4
  * The template for the Drawer component.
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { DrawerBody } from './drawer-body.js';
3
3
  /**
4
4
  * The template for the Drawer component.
@@ -1,5 +1,5 @@
1
1
  import { FASTElement } from '@microsoft/fast-element';
2
- import { LabelPosition, SlottableInput } from './field.options.js';
2
+ import { LabelPosition, type SlottableInput } from './field.options.js';
3
3
  /**
4
4
  * A Field Custom HTML Element.
5
5
  *
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  /**
3
3
  * Template for the Field component
4
4
  * @public
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Image } from './image.js';
3
3
  /**
4
4
  * Template for the Image component
@@ -36,3 +36,4 @@ import './textarea/define.js';
36
36
  import './text-input/define.js';
37
37
  import './text/define.js';
38
38
  import './toggle-button/define.js';
39
+ import './tooltip/define.js';
@@ -55,6 +55,7 @@ export * from './theme/design-tokens.js';
55
55
  export { setTheme, setThemeFor, type Theme } from './theme/index.js';
56
56
  export { ToggleButton, ToggleButtonAppearance, ToggleButtonDefinition, ToggleButtonShape, ToggleButtonSize, ToggleButtonStyles, ToggleButtonTemplate, } from './toggle-button/index.js';
57
57
  export type { ToggleButtonOptions } from './toggle-button/index.js';
58
+ export { Tooltip, TooltipDefinition, TooltipPositioningOption, TooltipStyles, TooltipTemplate, } from './tooltip/index.js';
58
59
  export { darkModeStylesheetBehavior, forcedColorsStylesheetBehavior, lightModeStylesheetBehavior, MatchMediaBehavior, MatchMediaStyleSheetBehavior, } from './utils/behaviors/match-media-stylesheet-behavior.js';
59
60
  export type { MediaQueryListListener } from './utils/behaviors/match-media-stylesheet-behavior.js';
60
61
  export { getDirection } from './utils/direction.js';
@@ -1,5 +1,5 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
2
- import { Label } from './label.js';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
+ import type { Label } from './label.js';
3
3
  /**
4
4
  * The template for the Fluent label web-component.
5
5
  * @public
@@ -1,5 +1,5 @@
1
1
  import { BaseAnchor } from '../anchor-button/anchor-button.js';
2
- import { type LinkAppearance } from './link.options.js';
2
+ import { LinkAppearance } from './link.options.js';
3
3
  /**
4
4
  * An Anchor Custom HTML Element.
5
5
  * Based largely on the {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a | <a> element }.
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate, ViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate, ViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Link } from './link.js';
3
3
  /**
4
4
  * The template for the Link component.
@@ -1,5 +1,5 @@
1
1
  import { FASTElement } from '@microsoft/fast-element';
2
- import { MenuList } from '../menu-list/menu-list.js';
2
+ import type { MenuList } from '../menu-list/menu-list.js';
3
3
  /**
4
4
  * A Menu component that provides a customizable menu element.
5
5
  * @class Menu
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Menu } from './menu.js';
3
3
  export declare function menuTemplate<T extends Menu>(): ElementViewTemplate<T>;
4
4
  export declare const template: ElementViewTemplate<Menu>;
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { MenuButton } from './menu-button.js';
3
3
  /**
4
4
  * The template for the Button component.
@@ -1,4 +1,4 @@
1
- import { ElementsFilter, FASTElement } from '@microsoft/fast-element';
1
+ import { type ElementsFilter, FASTElement } from '@microsoft/fast-element';
2
2
  import type { StartEndOptions } from '../patterns/start-end.js';
3
3
  import { StartEnd } from '../patterns/start-end.js';
4
4
  import type { StaticallyComposableHTML } from '../utils/template-helpers.js';
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { MenuList } from './menu-list.js';
3
3
  export declare function menuTemplate<T extends MenuList>(): ElementViewTemplate<T>;
4
4
  export declare const template: ElementViewTemplate<MenuList>;
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { MessageBar } from './message-bar.js';
3
3
  /**
4
4
  * Generates a template for the MessageBar component.
@@ -1,4 +1,4 @@
1
- import { CaptureType } from '@microsoft/fast-element';
1
+ import { type CaptureType } from '@microsoft/fast-element';
2
2
  import type { StaticallyComposableHTML } from '../utils/index.js';
3
3
  /**
4
4
  * Start configuration options
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Radio } from './radio.js';
3
3
  import type { RadioOptions } from './radio.options.js';
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { RadioGroup } from './radio-group.js';
3
3
  export declare function radioGroupTemplate<T extends RadioGroup>(): ElementViewTemplate<T>;
4
4
  export declare const template: ElementViewTemplate<RadioGroup>;
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { RatingDisplay } from './rating-display.js';
3
3
  /**
4
4
  * Generates a template for the Rating Display component.
@@ -1,6 +1,6 @@
1
1
  import { FASTElement } from '@microsoft/fast-element';
2
2
  import { Direction, Orientation } from '@microsoft/fast-web-utilities';
3
- import { SliderConfiguration, SliderMode, SliderSize } from './slider.options.js';
3
+ import { type SliderConfiguration, SliderMode, SliderSize } from './slider.options.js';
4
4
  /**
5
5
  * The base class used for constructing a fluent-slider custom element
6
6
  *
@@ -38,7 +38,7 @@ export declare class Slider extends FASTElement implements SliderConfiguration {
38
38
  * HTML Attribute: size
39
39
  */
40
40
  size?: SliderSize;
41
- protected sizeChanged(prev: string, next: string): void;
41
+ protected sizeChanged(prev: SliderSize | undefined, next: SliderSize | undefined): void;
42
42
  handleChange(_: any, propertyName: string): void;
43
43
  private stepStyles?;
44
44
  /**
@@ -277,7 +277,7 @@ export declare class Slider extends FASTElement implements SliderConfiguration {
277
277
  * apply different behavior when it’s vertical.
278
278
  */
279
279
  orientation?: Orientation;
280
- protected orientationChanged(prev: string | undefined, next: string | undefined): void;
280
+ protected orientationChanged(prev: Orientation | undefined, next: Orientation | undefined): void;
281
281
  /**
282
282
  * The selection mode.
283
283
  *
@@ -1,5 +1,5 @@
1
1
  import { FASTElement } from '@microsoft/fast-element';
2
- import type { SpinnerAppearance, SpinnerSize } from './spinner.options.js';
2
+ import { SpinnerAppearance, SpinnerSize } from './spinner.options.js';
3
3
  /**
4
4
  * The base class used for constructing a fluent-spinner custom element
5
5
  * @public
@@ -1,2 +1,2 @@
1
- import { Spinner } from './spinner.js';
1
+ import type { Spinner } from './spinner.js';
2
2
  export declare const template: import("@microsoft/fast-element").ViewTemplate<Spinner, any>;
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
2
- import { Switch, SwitchOptions } from './switch.js';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
+ import type { Switch, SwitchOptions } from './switch.js';
3
3
  export declare function switchTemplate<T extends Switch>(options?: SwitchOptions): ElementViewTemplate<T>;
4
4
  export declare const template: ElementViewTemplate<Switch>;
@@ -1,5 +1,6 @@
1
1
  import { FASTElement } from '@microsoft/fast-element';
2
- import { StartEnd, StartEndOptions } from '../patterns/index.js';
2
+ import type { StartEndOptions } from '../patterns/start-end.js';
3
+ import { StartEnd } from '../patterns/start-end.js';
3
4
  /**
4
5
  * Tab configuration options
5
6
  * @public
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Tab, TabOptions } from './tab.js';
3
3
  export declare function tabTemplate<T extends Tab>(options?: TabOptions): ElementViewTemplate<T>;
4
4
  export declare const template: ElementViewTemplate<Tab, any>;
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
2
- import { TabPanel } from './tab-panel.js';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
+ import type { TabPanel } from './tab-panel.js';
3
3
  export declare function tabPanelTemplate<T extends TabPanel>(): ElementViewTemplate<T>;
4
4
  export declare const template: ElementViewTemplate<TabPanel, any>;
@@ -1,4 +1,4 @@
1
- import { Tablist } from './tablist.js';
1
+ import type { Tablist } from './tablist.js';
2
2
  /**
3
3
  * @public
4
4
  */
@@ -1,6 +1,6 @@
1
1
  import { FASTElement } from '@microsoft/fast-element';
2
2
  import { StartEnd } from '../patterns/index.js';
3
- import { TabsAppearance, TabsOrientation, TabsSize } from './tabs.options.js';
3
+ import { TabsAppearance, TabsOrientation, type TabsSize } from './tabs.options.js';
4
4
  /**
5
5
  * A Tabs component that wraps a collection of tab and tab panel elements.
6
6
  *
@@ -1,6 +1,6 @@
1
- import { StartEndOptions } from '../patterns/index.js';
1
+ import type { StartEndOptions } from '../patterns/start-end.js';
2
2
  import type { ValuesOf } from '../utils/index.js';
3
- import { Tabs } from './tabs.js';
3
+ import type { Tabs } from './tabs.js';
4
4
  export declare const TabsAppearance: {
5
5
  readonly subtle: "subtle";
6
6
  readonly transparent: "transparent";
@@ -1,5 +1,5 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
2
- import { Tabs } from './tabs.js';
3
- import { TabsOptions } from './tabs.options.js';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
+ import type { Tabs } from './tabs.js';
3
+ import type { TabsOptions } from './tabs.options.js';
4
4
  export declare function tabsTemplate<T extends Tabs>(options?: TabsOptions): ElementViewTemplate<T>;
5
5
  export declare const template: ElementViewTemplate<Tabs, any>;
@@ -1,5 +1,5 @@
1
1
  import { FASTElement } from '@microsoft/fast-element';
2
- import type { TextAlign, TextFont, TextSize, TextWeight } from './text.options.js';
2
+ import { TextAlign, TextFont, TextSize, TextWeight } from './text.options.js';
3
3
  /**
4
4
  * The base class used for constructing a fluent-text custom element
5
5
  * @public
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { Text } from './text.js';
3
3
  /**
4
4
  * @internal
@@ -1,7 +1,6 @@
1
1
  import { FASTElement } from '@microsoft/fast-element';
2
2
  import { StartEnd } from '../patterns/start-end.js';
3
- import type { TextInputControlSize } from './text-input.options.js';
4
- import { TextInputAppearance, TextInputType } from './text-input.options.js';
3
+ import { TextInputAppearance, TextInputControlSize, TextInputType } from './text-input.options.js';
5
4
  /**
6
5
  * A Text Input Custom HTML Element.
7
6
  * Based largely on the {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input | `<input>`} element.
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import { type ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { TextArea } from './textarea.js';
3
3
  /**
4
4
  * Generates a template for the TextArea component.
@@ -1,4 +1,4 @@
1
- import { ElementViewTemplate } from '@microsoft/fast-element';
1
+ import type { ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { ToggleButton } from './toggle-button.js';
3
3
  /**
4
4
  * The template for the ToggleButton component.
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ export { definition as TooltipDefinition } from './tooltip.definition.js';
2
+ export { Tooltip } from './tooltip.js';
3
+ export { TooltipPositioningOption } from './tooltip.options.js';
4
+ export { styles as TooltipStyles } from './tooltip.styles.js';
5
+ export { template as TooltipTemplate } from './tooltip.template.js';
@@ -0,0 +1,88 @@
1
+ import { FASTElement } from '@microsoft/fast-element';
2
+ import type { TooltipPositioningOption } from './tooltip.options.js';
3
+ /**
4
+ * A Tooltip Custom HTML Element.
5
+ * Based on ARIA APG Tooltip Pattern {@link https://www.w3.org/WAI/ARIA/apg/patterns/tooltip/ }
6
+ * @public
7
+ */
8
+ export declare class Tooltip extends FASTElement {
9
+ /**
10
+ * The attached element internals
11
+ */
12
+ elementInternals: ElementInternals;
13
+ /**
14
+ * The item ID
15
+ *
16
+ * @public
17
+ * @remarks
18
+ * HTML Attribute: id
19
+ */
20
+ id: string;
21
+ /**
22
+ * Set the delay for the tooltip
23
+ */
24
+ delay?: number;
25
+ /**
26
+ * The default delay for the tooltip
27
+ * @internal
28
+ */
29
+ private defaultDelay;
30
+ /**
31
+ * Set the positioning of the tooltip
32
+ */
33
+ positioning?: TooltipPositioningOption;
34
+ /**
35
+ * The id of the anchor element for the tooltip
36
+ */
37
+ anchor: string;
38
+ /**
39
+ * Reference to the anchor element
40
+ * @internal
41
+ */
42
+ private get anchorElement();
43
+ /**
44
+ * Reference to the anchor positioning style element
45
+ * @internal
46
+ */
47
+ protected anchorPositioningStyleElement: HTMLStyleElement | null;
48
+ constructor();
49
+ connectedCallback(): void;
50
+ disconnectedCallback(): void;
51
+ /**
52
+ * Shows the tooltip
53
+ * @param delay Number of milliseconds to delay showing the tooltip
54
+ * @internal
55
+ */
56
+ showTooltip(delay?: number): void;
57
+ /**
58
+ * Hide the tooltip
59
+ * @param delay Number of milliseconds to delay hiding the tooltip
60
+ * @internal
61
+ */
62
+ hideTooltip(delay?: number): void;
63
+ /**
64
+ * Show the tooltip on mouse enter
65
+ */
66
+ mouseenterAnchorHandler: () => void;
67
+ /**
68
+ * Hide the tooltip on mouse leave
69
+ */
70
+ mouseleaveAnchorHandler: () => void;
71
+ /**
72
+ * Show the tooltip on focus
73
+ */
74
+ focusAnchorHandler: () => void;
75
+ /**
76
+ * Hide the tooltip on blur
77
+ */
78
+ blurAnchorHandler: () => void;
79
+ }
80
+ declare global {
81
+ interface Window {
82
+ CSS_ANCHOR_POLYFILL?: {
83
+ call: (options: {
84
+ element: HTMLStyleElement;
85
+ }) => void;
86
+ };
87
+ }
88
+ }