@justeattakeaway/pie-icon-button 0.5.0 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,14 +1,14 @@
1
- [3:48:32 PM] @custom-elements-manifest/analyzer: Created new manifest.
1
+ [2:38:37 PM] @custom-elements-manifest/analyzer: Created new manifest.
2
2
  react wrapper has been added!
3
- vite v4.2.3 building for production...
3
+ vite v4.3.9 building for production...
4
4
  transforming...
5
5
  ✓ 28 modules transformed.
6
6
  rendering chunks...
7
7
  computing gzip size...
8
- dist/index.js  7.93 kB │ gzip: 2.13 kB
9
- dist/react.js 59.14 kB │ gzip: 15.95 kB
8
+ dist/index.js  8.31 kB │ gzip: 2.23 kB
9
+ dist/react.js 59.03 kB │ gzip: 15.92 kB
10
10
  
11
11
  [vite:dts] Start generate declaration files...
12
- ✓ built in 30.04s
13
- [vite:dts] Declaration files built in 27657ms.
12
+ ✓ built in 23.86s
13
+ [vite:dts] Declaration files built in 21734ms.
14
14
  
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @justeattakeaway/pie-icon-button
2
2
 
3
+ ## 0.6.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [Changed] - Updated defs to use different array type syntax ([#566](https://github.com/justeattakeaway/pie/pull/566)) by [@ashleynolan](https://github.com/ashleynolan)
8
+
9
+ ## 0.6.0
10
+
11
+ ### Minor Changes
12
+
13
+ - [Added] - `size` prop added to pie-icon-button ([#557](https://github.com/justeattakeaway/pie/pull/557)) by [@ashleynolan](https://github.com/ashleynolan)
14
+
3
15
  ## 0.5.0
4
16
 
5
17
  ### Minor Changes
package/README.md CHANGED
@@ -8,37 +8,142 @@
8
8
  </a>
9
9
  </p>
10
10
 
11
+ # Table of Contents
12
+
13
+ 1. [Introduction](#pie-icon-button)
14
+ 2. [Local Development](#local-development)
15
+ 3. [Props](#props)
16
+ 4. [Events](#events)
17
+ - [HTML example](#html)
18
+ - [Vue example (using Nuxt 3)](#vue-templates-using-nuxt-3)
19
+ - [React example (using Next 13)](#react-templates-using-next-13)
20
+ 5. [Testing](#testing)
21
+ - [Browser Tests](#browser-tests)
22
+ - [Visual Tests](#visual-tests)
23
+
24
+
11
25
  ## `pie-icon-button`
12
26
 
13
- `pie-icon-button` is a Web Component built using the Lit library. It offers a simple and accessible icon button component for web applications. This component can be easily integrated into various frontend frameworks and customized through a set of properties.
27
+ `pie-icon-button` is a Web Component built using the Lit library. It offers a simple and accessible icon button component for web applications.
28
+
29
+ This component can be easily integrated into various frontend frameworks and customized through a set of properties.
30
+
31
+ ## Local development
32
+
33
+ Install the dependencies. Note that this, and the following commands below, should be run from the **root of the monorepo**:
34
+
35
+ ```bash
36
+ yarn
37
+ ```
38
+
39
+ To build the `pie-icon-button` package, run the following command:
40
+
41
+ ```bash
42
+ yarn build --filter=pie-icon-button
43
+ ```
44
+
45
+ If you'd like to develop using the component storybook, then you should build the component in `watch` mode, and run storybook in a separate terminal tab:
46
+
47
+
48
+ ```bash
49
+ yarn watch --filter=pie-icon-button
50
+
51
+ # in a separate terminal tab, run
52
+ yarn dev --filter=pie-storybook
53
+ ```
54
+
55
+
56
+ ### Importing the component
57
+
58
+ ```js
59
+ // Default – for Native JS Applications, Vue, Angular, Svelte etc.
60
+ import { PieIconButton } from '@justeattakeaway/pie-icon-button';
61
+
62
+ // React
63
+ // For React, you will need to import our React specific component build
64
+ // Which wraps the web component using the @lit-labs/react package
65
+ import { PieIconButton } from '@justeattakeaway/pie-icon-button/dist/react';
66
+ ```
67
+
68
+
69
+ ## Props
70
+
71
+ | Property | Type | Default | Description |
72
+ |-------------|-----------|-----------------|-------------------------------------------------------------------------------------------------------------------|
73
+ | size | `String` | `medium` | Size of the Icon Button, one of `iconButtonSizes` – `xsmall`, `small`, `medium`, `large` |
74
+ | variant | `String` | `primary` | Variant of the button, one of `iconButtonVariants` – `primary`, `secondary`, `outline`, `ghost`, `ghost-tertiary` |
75
+ | disabled | `Boolean` | `false` | If `true`, disables the button. |
76
+
77
+ In your markup or JSX, you can then use these to set the properties for the `pie-icon-button` component:
78
+
79
+ ```html
80
+ <!-- Native HTML -->
81
+ <pie-icon-button size='medium' type='button' variant='primary'>Click me!</pie-icon-button>
82
+
83
+ <!-- JSX -->
84
+ <PieIconButton size='medium' type='button' variant='primary'>Click me!</PieIconButton>
85
+ ```
86
+
87
+ ## Events
88
+
89
+ This component does not use any custom event handlers. In order to add event listening to this component, you can treat it like a native HTML element in your application.
90
+
91
+ For example, to add a click handler in various templates:
92
+
93
+
94
+ ### HTML
95
+
96
+ ```html
97
+ <!-- Other attributes omitted for clarity -->
98
+ <pie-icon-button onclick="e => console.log(e)">Click me!</pie-icon-button>
99
+ ```
100
+
101
+ ### Vue templates (using Nuxt 3)
102
+
103
+ ```html
104
+ <!-- Other attributes omitted for clarity -->
105
+ <pie-icon-button @click="handleClick">Click me!</pie-icon-button>
106
+ ```
107
+
108
+ ### React templates (using Next 13)
109
+
110
+ ```html
111
+ <!-- Other attributes omitted for clarity -->
112
+ <PieIconButton onClick={handleClick}>increment</PieIconButton>
113
+
114
+ ```
115
+
14
116
 
15
117
  ## Testing
16
118
 
17
119
  ### Browser tests
18
120
 
19
- Run at the root of the monorepo:
20
- ```
121
+ To run the browser tests, run the following command from the root of the monorepo:
122
+
123
+ ```bash
21
124
  yarn test:browsers --filter=pie-icon-button
22
125
  ```
23
126
 
24
127
  ### Visual tests
25
128
 
26
- Run at the root of the monorepo:
27
- ```
129
+ To run the visual regression tests, run the following command from the root of the monorepo:
130
+
131
+ ```bash
28
132
  yarn test:visual --filter=pie-icon-button
29
133
  ```
30
134
 
31
135
  Note: To run these locally, you will need to ensure that any environment variables required are set up on your machine to mirror those on CI (such as Percy tokens). How you achieve this will differ between operating systems.
32
136
 
33
- Setup via bash:
137
+ #### Setup via bash
34
138
 
35
- ```
139
+ ```bash
36
140
  export PERCY_TOKEN_PIE_ICON_BUTTON=abcde
37
141
  ```
38
142
 
39
- Setup via package.json:
143
+ #### Setup via package.json
40
144
 
41
145
  Under scripts `test:visual` replace the environment variable with the below:
42
146
 
43
- ```
147
+ ```bash
44
148
  PERCY_TOKEN_PIE_ICON_BUTTON=abcde
149
+ ```
package/dist/index.js CHANGED
@@ -1,29 +1,29 @@
1
- import { unsafeCSS as b, LitElement as p, html as l } from "lit";
2
- import { property as d } from "lit/decorators.js";
1
+ import { unsafeCSS as u, LitElement as f, html as d } from "lit";
2
+ import { property as l } from "lit/decorators.js";
3
3
  import "lit/decorators/property.js";
4
- const g = (c, t, r) => function(n, o) {
4
+ const h = (i, t, n) => function(r, o) {
5
5
  const e = `#${o}`;
6
- Object.defineProperty(n, o, {
6
+ Object.defineProperty(r, o, {
7
7
  get() {
8
8
  return this[e];
9
9
  },
10
10
  set(a) {
11
- const f = this[e];
11
+ const g = this[e];
12
12
  t.includes(a) ? this[e] = a : (console.error(
13
- `<${c}> Invalid value "${a}" provided for property "${o}".`,
13
+ `<${i}> Invalid value "${a}" provided for property "${o}".`,
14
14
  `Must be one of: ${t.join(" | ")}.`,
15
- `Falling back to default value: "${r}"`
16
- ), this[e] = r), this.requestUpdate(o, f);
15
+ `Falling back to default value: "${n}"`
16
+ ), this[e] = n), this.requestUpdate(o, g);
17
17
  }
18
18
  });
19
- }, y = `.c-webComponentTestWrapper{padding-block:var(--dt-spacing-c);padding-inline:var(--dt-spacing-e);font-family:var(--dt-font-interactive-m-family);font-size:calc(var(--dt-font-size-20) * 1px);border:1px solid var(--dt-color-background-dark);display:grid;grid-template-columns:1fr 1fr}.c-webComponentTestWrapper-label{margin-block:var(--dt-spacing-c)}.c-webComponentTestWrapper-slot{padding:var(--dt-spacing-c);border:1px dashed var(--dt-color-background-dark);grid-column:1/3;margin-block-start:var(--dt-spacing-c)}
19
+ }, m = `.c-webComponentTestWrapper{padding-block:var(--dt-spacing-c);padding-inline:var(--dt-spacing-e);font-family:var(--dt-font-interactive-m-family);font-size:calc(var(--dt-font-size-20) * 1px);border:1px solid var(--dt-color-background-dark);display:grid;grid-template-columns:1fr 1fr}.c-webComponentTestWrapper-label{margin-block:var(--dt-spacing-c)}.c-webComponentTestWrapper-slot{padding:var(--dt-spacing-c);border:1px dashed var(--dt-color-background-dark);grid-column:1/3;margin-block-start:var(--dt-spacing-c)}
20
20
  `;
21
- var m = Object.defineProperty, B = Object.getOwnPropertyDescriptor, w = (c, t, r, n) => {
22
- for (var o = n > 1 ? void 0 : n ? B(t, r) : t, e = c.length - 1, a; e >= 0; e--)
23
- (a = c[e]) && (o = (n ? a(t, r, o) : a(o)) || o);
24
- return n && o && m(t, r, o), o;
21
+ var y = Object.defineProperty, B = Object.getOwnPropertyDescriptor, w = (i, t, n, r) => {
22
+ for (var o = r > 1 ? void 0 : r ? B(t, n) : t, e = i.length - 1, a; e >= 0; e--)
23
+ (a = i[e]) && (o = (r ? a(t, n, o) : a(o)) || o);
24
+ return r && o && y(t, n, o), o;
25
25
  };
26
- class s extends p {
26
+ class s extends f {
27
27
  constructor() {
28
28
  super(...arguments), this.propKeyValues = "";
29
29
  }
@@ -33,13 +33,13 @@ class s extends p {
33
33
  // <p class="c-webComponentTestWrapper-label"><b>isFullWidth</b>: <code>true</code></p>
34
34
  _renderPropKeyValues() {
35
35
  return this.propKeyValues.split(",").map((t) => {
36
- const [r, n] = t.split(":");
37
- return l`<p class="c-webComponentTestWrapper-label"><b>${r}</b>: <code>${n}</code></p>`;
36
+ const [n, r] = t.split(":");
37
+ return d`<p class="c-webComponentTestWrapper-label"><b>${n}</b>: <code>${r}</code></p>`;
38
38
  });
39
39
  }
40
40
  // eslint-disable-next-line class-methods-use-this
41
41
  render() {
42
- return l`
42
+ return d`
43
43
  <div class="c-webComponentTestWrapper">
44
44
  ${this._renderPropKeyValues()}
45
45
  <div class="c-webComponentTestWrapper-slot">
@@ -48,38 +48,45 @@ class s extends p {
48
48
  </div>`;
49
49
  }
50
50
  }
51
- s.styles = b(y);
51
+ s.styles = u(m);
52
52
  w([
53
- d({ type: String })
53
+ l({ type: String })
54
54
  ], s.prototype, "propKeyValues", 2);
55
- const v = "web-component-test-wrapper";
56
- customElements.get(v) || customElements.define(v, s);
57
- const $ = `.o-iconBtn{--btn-border-radius: var(--dt-radius-rounded-e);--btn-height: 48px;--btn-width: var(--btn-height);--btn-bg-color: var(--dt-color-interactive-brand);--btn-icon-fill: var(--dt-color-content-interactive-primary);--btn-focus: var(--dt-color-focus-outer);min-block-size:var(--btn-height);aspect-ratio:1/1;border:none;border-radius:var(--btn-border-radius);outline:none;background-color:var(--btn-bg-color);cursor:pointer;user-select:none;display:flex;align-items:center;justify-content:center}@supports not (aspect-ratio: 1/1){.o-iconBtn{min-inline-size:var(--btn-width)}}.o-iconBtn:focus-visible{outline:2px solid var(--btn-focus)}.o-iconBtn svg{height:24.5px;width:24.5px}.o-iconBtn svg,.o-iconBtn path{fill:var(--btn-icon-fill)}.o-iconBtn[variant=primary]:hover:not(:disabled){background-color:hsl(var(--dt-color-interactive-brand-h),var(--dt-color-interactive-brand-s),calc(var(--dt-color-interactive-brand-l) - var(--dt-color-hover-01)))}.o-iconBtn[variant=primary]:active:not(:disabled){background-color:hsl(var(--dt-color-interactive-brand-h),var(--dt-color-interactive-brand-s),calc(var(--dt-color-interactive-brand-l) - var(--dt-color-active-01)))}.o-iconBtn[variant=secondary]{--btn-bg-color: var(--dt-color-interactive-secondary);--btn-icon-fill: var(--dt-color-content-interactive-secondary)}.o-iconBtn[variant=secondary]:hover:not(:disabled){background-color:hsl(var(--dt-color-interactive-secondary-h),var(--dt-color-interactive-secondary-s),calc(var(--dt-color-interactive-secondary-l) - var(--dt-color-hover-01)))}.o-iconBtn[variant=secondary]:active:not(:disabled){background-color:hsl(var(--dt-color-interactive-secondary-h),var(--dt-color-interactive-secondary-s),calc(var(--dt-color-interactive-secondary-l) - var(--dt-color-active-01)))}.o-iconBtn[variant=outline]{--btn-bg-color: var(--dt-color-container-default);--btn-icon-fill: var(--dt-color-content-interactive-brand)}.o-iconBtn[variant=outline] .o-iconBtn{border:1px solid var(--dt-color-border-strong)}.o-iconBtn[variant=outline]:hover:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-hover-01)))}.o-iconBtn[variant=outline]:active:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-active-01)))}.o-iconBtn[variant=ghost]{--btn-bg-color: var(--dt-color-container-default);--btn-icon-fill: var(--dt-color-content-interactive-brand)}.o-iconBtn[variant=ghost]:hover:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-hover-01)))}.o-iconBtn[variant=ghost]:active:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-active-01)))}.o-iconBtn[variant=ghost-tertiary]{--btn-bg-color: var(--dt-color-container-default);--btn-icon-fill: var(--dt-color-content-interactive-tertiary)}.o-iconBtn[variant=ghost-tertiary]:hover:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-hover-01)))}.o-iconBtn[variant=ghost-tertiary]:active:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-active-01)))}.o-iconBtn[disabled]{--btn-bg-color: var(--dt-color-disabled-01);--btn-icon-fill: var(--dt-color-content-disabled)}.o-iconBtn[disabled] .o-iconBtn{border:1px solid var(--dt-color-disabled-01);cursor:not-allowed}.o-iconBtn[disabled][variant=outline] .o-iconBtn{outline:none}.o-iconBtn[disabled][variant=ghost],.o-iconBtn[disabled][variant=ghost-tertiary]{--btn-bg-color: transparent;--btn-icon-fill: var(--dt-color-content-default)}.o-iconBtn[disabled][variant=ghost] .o-iconBtn,.o-iconBtn[disabled][variant=ghost-tertiary] .o-iconBtn{outline:none;border:none}
58
- `, x = [
55
+ const p = "web-component-test-wrapper";
56
+ customElements.get(p) || customElements.define(p, s);
57
+ const x = `.o-iconBtn{--btn-border-radius: var(--dt-radius-rounded-e);--btn-dimension: 48px;--btn-bg-color: var(--dt-color-interactive-brand);--btn-icon-fill: var(--dt-color-content-interactive-primary);--btn-focus: var(--dt-color-focus-outer);--btn-icon-size: 24px;min-block-size:var(--btn-dimension);aspect-ratio:1/1;border:none;border-radius:var(--btn-border-radius);outline:none;background-color:var(--btn-bg-color);cursor:pointer;user-select:none;display:flex;align-items:center;justify-content:center}@supports not (aspect-ratio: 1/1){.o-iconBtn{min-inline-size:var(--btn-dimension)}}.o-iconBtn:focus-visible{outline:2px solid var(--btn-focus)}.o-iconBtn svg{height:var(--btn-icon-size);width:var(--btn-icon-size)}.o-iconBtn svg,.o-iconBtn path{fill:var(--btn-icon-fill)}.o-iconBtn[variant=primary]:hover:not(:disabled){background-color:hsl(var(--dt-color-interactive-brand-h),var(--dt-color-interactive-brand-s),calc(var(--dt-color-interactive-brand-l) - var(--dt-color-hover-01)))}.o-iconBtn[variant=primary]:active:not(:disabled){background-color:hsl(var(--dt-color-interactive-brand-h),var(--dt-color-interactive-brand-s),calc(var(--dt-color-interactive-brand-l) - var(--dt-color-active-01)))}.o-iconBtn[variant=secondary]{--btn-bg-color: var(--dt-color-interactive-secondary);--btn-icon-fill: var(--dt-color-content-interactive-secondary)}.o-iconBtn[variant=secondary]:hover:not(:disabled){background-color:hsl(var(--dt-color-interactive-secondary-h),var(--dt-color-interactive-secondary-s),calc(var(--dt-color-interactive-secondary-l) - var(--dt-color-hover-01)))}.o-iconBtn[variant=secondary]:active:not(:disabled){background-color:hsl(var(--dt-color-interactive-secondary-h),var(--dt-color-interactive-secondary-s),calc(var(--dt-color-interactive-secondary-l) - var(--dt-color-active-01)))}.o-iconBtn[variant=outline]{--btn-bg-color: var(--dt-color-container-default);--btn-icon-fill: var(--dt-color-content-interactive-brand)}.o-iconBtn[variant=outline] .o-iconBtn{border:1px solid var(--dt-color-border-strong)}.o-iconBtn[variant=outline]:hover:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-hover-01)))}.o-iconBtn[variant=outline]:active:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-active-01)))}.o-iconBtn[variant=ghost]{--btn-bg-color: var(--dt-color-container-default);--btn-icon-fill: var(--dt-color-content-interactive-brand)}.o-iconBtn[variant=ghost]:hover:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-hover-01)))}.o-iconBtn[variant=ghost]:active:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-active-01)))}.o-iconBtn[variant=ghost-tertiary]{--btn-bg-color: var(--dt-color-container-default);--btn-icon-fill: var(--dt-color-content-interactive-tertiary)}.o-iconBtn[variant=ghost-tertiary]:hover:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-hover-01)))}.o-iconBtn[variant=ghost-tertiary]:active:not(:disabled){background-color:hsl(var(--dt-color-container-default-h),var(--dt-color-container-default-s),calc(var(--dt-color-container-default-l) - var(--dt-color-active-01)))}.o-iconBtn[disabled]{--btn-bg-color: var(--dt-color-disabled-01);--btn-icon-fill: var(--dt-color-content-disabled)}.o-iconBtn[disabled] .o-iconBtn{border:1px solid var(--dt-color-disabled-01);cursor:not-allowed}.o-iconBtn[disabled][variant=outline] .o-iconBtn{outline:none}.o-iconBtn[disabled][variant=ghost],.o-iconBtn[disabled][variant=ghost-tertiary]{--btn-bg-color: transparent;--btn-icon-fill: var(--dt-color-content-default)}.o-iconBtn[disabled][variant=ghost] .o-iconBtn,.o-iconBtn[disabled][variant=ghost-tertiary] .o-iconBtn{outline:none;border:none}.o-iconBtn[size=xsmall]{--btn-dimension: 32px}.o-iconBtn[size=small]{--btn-dimension: 40px}.o-iconBtn[size=large]{--btn-dimension: 56px;--btn-icon-size: 28px}
58
+ `, $ = [
59
+ "xsmall",
60
+ "small",
61
+ "medium",
62
+ "large"
63
+ ], z = [
59
64
  "primary",
60
65
  "secondary",
61
66
  "outline",
62
67
  "ghost",
63
68
  "ghost-tertiary"
64
69
  ];
65
- var P = Object.defineProperty, _ = Object.getOwnPropertyDescriptor, u = (c, t, r, n) => {
66
- for (var o = n > 1 ? void 0 : n ? _(t, r) : t, e = c.length - 1, a; e >= 0; e--)
67
- (a = c[e]) && (o = (n ? a(t, r, o) : a(o)) || o);
68
- return n && o && P(t, r, o), o;
70
+ var P = Object.defineProperty, _ = Object.getOwnPropertyDescriptor, v = (i, t, n, r) => {
71
+ for (var o = r > 1 ? void 0 : r ? _(t, n) : t, e = i.length - 1, a; e >= 0; e--)
72
+ (a = i[e]) && (o = (r ? a(t, n, o) : a(o)) || o);
73
+ return r && o && P(t, n, o), o;
69
74
  };
70
- const h = "pie-icon-button";
71
- class i extends p {
75
+ const b = "pie-icon-button";
76
+ class c extends f {
72
77
  constructor() {
73
- super(...arguments), this.variant = "primary", this.disabled = !1;
78
+ super(...arguments), this.size = "medium", this.variant = "primary", this.disabled = !1;
74
79
  }
75
80
  render() {
76
81
  const {
77
82
  disabled: t,
83
+ size: n,
78
84
  variant: r
79
85
  } = this;
80
- return l`
86
+ return d`
81
87
  <button
82
88
  class="o-iconBtn"
89
+ size=${n}
83
90
  variant=${r}
84
91
  ?disabled=${t}>
85
92
  <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
@@ -88,16 +95,21 @@ class i extends p {
88
95
  </button>`;
89
96
  }
90
97
  }
91
- i.styles = b($);
92
- u([
93
- d(),
94
- g(h, x, "primary")
95
- ], i.prototype, "variant", 2);
96
- u([
97
- d({ type: Boolean })
98
- ], i.prototype, "disabled", 2);
99
- customElements.define(h, i);
98
+ c.styles = u(x);
99
+ v([
100
+ l(),
101
+ h(b, $, "medium")
102
+ ], c.prototype, "size", 2);
103
+ v([
104
+ l(),
105
+ h(b, z, "primary")
106
+ ], c.prototype, "variant", 2);
107
+ v([
108
+ l({ type: Boolean })
109
+ ], c.prototype, "disabled", 2);
110
+ customElements.define(b, c);
100
111
  export {
101
- i as PieIconButton,
102
- x as iconButtonVariants
112
+ c as PieIconButton,
113
+ $ as iconButtonSizes,
114
+ z as iconButtonVariants
103
115
  };