@api-client/ui 0.2.9 → 0.2.11

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 (141) hide show
  1. package/build/src/md/UiElement.d.ts +5 -0
  2. package/build/src/md/UiElement.d.ts.map +1 -1
  3. package/build/src/md/UiElement.js +7 -0
  4. package/build/src/md/UiElement.js.map +1 -1
  5. package/build/src/md/button/ui-elevated-button.d.ts +1 -1
  6. package/build/src/md/button/ui-elevated-button.js +1 -1
  7. package/build/src/md/button/ui-elevated-button.js.map +1 -1
  8. package/build/src/md/button/ui-filled-button.d.ts +1 -1
  9. package/build/src/md/button/ui-filled-button.js +1 -1
  10. package/build/src/md/button/ui-filled-button.js.map +1 -1
  11. package/build/src/md/button/ui-filled-tonal-button.d.ts +3 -3
  12. package/build/src/md/button/ui-filled-tonal-button.d.ts.map +1 -1
  13. package/build/src/md/button/ui-filled-tonal-button.js +6 -6
  14. package/build/src/md/button/ui-filled-tonal-button.js.map +1 -1
  15. package/build/src/md/button/ui-outlined-button.d.ts +1 -1
  16. package/build/src/md/button/ui-outlined-button.js +1 -1
  17. package/build/src/md/button/ui-outlined-button.js.map +1 -1
  18. package/build/src/md/button/ui-text-button.d.ts +1 -1
  19. package/build/src/md/button/ui-text-button.js +1 -1
  20. package/build/src/md/button/ui-text-button.js.map +1 -1
  21. package/build/src/md/checkbox/internals/Checkbox.styles.d.ts.map +1 -1
  22. package/build/src/md/checkbox/internals/Checkbox.styles.js +55 -216
  23. package/build/src/md/checkbox/internals/Checkbox.styles.js.map +1 -1
  24. package/build/src/md/checkbox/internals/CheckboxElement.d.ts +10 -7
  25. package/build/src/md/checkbox/internals/CheckboxElement.d.ts.map +1 -1
  26. package/build/src/md/checkbox/internals/CheckboxElement.js +39 -32
  27. package/build/src/md/checkbox/internals/CheckboxElement.js.map +1 -1
  28. package/build/src/md/checkbox/internals/CheckedElement.d.ts.map +1 -1
  29. package/build/src/md/checkbox/internals/CheckedElement.js +1 -0
  30. package/build/src/md/checkbox/internals/CheckedElement.js.map +1 -1
  31. package/build/src/md/dropdown-list/internals/UiDropdownList.d.ts +13 -2
  32. package/build/src/md/dropdown-list/internals/UiDropdownList.d.ts.map +1 -1
  33. package/build/src/md/dropdown-list/internals/UiDropdownList.js +59 -20
  34. package/build/src/md/dropdown-list/internals/UiDropdownList.js.map +1 -1
  35. package/build/src/md/icon-button/internals/IconButton.d.ts +8 -24
  36. package/build/src/md/icon-button/internals/IconButton.d.ts.map +1 -1
  37. package/build/src/md/icon-button/internals/IconButton.js +35 -63
  38. package/build/src/md/icon-button/internals/IconButton.js.map +1 -1
  39. package/build/src/md/icon-button/internals/{IconButton.styles.d.ts → base.styles.d.ts} +1 -1
  40. package/build/src/md/icon-button/internals/base.styles.d.ts.map +1 -0
  41. package/build/src/md/icon-button/internals/base.styles.js +93 -0
  42. package/build/src/md/icon-button/internals/base.styles.js.map +1 -0
  43. package/build/src/md/icon-button/internals/filled-tonal.styles.d.ts +3 -0
  44. package/build/src/md/icon-button/internals/filled-tonal.styles.d.ts.map +1 -0
  45. package/build/src/md/icon-button/internals/filled-tonal.styles.js +30 -0
  46. package/build/src/md/icon-button/internals/filled-tonal.styles.js.map +1 -0
  47. package/build/src/md/icon-button/internals/filled.styles.d.ts +3 -0
  48. package/build/src/md/icon-button/internals/filled.styles.d.ts.map +1 -0
  49. package/build/src/md/icon-button/internals/filled.styles.js +36 -0
  50. package/build/src/md/icon-button/internals/filled.styles.js.map +1 -0
  51. package/build/src/md/icon-button/internals/outlined.styles.d.ts +3 -0
  52. package/build/src/md/icon-button/internals/outlined.styles.d.ts.map +1 -0
  53. package/build/src/md/icon-button/internals/outlined.styles.js +31 -0
  54. package/build/src/md/icon-button/internals/outlined.styles.js.map +1 -0
  55. package/build/src/md/icon-button/internals/standard.styles.d.ts +3 -0
  56. package/build/src/md/icon-button/internals/standard.styles.d.ts.map +1 -0
  57. package/build/src/md/icon-button/internals/standard.styles.js +18 -0
  58. package/build/src/md/icon-button/internals/standard.styles.js.map +1 -0
  59. package/build/src/md/icon-button/ui-filled-icon-button.d.ts +11 -0
  60. package/build/src/md/icon-button/ui-filled-icon-button.d.ts.map +1 -0
  61. package/build/src/md/icon-button/ui-filled-icon-button.js +28 -0
  62. package/build/src/md/icon-button/ui-filled-icon-button.js.map +1 -0
  63. package/build/src/md/icon-button/ui-filled-tonal-icon-button.d.ts +11 -0
  64. package/build/src/md/icon-button/ui-filled-tonal-icon-button.d.ts.map +1 -0
  65. package/build/src/md/icon-button/ui-filled-tonal-icon-button.js +28 -0
  66. package/build/src/md/icon-button/ui-filled-tonal-icon-button.js.map +1 -0
  67. package/build/src/md/icon-button/ui-icon-button.d.ts.map +1 -1
  68. package/build/src/md/icon-button/ui-icon-button.js +3 -2
  69. package/build/src/md/icon-button/ui-icon-button.js.map +1 -1
  70. package/build/src/md/icon-button/ui-outlined-icon-button.d.ts +11 -0
  71. package/build/src/md/icon-button/ui-outlined-icon-button.d.ts.map +1 -0
  72. package/build/src/md/icon-button/ui-outlined-icon-button.js +28 -0
  73. package/build/src/md/icon-button/ui-outlined-icon-button.js.map +1 -0
  74. package/build/src/md/icons/internals/Icon.d.ts +1 -0
  75. package/build/src/md/icons/internals/Icon.d.ts.map +1 -1
  76. package/build/src/md/icons/internals/Icon.js +13 -0
  77. package/build/src/md/icons/internals/Icon.js.map +1 -1
  78. package/build/src/md/icons/internals/Icon.styles.d.ts.map +1 -1
  79. package/build/src/md/icons/internals/Icon.styles.js +31 -2
  80. package/build/src/md/icons/internals/Icon.styles.js.map +1 -1
  81. package/build/src/md/list/internals/ListItem.d.ts +4 -3
  82. package/build/src/md/list/internals/ListItem.d.ts.map +1 -1
  83. package/build/src/md/list/internals/ListItem.js +55 -15
  84. package/build/src/md/list/internals/ListItem.js.map +1 -1
  85. package/build/src/md/list/internals/ListItem.styles.d.ts.map +1 -1
  86. package/build/src/md/list/internals/ListItem.styles.js +6 -2
  87. package/build/src/md/list/internals/ListItem.styles.js.map +1 -1
  88. package/build/src/md/ripple/internals/ripple.d.ts +2 -1
  89. package/build/src/md/ripple/internals/ripple.d.ts.map +1 -1
  90. package/build/src/md/ripple/internals/ripple.js +42 -12
  91. package/build/src/md/ripple/internals/ripple.js.map +1 -1
  92. package/build/src/md/segmented-button/internals/SegmentedButton.d.ts +1 -1
  93. package/build/src/md/segmented-button/internals/SegmentedButton.d.ts.map +1 -1
  94. package/build/src/md/segmented-button/internals/SegmentedButton.js +1 -1
  95. package/build/src/md/segmented-button/internals/SegmentedButton.js.map +1 -1
  96. package/demo/md/buttons/{button.html → index.html} +1 -1
  97. package/demo/md/{inputs/checkbox.html → checkbox/index.html} +1 -1
  98. package/demo/md/{list/dropdown-list.html → dropdown-list/index.html} +1 -1
  99. package/demo/md/{buttons/icon-button.html → icon-button/index.html} +5 -1
  100. package/demo/md/icon-button/index.ts +236 -0
  101. package/demo/md/index.html +36 -29
  102. package/demo/md/listbox/listbox.html +31 -0
  103. package/demo/md/listbox/listbox.ts +27 -0
  104. package/demo/md/{buttons/segmented-buttons.html → segmented-button/index.html} +1 -1
  105. package/package.json +1 -1
  106. package/src/md/UiElement.ts +8 -0
  107. package/src/md/button/ui-elevated-button.ts +1 -1
  108. package/src/md/button/ui-filled-button.ts +1 -1
  109. package/src/md/button/ui-filled-tonal-button.ts +3 -3
  110. package/src/md/button/ui-outlined-button.ts +1 -1
  111. package/src/md/button/ui-text-button.ts +1 -1
  112. package/src/md/checkbox/internals/Checkbox.styles.ts +55 -216
  113. package/src/md/checkbox/internals/CheckboxElement.ts +39 -26
  114. package/src/md/checkbox/internals/CheckedElement.ts +1 -0
  115. package/src/md/dropdown-list/internals/UiDropdownList.ts +60 -21
  116. package/src/md/icon-button/internals/IconButton.ts +29 -46
  117. package/src/md/icon-button/internals/base.styles.ts +93 -0
  118. package/src/md/icon-button/internals/filled-tonal.styles.ts +30 -0
  119. package/src/md/icon-button/internals/filled.styles.ts +36 -0
  120. package/src/md/icon-button/internals/outlined.styles.ts +31 -0
  121. package/src/md/icon-button/internals/standard.styles.ts +18 -0
  122. package/src/md/icon-button/ui-filled-icon-button.ts +16 -0
  123. package/src/md/icon-button/ui-filled-tonal-icon-button.ts +16 -0
  124. package/src/md/icon-button/ui-icon-button.ts +3 -2
  125. package/src/md/icon-button/ui-outlined-icon-button.ts +16 -0
  126. package/src/md/icons/internals/Icon.styles.ts +31 -2
  127. package/src/md/icons/internals/Icon.ts +14 -0
  128. package/src/md/list/internals/ListItem.styles.ts +6 -2
  129. package/src/md/list/internals/ListItem.ts +51 -18
  130. package/src/md/ripple/internals/ripple.ts +47 -13
  131. package/src/md/segmented-button/internals/SegmentedButton.ts +2 -2
  132. package/test/ui/button/UiIconButton.test.ts +1 -8
  133. package/build/src/md/icon-button/internals/IconButton.styles.d.ts.map +0 -1
  134. package/build/src/md/icon-button/internals/IconButton.styles.js +0 -614
  135. package/build/src/md/icon-button/internals/IconButton.styles.js.map +0 -1
  136. package/demo/md/buttons/icon-button.ts +0 -184
  137. package/src/md/icon-button/internals/IconButton.styles.ts +0 -614
  138. /package/demo/md/buttons/{button.ts → index.ts} +0 -0
  139. /package/demo/md/{inputs/checkbox.ts → checkbox/index.ts} +0 -0
  140. /package/demo/md/{list/dropdown-list.ts → dropdown-list/index.ts} +0 -0
  141. /package/demo/md/{buttons/segmented-buttons.ts → segmented-button/index.ts} +0 -0
@@ -1,28 +1,13 @@
1
1
  import { PropertyValues, TemplateResult } from 'lit';
2
2
  import { BeginPressConfig, EndPressConfig } from '../../../controllers/ActionController.js';
3
- import UiRipple from '../../ripple/internals/ripple.js';
4
3
  import { UiElement } from '../../UiElement.js';
4
+ import UiRipple from '../../ripple/internals/ripple.js';
5
5
  import '../../ripple/ui-ripple.js';
6
- /**
7
- * The type of the icon button rendered.
8
- */
9
- export declare enum IconButtonType {
10
- 'filled' = "filled",
11
- 'tonal' = "tonal",
12
- 'outlined' = "outlined",
13
- 'standard' = "standard"
14
- }
6
+ import '@material/web/focus/md-focus-ring.js';
15
7
  /**
16
8
  * @fires active - An event dispatched when the `active` state has changed. This only happens when the button is `toggle`.
17
9
  */
18
- export default class UiIconButton extends UiElement {
19
- /**
20
- * The type of the rendered button according to Material 3 spec.
21
- *
22
- * @default {ButtonType.filled}
23
- * @attribute
24
- */
25
- accessor type: IconButtonType;
10
+ export default class IconButton extends UiElement {
26
11
  /**
27
12
  * Whether the button can be toggled.
28
13
  * A toggle button behaves different as it gets the `aria-pressed` attribute
@@ -41,23 +26,22 @@ export default class UiIconButton extends UiElement {
41
26
  * @attribute
42
27
  */
43
28
  accessor active: boolean | undefined;
44
- protected accessor ripple: Promise<UiRipple | null>;
45
- protected accessor showRipple: boolean;
46
29
  get disabled(): boolean;
47
30
  /**
48
31
  * When set, the button is a disabled state.
49
32
  * @attribute
50
33
  */
51
34
  set disabled(value: boolean);
52
- protected readonly getRipple: () => Promise<UiRipple | null>;
35
+ protected accessor ripple: UiRipple | null;
53
36
  constructor();
54
37
  connectedCallback(): void;
55
38
  protected update(changedProperties: PropertyValues<this>): void;
56
- protected pressRipple(): Promise<void>;
57
- protected endRipple(): Promise<void>;
39
+ protected pressRipple(options: BeginPressConfig): void;
40
+ protected endRipple(): void;
58
41
  beginPress(options: BeginPressConfig): void;
59
42
  endPress(config: EndPressConfig): void;
43
+ handlePointerEnter(e: PointerEvent): void;
44
+ handlePointerLeave(e: PointerEvent): void;
60
45
  protected render(): TemplateResult;
61
- protected renderRipple: () => TemplateResult;
62
46
  }
63
47
  //# sourceMappingURL=IconButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IconButton.d.ts","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/IconButton.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAA;AAI1D,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAA;AAC3F,OAAO,QAAQ,MAAM,kCAAkC,CAAA;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAG9C,OAAO,2BAA2B,CAAA;AAElC;;GAEG;AACH,oBAAY,cAAc;IACxB,QAAQ,WAAW;IACnB,OAAO,UAAU;IACjB,UAAU,aAAa;IACvB,UAAU,aAAa;CACxB;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,SAAS;IACjD;;;;;OAKG;IACwC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAExE;;;;;;;;;OASG;IACyC,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,CAAA;IAEhF;;;;;OAKG;IACyC,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,CAAA;IAEvD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAA;IAEpE,SAAS,CAAC,QAAQ,CAAC,UAAU,UAAQ;IAE9C,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;;OAGG;IACH,IACI,QAAQ,CAAC,KAAK,EAAE,OAAO,EAI1B;IAED,SAAS,CAAC,QAAQ,CAAC,SAAS,QAAO,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAG1D;;IAiBQ,iBAAiB,IAAI,IAAI;cAUf,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cAOxD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;cAO5B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAK3C,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;cAqB5B,MAAM,IAAI,cAAc;IAkB3C,SAAS,CAAC,YAAY,QAAO,cAAc,CAG1C;CACF"}
1
+ {"version":3,"file":"IconButton.d.ts","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/IconButton.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAA;AAG1D,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAA;AAC3F,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE9C,OAAO,QAAQ,MAAM,kCAAkC,CAAA;AAEvD,OAAO,2BAA2B,CAAA;AAClC,OAAO,sCAAsC,CAAA;AAE7C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,SAAS;IAC/C;;;;;;;;;OASG;IACyC,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,CAAA;IAEhF;;;;;OAKG;IACyC,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,CAAA;IAEhF,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;;OAGG;IACH,IACI,QAAQ,CAAC,KAAK,EAAE,OAAO,EAI1B;IAEmB,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAG,QAAQ,GAAG,IAAI,CAAA;;IAiBtD,iBAAiB,IAAI,IAAI;cAUf,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAOxE,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAOtD,SAAS,CAAC,SAAS,IAAI,IAAI;IAIlB,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAK3C,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IAqBtC,kBAAkB,CAAC,CAAC,EAAE,YAAY,GAAG,IAAI;IAOzC,kBAAkB,CAAC,CAAC,EAAE,YAAY,GAAG,IAAI;cAO/B,MAAM,IAAI,cAAc;CAkB5C"}
@@ -1,69 +1,39 @@
1
1
  import { __esDecorate, __runInitializers } from "tslib";
2
2
  /* eslint-disable max-len */
3
3
  import { html } from 'lit';
4
- import { property, queryAsync, state } from 'lit/decorators.js';
4
+ import { property, query } from 'lit/decorators.js';
5
5
  import { classMap } from 'lit/directives/class-map.js';
6
- import { when } from 'lit/directives/when.js';
7
- import { ripple } from '../../effects/rippleDirective.js';
8
6
  import { UiElement } from '../../UiElement.js';
9
7
  import { isDisabled, setDisabled } from '../../../lib/disabled.js';
10
8
  import '../../ripple/ui-ripple.js';
11
- /**
12
- * The type of the icon button rendered.
13
- */
14
- export var IconButtonType;
15
- (function (IconButtonType) {
16
- IconButtonType["filled"] = "filled";
17
- IconButtonType["tonal"] = "tonal";
18
- IconButtonType["outlined"] = "outlined";
19
- IconButtonType["standard"] = "standard";
20
- })(IconButtonType || (IconButtonType = {}));
21
- let UiIconButton = (() => {
9
+ import '@material/web/focus/md-focus-ring.js';
10
+ let IconButton = (() => {
22
11
  let _classSuper = UiElement;
23
12
  let _instanceExtraInitializers = [];
24
- let _type_decorators;
25
- let _type_initializers = [];
26
- let _type_extraInitializers = [];
27
13
  let _toggle_decorators;
28
14
  let _toggle_initializers = [];
29
15
  let _toggle_extraInitializers = [];
30
16
  let _active_decorators;
31
17
  let _active_initializers = [];
32
18
  let _active_extraInitializers = [];
19
+ let _set_disabled_decorators;
33
20
  let _ripple_decorators;
34
21
  let _ripple_initializers = [];
35
22
  let _ripple_extraInitializers = [];
36
- let _showRipple_decorators;
37
- let _showRipple_initializers = [];
38
- let _showRipple_extraInitializers = [];
39
- let _set_disabled_decorators;
40
- return class UiIconButton extends _classSuper {
23
+ return class IconButton extends _classSuper {
41
24
  static {
42
25
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
43
- _type_decorators = [property({ type: String, reflect: true })];
44
26
  _toggle_decorators = [property({ type: Boolean, reflect: true })];
45
27
  _active_decorators = [property({ type: Boolean, reflect: true })];
46
- _ripple_decorators = [queryAsync('ui-ripple')];
47
- _showRipple_decorators = [state()];
48
28
  _set_disabled_decorators = [property({ reflect: true, type: Boolean })];
49
- __esDecorate(this, null, _type_decorators, { kind: "accessor", name: "type", static: false, private: false, access: { has: obj => "type" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);
29
+ _ripple_decorators = [query('ui-ripple')];
50
30
  __esDecorate(this, null, _toggle_decorators, { kind: "accessor", name: "toggle", static: false, private: false, access: { has: obj => "toggle" in obj, get: obj => obj.toggle, set: (obj, value) => { obj.toggle = value; } }, metadata: _metadata }, _toggle_initializers, _toggle_extraInitializers);
51
31
  __esDecorate(this, null, _active_decorators, { kind: "accessor", name: "active", static: false, private: false, access: { has: obj => "active" in obj, get: obj => obj.active, set: (obj, value) => { obj.active = value; } }, metadata: _metadata }, _active_initializers, _active_extraInitializers);
52
- __esDecorate(this, null, _ripple_decorators, { kind: "accessor", name: "ripple", static: false, private: false, access: { has: obj => "ripple" in obj, get: obj => obj.ripple, set: (obj, value) => { obj.ripple = value; } }, metadata: _metadata }, _ripple_initializers, _ripple_extraInitializers);
53
- __esDecorate(this, null, _showRipple_decorators, { kind: "accessor", name: "showRipple", static: false, private: false, access: { has: obj => "showRipple" in obj, get: obj => obj.showRipple, set: (obj, value) => { obj.showRipple = value; } }, metadata: _metadata }, _showRipple_initializers, _showRipple_extraInitializers);
54
32
  __esDecorate(this, null, _set_disabled_decorators, { kind: "setter", name: "disabled", static: false, private: false, access: { has: obj => "disabled" in obj, set: (obj, value) => { obj.disabled = value; } }, metadata: _metadata }, null, _instanceExtraInitializers);
33
+ __esDecorate(this, null, _ripple_decorators, { kind: "accessor", name: "ripple", static: false, private: false, access: { has: obj => "ripple" in obj, get: obj => obj.ripple, set: (obj, value) => { obj.ripple = value; } }, metadata: _metadata }, _ripple_initializers, _ripple_extraInitializers);
55
34
  if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
56
35
  }
57
- #type_accessor_storage = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _type_initializers, void 0));
58
- /**
59
- * The type of the rendered button according to Material 3 spec.
60
- *
61
- * @default {ButtonType.filled}
62
- * @attribute
63
- */
64
- get type() { return this.#type_accessor_storage; }
65
- set type(value) { this.#type_accessor_storage = value; }
66
- #toggle_accessor_storage = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _toggle_initializers, void 0));
36
+ #toggle_accessor_storage = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _toggle_initializers, void 0));
67
37
  /**
68
38
  * Whether the button can be toggled.
69
39
  * A toggle button behaves different as it gets the `aria-pressed` attribute
@@ -85,12 +55,6 @@ let UiIconButton = (() => {
85
55
  */
86
56
  get active() { return this.#active_accessor_storage; }
87
57
  set active(value) { this.#active_accessor_storage = value; }
88
- #ripple_accessor_storage = (__runInitializers(this, _active_extraInitializers), __runInitializers(this, _ripple_initializers, void 0));
89
- get ripple() { return this.#ripple_accessor_storage; }
90
- set ripple(value) { this.#ripple_accessor_storage = value; }
91
- #showRipple_accessor_storage = (__runInitializers(this, _ripple_extraInitializers), __runInitializers(this, _showRipple_initializers, false));
92
- get showRipple() { return this.#showRipple_accessor_storage; }
93
- set showRipple(value) { this.#showRipple_accessor_storage = value; }
94
58
  get disabled() {
95
59
  return isDisabled(this);
96
60
  }
@@ -103,13 +67,12 @@ let UiIconButton = (() => {
103
67
  setDisabled(this, value);
104
68
  this.requestUpdate('disabled', old);
105
69
  }
106
- getRipple = (__runInitializers(this, _showRipple_extraInitializers), () => {
107
- this.showRipple = true;
108
- return this.ripple;
109
- });
70
+ #ripple_accessor_storage = (__runInitializers(this, _active_extraInitializers), __runInitializers(this, _ripple_initializers, void 0));
71
+ get ripple() { return this.#ripple_accessor_storage; }
72
+ set ripple(value) { this.#ripple_accessor_storage = value; }
110
73
  constructor() {
111
74
  super();
112
- this.type = IconButtonType.standard;
75
+ __runInitializers(this, _ripple_extraInitializers);
113
76
  this.actionController.cancelKeyboardEvents = true;
114
77
  this.addEventListener('keydown', this.handleKeyDown.bind(this));
115
78
  this.addEventListener('keyup', this.handleKeyUp.bind(this));
@@ -118,6 +81,7 @@ let UiIconButton = (() => {
118
81
  this.addEventListener('pointerup', this.handlePointerUp.bind(this));
119
82
  this.addEventListener('pointercancel', this.handlePointerCancel.bind(this));
120
83
  this.addEventListener('pointerleave', this.handlePointerLeave.bind(this));
84
+ this.addEventListener('pointerenter', this.handlePointerEnter.bind(this));
121
85
  this.addEventListener('contextmenu', this.handleContextMenu.bind(this));
122
86
  }
123
87
  connectedCallback() {
@@ -135,19 +99,18 @@ let UiIconButton = (() => {
135
99
  }
136
100
  super.update(changedProperties);
137
101
  }
138
- async pressRipple() {
139
- const element = await this.getRipple();
102
+ pressRipple(options) {
103
+ const element = this.ripple;
140
104
  if (element && !element.isPressed) {
141
- element.beginPress();
105
+ element.beginPress(options.positionEvent);
142
106
  }
143
107
  }
144
- async endRipple() {
145
- const element = await this.getRipple();
146
- element?.endPress();
108
+ endRipple() {
109
+ this.ripple?.endPress();
147
110
  }
148
111
  beginPress(options) {
149
112
  super.beginPress(options);
150
- this.pressRipple();
113
+ this.pressRipple(options);
151
114
  }
152
115
  endPress(config) {
153
116
  super.endPress(config);
@@ -169,6 +132,18 @@ let UiIconButton = (() => {
169
132
  }
170
133
  }
171
134
  }
135
+ handlePointerEnter(e) {
136
+ super.handlePointerEnter(e);
137
+ if (this.ripple) {
138
+ this.ripple.beginHover(e);
139
+ }
140
+ }
141
+ handlePointerLeave(e) {
142
+ super.handlePointerLeave(e);
143
+ if (this.ripple) {
144
+ this.ripple.endHover();
145
+ }
146
+ }
172
147
  render() {
173
148
  const { pressed = false } = this;
174
149
  const containerClasses = classMap({
@@ -176,24 +151,21 @@ let UiIconButton = (() => {
176
151
  pressed,
177
152
  });
178
153
  return html `
179
- <div class="${containerClasses}" ${ripple(this.getRipple)}>
154
+ <md-focus-ring part="focus-ring" .control="${this}"></md-focus-ring>
155
+ <ui-ripple class="ripple" ?disabled="${this.disabled}"></ui-ripple>
156
+ <div class="${containerClasses}">
180
157
  <div class="container"></div>
181
158
  <div class="state"></div>
182
- ${when(this.showRipple, this.renderRipple)}
183
159
  <div class="content">
184
160
  <slot></slot>
185
161
  </div>
186
162
  </div>
187
163
  `;
188
164
  }
189
- renderRipple = () => {
190
- const { disabled } = this;
191
- return html `<ui-ripple class="ripple" ?disabled="${disabled}"></ui-ripple>`;
192
- };
193
165
  };
194
166
  })();
195
167
  /**
196
168
  * @fires active - An event dispatched when the `active` state has changed. This only happens when the button is `toggle`.
197
169
  */
198
- export default UiIconButton;
170
+ export default IconButton;
199
171
  //# sourceMappingURL=IconButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/IconButton.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable max-len */\nimport { html, PropertyValues, TemplateResult } from 'lit'\nimport { property, queryAsync, state } from 'lit/decorators.js'\nimport { classMap } from 'lit/directives/class-map.js'\nimport { when } from 'lit/directives/when.js'\nimport { BeginPressConfig, EndPressConfig } from '../../../controllers/ActionController.js'\nimport UiRipple from '../../ripple/internals/ripple.js'\nimport { ripple } from '../../effects/rippleDirective.js'\nimport { UiElement } from '../../UiElement.js'\nimport { isDisabled, setDisabled } from '../../../lib/disabled.js'\n\nimport '../../ripple/ui-ripple.js'\n\n/**\n * The type of the icon button rendered.\n */\nexport enum IconButtonType {\n 'filled' = 'filled',\n 'tonal' = 'tonal',\n 'outlined' = 'outlined',\n 'standard' = 'standard',\n}\n\n/**\n * @fires active - An event dispatched when the `active` state has changed. This only happens when the button is `toggle`.\n */\nexport default class UiIconButton extends UiElement {\n /**\n * The type of the rendered button according to Material 3 spec.\n *\n * @default {ButtonType.filled}\n * @attribute\n */\n @property({ type: String, reflect: true }) accessor type: IconButtonType\n\n /**\n * Whether the button can be toggled.\n * A toggle button behaves different as it gets the `aria-pressed` attribute\n * which changes depending on the pressed state.\n * A toggle button is activated until it is clicked/pressed again.\n * A toggle button dispatched `active` event when the press state change.\n * The host can check the `active` property to know the state.\n *\n * @attribute\n */\n @property({ type: Boolean, reflect: true }) accessor toggle: boolean | undefined\n\n /**\n * A flag that determines whether the button is activated (pressed when `toggle` is set).\n * It is `undefined` and makes no effect when `toggle` is not set.\n *\n * @attribute\n */\n @property({ type: Boolean, reflect: true }) accessor active: boolean | undefined\n\n @queryAsync('ui-ripple') protected accessor ripple!: Promise<UiRipple | null>\n\n @state() protected accessor showRipple = false\n\n get disabled(): boolean {\n return isDisabled(this)\n }\n\n /**\n * When set, the button is a disabled state.\n * @attribute\n */\n @property({ reflect: true, type: Boolean })\n set disabled(value: boolean) {\n const old = isDisabled(this)\n setDisabled(this, value)\n this.requestUpdate('disabled', old)\n }\n\n protected readonly getRipple = (): Promise<UiRipple | null> => {\n this.showRipple = true\n return this.ripple\n }\n\n constructor() {\n super()\n\n this.type = IconButtonType.standard\n this.actionController.cancelKeyboardEvents = true\n this.addEventListener('keydown', this.handleKeyDown.bind(this))\n this.addEventListener('keyup', this.handleKeyUp.bind(this))\n this.addEventListener('click', this.handleClick.bind(this))\n this.addEventListener('pointerdown', this.handlePointerDown.bind(this))\n this.addEventListener('pointerup', this.handlePointerUp.bind(this))\n this.addEventListener('pointercancel', this.handlePointerCancel.bind(this))\n this.addEventListener('pointerleave', this.handlePointerLeave.bind(this))\n this.addEventListener('contextmenu', this.handleContextMenu.bind(this))\n }\n\n override connectedCallback(): void {\n super.connectedCallback()\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'button')\n }\n if (!this.hasAttribute('tabindex') && !this.disabled) {\n this.setAttribute('tabindex', '0')\n }\n }\n\n protected override update(changedProperties: PropertyValues<this>): void {\n if (changedProperties.has('active')) {\n this.setAttribute('aria-pressed', String(this.active))\n }\n super.update(changedProperties)\n }\n\n protected async pressRipple(): Promise<void> {\n const element = await this.getRipple()\n if (element && !element.isPressed) {\n element.beginPress()\n }\n }\n\n protected async endRipple(): Promise<void> {\n const element = await this.getRipple()\n element?.endPress()\n }\n\n override beginPress(options: BeginPressConfig): void {\n super.beginPress(options)\n this.pressRipple()\n }\n\n override endPress(config: EndPressConfig): void {\n super.endPress(config)\n this.endRipple()\n const { cancelled, reason } = config\n if (cancelled) {\n return\n }\n if (!reason || reason === 'enter' || reason === 'space') {\n if (this.toggle) {\n this.active = !this.active\n // note, only dispatch events when user interacting with the UI.\n this.dispatchEvent(new Event('active'))\n }\n }\n if (reason === 'enter' || reason === 'space') {\n if (!this.toggle) {\n this.click()\n }\n }\n }\n\n protected override render(): TemplateResult {\n const { pressed = false } = this\n const containerClasses = classMap({\n surface: true,\n pressed,\n })\n return html`\n <div class=\"${containerClasses}\" ${ripple(this.getRipple)}>\n <div class=\"container\"></div>\n <div class=\"state\"></div>\n ${when(this.showRipple, this.renderRipple)}\n <div class=\"content\">\n <slot></slot>\n </div>\n </div>\n `\n }\n\n protected renderRipple = (): TemplateResult => {\n const { disabled } = this\n return html`<ui-ripple class=\"ripple\" ?disabled=\"${disabled}\"></ui-ripple>`\n }\n}\n"]}
1
+ {"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/IconButton.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable max-len */\nimport { html, PropertyValues, TemplateResult } from 'lit'\nimport { property, query } from 'lit/decorators.js'\nimport { classMap } from 'lit/directives/class-map.js'\nimport { BeginPressConfig, EndPressConfig } from '../../../controllers/ActionController.js'\nimport { UiElement } from '../../UiElement.js'\nimport { isDisabled, setDisabled } from '../../../lib/disabled.js'\nimport UiRipple from '../../ripple/internals/ripple.js'\n\nimport '../../ripple/ui-ripple.js'\nimport '@material/web/focus/md-focus-ring.js'\n\n/**\n * @fires active - An event dispatched when the `active` state has changed. This only happens when the button is `toggle`.\n */\nexport default class IconButton extends UiElement {\n /**\n * Whether the button can be toggled.\n * A toggle button behaves different as it gets the `aria-pressed` attribute\n * which changes depending on the pressed state.\n * A toggle button is activated until it is clicked/pressed again.\n * A toggle button dispatched `active` event when the press state change.\n * The host can check the `active` property to know the state.\n *\n * @attribute\n */\n @property({ type: Boolean, reflect: true }) accessor toggle: boolean | undefined\n\n /**\n * A flag that determines whether the button is activated (pressed when `toggle` is set).\n * It is `undefined` and makes no effect when `toggle` is not set.\n *\n * @attribute\n */\n @property({ type: Boolean, reflect: true }) accessor active: boolean | undefined\n\n get disabled(): boolean {\n return isDisabled(this)\n }\n\n /**\n * When set, the button is a disabled state.\n * @attribute\n */\n @property({ reflect: true, type: Boolean })\n set disabled(value: boolean) {\n const old = isDisabled(this)\n setDisabled(this, value)\n this.requestUpdate('disabled', old)\n }\n\n @query('ui-ripple') protected accessor ripple!: UiRipple | null\n\n constructor() {\n super()\n\n this.actionController.cancelKeyboardEvents = true\n this.addEventListener('keydown', this.handleKeyDown.bind(this))\n this.addEventListener('keyup', this.handleKeyUp.bind(this))\n this.addEventListener('click', this.handleClick.bind(this))\n this.addEventListener('pointerdown', this.handlePointerDown.bind(this))\n this.addEventListener('pointerup', this.handlePointerUp.bind(this))\n this.addEventListener('pointercancel', this.handlePointerCancel.bind(this))\n this.addEventListener('pointerleave', this.handlePointerLeave.bind(this))\n this.addEventListener('pointerenter', this.handlePointerEnter.bind(this))\n this.addEventListener('contextmenu', this.handleContextMenu.bind(this))\n }\n\n override connectedCallback(): void {\n super.connectedCallback()\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'button')\n }\n if (!this.hasAttribute('tabindex') && !this.disabled) {\n this.setAttribute('tabindex', '0')\n }\n }\n\n protected override update(changedProperties: PropertyValues<this>): void {\n if (changedProperties.has('active')) {\n this.setAttribute('aria-pressed', String(this.active))\n }\n super.update(changedProperties)\n }\n\n protected pressRipple(options: BeginPressConfig): void {\n const element = this.ripple\n if (element && !element.isPressed) {\n element.beginPress(options.positionEvent as PointerEvent)\n }\n }\n\n protected endRipple(): void {\n this.ripple?.endPress()\n }\n\n override beginPress(options: BeginPressConfig): void {\n super.beginPress(options)\n this.pressRipple(options)\n }\n\n override endPress(config: EndPressConfig): void {\n super.endPress(config)\n this.endRipple()\n const { cancelled, reason } = config\n if (cancelled) {\n return\n }\n if (!reason || reason === 'enter' || reason === 'space') {\n if (this.toggle) {\n this.active = !this.active\n // note, only dispatch events when user interacting with the UI.\n this.dispatchEvent(new Event('active'))\n }\n }\n if (reason === 'enter' || reason === 'space') {\n if (!this.toggle) {\n this.click()\n }\n }\n }\n\n override handlePointerEnter(e: PointerEvent): void {\n super.handlePointerEnter(e)\n if (this.ripple) {\n this.ripple.beginHover(e)\n }\n }\n\n override handlePointerLeave(e: PointerEvent): void {\n super.handlePointerLeave(e)\n if (this.ripple) {\n this.ripple.endHover()\n }\n }\n\n protected override render(): TemplateResult {\n const { pressed = false } = this\n const containerClasses = classMap({\n surface: true,\n pressed,\n })\n return html`\n <md-focus-ring part=\"focus-ring\" .control=\"${this as HTMLElement}\"></md-focus-ring>\n <ui-ripple class=\"ripple\" ?disabled=\"${this.disabled}\"></ui-ripple>\n <div class=\"${containerClasses}\">\n <div class=\"container\"></div>\n <div class=\"state\"></div>\n <div class=\"content\">\n <slot></slot>\n </div>\n </div>\n `\n }\n}\n"]}
@@ -1,3 +1,3 @@
1
1
  declare const _default: import("lit").CSSResult;
2
2
  export default _default;
3
- //# sourceMappingURL=IconButton.styles.d.ts.map
3
+ //# sourceMappingURL=base.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.styles.d.ts","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/base.styles.ts"],"names":[],"mappings":";AAEA,wBA0FC"}
@@ -0,0 +1,93 @@
1
+ import { css } from 'lit';
2
+ export default css `
3
+ :host {
4
+ display: inline-flex;
5
+ vertical-align: middle;
6
+ box-sizing: content-box;
7
+ writing-mode: horizontal-tb !important;
8
+ text-rendering: auto;
9
+ cursor: default;
10
+ user-select: none;
11
+ height: 40px;
12
+ width: 40px;
13
+ border-radius: var(--md-sys-shape-corner-full);
14
+ --md-ripple-state-layer-shape: var(--md-sys-shape-corner-full);
15
+ align-items: center;
16
+ justify-content: center;
17
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
18
+
19
+ position: relative;
20
+ outline: none;
21
+
22
+ --_content-color: inherit;
23
+ --_content-opacity: 1;
24
+ --_container-background-color: initial;
25
+ --_container-opacity: 1;
26
+ --_container-border: none;
27
+ --_state-opacity: 0;
28
+ --_state-background-color: initial;
29
+ }
30
+
31
+ .content ::slotted(*) {
32
+ width: 24px !important;
33
+ height: 24px !important;
34
+
35
+ color: var(--_content-color);
36
+ fill: var(--_content-color);
37
+ opacity: var(--_content-opacity);
38
+ }
39
+
40
+ .surface {
41
+ height: inherit;
42
+ width: inherit;
43
+ position: relative;
44
+ border-radius: var(--md-sys-shape-corner-full);
45
+ display: flex;
46
+ justify-content: center;
47
+ align-items: center;
48
+ cursor: pointer;
49
+ }
50
+
51
+ .container,
52
+ .state {
53
+ position: absolute;
54
+ top: 0;
55
+ left: 0;
56
+ right: 0;
57
+ bottom: 0;
58
+ border-radius: var(--md-sys-shape-corner-full);
59
+ }
60
+
61
+ .container {
62
+ z-index: 1;
63
+ pointer-events: none;
64
+ background-color: var(--_container-background-color);
65
+ opacity: var(--_container-opacity);
66
+ border: var(--_container-border);
67
+ }
68
+
69
+ .state {
70
+ z-index: 2;
71
+ pointer-events: none;
72
+ opacity: var(--_state-opacity);
73
+ background-color: var(--_state-background-color);
74
+ }
75
+
76
+ .content {
77
+ z-index: 3;
78
+ display: flex;
79
+ align-items: center;
80
+ justify-content: center;
81
+ color: var(--_content-color);
82
+ }
83
+
84
+ :host([disabled]) {
85
+ pointer-events: none;
86
+ }
87
+
88
+ .ripple {
89
+ border-radius: inherit;
90
+ z-index: 3;
91
+ }
92
+ `;
93
+ //# sourceMappingURL=base.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.styles.js","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/base.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAEzB,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0FjB,CAAA","sourcesContent":["import { css } from 'lit'\n\nexport default css`\n :host {\n display: inline-flex;\n vertical-align: middle;\n box-sizing: content-box;\n writing-mode: horizontal-tb !important;\n text-rendering: auto;\n cursor: default;\n user-select: none;\n height: 40px;\n width: 40px;\n border-radius: var(--md-sys-shape-corner-full);\n --md-ripple-state-layer-shape: var(--md-sys-shape-corner-full);\n align-items: center;\n justify-content: center;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n\n position: relative;\n outline: none;\n\n --_content-color: inherit;\n --_content-opacity: 1;\n --_container-background-color: initial;\n --_container-opacity: 1;\n --_container-border: none;\n --_state-opacity: 0;\n --_state-background-color: initial;\n }\n\n .content ::slotted(*) {\n width: 24px !important;\n height: 24px !important;\n\n color: var(--_content-color);\n fill: var(--_content-color);\n opacity: var(--_content-opacity);\n }\n\n .surface {\n height: inherit;\n width: inherit;\n position: relative;\n border-radius: var(--md-sys-shape-corner-full);\n display: flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n }\n\n .container,\n .state {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border-radius: var(--md-sys-shape-corner-full);\n }\n\n .container {\n z-index: 1;\n pointer-events: none;\n background-color: var(--_container-background-color);\n opacity: var(--_container-opacity);\n border: var(--_container-border);\n }\n\n .state {\n z-index: 2;\n pointer-events: none;\n opacity: var(--_state-opacity);\n background-color: var(--_state-background-color);\n }\n\n .content {\n z-index: 3;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--_content-color);\n }\n\n :host([disabled]) {\n pointer-events: none;\n }\n\n .ripple {\n border-radius: inherit;\n z-index: 3;\n }\n`\n"]}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("lit").CSSResult;
2
+ export default _default;
3
+ //# sourceMappingURL=filled-tonal.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filled-tonal.styles.d.ts","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/filled-tonal.styles.ts"],"names":[],"mappings":";AAEA,wBA2BC"}
@@ -0,0 +1,30 @@
1
+ import { css } from 'lit';
2
+ export default css `
3
+ :host {
4
+ --md-ripple-hover-state-layer-color: var(--md-sys-color-on-secondary-container);
5
+ --md-ripple-focus-state-layer-color: var(--md-sys-color-on-secondary-container);
6
+ --md-ripple-pressed-state-layer-color: var(--md-sys-color-on-secondary-container);
7
+
8
+ --_container-background-color: var(--md-sys-color-secondary-container);
9
+ --_surface-color: var(--md-sys-color-on-secondary-container);
10
+ --_content-color: var(--md-sys-color-on-secondary-container);
11
+ }
12
+
13
+ :host([disabled]) {
14
+ --_container-background-color: var(--md-sys-color-on-surface);
15
+ --_container-opacity: 0.12;
16
+ --_content-color: var(--md-sys-color-on-surface);
17
+ --_content-opacity: 0.38;
18
+ }
19
+
20
+ :host([toggle]) {
21
+ --_container-background-color: var(--md-sys-color-surface-variant);
22
+ --_content-color: var(--md-sys-color-on-surface-variant);
23
+ }
24
+
25
+ :host([toggle][active]) {
26
+ --_container-background-color: var(--md-sys-color-secondary-container);
27
+ --_content-color: var(--md-sys-color-on-secondary-container);
28
+ }
29
+ `;
30
+ //# sourceMappingURL=filled-tonal.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filled-tonal.styles.js","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/filled-tonal.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAEzB,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BjB,CAAA","sourcesContent":["import { css } from 'lit'\n\nexport default css`\n :host {\n --md-ripple-hover-state-layer-color: var(--md-sys-color-on-secondary-container);\n --md-ripple-focus-state-layer-color: var(--md-sys-color-on-secondary-container);\n --md-ripple-pressed-state-layer-color: var(--md-sys-color-on-secondary-container);\n\n --_container-background-color: var(--md-sys-color-secondary-container);\n --_surface-color: var(--md-sys-color-on-secondary-container);\n --_content-color: var(--md-sys-color-on-secondary-container);\n }\n\n :host([disabled]) {\n --_container-background-color: var(--md-sys-color-on-surface);\n --_container-opacity: 0.12;\n --_content-color: var(--md-sys-color-on-surface);\n --_content-opacity: 0.38;\n }\n\n :host([toggle]) {\n --_container-background-color: var(--md-sys-color-surface-variant);\n --_content-color: var(--md-sys-color-on-surface-variant);\n }\n\n :host([toggle][active]) {\n --_container-background-color: var(--md-sys-color-secondary-container);\n --_content-color: var(--md-sys-color-on-secondary-container);\n }\n`\n"]}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("lit").CSSResult;
2
+ export default _default;
3
+ //# sourceMappingURL=filled.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filled.styles.d.ts","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/filled.styles.ts"],"names":[],"mappings":";AAEA,wBAiCC"}
@@ -0,0 +1,36 @@
1
+ import { css } from 'lit';
2
+ export default css `
3
+ :host {
4
+ --md-ripple-hover-state-layer-color: var(--md-sys-color-on-primary);
5
+ --md-ripple-focus-state-layer-color: var(--md-sys-color-on-primary);
6
+ --md-ripple-pressed-state-layer-color: var(--md-sys-color-on-primary);
7
+
8
+ --_container-background-color: var(--md-sys-color-primary);
9
+ --_surface-color: var(--md-sys-color-on-primary);
10
+ --_content-color: var(--md-sys-color-on-primary);
11
+ }
12
+
13
+ :host([disabled]) {
14
+ --_container-background-color: var(--md-sys-color-on-surface);
15
+ --_container-opacity: 0.12;
16
+ --_content-color: var(--md-sys-color-on-surface);
17
+ --_content-opacity: 0.38;
18
+ }
19
+
20
+ :host([toggle]) {
21
+ --_content-color: var(--md-sys-color-primary);
22
+ --_container-background-color: var(--md-sys-color-surface-variant);
23
+ }
24
+
25
+ :host([toggle][active]) {
26
+ --_container-background-color: var(--md-sys-color-primary);
27
+ --_content-color: var(--md-sys-color-on-primary);
28
+ }
29
+
30
+ :host([toggle]:not([active])) {
31
+ --_state-background-color: var(--md-sys-color-primary);
32
+ --_state-opacity: var(--md-sys-state-hover-state-layer-opacity);
33
+ --_content-color: var(--md-sys-color-primary);
34
+ }
35
+ `;
36
+ //# sourceMappingURL=filled.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filled.styles.js","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/filled.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAEzB,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCjB,CAAA","sourcesContent":["import { css } from 'lit'\n\nexport default css`\n :host {\n --md-ripple-hover-state-layer-color: var(--md-sys-color-on-primary);\n --md-ripple-focus-state-layer-color: var(--md-sys-color-on-primary);\n --md-ripple-pressed-state-layer-color: var(--md-sys-color-on-primary);\n\n --_container-background-color: var(--md-sys-color-primary);\n --_surface-color: var(--md-sys-color-on-primary);\n --_content-color: var(--md-sys-color-on-primary);\n }\n\n :host([disabled]) {\n --_container-background-color: var(--md-sys-color-on-surface);\n --_container-opacity: 0.12;\n --_content-color: var(--md-sys-color-on-surface);\n --_content-opacity: 0.38;\n }\n\n :host([toggle]) {\n --_content-color: var(--md-sys-color-primary);\n --_container-background-color: var(--md-sys-color-surface-variant);\n }\n\n :host([toggle][active]) {\n --_container-background-color: var(--md-sys-color-primary);\n --_content-color: var(--md-sys-color-on-primary);\n }\n\n :host([toggle]:not([active])) {\n --_state-background-color: var(--md-sys-color-primary);\n --_state-opacity: var(--md-sys-state-hover-state-layer-opacity);\n --_content-color: var(--md-sys-color-primary);\n }\n`\n"]}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("lit").CSSResult;
2
+ export default _default;
3
+ //# sourceMappingURL=outlined.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outlined.styles.d.ts","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/outlined.styles.ts"],"names":[],"mappings":";AAEA,wBA4BC"}
@@ -0,0 +1,31 @@
1
+ import { css } from 'lit';
2
+ export default css `
3
+ :host {
4
+ --_container-border: 1px var(--md-sys-color-outline) solid;
5
+
6
+ --md-ripple-hover-state-layer-color: var(--md-sys-color-on-surface-variant);
7
+ --md-ripple-focus-state-layer-color: var(--md-sys-color-on-surface-variant);
8
+ --md-ripple-pressed-state-layer-color: var(--md-sys-color-on-surface-variant);
9
+
10
+ --_container-background-color: transparent;
11
+ --_surface-color: var(--md-sys-color-on-surface-variant);
12
+ --_content-color: var(--md-sys-color-on-surface-variant);
13
+ }
14
+
15
+ :host([disabled]) {
16
+ --_container-background-color: var(--md-sys-color-on-surface);
17
+ --_container-opacity: 0.12;
18
+ --_content-color: var(--md-sys-color-on-surface);
19
+ --_content-opacity: 0.38;
20
+ }
21
+
22
+ :host([toggle][active]) {
23
+ --_container-background-color: var(--md-sys-color-inverse-surface);
24
+ --_content-color: var(--md-sys-color-inverse-on-surface);
25
+
26
+ --md-ripple-hover-state-layer-color: var(--md-sys-color-inverse-on-surface);
27
+ --md-ripple-focus-state-layer-color: var(--md-sys-color-inverse-on-surface);
28
+ --md-ripple-pressed-state-layer-color: var(--md-sys-color-inverse-on-surface);
29
+ }
30
+ `;
31
+ //# sourceMappingURL=outlined.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outlined.styles.js","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/outlined.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAEzB,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BjB,CAAA","sourcesContent":["import { css } from 'lit'\n\nexport default css`\n :host {\n --_container-border: 1px var(--md-sys-color-outline) solid;\n\n --md-ripple-hover-state-layer-color: var(--md-sys-color-on-surface-variant);\n --md-ripple-focus-state-layer-color: var(--md-sys-color-on-surface-variant);\n --md-ripple-pressed-state-layer-color: var(--md-sys-color-on-surface-variant);\n\n --_container-background-color: transparent;\n --_surface-color: var(--md-sys-color-on-surface-variant);\n --_content-color: var(--md-sys-color-on-surface-variant);\n }\n\n :host([disabled]) {\n --_container-background-color: var(--md-sys-color-on-surface);\n --_container-opacity: 0.12;\n --_content-color: var(--md-sys-color-on-surface);\n --_content-opacity: 0.38;\n }\n\n :host([toggle][active]) {\n --_container-background-color: var(--md-sys-color-inverse-surface);\n --_content-color: var(--md-sys-color-inverse-on-surface);\n\n --md-ripple-hover-state-layer-color: var(--md-sys-color-inverse-on-surface);\n --md-ripple-focus-state-layer-color: var(--md-sys-color-inverse-on-surface);\n --md-ripple-pressed-state-layer-color: var(--md-sys-color-inverse-on-surface);\n }\n`\n"]}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("lit").CSSResult;
2
+ export default _default;
3
+ //# sourceMappingURL=standard.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standard.styles.d.ts","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/standard.styles.ts"],"names":[],"mappings":";AAEA,wBAeC"}
@@ -0,0 +1,18 @@
1
+ import { css } from 'lit';
2
+ export default css `
3
+ :host {
4
+ --md-ripple-hover-state-layer-color: var(--md-sys-color-on-surface-variant);
5
+ --md-ripple-focus-state-layer-color: var(--md-sys-color-on-surface-variant);
6
+ --md-ripple-pressed-state-layer-color: var(--md-sys-color-on-surface-variant);
7
+ --_container-background-color: transparent;
8
+ --_content-color: var(--md-sys-color-on-surface-variant);
9
+ }
10
+
11
+ :host([toggle][active]) {
12
+ --md-ripple-hover-state-layer-color: var(--md-sys-color-primary);
13
+ --md-ripple-focus-state-layer-color: var(--md-sys-color-primary);
14
+ --md-ripple-pressed-state-layer-color: var(--md-sys-color-primary);
15
+ --_content-color: var(--md-sys-color-primary);
16
+ }
17
+ `;
18
+ //# sourceMappingURL=standard.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standard.styles.js","sourceRoot":"","sources":["../../../../../src/md/icon-button/internals/standard.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAEzB,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;CAejB,CAAA","sourcesContent":["import { css } from 'lit'\n\nexport default css`\n :host {\n --md-ripple-hover-state-layer-color: var(--md-sys-color-on-surface-variant);\n --md-ripple-focus-state-layer-color: var(--md-sys-color-on-surface-variant);\n --md-ripple-pressed-state-layer-color: var(--md-sys-color-on-surface-variant);\n --_container-background-color: transparent;\n --_content-color: var(--md-sys-color-on-surface-variant);\n }\n\n :host([toggle][active]) {\n --md-ripple-hover-state-layer-color: var(--md-sys-color-primary);\n --md-ripple-focus-state-layer-color: var(--md-sys-color-primary);\n --md-ripple-pressed-state-layer-color: var(--md-sys-color-primary);\n --_content-color: var(--md-sys-color-primary);\n }\n`\n"]}
@@ -0,0 +1,11 @@
1
+ import type { CSSResultOrNative } from 'lit';
2
+ import Element from './internals/IconButton.js';
3
+ export declare class UiFilledIconButtonElement extends Element {
4
+ static styles: CSSResultOrNative[];
5
+ }
6
+ declare global {
7
+ interface HTMLElementTagNameMap {
8
+ 'ui-filled-icon-button': UiFilledIconButtonElement;
9
+ }
10
+ }
11
+ //# sourceMappingURL=ui-filled-icon-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui-filled-icon-button.d.ts","sourceRoot":"","sources":["../../../../src/md/icon-button/ui-filled-icon-button.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,KAAK,CAAA;AAE5C,OAAO,OAAO,MAAM,2BAA2B,CAAA;AAI/C,qBACa,yBAA0B,SAAQ,OAAO;IACpD,OAAgB,MAAM,EAAE,iBAAiB,EAAE,CAAiB;CAC7D;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,uBAAuB,EAAE,yBAAyB,CAAA;KACnD;CACF"}