@fluentui/web-components 3.0.0-beta.30 → 3.0.0-beta.31

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 (49) hide show
  1. package/CHANGELOG.md +12 -2
  2. package/dist/dts/anchor-button/anchor-button.d.ts +38 -3
  3. package/dist/dts/anchor-button/anchor-button.options.d.ts +0 -1
  4. package/dist/dts/badge/badge.d.ts +30 -0
  5. package/dist/dts/button/button.d.ts +25 -1
  6. package/dist/dts/button/button.options.d.ts +0 -1
  7. package/dist/dts/compound-button/compound-button.options.d.ts +0 -5
  8. package/dist/dts/counter-badge/counter-badge.d.ts +36 -0
  9. package/dist/dts/menu-button/menu-button.options.d.ts +0 -1
  10. package/dist/dts/styles/states/index.d.ts +110 -0
  11. package/dist/dts/toggle-button/toggle-button.options.d.ts +0 -1
  12. package/dist/esm/anchor-button/anchor-button.js +76 -8
  13. package/dist/esm/anchor-button/anchor-button.js.map +1 -1
  14. package/dist/esm/anchor-button/anchor-button.styles.js +8 -1
  15. package/dist/esm/anchor-button/anchor-button.styles.js.map +1 -1
  16. package/dist/esm/anchor-button/anchor-button.template.js +2 -2
  17. package/dist/esm/anchor-button/anchor-button.template.js.map +1 -1
  18. package/dist/esm/badge/badge.js +59 -0
  19. package/dist/esm/badge/badge.js.map +1 -1
  20. package/dist/esm/badge/badge.styles.js +6 -5
  21. package/dist/esm/badge/badge.styles.js.map +1 -1
  22. package/dist/esm/button/button.js +48 -0
  23. package/dist/esm/button/button.js.map +1 -1
  24. package/dist/esm/button/button.options.js +0 -1
  25. package/dist/esm/button/button.options.js.map +1 -1
  26. package/dist/esm/button/button.styles.js +40 -49
  27. package/dist/esm/button/button.styles.js.map +1 -1
  28. package/dist/esm/compound-button/compound-button.styles.js +14 -15
  29. package/dist/esm/compound-button/compound-button.styles.js.map +1 -1
  30. package/dist/esm/counter-badge/counter-badge.js +67 -0
  31. package/dist/esm/counter-badge/counter-badge.js.map +1 -1
  32. package/dist/esm/counter-badge/counter-badge.styles.js +12 -6
  33. package/dist/esm/counter-badge/counter-badge.styles.js.map +1 -1
  34. package/dist/esm/link/link.styles.js +6 -0
  35. package/dist/esm/link/link.styles.js.map +1 -1
  36. package/dist/esm/link/link.template.js +2 -2
  37. package/dist/esm/link/link.template.js.map +1 -1
  38. package/dist/esm/styles/partials/badge.partials.js +43 -42
  39. package/dist/esm/styles/partials/badge.partials.js.map +1 -1
  40. package/dist/esm/styles/states/index.js +112 -0
  41. package/dist/esm/styles/states/index.js.map +1 -0
  42. package/dist/esm/toggle-button/toggle-button.js +2 -1
  43. package/dist/esm/toggle-button/toggle-button.js.map +1 -1
  44. package/dist/esm/toggle-button/toggle-button.styles.js +24 -23
  45. package/dist/esm/toggle-button/toggle-button.styles.js.map +1 -1
  46. package/dist/web-components.d.ts +129 -13
  47. package/dist/web-components.js +343 -80
  48. package/dist/web-components.min.js +305 -304
  49. package/package.json +3 -2
@@ -2,6 +2,7 @@ import { css } from '@microsoft/fast-element';
2
2
  import { styles as ButtonStyles } from '../button/button.styles.js';
3
3
  import { colorBrandBackgroundHover, colorBrandBackgroundPressed, colorBrandBackgroundSelected, colorNeutralBackground1Hover, colorNeutralBackground1Pressed, colorNeutralBackground1Selected, colorNeutralForeground1, colorNeutralForeground2BrandHover, colorNeutralForeground2BrandPressed, colorNeutralForeground2BrandSelected, colorNeutralForeground2Hover, colorNeutralForeground2Pressed, colorNeutralForeground2Selected, colorNeutralForegroundOnBrand, colorNeutralStroke1, colorNeutralStroke1Hover, colorNeutralStroke1Pressed, colorSubtleBackgroundHover, colorSubtleBackgroundPressed, colorSubtleBackgroundSelected, colorTransparentBackgroundHover, colorTransparentBackgroundPressed, colorTransparentBackgroundSelected, strokeWidthThin, } from '../theme/design-tokens.js';
4
4
  import { forcedColorsStylesheetBehavior } from '../utils/behaviors/match-media-stylesheet-behavior.js';
5
+ import { outlineState, pressedState, primaryState, subtleState, transparentState } from '../styles/states/index.js';
5
6
  /**
6
7
  * The styles for the ToggleButton component.
7
8
  *
@@ -12,86 +13,86 @@ import { forcedColorsStylesheetBehavior } from '../utils/behaviors/match-media-s
12
13
  export const styles = css `
13
14
  ${ButtonStyles}
14
15
 
15
- :host([aria-pressed='true']) {
16
+ :host(${pressedState}) {
16
17
  border-color: ${colorNeutralStroke1};
17
18
  background-color: ${colorNeutralBackground1Selected};
18
19
  color: ${colorNeutralForeground1};
19
20
  border-width: ${strokeWidthThin};
20
21
  }
21
22
 
22
- :host([aria-pressed='true']:hover) {
23
+ :host(${pressedState}:hover) {
23
24
  border-color: ${colorNeutralStroke1Hover};
24
25
  background-color: ${colorNeutralBackground1Hover};
25
26
  }
26
27
 
27
- :host([aria-pressed='true']:active) {
28
+ :host(${pressedState}:active) {
28
29
  border-color: ${colorNeutralStroke1Pressed};
29
30
  background-color: ${colorNeutralBackground1Pressed};
30
31
  }
31
32
 
32
- :host([aria-pressed='true'][appearance='primary']) {
33
+ :host(${pressedState}${primaryState}) {
33
34
  border-color: transparent;
34
35
  background-color: ${colorBrandBackgroundSelected};
35
36
  color: ${colorNeutralForegroundOnBrand};
36
37
  }
37
38
 
38
- :host([aria-pressed='true'][appearance='primary']:hover) {
39
+ :host(${pressedState}${primaryState}:hover) {
39
40
  background-color: ${colorBrandBackgroundHover};
40
41
  }
41
42
 
42
- :host([aria-pressed='true'][appearance='primary']:active) {
43
+ :host(${pressedState}${primaryState}:active) {
43
44
  background-color: ${colorBrandBackgroundPressed};
44
45
  }
45
46
 
46
- :host([aria-pressed='true'][appearance='subtle']) {
47
+ :host(${pressedState}${subtleState}) {
47
48
  border-color: transparent;
48
49
  background-color: ${colorSubtleBackgroundSelected};
49
50
  color: ${colorNeutralForeground2Selected};
50
51
  }
51
52
 
52
- :host([aria-pressed='true'][appearance='subtle']:hover) {
53
+ :host(${pressedState}${subtleState}:hover) {
53
54
  background-color: ${colorSubtleBackgroundHover};
54
55
  color: ${colorNeutralForeground2Hover};
55
56
  }
56
57
 
57
- :host([aria-pressed='true'][appearance='subtle']:active) {
58
+ :host(${pressedState}${subtleState}:active) {
58
59
  background-color: ${colorSubtleBackgroundPressed};
59
60
  color: ${colorNeutralForeground2Pressed};
60
61
  }
61
62
 
62
- :host([aria-pressed='true'][appearance='outline']),
63
- :host([aria-pressed='true'][appearance='transparent']) {
63
+ :host(${pressedState}${outlineState}),
64
+ :host(${pressedState}${transparentState}) {
64
65
  background-color: ${colorTransparentBackgroundSelected};
65
66
  }
66
67
 
67
- :host([aria-pressed='true'][appearance='outline']:hover),
68
- :host([aria-pressed='true'][appearance='transparent']:hover) {
68
+ :host(${pressedState}${outlineState}:hover),
69
+ :host(${pressedState}${transparentState}:hover) {
69
70
  background-color: ${colorTransparentBackgroundHover};
70
71
  }
71
72
 
72
- :host([aria-pressed='true'][appearance='outline']:active),
73
- :host([aria-pressed='true'][appearance='transparent']:active) {
73
+ :host(${pressedState}${outlineState}:active),
74
+ :host(${pressedState}${transparentState}:active) {
74
75
  background-color: ${colorTransparentBackgroundPressed};
75
76
  }
76
77
 
77
- :host([aria-pressed='true'][appearance='transparent']) {
78
+ :host(${pressedState}${transparentState}) {
78
79
  border-color: transparent;
79
80
  color: ${colorNeutralForeground2BrandSelected};
80
81
  }
81
82
 
82
- :host([aria-pressed='true'][appearance='transparent']:hover) {
83
+ :host(${pressedState}${transparentState}:hover) {
83
84
  color: ${colorNeutralForeground2BrandHover};
84
85
  }
85
86
 
86
- :host([aria-pressed='true'][appearance='transparent']:active) {
87
+ :host(${pressedState}${transparentState}:active) {
87
88
  color: ${colorNeutralForeground2BrandPressed};
88
89
  }
89
90
  `.withBehaviors(forcedColorsStylesheetBehavior(css `
90
- :host([aria-pressed='true']),
91
- :host([aria-pressed='true'][appearance='primary']),
92
- :host([aria-pressed='true'][appearance='subtle']),
93
- :host([aria-pressed='true'][appearance='outline']),
94
- :host([aria-pressed='true'][appearance='transparent']) {
91
+ :host(${pressedState}),
92
+ :host(${pressedState}${primaryState}),
93
+ :host(${pressedState}${subtleState}),
94
+ :host(${pressedState}${outlineState}),
95
+ :host(${pressedState}${transparentState}) {
95
96
  background: SelectedItem;
96
97
  color: SelectedItemText;
97
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-button.styles.js","sourceRoot":"","sources":["../../../src/toggle-button/toggle-button.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,4BAA4B,EAC5B,4BAA4B,EAC5B,8BAA8B,EAC9B,+BAA+B,EAC/B,uBAAuB,EACvB,iCAAiC,EACjC,mCAAmC,EACnC,oCAAoC,EACpC,4BAA4B,EAC5B,8BAA8B,EAC9B,+BAA+B,EAC/B,6BAA6B,EAC7B,mBAAmB,EACnB,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,6BAA6B,EAC7B,+BAA+B,EAC/B,iCAAiC,EACjC,kCAAkC,EAClC,eAAe,GAChB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,8BAA8B,EAAE,MAAM,uDAAuD,CAAC;AAEvG;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;IACrB,YAAY;;;oBAGI,mBAAmB;wBACf,+BAA+B;aAC1C,uBAAuB;oBAChB,eAAe;;;;oBAIf,wBAAwB;wBACpB,4BAA4B;;;;oBAIhC,0BAA0B;wBACtB,8BAA8B;;;;;wBAK9B,4BAA4B;aACvC,6BAA6B;;;;wBAIlB,yBAAyB;;;;wBAIzB,2BAA2B;;;;;wBAK3B,6BAA6B;aACxC,+BAA+B;;;;wBAIpB,0BAA0B;aACrC,4BAA4B;;;;wBAIjB,4BAA4B;aACvC,8BAA8B;;;;;wBAKnB,kCAAkC;;;;;wBAKlC,+BAA+B;;;;;wBAK/B,iCAAiC;;;;;aAK5C,oCAAoC;;;;aAIpC,iCAAiC;;;;aAIjC,mCAAmC;;CAE/C,CAAC,aAAa,CACb,8BAA8B,CAAC,GAAG,CAAA;;;;;;;;;GASjC,CAAC,CACH,CAAC"}
1
+ {"version":3,"file":"toggle-button.styles.js","sourceRoot":"","sources":["../../../src/toggle-button/toggle-button.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,4BAA4B,EAC5B,4BAA4B,EAC5B,8BAA8B,EAC9B,+BAA+B,EAC/B,uBAAuB,EACvB,iCAAiC,EACjC,mCAAmC,EACnC,oCAAoC,EACpC,4BAA4B,EAC5B,8BAA8B,EAC9B,+BAA+B,EAC/B,6BAA6B,EAC7B,mBAAmB,EACnB,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,6BAA6B,EAC7B,+BAA+B,EAC/B,iCAAiC,EACjC,kCAAkC,EAClC,eAAe,GAChB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,8BAA8B,EAAE,MAAM,uDAAuD,CAAC;AACvG,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAEpH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;IACrB,YAAY;;UAEN,YAAY;oBACF,mBAAmB;wBACf,+BAA+B;aAC1C,uBAAuB;oBAChB,eAAe;;;UAGzB,YAAY;oBACF,wBAAwB;wBACpB,4BAA4B;;;UAG1C,YAAY;oBACF,0BAA0B;wBACtB,8BAA8B;;;UAG5C,YAAY,GAAG,YAAY;;wBAEb,4BAA4B;aACvC,6BAA6B;;;UAGhC,YAAY,GAAG,YAAY;wBACb,yBAAyB;;;UAGvC,YAAY,GAAG,YAAY;wBACb,2BAA2B;;;UAGzC,YAAY,GAAG,WAAW;;wBAEZ,6BAA6B;aACxC,+BAA+B;;;UAGlC,YAAY,GAAG,WAAW;wBACZ,0BAA0B;aACrC,4BAA4B;;;UAG/B,YAAY,GAAG,WAAW;wBACZ,4BAA4B;aACvC,8BAA8B;;;UAGjC,YAAY,GAAG,YAAY;UAC3B,YAAY,GAAG,gBAAgB;wBACjB,kCAAkC;;;UAGhD,YAAY,GAAG,YAAY;UAC3B,YAAY,GAAG,gBAAgB;wBACjB,+BAA+B;;;UAG7C,YAAY,GAAG,YAAY;UAC3B,YAAY,GAAG,gBAAgB;wBACjB,iCAAiC;;;UAG/C,YAAY,GAAG,gBAAgB;;aAE5B,oCAAoC;;;UAGvC,YAAY,GAAG,gBAAgB;aAC5B,iCAAiC;;;UAGpC,YAAY,GAAG,gBAAgB;aAC5B,mCAAmC;;CAE/C,CAAC,aAAa,CACb,8BAA8B,CAAC,GAAG,CAAA;YACxB,YAAY;YACZ,YAAY,GAAG,YAAY;YAC3B,YAAY,GAAG,WAAW;YAC1B,YAAY,GAAG,YAAY;YAC3B,YAAY,GAAG,gBAAgB;;;;GAIxC,CAAC,CACH,CAAC"}
@@ -247,6 +247,12 @@ export declare class AnchorButton extends BaseAnchor {
247
247
  * HTML Attribute: `appearance`
248
248
  */
249
249
  appearance?: AnchorButtonAppearance | undefined;
250
+ /**
251
+ * Handles changes to appearance attribute custom states
252
+ * @param prev - the previous state
253
+ * @param next - the next state
254
+ */
255
+ appearanceChanged(prev: AnchorButtonAppearance | undefined, next: AnchorButtonAppearance | undefined): void;
250
256
  /**
251
257
  * The shape the anchor button should have.
252
258
  *
@@ -255,6 +261,12 @@ export declare class AnchorButton extends BaseAnchor {
255
261
  * HTML Attribute: `shape`
256
262
  */
257
263
  shape?: AnchorButtonShape | undefined;
264
+ /**
265
+ * Handles changes to shape attribute custom states
266
+ * @param prev - the previous state
267
+ * @param next - the next state
268
+ */
269
+ shapeChanged(prev: AnchorButtonShape | undefined, next: AnchorButtonShape | undefined): void;
258
270
  /**
259
271
  * The size the anchor button should have.
260
272
  *
@@ -263,6 +275,12 @@ export declare class AnchorButton extends BaseAnchor {
263
275
  * HTML Attribute: `size`
264
276
  */
265
277
  size?: AnchorButtonSize;
278
+ /**
279
+ * Handles changes to size attribute custom states
280
+ * @param prev - the previous state
281
+ * @param next - the next state
282
+ */
283
+ sizeChanged(prev: AnchorButtonSize | undefined, next: AnchorButtonSize | undefined): void;
266
284
  /**
267
285
  * The anchor button has an icon only, no text content
268
286
  *
@@ -271,6 +289,12 @@ export declare class AnchorButton extends BaseAnchor {
271
289
  * HTML Attribute: `icon-only`
272
290
  */
273
291
  iconOnly: boolean;
292
+ /**
293
+ * Handles changes to icon only custom states
294
+ * @param prev - the previous state
295
+ * @param next - the next state
296
+ */
297
+ iconOnlyChanged(prev: boolean, next: boolean): void;
274
298
  }
275
299
 
276
300
  /**
@@ -290,7 +314,6 @@ export declare const AnchorButtonAppearance: {
290
314
  readonly primary: "primary";
291
315
  readonly outline: "outline";
292
316
  readonly subtle: "subtle";
293
- readonly secondary: "secondary";
294
317
  readonly transparent: "transparent";
295
318
  };
296
319
 
@@ -654,6 +677,12 @@ export declare const AvatarTemplate: ElementViewTemplate<Avatar>;
654
677
  * @public
655
678
  */
656
679
  export declare class Badge extends FASTElement {
680
+ /**
681
+ * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
682
+ *
683
+ * @internal
684
+ */
685
+ elementInternals: ElementInternals;
657
686
  /**
658
687
  * The appearance the badge should have.
659
688
  *
@@ -662,6 +691,12 @@ export declare class Badge extends FASTElement {
662
691
  * HTML Attribute: appearance
663
692
  */
664
693
  appearance: BadgeAppearance;
694
+ /**
695
+ * Handles changes to appearance attribute custom states
696
+ * @param prev - the previous state
697
+ * @param next - the next state
698
+ */
699
+ appearanceChanged(prev: BadgeAppearance | undefined, next: BadgeAppearance | undefined): void;
665
700
  /**
666
701
  * The color the badge should have.
667
702
  *
@@ -670,6 +705,12 @@ export declare class Badge extends FASTElement {
670
705
  * HTML Attribute: color
671
706
  */
672
707
  color: BadgeColor;
708
+ /**
709
+ * Handles changes to color attribute custom states
710
+ * @param prev - the previous state
711
+ * @param next - the next state
712
+ */
713
+ colorChanged(prev: BadgeColor | undefined, next: BadgeColor | undefined): void;
673
714
  /**
674
715
  * The shape the badge should have.
675
716
  *
@@ -678,6 +719,12 @@ export declare class Badge extends FASTElement {
678
719
  * HTML Attribute: shape
679
720
  */
680
721
  shape?: BadgeShape;
722
+ /**
723
+ * Handles changes to shape attribute custom states
724
+ * @param prev - the previous state
725
+ * @param next - the next state
726
+ */
727
+ shapeChanged(prev: BadgeShape | undefined, next: BadgeShape | undefined): void;
681
728
  /**
682
729
  * The size the badge should have.
683
730
  *
@@ -686,6 +733,12 @@ export declare class Badge extends FASTElement {
686
733
  * HTML Attribute: size
687
734
  */
688
735
  size?: BadgeSize;
736
+ /**
737
+ * Handles changes to size attribute custom states
738
+ * @param prev - the previous state
739
+ * @param next - the next state
740
+ */
741
+ sizeChanged(prev: BadgeSize | undefined, next: BadgeSize | undefined): void;
689
742
  }
690
743
 
691
744
  /**
@@ -798,6 +851,11 @@ export declare const BadgeTemplate: ElementViewTemplate<Badge>;
798
851
  * @public
799
852
  */
800
853
  declare class BaseAnchor extends FASTElement {
854
+ /**
855
+ * Holds a reference to the platform to manage ctrl+click on Windows and cmd+click on Mac
856
+ * @internal
857
+ */
858
+ private readonly isMac;
801
859
  /**
802
860
  * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
803
861
  *
@@ -898,15 +956,21 @@ declare class BaseAnchor extends FASTElement {
898
956
  * @param e - The event object
899
957
  * @internal
900
958
  */
901
- clickHandler(): boolean;
959
+ clickHandler(e: PointerEvent): boolean;
902
960
  /**
903
- * Handles keypress events for the anchor.
961
+ * Handles keydown events for the anchor.
904
962
  *
905
963
  * @param e - the keyboard event
906
964
  * @returns - the return value of the click handler
907
965
  * @public
908
966
  */
909
- keypressHandler(e: KeyboardEvent): boolean | void;
967
+ keydownHandler(e: KeyboardEvent): boolean | void;
968
+ /**
969
+ * Handles navigation based on input
970
+ * If the metaKey is pressed, opens the href in a new window, if false, uses the click on the proxy
971
+ * @internal
972
+ */
973
+ private handleNavigation;
910
974
  /**
911
975
  * A method for updating proxy attributes when attributes have changed
912
976
  * @internal
@@ -1344,6 +1408,12 @@ export declare class Button extends FASTElement {
1344
1408
  * HTML Attribute: `appearance`
1345
1409
  */
1346
1410
  appearance?: ButtonAppearance;
1411
+ /**
1412
+ * Handles changes to appearance attribute custom states
1413
+ * @param prev - the previous state
1414
+ * @param next - the next state
1415
+ */
1416
+ appearanceChanged(prev: ButtonAppearance | undefined, next: ButtonAppearance | undefined): void;
1347
1417
  /**
1348
1418
  * Indicates the button should be focused when the page is loaded.
1349
1419
  * @see The {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#autofocus | `autofocus`} attribute
@@ -1389,7 +1459,7 @@ export declare class Button extends FASTElement {
1389
1459
  *
1390
1460
  * @internal
1391
1461
  */
1392
- protected elementInternals: ElementInternals;
1462
+ elementInternals: ElementInternals;
1393
1463
  /**
1394
1464
  * The associated form element.
1395
1465
  *
@@ -1477,6 +1547,12 @@ export declare class Button extends FASTElement {
1477
1547
  * HTML Attribute: `icon-only`
1478
1548
  */
1479
1549
  iconOnly: boolean;
1550
+ /**
1551
+ * Handles changes to icon only custom states
1552
+ * @param prev - the previous state
1553
+ * @param next - the next state
1554
+ */
1555
+ iconOnlyChanged(prev: boolean, next: boolean): void;
1480
1556
  /**
1481
1557
  * A reference to all associated label elements.
1482
1558
  *
@@ -1500,6 +1576,12 @@ export declare class Button extends FASTElement {
1500
1576
  * HTML Attribute: `shape`
1501
1577
  */
1502
1578
  shape?: ButtonShape;
1579
+ /**
1580
+ * Handles changes to shape attribute custom states
1581
+ * @param prev - the previous state
1582
+ * @param next - the next state
1583
+ */
1584
+ shapeChanged(prev: ButtonShape | undefined, next: ButtonShape | undefined): void;
1503
1585
  /**
1504
1586
  * The size of the button.
1505
1587
  *
@@ -1508,6 +1590,12 @@ export declare class Button extends FASTElement {
1508
1590
  * HTML Attribute: `size`
1509
1591
  */
1510
1592
  size?: ButtonSize;
1593
+ /**
1594
+ * Handles changes to size attribute custom states
1595
+ * @param prev - the previous state
1596
+ * @param next - the next state
1597
+ */
1598
+ sizeChanged(prev: ButtonSize | undefined, next: ButtonSize | undefined): void;
1511
1599
  /**
1512
1600
  * The button type.
1513
1601
  * @see The {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#type | `type`} attribute
@@ -1606,7 +1694,6 @@ export declare const ButtonAppearance: {
1606
1694
  readonly primary: "primary";
1607
1695
  readonly outline: "outline";
1608
1696
  readonly subtle: "subtle";
1609
- readonly secondary: "secondary";
1610
1697
  readonly transparent: "transparent";
1611
1698
  };
1612
1699
 
@@ -3905,11 +3992,6 @@ export declare const CompoundButtonAppearance: {
3905
3992
  readonly primary: "primary";
3906
3993
  readonly outline: "outline";
3907
3994
  readonly subtle: "subtle";
3908
- readonly secondary: "secondary";
3909
- /**
3910
- * A Compound Button can be secondary, primary, outline, subtle, transparent
3911
- * @public
3912
- */
3913
3995
  readonly transparent: "transparent";
3914
3996
  };
3915
3997
 
@@ -3978,6 +4060,12 @@ declare type ConstructableFormAssociated = Constructable<HTMLElement & FASTEleme
3978
4060
  * @public
3979
4061
  */
3980
4062
  export declare class CounterBadge extends FASTElement {
4063
+ /**
4064
+ * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
4065
+ *
4066
+ * @internal
4067
+ */
4068
+ elementInternals: ElementInternals;
3981
4069
  /**
3982
4070
  * The appearance the badge should have.
3983
4071
  *
@@ -3986,6 +4074,12 @@ export declare class CounterBadge extends FASTElement {
3986
4074
  * HTML Attribute: appearance
3987
4075
  */
3988
4076
  appearance?: CounterBadgeAppearance;
4077
+ /**
4078
+ * Handles changes to appearance attribute custom states
4079
+ * @param prev - the previous state
4080
+ * @param next - the next state
4081
+ */
4082
+ appearanceChanged(prev: CounterBadgeAppearance | undefined, next: CounterBadgeAppearance | undefined): void;
3989
4083
  /**
3990
4084
  * The color the badge should have.
3991
4085
  *
@@ -3994,6 +4088,12 @@ export declare class CounterBadge extends FASTElement {
3994
4088
  * HTML Attribute: color
3995
4089
  */
3996
4090
  color?: CounterBadgeColor;
4091
+ /**
4092
+ * Handles changes to color attribute custom states
4093
+ * @param prev - the previous state
4094
+ * @param next - the next state
4095
+ */
4096
+ colorChanged(prev: CounterBadgeColor | undefined, next: CounterBadgeColor | undefined): void;
3997
4097
  /**
3998
4098
  * The shape the badge should have.
3999
4099
  *
@@ -4002,6 +4102,12 @@ export declare class CounterBadge extends FASTElement {
4002
4102
  * HTML Attribute: shape
4003
4103
  */
4004
4104
  shape?: CounterBadgeShape;
4105
+ /**
4106
+ * Handles changes to shape attribute custom states
4107
+ * @param prev - the previous state
4108
+ * @param next - the next state
4109
+ */
4110
+ shapeChanged(prev: CounterBadgeShape | undefined, next: CounterBadgeShape | undefined): void;
4005
4111
  /**
4006
4112
  * The size the badge should have.
4007
4113
  *
@@ -4010,6 +4116,12 @@ export declare class CounterBadge extends FASTElement {
4010
4116
  * HTML Attribute: size
4011
4117
  */
4012
4118
  size?: CounterBadgeSize;
4119
+ /**
4120
+ * Handles changes to size attribute custom states
4121
+ * @param prev - the previous state
4122
+ * @param next - the next state
4123
+ */
4124
+ sizeChanged(prev: CounterBadgeSize | undefined, next: CounterBadgeSize | undefined): void;
4013
4125
  /**
4014
4126
  * The count the badge should have.
4015
4127
  *
@@ -4044,6 +4156,12 @@ export declare class CounterBadge extends FASTElement {
4044
4156
  * HTML Attribute: dot
4045
4157
  */
4046
4158
  dot: boolean;
4159
+ /**
4160
+ * Handles changes to dot attribute custom states
4161
+ * @param prev - the previous state
4162
+ * @param next - the next state
4163
+ */
4164
+ dotChanged(prev: boolean | undefined, next: boolean | undefined): void;
4047
4165
  /**
4048
4166
  * @internal
4049
4167
  * Function to set the count
@@ -5527,7 +5645,6 @@ export declare const MenuButtonAppearance: {
5527
5645
  readonly primary: "primary";
5528
5646
  readonly outline: "outline";
5529
5647
  readonly subtle: "subtle";
5530
- readonly secondary: "secondary";
5531
5648
  readonly transparent: "transparent";
5532
5649
  };
5533
5650
 
@@ -7852,7 +7969,6 @@ export declare const ToggleButtonAppearance: {
7852
7969
  readonly primary: "primary";
7853
7970
  readonly outline: "outline";
7854
7971
  readonly subtle: "subtle";
7855
- readonly secondary: "secondary";
7856
7972
  readonly transparent: "transparent";
7857
7973
  };
7858
7974