@warp-ds/elements 2.4.0-next.7 → 2.4.0-next.8

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 (107) hide show
  1. package/dist/api.js.map +2 -2
  2. package/dist/custom-elements.json +64 -64
  3. package/dist/index.d.ts +45 -45
  4. package/dist/packages/alert/react.js +1 -1
  5. package/dist/packages/attention/attention.js +14 -14
  6. package/dist/packages/attention/attention.js.map +3 -3
  7. package/dist/packages/attention/attention.react.stories.d.ts +1 -1
  8. package/dist/packages/attention/react.js +1 -1
  9. package/dist/packages/badge/badge.react.stories.d.ts +1 -1
  10. package/dist/packages/badge/react.js +1 -1
  11. package/dist/packages/box/box.react.stories.d.ts +1 -1
  12. package/dist/packages/box/react.js +1 -1
  13. package/dist/packages/breadcrumbs/breadcrumbs.react.stories.d.ts +1 -1
  14. package/dist/packages/breadcrumbs/react.js +1 -1
  15. package/dist/packages/button/button.js +11 -11
  16. package/dist/packages/button/button.js.map +3 -3
  17. package/dist/packages/button/button.react.stories.d.ts +1 -1
  18. package/dist/packages/button/react.js +1 -1
  19. package/dist/packages/card/card.react.stories.d.ts +1 -1
  20. package/dist/packages/card/react.js +1 -1
  21. package/dist/packages/combobox/combobox.js +1 -2
  22. package/dist/packages/combobox/combobox.js.map +2 -2
  23. package/dist/packages/combobox/combobox.react.stories.d.ts +1 -1
  24. package/dist/packages/combobox/react.js +1 -1
  25. package/dist/packages/combobox/styles.js +1 -2
  26. package/dist/packages/datepicker/datepicker.react.stories.d.ts +1 -1
  27. package/dist/packages/datepicker/react.js +1 -1
  28. package/dist/packages/dead-toggle/dead-toggle.react.stories.d.ts +1 -1
  29. package/dist/packages/dead-toggle/react.js +1 -1
  30. package/dist/packages/expandable/expandable.react.stories.d.ts +1 -1
  31. package/dist/packages/expandable/react.js +1 -1
  32. package/dist/packages/link/link.js +2 -2
  33. package/dist/packages/link/link.js.map +2 -2
  34. package/dist/packages/link/link.react.stories.d.ts +1 -1
  35. package/dist/packages/link/react.js +1 -1
  36. package/dist/packages/link/styles.js +2 -2
  37. package/dist/packages/modal/modal.stories.d.ts +3 -2
  38. package/dist/packages/modal/react.d.ts +1 -1
  39. package/dist/packages/modal/react.js +2 -2
  40. package/dist/packages/modal-footer/modal-footer.js +4 -4
  41. package/dist/packages/modal-footer/modal-footer.js.map +4 -4
  42. package/dist/packages/modal-footer/react.js +1 -1
  43. package/dist/packages/modal-header/modal-header.js +4 -4
  44. package/dist/packages/modal-header/modal-header.js.map +4 -4
  45. package/dist/packages/modal-header/react.js +1 -1
  46. package/dist/packages/page-indicator/page-indicator.react.stories.d.ts +1 -1
  47. package/dist/packages/page-indicator/react.js +1 -1
  48. package/dist/packages/pagination/pagination.js +4 -4
  49. package/dist/packages/pagination/pagination.js.map +4 -4
  50. package/dist/packages/pagination/pagination.react.stories.d.ts +1 -1
  51. package/dist/packages/pagination/react.js +1 -1
  52. package/dist/packages/pill/pill.react.stories.d.ts +1 -1
  53. package/dist/packages/pill/react.js +1 -1
  54. package/dist/packages/radio/radio.js +120 -120
  55. package/dist/packages/radio/radio.js.map +4 -4
  56. package/dist/packages/radio/react.js +1 -1
  57. package/dist/packages/radio-group/radio-group.js +112 -112
  58. package/dist/packages/radio-group/radio-group.js.map +4 -4
  59. package/dist/packages/radio-group/react.js +1 -1
  60. package/dist/packages/select/react.js +1 -1
  61. package/dist/packages/select/select.js +2 -2
  62. package/dist/packages/select/select.js.map +4 -4
  63. package/dist/packages/select/select.react.stories.d.ts +1 -1
  64. package/dist/packages/select/select.react.stories.js +1 -1
  65. package/dist/packages/slider/index.d.ts +1 -1
  66. package/dist/packages/slider/index.js +1 -1
  67. package/dist/packages/slider/react.js +1 -1
  68. package/dist/packages/slider/slider.js +5 -5
  69. package/dist/packages/slider/slider.js.map +4 -4
  70. package/dist/packages/slider-thumb/react.js +1 -1
  71. package/dist/packages/slider-thumb/slider-thumb.js +14 -14
  72. package/dist/packages/slider-thumb/slider-thumb.js.map +4 -4
  73. package/dist/packages/slider-thumb/styles.d.ts +1 -0
  74. package/dist/packages/slider-thumb/styles.js +2 -0
  75. package/dist/packages/step/react.js +1 -1
  76. package/dist/packages/step/step.js +7 -7
  77. package/dist/packages/step/step.js.map +4 -4
  78. package/dist/packages/step-indicator/index.d.ts +1 -1
  79. package/dist/packages/step-indicator/index.js +1 -1
  80. package/dist/packages/step-indicator/react.js +1 -1
  81. package/dist/packages/step-indicator/step-indicator.js +1 -1
  82. package/dist/packages/step-indicator/step-indicator.js.map +2 -2
  83. package/dist/packages/step-indicator/styles.js +1 -1
  84. package/dist/packages/switch/react.js +1 -1
  85. package/dist/packages/switch/switch.test.js +1 -1
  86. package/dist/packages/tab/react.js +1 -1
  87. package/dist/packages/tab/tab.js +3 -3
  88. package/dist/packages/tab/tab.js.map +2 -2
  89. package/dist/packages/tab-panel/react.js +1 -1
  90. package/dist/packages/tab-panel/tab-panel.js +1 -1
  91. package/dist/packages/tab-panel/tab-panel.js.map +2 -2
  92. package/dist/packages/tabs/react.js +1 -1
  93. package/dist/packages/tabs/styles.js +1 -1
  94. package/dist/packages/tabs/tabs.js +1 -1
  95. package/dist/packages/tabs/tabs.js.map +2 -2
  96. package/dist/packages/tabs/tabs.react.stories.d.ts +1 -1
  97. package/dist/packages/tabs/tabs.react.stories.js +2 -2
  98. package/dist/packages/textarea/react.js +1 -1
  99. package/dist/packages/textarea/textarea.react.stories.d.ts +1 -1
  100. package/dist/packages/textfield/react.js +1 -1
  101. package/dist/packages/textfield/textfield.react.stories.d.ts +1 -1
  102. package/dist/packages/toast/index.d.ts +1 -1
  103. package/dist/packages/toast/index.js +1 -1
  104. package/dist/packages/toast-container/styles.d.ts +1 -0
  105. package/dist/packages/toast-container/styles.js +2 -0
  106. package/dist/web-types.json +17 -17
  107. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
- import React from 'react';
2
1
  import { StoryObj } from '@storybook/react';
2
+ import React from 'react';
3
3
  import { Pagination } from './react';
4
4
  declare const _default: {
5
5
  title: string;
@@ -1,5 +1,5 @@
1
- import { LitElement } from 'lit';
2
1
  import { createComponent } from '@lit/react';
2
+ import { LitElement } from 'lit';
3
3
  import React from 'react';
4
4
  // decouple from CDN by providing a dummy class
5
5
  class Component extends LitElement {
@@ -1,5 +1,5 @@
1
- import React from 'react';
2
1
  import { StoryObj } from '@storybook/react';
2
+ import React from 'react';
3
3
  import { Pill } from './react';
4
4
  declare const _default: {
5
5
  title: string;
@@ -1,6 +1,6 @@
1
+ import { createComponent } from '@lit/react';
1
2
  import { LitElement } from 'lit';
2
3
  import React from 'react';
3
- import { createComponent } from '@lit/react';
4
4
  // decouple from CDN by providing a dummy class
5
5
  class Component extends LitElement {
6
6
  }
@@ -1,120 +1,4 @@
1
- var j=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var m=t=>{throw TypeError(t)};var i=(t,a,e,r)=>{for(var o=r>1?void 0:r?T(a,e):a,n=t.length-1,d;n>=0;n--)(d=t[n])&&(o=(r?d(a,e,o):d(o))||o);return r&&o&&j(a,e,o),o};var w=(t,a,e)=>a.has(t)||m("Cannot "+e);var f=(t,a,e)=>(w(t,a,"read from private field"),e?e.call(t):a.get(t)),k=(t,a,e)=>a.has(t)?m("Cannot add the same private member more than once"):a instanceof WeakSet?a.add(t):a.set(t,e),x=(t,a,e,r)=>(w(t,a,"write to private field"),r?r.call(t,e):a.set(t,e),e);import{html as F}from"lit";import{property as h,state as I}from"lit/decorators.js";import{isServer as v}from"lit";import{property as b}from"lit/decorators.js";import{LitElement as L,unsafeCSS as X}from"lit";import{property as z}from"lit/decorators.js";import{css as D}from"lit";var y=D`
2
- :host {
3
- box-sizing: border-box !important;
4
- }
5
-
6
- :host *,
7
- :host *::before,
8
- :host *::after {
9
- box-sizing: inherit !important;
10
- }
11
- `;var p,c=class extends L{constructor(){super();k(this,p,!1);this.initialReflectedProperties=new Map;this.customStates={set:(e,r)=>{var o;(o=this.internals)!=null&&o.states&&(r?this.internals.states.add(e):this.internals.states.delete(e))},has:e=>{var r;return(r=this.internals)!=null&&r.states?this.internals.states.has(e):!1}};try{this.internals=this.attachInternals()}catch(r){console.error("Element internals are not supported in your browser. Consider using a polyfill")}this.customStates.set("wa-defined",!0);let e=this.constructor;for(let[r,o]of e.elementProperties)o.default==="inherit"&&o.initial!==void 0&&typeof r=="string"&&this.customStates.set(`initial-${r}-${o.initial}`,!0)}static get styles(){let e=Array.isArray(this.css)?this.css:this.css?[this.css]:[];return[y,...e].map(r=>typeof r=="string"?X(r):r)}attributeChangedCallback(e,r,o){f(this,p)||(this.constructor.elementProperties.forEach((n,d)=>{n.reflect&&this[d]!=null&&this.initialReflectedProperties.set(d,this[d])}),x(this,p,!0)),super.attributeChangedCallback(e,r,o)}willUpdate(e){super.willUpdate(e),this.initialReflectedProperties.forEach((r,o)=>{e.has(o)&&this[o]==null&&(this[o]=r)})}relayNativeEvent(e,r){e.stopImmediatePropagation(),this.dispatchEvent(new e.constructor(e.type,{...e,...r}))}};p=new WeakMap,i([z()],c.prototype,"dir",2),i([z()],c.prototype,"lang",2);var V=()=>({observedAttributes:["custom-error"],checkValidity(t){let a={message:"",isValid:!0,invalidKeys:[]};return t.customError&&(a.message=t.customError,a.isValid=!1,a.invalidKeys=["customError"]),a}});var g=class extends Event{constructor(){super("w-invalid",{bubbles:!0,cancelable:!1,composed:!0})}};var s=class extends c{constructor(){super();this.name=null;this.disabled=!1;this.required=!1;this.assumeInteractionOn=["input"];this.validators=[];this.valueHasChanged=!1;this.hasInteracted=!1;this.customError=null;this.emittedEvents=[];this.emitInvalid=e=>{e.target===this&&(this.hasInteracted=!0,this.dispatchEvent(new g))};this.handleInteraction=e=>{var o;let r=this.emittedEvents;r.includes(e.type)||r.push(e.type),r.length===((o=this.assumeInteractionOn)==null?void 0:o.length)&&(this.hasInteracted=!0)};v||this.addEventListener("invalid",this.emitInvalid)}static get validators(){return[V()]}static get observedAttributes(){let e=new Set(super.observedAttributes||[]);for(let r of this.validators)if(r.observedAttributes)for(let o of r.observedAttributes)e.add(o);return[...e]}connectedCallback(){super.connectedCallback(),this.updateValidity(),this.assumeInteractionOn.forEach(e=>{this.addEventListener(e,this.handleInteraction)})}firstUpdated(...e){super.firstUpdated(...e),this.updateValidity()}willUpdate(e){if(!v&&e.has("customError")&&(this.customError||(this.customError=null),this.setCustomValidity(this.customError||"")),e.has("value")||e.has("disabled")){let r=this.value;if(Array.isArray(r)){if(this.name){let o=new FormData;for(let n of r)o.append(this.name,n);this.setValue(o,o)}}else this.setValue(r,r)}e.has("disabled")&&(this.customStates.set("disabled",this.disabled),(this.hasAttribute("disabled")||!v&&!this.matches(":disabled"))&&this.toggleAttribute("disabled",this.disabled)),this.updateValidity(),super.willUpdate(e)}get labels(){return this.internals.labels}getForm(){return this.internals.form}get validity(){return this.internals.validity}get willValidate(){return this.internals.willValidate}get validationMessage(){return this.internals.validationMessage}checkValidity(){return this.updateValidity(),this.internals.checkValidity()}reportValidity(){return this.updateValidity(),this.hasInteracted=!0,this.internals.reportValidity()}get validationTarget(){return this.input||void 0}setValidity(...e){let r=e[0],o=e[1],n=e[2];n||(n=this.validationTarget),this.internals.setValidity(r,o,n||void 0),this.requestUpdate("validity"),this.setCustomStates()}setCustomStates(){let e=!!this.required,r=this.internals.validity.valid,o=this.hasInteracted;this.customStates.set("required",e),this.customStates.set("optional",!e),this.customStates.set("invalid",!r),this.customStates.set("valid",r),this.customStates.set("user-invalid",!r&&o),this.customStates.set("user-valid",r&&o)}setCustomValidity(e){if(!e){this.customError=null,this.setValidity({});return}this.customError=e,this.setValidity({customError:!0},e,this.validationTarget)}formResetCallback(){this.resetValidity(),this.hasInteracted=!1,this.valueHasChanged=!1,this.emittedEvents=[],this.updateValidity()}formDisabledCallback(e){this.disabled=e,this.updateValidity()}formStateRestoreCallback(e,r){this.value=e,r==="restore"&&this.resetValidity(),this.updateValidity()}setValue(...e){let[r,o]=e;this.internals.setFormValue(r,o)}get allValidators(){let e=this.constructor.validators||[],r=this.validators||[];return[...e,...r]}resetValidity(){this.setCustomValidity(""),this.setValidity({})}updateValidity(){if(this.disabled||this.hasAttribute("disabled")||!this.willValidate){this.resetValidity();return}let e=this.allValidators;if(!(e!=null&&e.length))return;let r={customError:!!this.customError},o=this.validationTarget||this.input||void 0,n="";for(let d of e){let{isValid:Y,message:A,invalidKeys:u}=d.checkValidity(this);Y||(n||(n=A),(u==null?void 0:u.length)>=0&&u.forEach(M=>r[M]=!0))}n||(n=this.validationMessage),this.setValidity(r,n,o)}};s.formAssociated=!0,i([b({reflect:!0})],s.prototype,"name",2),i([b({type:Boolean})],s.prototype,"disabled",2),i([b({state:!0,attribute:!1})],s.prototype,"valueHasChanged",2),i([b({state:!0,attribute:!1})],s.prototype,"hasInteracted",2),i([b({attribute:"custom-error",reflect:!0})],s.prototype,"customError",2),i([b({attribute:!1,state:!0,type:Object})],s.prototype,"validity",1);import{css as Z}from"lit";var E=Z`
12
- [part~='label'] {
13
- display: block;
14
- font-size: var(--w-font-size-m);
15
- line-height: var(--w-line-height-m);
16
- user-select: none;
17
- cursor: pointer;
18
- }
19
- .wrapper {
20
- display: grid;
21
- grid-template-columns: 2rem max-content;
22
- gap: 8px;
23
- }
24
- .hide-toggle {
25
- position: absolute;
26
- padding: 0;
27
- margin: 0;
28
- opacity: 0;
29
- pointer-events: none;
30
- inset: 0;
31
- }
32
- .control {
33
- display: block;
34
- border-width: 1px;
35
- transition-property: all;
36
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
37
- transition-duration: 150ms;
38
- cursor: pointer;
39
- appearance: none;
40
- user-select: none;
41
- flex-shrink: 0;
42
- height: 2rem;
43
- width: 2rem;
44
- background-color: var(--w-s-color-background);
45
- border-color: var(--w-s-color-border-strong);
46
- color: var(--w-s-color-icon-inverted);
47
- font-weight: 700;
48
- text-align: center;
49
- line-height: var(--w-line-height-xs);
50
- font-size: var(--w-font-size-m);
51
- }
52
- .checkbox {
53
- position: relative;
54
- }
55
- :host([type='checkbox']) .control {
56
- border-radius: 4px;
57
- }
58
- .checkbox:has(:checked, :indeterminate),
59
- :host([type='checkbox'][checked]) .control,
60
- :host([type='checkbox'][indeterminate]) .control {
61
- background-color: var(--w-s-color-background-primary);
62
- border-color: var(--w-s-color-border-primary);
63
- }
64
- .checkbox:has(:checked),
65
- :host([type='checkbox'][checked]) .control {
66
- background-image: var(--w-icon-toggle-checked);
67
- background-position: center;
68
- }
69
- :host([type='radio']) .control,
70
- :host([role='radio']) .control {
71
- border-radius: 50%;
72
- }
73
- :host([type='radio'][checked]) .control,
74
- /* :state is newly available, so we set an attribute in radio for compat */
75
- :host([role='radio'][checked-ui]) .control,
76
- :host([role='radio']:state(checked)) .control {
77
- border-color: var(--w-s-color-border-selected);
78
- border-width: 0.6rem;
79
- }
80
- .checkbox:has(:invalid),
81
- :host([invalid]) .control {
82
- border-color: var(--w-s-color-border-negative) !important;
83
- }
84
- /* handles invalid checkbox state inside w-checkbox */
85
- .checkbox:has(:checked, :indeterminate):has(:invalid),
86
- /* allows invalid to be set on the w-checkbox element */
87
- :host([invalid]) .checkbox:has(:checked, :indeterminate),
88
- :host([type='checkbox'][invalid][checked]) .control,
89
- :host([type='checkbox'][invalid][indeterminate]) .control {
90
- background-color: var(--w-s-color-background-negative);
91
- }
92
-
93
- :host(:focus-visible) {
94
- outline: none;
95
- }
96
- .checkbox:has(> input:focus-visible:not(:disabled)),
97
- :host(:focus-visible) .control {
98
- outline: 2px solid var(--w-s-color-border-focus);
99
- outline-offset: var(--w-outline-offset, 1px);
100
- }
101
-
102
- :host([type='radio'][disabled]) .control,
103
- /* :state is newly available, so we set an attribute in radio for compat */
104
- :host([role='radio'][disabled-ui]) .control,
105
- :host([role='radio']:state(disabled)) .control,
106
- :host([type='checkbox'][disabled]) .control,
107
- .checkbox:has(> input:disabled) {
108
- border-color: var(--w-s-color-border-disabled);
109
- background-color: var(--w-s-color-background-disabled-subtle);
110
- }
111
-
112
- :host([type='checkbox'][disabled][checked]) .control,
113
- :host([type='checkbox'][disabled][indeterminate]) .control,
114
- .checkbox:has(:checked, :indeterminate):has(> input:disabled) {
115
- background-color: var(--w-s-color-background-disabled);
116
- }
117
- `;import{css as S}from"lit";var C=S`
1
+ var j=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var m=t=>{throw TypeError(t)};var i=(t,a,e,r)=>{for(var o=r>1?void 0:r?T(a,e):a,n=t.length-1,d;n>=0;n--)(d=t[n])&&(o=(r?d(a,e,o):d(o))||o);return r&&o&&j(a,e,o),o};var w=(t,a,e)=>a.has(t)||m("Cannot "+e);var f=(t,a,e)=>(w(t,a,"read from private field"),e?e.call(t):a.get(t)),k=(t,a,e)=>a.has(t)?m("Cannot add the same private member more than once"):a instanceof WeakSet?a.add(t):a.set(t,e),x=(t,a,e,r)=>(w(t,a,"write to private field"),r?r.call(t,e):a.set(t,e),e);import{html as F}from"lit";import{property as h,state as I}from"lit/decorators.js";import{css as y}from"lit";var z=y`
118
2
  *,
119
3
  :before,
120
4
  :after {
@@ -387,7 +271,7 @@ var j=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var m=t=>{thro
387
271
  svg {
388
272
  pointer-events: none;
389
273
  }
390
- `,ne=S`*, :before, :after {
274
+ `,U=y`*, :before, :after {
391
275
  --w-rotate: 0;
392
276
  --w-rotate-x: 0;
393
277
  --w-rotate-y: 0;
@@ -2553,10 +2437,126 @@ var j=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var m=t=>{thro
2553
2437
  display: none
2554
2438
  }
2555
2439
  }
2556
- `;var l=class extends s{constructor(){super();this.checked=!1;this.forceDisabled=!1;this.form=null;this.appearance="default";this.size="medium";this.disabled=!1;this.handleClick=()=>{!this.disabled&&!this.forceDisabled&&(this.checked=!0)};this.addEventListener("click",this.handleClick)}connectedCallback(){super.connectedCallback(),this.setInitialAttributes()}setInitialAttributes(){this.setAttribute("role","radio"),this.tabIndex=0,this.setAttribute("aria-disabled",this.disabled||this.forceDisabled?"true":"false")}updated(e){if(super.updated(e),e.has("checked")&&(this.customStates.set("checked",this.checked),this[this.checked?"setAttribute":"removeAttribute"]("checked-ui",""),this.setAttribute("aria-checked",this.checked?"true":"false"),!this.disabled&&!this.forceDisabled&&(this.tabIndex=this.checked?0:-1)),e.has("disabled")||e.has("forceDisabled")){let r=this.disabled||this.forceDisabled;this.customStates.set("disabled",r),this[r?"setAttribute":"removeAttribute"]("disabled-ui",""),this.setAttribute("aria-disabled",r?"true":"false"),r?this.tabIndex=-1:this.tabIndex=this.checked?0:-1}}setValue(){}render(){return F`
2440
+ `;import{css as D}from"lit";var V=D`
2441
+ [part~='label'] {
2442
+ display: block;
2443
+ font-size: var(--w-font-size-m);
2444
+ line-height: var(--w-line-height-m);
2445
+ user-select: none;
2446
+ cursor: pointer;
2447
+ }
2448
+ .wrapper {
2449
+ display: grid;
2450
+ grid-template-columns: 2rem max-content;
2451
+ gap: 8px;
2452
+ }
2453
+ .hide-toggle {
2454
+ position: absolute;
2455
+ padding: 0;
2456
+ margin: 0;
2457
+ opacity: 0;
2458
+ pointer-events: none;
2459
+ inset: 0;
2460
+ }
2461
+ .control {
2462
+ display: block;
2463
+ border-width: 1px;
2464
+ transition-property: all;
2465
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
2466
+ transition-duration: 150ms;
2467
+ cursor: pointer;
2468
+ appearance: none;
2469
+ user-select: none;
2470
+ flex-shrink: 0;
2471
+ height: 2rem;
2472
+ width: 2rem;
2473
+ background-color: var(--w-s-color-background);
2474
+ border-color: var(--w-s-color-border-strong);
2475
+ color: var(--w-s-color-icon-inverted);
2476
+ font-weight: 700;
2477
+ text-align: center;
2478
+ line-height: var(--w-line-height-xs);
2479
+ font-size: var(--w-font-size-m);
2480
+ }
2481
+ .checkbox {
2482
+ position: relative;
2483
+ }
2484
+ :host([type='checkbox']) .control {
2485
+ border-radius: 4px;
2486
+ }
2487
+ .checkbox:has(:checked, :indeterminate),
2488
+ :host([type='checkbox'][checked]) .control,
2489
+ :host([type='checkbox'][indeterminate]) .control {
2490
+ background-color: var(--w-s-color-background-primary);
2491
+ border-color: var(--w-s-color-border-primary);
2492
+ }
2493
+ .checkbox:has(:checked),
2494
+ :host([type='checkbox'][checked]) .control {
2495
+ background-image: var(--w-icon-toggle-checked);
2496
+ background-position: center;
2497
+ }
2498
+ :host([type='radio']) .control,
2499
+ :host([role='radio']) .control {
2500
+ border-radius: 50%;
2501
+ }
2502
+ :host([type='radio'][checked]) .control,
2503
+ /* :state is newly available, so we set an attribute in radio for compat */
2504
+ :host([role='radio'][checked-ui]) .control,
2505
+ :host([role='radio']:state(checked)) .control {
2506
+ border-color: var(--w-s-color-border-selected);
2507
+ border-width: 0.6rem;
2508
+ }
2509
+ .checkbox:has(:invalid),
2510
+ :host([invalid]) .control {
2511
+ border-color: var(--w-s-color-border-negative) !important;
2512
+ }
2513
+ /* handles invalid checkbox state inside w-checkbox */
2514
+ .checkbox:has(:checked, :indeterminate):has(:invalid),
2515
+ /* allows invalid to be set on the w-checkbox element */
2516
+ :host([invalid]) .checkbox:has(:checked, :indeterminate),
2517
+ :host([type='checkbox'][invalid][checked]) .control,
2518
+ :host([type='checkbox'][invalid][indeterminate]) .control {
2519
+ background-color: var(--w-s-color-background-negative);
2520
+ }
2521
+
2522
+ :host(:focus-visible) {
2523
+ outline: none;
2524
+ }
2525
+ .checkbox:has(> input:focus-visible:not(:disabled)),
2526
+ :host(:focus-visible) .control {
2527
+ outline: 2px solid var(--w-s-color-border-focus);
2528
+ outline-offset: var(--w-outline-offset, 1px);
2529
+ }
2530
+
2531
+ :host([type='radio'][disabled]) .control,
2532
+ /* :state is newly available, so we set an attribute in radio for compat */
2533
+ :host([role='radio'][disabled-ui]) .control,
2534
+ :host([role='radio']:state(disabled)) .control,
2535
+ :host([type='checkbox'][disabled]) .control,
2536
+ .checkbox:has(> input:disabled) {
2537
+ border-color: var(--w-s-color-border-disabled);
2538
+ background-color: var(--w-s-color-background-disabled-subtle);
2539
+ }
2540
+
2541
+ :host([type='checkbox'][disabled][checked]) .control,
2542
+ :host([type='checkbox'][disabled][indeterminate]) .control,
2543
+ .checkbox:has(:checked, :indeterminate):has(> input:disabled) {
2544
+ background-color: var(--w-s-color-background-disabled);
2545
+ }
2546
+ `;import{isServer as v}from"lit";import{property as b}from"lit/decorators.js";import{LitElement as X,unsafeCSS as Z}from"lit";import{property as S}from"lit/decorators.js";import{css as L}from"lit";var E=L`
2547
+ :host {
2548
+ box-sizing: border-box !important;
2549
+ }
2550
+
2551
+ :host *,
2552
+ :host *::before,
2553
+ :host *::after {
2554
+ box-sizing: inherit !important;
2555
+ }
2556
+ `;var p,c=class extends X{constructor(){super();k(this,p,!1);this.initialReflectedProperties=new Map;this.customStates={set:(e,r)=>{var o;(o=this.internals)!=null&&o.states&&(r?this.internals.states.add(e):this.internals.states.delete(e))},has:e=>{var r;return(r=this.internals)!=null&&r.states?this.internals.states.has(e):!1}};try{this.internals=this.attachInternals()}catch(r){console.error("Element internals are not supported in your browser. Consider using a polyfill")}this.customStates.set("wa-defined",!0);let e=this.constructor;for(let[r,o]of e.elementProperties)o.default==="inherit"&&o.initial!==void 0&&typeof r=="string"&&this.customStates.set(`initial-${r}-${o.initial}`,!0)}static get styles(){let e=Array.isArray(this.css)?this.css:this.css?[this.css]:[];return[E,...e].map(r=>typeof r=="string"?Z(r):r)}attributeChangedCallback(e,r,o){f(this,p)||(this.constructor.elementProperties.forEach((n,d)=>{n.reflect&&this[d]!=null&&this.initialReflectedProperties.set(d,this[d])}),x(this,p,!0)),super.attributeChangedCallback(e,r,o)}willUpdate(e){super.willUpdate(e),this.initialReflectedProperties.forEach((r,o)=>{e.has(o)&&this[o]==null&&(this[o]=r)})}relayNativeEvent(e,r){e.stopImmediatePropagation(),this.dispatchEvent(new e.constructor(e.type,{...e,...r}))}};p=new WeakMap,i([S()],c.prototype,"dir",2),i([S()],c.prototype,"lang",2);var C=()=>({observedAttributes:["custom-error"],checkValidity(t){let a={message:"",isValid:!0,invalidKeys:[]};return t.customError&&(a.message=t.customError,a.isValid=!1,a.invalidKeys=["customError"]),a}});var g=class extends Event{constructor(){super("w-invalid",{bubbles:!0,cancelable:!1,composed:!0})}};var s=class extends c{constructor(){super();this.name=null;this.disabled=!1;this.required=!1;this.assumeInteractionOn=["input"];this.validators=[];this.valueHasChanged=!1;this.hasInteracted=!1;this.customError=null;this.emittedEvents=[];this.emitInvalid=e=>{e.target===this&&(this.hasInteracted=!0,this.dispatchEvent(new g))};this.handleInteraction=e=>{var o;let r=this.emittedEvents;r.includes(e.type)||r.push(e.type),r.length===((o=this.assumeInteractionOn)==null?void 0:o.length)&&(this.hasInteracted=!0)};v||this.addEventListener("invalid",this.emitInvalid)}static get validators(){return[C()]}static get observedAttributes(){let e=new Set(super.observedAttributes||[]);for(let r of this.validators)if(r.observedAttributes)for(let o of r.observedAttributes)e.add(o);return[...e]}connectedCallback(){super.connectedCallback(),this.updateValidity(),this.assumeInteractionOn.forEach(e=>{this.addEventListener(e,this.handleInteraction)})}firstUpdated(...e){super.firstUpdated(...e),this.updateValidity()}willUpdate(e){if(!v&&e.has("customError")&&(this.customError||(this.customError=null),this.setCustomValidity(this.customError||"")),e.has("value")||e.has("disabled")){let r=this.value;if(Array.isArray(r)){if(this.name){let o=new FormData;for(let n of r)o.append(this.name,n);this.setValue(o,o)}}else this.setValue(r,r)}e.has("disabled")&&(this.customStates.set("disabled",this.disabled),(this.hasAttribute("disabled")||!v&&!this.matches(":disabled"))&&this.toggleAttribute("disabled",this.disabled)),this.updateValidity(),super.willUpdate(e)}get labels(){return this.internals.labels}getForm(){return this.internals.form}get validity(){return this.internals.validity}get willValidate(){return this.internals.willValidate}get validationMessage(){return this.internals.validationMessage}checkValidity(){return this.updateValidity(),this.internals.checkValidity()}reportValidity(){return this.updateValidity(),this.hasInteracted=!0,this.internals.reportValidity()}get validationTarget(){return this.input||void 0}setValidity(...e){let r=e[0],o=e[1],n=e[2];n||(n=this.validationTarget),this.internals.setValidity(r,o,n||void 0),this.requestUpdate("validity"),this.setCustomStates()}setCustomStates(){let e=!!this.required,r=this.internals.validity.valid,o=this.hasInteracted;this.customStates.set("required",e),this.customStates.set("optional",!e),this.customStates.set("invalid",!r),this.customStates.set("valid",r),this.customStates.set("user-invalid",!r&&o),this.customStates.set("user-valid",r&&o)}setCustomValidity(e){if(!e){this.customError=null,this.setValidity({});return}this.customError=e,this.setValidity({customError:!0},e,this.validationTarget)}formResetCallback(){this.resetValidity(),this.hasInteracted=!1,this.valueHasChanged=!1,this.emittedEvents=[],this.updateValidity()}formDisabledCallback(e){this.disabled=e,this.updateValidity()}formStateRestoreCallback(e,r){this.value=e,r==="restore"&&this.resetValidity(),this.updateValidity()}setValue(...e){let[r,o]=e;this.internals.setFormValue(r,o)}get allValidators(){let e=this.constructor.validators||[],r=this.validators||[];return[...e,...r]}resetValidity(){this.setCustomValidity(""),this.setValidity({})}updateValidity(){if(this.disabled||this.hasAttribute("disabled")||!this.willValidate){this.resetValidity();return}let e=this.allValidators;if(!(e!=null&&e.length))return;let r={customError:!!this.customError},o=this.validationTarget||this.input||void 0,n="";for(let d of e){let{isValid:Y,message:A,invalidKeys:u}=d.checkValidity(this);Y||(n||(n=A),(u==null?void 0:u.length)>=0&&u.forEach(M=>r[M]=!0))}n||(n=this.validationMessage),this.setValidity(r,n,o)}};s.formAssociated=!0,i([b({reflect:!0})],s.prototype,"name",2),i([b({type:Boolean})],s.prototype,"disabled",2),i([b({state:!0,attribute:!1})],s.prototype,"valueHasChanged",2),i([b({state:!0,attribute:!1})],s.prototype,"hasInteracted",2),i([b({attribute:"custom-error",reflect:!0})],s.prototype,"customError",2),i([b({attribute:!1,state:!0,type:Object})],s.prototype,"validity",1);var l=class extends s{constructor(){super();this.checked=!1;this.forceDisabled=!1;this.form=null;this.appearance="default";this.size="medium";this.disabled=!1;this.handleClick=()=>{!this.disabled&&!this.forceDisabled&&(this.checked=!0)};this.addEventListener("click",this.handleClick)}connectedCallback(){super.connectedCallback(),this.setInitialAttributes()}setInitialAttributes(){this.setAttribute("role","radio"),this.tabIndex=0,this.setAttribute("aria-disabled",this.disabled||this.forceDisabled?"true":"false")}updated(e){if(super.updated(e),e.has("checked")&&(this.customStates.set("checked",this.checked),this[this.checked?"setAttribute":"removeAttribute"]("checked-ui",""),this.setAttribute("aria-checked",this.checked?"true":"false"),!this.disabled&&!this.forceDisabled&&(this.tabIndex=this.checked?0:-1)),e.has("disabled")||e.has("forceDisabled")){let r=this.disabled||this.forceDisabled;this.customStates.set("disabled",r),this[r?"setAttribute":"removeAttribute"]("disabled-ui",""),this.setAttribute("aria-disabled",r?"true":"false"),r?this.tabIndex=-1:this.tabIndex=this.checked?0:-1}}setValue(){}render(){return F`
2557
2557
  <div class="wrapper">
2558
2558
  <div part="control" class="control"></div>
2559
2559
  <slot part="label" class="label"></slot>
2560
2560
  </div>
2561
- `}};l.css=[C,E],i([I()],l.prototype,"checked",2),i([I()],l.prototype,"forceDisabled",2),i([h({reflect:!0})],l.prototype,"form",2),i([h({reflect:!0})],l.prototype,"value",2),i([h({reflect:!0})],l.prototype,"appearance",2),i([h({reflect:!0})],l.prototype,"size",2),i([h({type:Boolean})],l.prototype,"disabled",2);customElements.get("w-radio")||customElements.define("w-radio",l);export{l as WRadio};
2561
+ `}};l.css=[z,V],i([I()],l.prototype,"checked",2),i([I()],l.prototype,"forceDisabled",2),i([h({reflect:!0})],l.prototype,"form",2),i([h({reflect:!0})],l.prototype,"value",2),i([h({reflect:!0})],l.prototype,"appearance",2),i([h({reflect:!0})],l.prototype,"size",2),i([h({type:Boolean})],l.prototype,"disabled",2);customElements.get("w-radio")||customElements.define("w-radio",l);export{l as WRadio};
2562
2562
  //# sourceMappingURL=radio.js.map