@justeattakeaway/pie-radio 1.1.8 → 1.1.9

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.
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { LitElement as k, html as m, unsafeCSS as y } from "lit";
2
- import { state as u, property as c, query as x } from "lit/decorators.js";
2
+ import { state as u, property as d, query as x } from "lit/decorators.js";
3
3
  import { ifDefined as w } from "lit/directives/if-defined.js";
4
4
  import { live as _ } from "lit/directives/live.js";
5
5
  import { classMap as C } from "lit/directives/class-map.js";
@@ -9,22 +9,22 @@ const b = class b extends k {
9
9
  this.getAttribute("v") || this.setAttribute("v", b.v);
10
10
  }
11
11
  };
12
- b.v = "1.1.8";
13
- let h = b;
12
+ b.v = "1.1.9";
13
+ let v = b;
14
14
  const E = ["default", "error"], l = {
15
15
  checked: !1,
16
16
  defaultChecked: !1,
17
17
  disabled: !1,
18
18
  required: !1,
19
19
  status: "default"
20
- }, S = '*,*:after,*:before{box-sizing:inherit}:host{display:block}.c-radio{--radio-font-family: var(--dt-font-body-l-family);--radio-font-size: calc(var(--dt-font-body-l-size) * 1px);--radio-line-height: calc(var(--dt-font-body-l-line-height) * 1px);--radio-font-weight: var(--dt-font-body-l-weight);--radio-text-color: var(--dt-color-content-default-solid);--radio-cursor: pointer;display:flex;align-items:center;gap:var(--dt-spacing-b);cursor:var(--radio-cursor);font-family:var(--radio-font-family);font-size:var(--radio-font-size);line-height:var(--radio-line-height);font-weight:var(--radio-font-weight);color:var(--radio-text-color)}.c-radio.is-disabled{--radio-cursor: not-allowed}.c-radio .c-radio-input{--radio-dot-bg-color: var(--dt-color-content-interactive-primary);--radio-bg-color: transparent;--radio-bg-color--checked: var(--dt-color-interactive-brand);--radio-border-color: var(--dt-color-border-form);--radio-size: 24px;--radio-dot-size: 8px;--radio-cursor: pointer;--radio-motion-easing: var(--dt-motion-easing-persistent-functional);--radio-border-width: 1px;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-block;position:relative;inline-size:var(--radio-size);block-size:var(--radio-size);border:var(--radio-border-width) solid var(--radio-border-color);border-radius:50%;margin:0;cursor:var(--radio-cursor);background-color:var(--radio-bg-color);flex-shrink:0;transition:background-color var(--dt-motion-timing-100) var(--radio-motion-easing);align-self:flex-start}.c-radio .c-radio-input:before{--circle-size: calc(var(--radio-border-width) * -1);content:"";display:block;inset:var(--circle-size);border-radius:inherit;background-color:var(--radio-bg-color--checked);position:absolute;transform:scale(0)}.c-radio .c-radio-input:after{content:"";position:absolute;top:50%;left:50%;width:var(--radio-dot-size);height:var(--radio-dot-size);background-color:var(--radio-dot-bg-color);border-radius:50%;transform:translate(-50%,-50%) scale(0)}.c-radio .c-radio-input:checked:after{transform:translate(-50%,-50%) scale(1)}.c-radio .c-radio-input:checked:before{transform:scale(1)}.c-radio .c-radio-input:focus-visible{box-shadow:0 0 0 2px var(--dt-color-focus-inner),0 0 0 4px var(--dt-color-focus-outer);outline:none}.c-radio .c-radio-input:disabled{--radio-bg-color: var(--dt-color-disabled-01);--radio-border-color: var(--dt-color-border-default);--radio-cursor: not-allowed}.c-radio .c-radio-input:checked:disabled{--radio-dot-bg-color: var(--dt-color-content-disabled);--radio-bg-color--checked: var(--dt-color-disabled-01)}.c-radio .c-radio-input:hover:not(:checked,:disabled){--radio-bg-color: hsl(var(--dt-color-black-h), var(--dt-color-black-s), var(--dt-color-black-l), var(--dt-color-hover-01))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio .c-radio-input:hover:not(:checked,:disabled){--radio-bg-color: color-mix(in srgb, var(--dt-color-hover-01-bg) var(--dt-color-hover-01), transparent)}}.c-radio .c-radio-input:active:not(:checked,:disabled){--radio-bg-color: hsl(var(--dt-color-black-h), var(--dt-color-black-s), var(--dt-color-black-l), var(--dt-color-active-01))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio .c-radio-input:active:not(:checked,:disabled){--radio-bg-color: color-mix(in srgb, var(--dt-color-active-01-bg) var(--dt-color-active-01), transparent)}}.c-radio .c-radio-input:hover:checked:not(:disabled):before{--radio-bg-color--checked: 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)));--radio-border-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)))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio .c-radio-input:hover:checked:not(:disabled):before{--radio-bg-color--checked: color-mix(in srgb, var(--dt-color-hover-01-bg) var(--dt-color-hover-01), var(--dt-color-interactive-brand))}}.c-radio .c-radio-input:active:checked:not(:disabled):before{--radio-bg-color--checked: 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)));--radio-border-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)))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio .c-radio-input:active:checked:not(:disabled):before{--radio-bg-color--checked: color-mix(in srgb, var(--dt-color-active-01-bg) var(--dt-color-active-01), var(--dt-color-interactive-brand))}}@media (prefers-reduced-motion: no-preference){.c-radio .c-radio-input:not(:disabled):before{transition:all var(--dt-motion-timing-100) var(--radio-motion-easing)}}@media (prefers-reduced-motion: no-preference){.c-radio .c-radio-input:not(:disabled):after{transition:all var(--dt-motion-timing-100) var(--radio-motion-easing)}}@media (prefers-reduced-motion: no-preference){.c-radio .c-radio-input:not(:disabled):checked:after{transition:all var(--dt-motion-timing-150) var(--radio-motion-easing)}}.c-radio.c-radio--status-error .c-radio-input{--radio-bg-color--checked: var(--dt-color-support-error);--radio-border-color: var(--dt-color-support-error)}.c-radio.c-radio--status-error .c-radio-input:hover:not(:checked,:disabled){--radio-bg-color: hsl(var(--dt-color-black-h), var(--dt-color-black-s), var(--dt-color-black-l), var(--dt-color-hover-01))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio.c-radio--status-error .c-radio-input:hover:not(:checked,:disabled){--radio-bg-color: color-mix(in srgb, var(--dt-color-hover-01-bg) var(--dt-color-hover-01), transparent)}}.c-radio.c-radio--status-error .c-radio-input:active:not(:checked,:disabled){--radio-bg-color: hsl(var(--dt-color-black-h), var(--dt-color-black-s), var(--dt-color-black-l), var(--dt-color-active-01))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio.c-radio--status-error .c-radio-input:active:not(:checked,:disabled){--radio-bg-color: color-mix(in srgb, var(--dt-color-active-01-bg) var(--dt-color-active-01), transparent)}}.c-radio.c-radio--status-error .c-radio-input:hover:checked:not(:disabled):before{--radio-bg-color--checked: hsl(var(--dt-color-support-error-h), var(--dt-color-support-error-s), calc(var(--dt-color-support-error-l) - var(--dt-color-hover-01)));--radio-border-color: hsl(var(--dt-color-support-error-h), var(--dt-color-support-error-s), calc(var(--dt-color-support-error-l) - var(--dt-color-hover-01)))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio.c-radio--status-error .c-radio-input:hover:checked:not(:disabled):before{--radio-bg-color--checked: color-mix(in srgb, var(--dt-color-hover-01-bg) var(--dt-color-hover-01), var(--dt-color-support-error))}}.c-radio.c-radio--status-error .c-radio-input:active:checked:not(:disabled):before{--radio-bg-color--checked: hsl(var(--dt-color-support-error-h), var(--dt-color-support-error-s), calc(var(--dt-color-support-error-l) - var(--dt-color-active-01)));--radio-border-color: hsl(var(--dt-color-support-error-h), var(--dt-color-support-error-s), calc(var(--dt-color-support-error-l) - var(--dt-color-active-01)))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio.c-radio--status-error .c-radio-input:active:checked:not(:disabled):before{--radio-bg-color--checked: color-mix(in srgb, var(--dt-color-active-01-bg) var(--dt-color-active-01), var(--dt-color-support-error))}}:host(:focus-visible){outline:none}:host(:focus-visible) .c-radio .c-radio-input{box-shadow:0 0 0 2px var(--dt-color-focus-inner),0 0 0 4px var(--dt-color-focus-outer);outline:none}';
21
- var F = Object.defineProperty, D = Object.getOwnPropertyDescriptor, e = (r, a, i, d) => {
22
- for (var t = d > 1 ? void 0 : d ? D(a, i) : a, s = r.length - 1, n; s >= 0; s--)
23
- (n = r[s]) && (t = (d ? n(a, i, t) : n(t)) || t);
24
- return d && t && F(a, i, t), t;
20
+ }, S = '*,*:after,*:before{box-sizing:inherit}:host{display:block}.c-radio{--radio-font-family: var(--dt-font-body-l-family);--radio-font-size: calc(var(--dt-font-body-l-size) * 1px);--radio-line-height: calc(var(--dt-font-body-l-line-height) * 1px);--radio-font-weight: var(--dt-font-body-l-weight);--radio-text-color: var(--dt-color-content-default-solid);--radio-cursor: pointer;display:flex;align-items:center;gap:var(--dt-spacing-b);cursor:var(--radio-cursor);font-family:var(--radio-font-family);font-size:var(--radio-font-size);line-height:var(--radio-line-height);font-weight:var(--radio-font-weight);color:var(--radio-text-color)}.c-radio.is-disabled{--radio-cursor: not-allowed}.c-radio .c-radio-input{--radio-dot-bg-color: var(--dt-color-content-interactive-primary);--radio-bg-color: transparent;--radio-bg-color--checked: var(--dt-color-interactive-brand);--radio-border-color: var(--dt-color-border-form);--radio-size: 24px;--radio-dot-size: 8px;--radio-cursor: pointer;--radio-motion-easing: var(--dt-motion-easing-persistent-functional);--radio-border-width: 1px;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-block;position:relative;inline-size:var(--radio-size);block-size:var(--radio-size);border:var(--radio-border-width) solid var(--radio-border-color);border-radius:50%;margin:0;cursor:var(--radio-cursor);background-color:var(--radio-bg-color);flex-shrink:0;transition:background-color var(--dt-motion-timing-100) var(--radio-motion-easing);align-self:flex-start}.c-radio .c-radio-input:before{--circle-size: calc(var(--radio-border-width) * -1);content:"";display:block;inset:var(--circle-size);border-radius:inherit;background-color:var(--radio-bg-color--checked);position:absolute;transform:scale(0)}.c-radio .c-radio-input:after{content:"";position:absolute;top:50%;left:50%;width:var(--radio-dot-size);height:var(--radio-dot-size);background-color:var(--radio-dot-bg-color);border-radius:50%;transform:translate(-50%,-50%) scale(0)}.c-radio .c-radio-input:checked:after{transform:translate(-50%,-50%) scale(1)}.c-radio .c-radio-input:checked:before{transform:scale(1)}.c-radio .c-radio-input:focus-visible{box-shadow:0 0 0 2px var(--dt-color-focus-inner),0 0 0 4px var(--dt-color-focus-outer);outline:none}.c-radio .c-radio-input:disabled{--radio-bg-color: var(--dt-color-disabled-01);--radio-border-color: var(--dt-color-border-default);--radio-cursor: not-allowed}.c-radio .c-radio-input:checked:disabled{--radio-dot-bg-color: var(--dt-color-content-disabled);--radio-bg-color--checked: var(--dt-color-disabled-01)}.c-radio .c-radio-input:hover:not(:checked,:disabled){--radio-bg-color: hsl(var(--dt-color-black-h), var(--dt-color-black-s), var(--dt-color-black-l), var(--dt-color-hover-01))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio .c-radio-input:hover:not(:checked,:disabled){--radio-bg-color: color-mix(in srgb, var(--dt-color-hover-01-bg) var(--dt-color-hover-01), transparent)}}.c-radio .c-radio-input:active:not(:checked,:disabled){--radio-bg-color: hsl(var(--dt-color-black-h), var(--dt-color-black-s), var(--dt-color-black-l), var(--dt-color-active-01))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio .c-radio-input:active:not(:checked,:disabled){--radio-bg-color: color-mix(in srgb, var(--dt-color-active-01-bg) var(--dt-color-active-01), transparent)}}.c-radio .c-radio-input:hover:checked:not(:disabled):before{--radio-bg-color--checked: 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)));--radio-border-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)))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio .c-radio-input:hover:checked:not(:disabled):before{--radio-bg-color--checked: color-mix(in srgb, var(--dt-color-hover-01-bg) var(--dt-color-hover-01), var(--dt-color-interactive-brand))}}.c-radio .c-radio-input:active:checked:not(:disabled):before{--radio-bg-color--checked: 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)));--radio-border-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)))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio .c-radio-input:active:checked:not(:disabled):before{--radio-bg-color--checked: color-mix(in srgb, var(--dt-color-active-01-bg) var(--dt-color-active-01), var(--dt-color-interactive-brand))}}@media (prefers-reduced-motion: no-preference){.c-radio .c-radio-input:not(:disabled):before{transition:all var(--dt-motion-timing-100) var(--radio-motion-easing)}}@media (prefers-reduced-motion: no-preference){.c-radio .c-radio-input:not(:disabled):after{transition:all var(--dt-motion-timing-100) var(--radio-motion-easing)}}@media (prefers-reduced-motion: no-preference){.c-radio .c-radio-input:not(:disabled):checked:after{transition:all var(--dt-motion-timing-150) var(--radio-motion-easing)}}.c-radio.has-error .c-radio-input{--radio-bg-color--checked: var(--dt-color-support-error);--radio-border-color: var(--dt-color-support-error)}.c-radio.has-error .c-radio-input:hover:not(:checked,:disabled){--radio-bg-color: hsl(var(--dt-color-black-h), var(--dt-color-black-s), var(--dt-color-black-l), var(--dt-color-hover-01))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio.has-error .c-radio-input:hover:not(:checked,:disabled){--radio-bg-color: color-mix(in srgb, var(--dt-color-hover-01-bg) var(--dt-color-hover-01), transparent)}}.c-radio.has-error .c-radio-input:active:not(:checked,:disabled){--radio-bg-color: hsl(var(--dt-color-black-h), var(--dt-color-black-s), var(--dt-color-black-l), var(--dt-color-active-01))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio.has-error .c-radio-input:active:not(:checked,:disabled){--radio-bg-color: color-mix(in srgb, var(--dt-color-active-01-bg) var(--dt-color-active-01), transparent)}}.c-radio.has-error .c-radio-input:hover:checked:not(:disabled):before{--radio-bg-color--checked: hsl(var(--dt-color-support-error-h), var(--dt-color-support-error-s), calc(var(--dt-color-support-error-l) - var(--dt-color-hover-01)));--radio-border-color: hsl(var(--dt-color-support-error-h), var(--dt-color-support-error-s), calc(var(--dt-color-support-error-l) - var(--dt-color-hover-01)))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio.has-error .c-radio-input:hover:checked:not(:disabled):before{--radio-bg-color--checked: color-mix(in srgb, var(--dt-color-hover-01-bg) var(--dt-color-hover-01), var(--dt-color-support-error))}}.c-radio.has-error .c-radio-input:active:checked:not(:disabled):before{--radio-bg-color--checked: hsl(var(--dt-color-support-error-h), var(--dt-color-support-error-s), calc(var(--dt-color-support-error-l) - var(--dt-color-active-01)));--radio-border-color: hsl(var(--dt-color-support-error-h), var(--dt-color-support-error-s), calc(var(--dt-color-support-error-l) - var(--dt-color-active-01)))}@supports (background-color: color-mix(in srgb,black,white)){.c-radio.has-error .c-radio-input:active:checked:not(:disabled):before{--radio-bg-color--checked: color-mix(in srgb, var(--dt-color-active-01-bg) var(--dt-color-active-01), var(--dt-color-support-error))}}:host(:focus-visible){outline:none}:host(:focus-visible) .c-radio .c-radio-input{box-shadow:0 0 0 2px var(--dt-color-focus-inner),0 0 0 4px var(--dt-color-focus-outer);outline:none}';
21
+ var F = Object.defineProperty, D = Object.getOwnPropertyDescriptor, e = (r, a, i, c) => {
22
+ for (var t = c > 1 ? void 0 : c ? D(a, i) : a, s = r.length - 1, n; s >= 0; s--)
23
+ (n = r[s]) && (t = (c ? n(a, i, t) : n(t)) || t);
24
+ return c && t && F(a, i, t), t;
25
25
  };
26
26
  const f = "pie-radio";
27
- let o = class extends A(z(h)) {
27
+ let o = class extends A(z(v)) {
28
28
  constructor() {
29
29
  super(...arguments), this._disabledByParent = !1, this._isAnimationAllowed = !1, this.checked = l.checked, this.defaultChecked = l.defaultChecked, this.disabled = l.disabled, this.required = l.required, this.status = l.status;
30
30
  }
@@ -86,16 +86,16 @@ let o = class extends A(z(h)) {
86
86
  checked: r,
87
87
  disabled: a,
88
88
  _disabledByParent: i,
89
- _isAnimationAllowed: d,
89
+ _isAnimationAllowed: c,
90
90
  name: t,
91
91
  required: s,
92
92
  value: n,
93
93
  status: p
94
- } = this, v = a || i, g = {
94
+ } = this, h = a || i, g = {
95
95
  "c-radio": !0,
96
- "is-disabled": v,
97
- [`c-radio--status-${p}`]: !v,
98
- "c-radio--allow-animation": d
96
+ "is-disabled": h,
97
+ [`has-${p}`]: !h,
98
+ "is-animated": c
99
99
  };
100
100
  return m`
101
101
  <label class=${C(g)}>
@@ -108,7 +108,7 @@ let o = class extends A(z(h)) {
108
108
  .checked="${_(r)}"
109
109
  .value="${n}"
110
110
  name="${w(t)}"
111
- ?disabled="${v}"
111
+ ?disabled="${h}"
112
112
  ?required="${s}"
113
113
  aria-invalid=${p === "error" ? "true" : "false"}
114
114
  @change="${this._handleChange}">
@@ -124,26 +124,26 @@ e([
124
124
  u()
125
125
  ], o.prototype, "_isAnimationAllowed", 2);
126
126
  e([
127
- c({ type: Boolean, reflect: !0 })
127
+ d({ type: Boolean, reflect: !0 })
128
128
  ], o.prototype, "checked", 2);
129
129
  e([
130
- c({ type: Boolean, reflect: !0 })
130
+ d({ type: Boolean, reflect: !0 })
131
131
  ], o.prototype, "defaultChecked", 2);
132
132
  e([
133
- c({ type: Boolean, reflect: !0 })
133
+ d({ type: Boolean, reflect: !0 })
134
134
  ], o.prototype, "disabled", 2);
135
135
  e([
136
- c({ type: String, reflect: !0 })
136
+ d({ type: String, reflect: !0 })
137
137
  ], o.prototype, "name", 2);
138
138
  e([
139
- c({ type: Boolean, reflect: !0 })
139
+ d({ type: Boolean, reflect: !0 })
140
140
  ], o.prototype, "required", 2);
141
141
  e([
142
- c({ type: String }),
142
+ d({ type: String }),
143
143
  B(f)
144
144
  ], o.prototype, "value", 2);
145
145
  e([
146
- c({ type: String }),
146
+ d({ type: String }),
147
147
  $(f, E, l.status)
148
148
  ], o.prototype, "status", 2);
149
149
  e([
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@justeattakeaway/pie-radio",
3
3
  "description": "PIE Design System Radio built using Web Components",
4
- "version": "1.1.8",
4
+ "version": "1.1.9",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/justeattakeaway/pie",
@@ -45,12 +45,12 @@
45
45
  "devDependencies": {
46
46
  "@custom-elements-manifest/analyzer": "0.9.0",
47
47
  "@justeattakeaway/pie-components-config": "0.21.0",
48
- "@justeattakeaway/pie-css": "0.32.0",
48
+ "@justeattakeaway/pie-css": "1.0.0",
49
49
  "@justeattakeaway/pie-monorepo-utils": "0.7.0",
50
50
  "cem-plugin-module-file-extensions": "0.0.5"
51
51
  },
52
52
  "dependencies": {
53
- "@justeattakeaway/pie-webc-core": "12.0.0"
53
+ "@justeattakeaway/pie-webc-core": "13.0.0"
54
54
  },
55
55
  "volta": {
56
56
  "extends": "../../../package.json"
package/src/index.ts CHANGED
@@ -178,8 +178,8 @@ export class PieRadio extends FormControlMixin(RtlMixin(PieElement)) implements
178
178
  const classes = {
179
179
  'c-radio': true,
180
180
  'is-disabled': componentDisabled,
181
- [`c-radio--status-${status}`]: !componentDisabled,
182
- 'c-radio--allow-animation': _isAnimationAllowed,
181
+ [`has-${status}`]: !componentDisabled,
182
+ 'is-animated': _isAnimationAllowed,
183
183
  };
184
184
 
185
185
  // NOTE: The label element here does not require a `for` attribute. This is because the click logic is handled by the component itself.
package/src/radio.scss CHANGED
@@ -39,7 +39,7 @@
39
39
  }
40
40
 
41
41
  // Error state modifier
42
- &.c-radio--status-error {
42
+ &.has-error {
43
43
  .c-radio-input {
44
44
  @include p.radio-error;
45
45
  @include p.radio-interactive-state('dt-color-support-error');