@warp-ds/elements 2.3.0-next.2 → 2.3.0-next.20

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 (135) hide show
  1. package/dist/custom-elements.json +715 -28
  2. package/dist/index.d.ts +150 -19
  3. package/dist/packages/affix/index.js.map +2 -2
  4. package/dist/packages/affix/react.d.ts +1 -1
  5. package/dist/packages/alert/index.js.map +2 -2
  6. package/dist/packages/alert/react.d.ts +1 -1
  7. package/dist/packages/attention/attention.stories.js +4 -1
  8. package/dist/packages/attention/index.js +5 -5
  9. package/dist/packages/attention/index.js.map +2 -2
  10. package/dist/packages/attention/react.d.ts +1 -1
  11. package/dist/packages/attention/styles.js +1 -1
  12. package/dist/packages/badge/index.js.map +2 -2
  13. package/dist/packages/badge/react.d.ts +1 -1
  14. package/dist/packages/box/index.js.map +2 -2
  15. package/dist/packages/box/react.d.ts +1 -1
  16. package/dist/packages/breadcrumbs/index.js.map +2 -2
  17. package/dist/packages/breadcrumbs/react.d.ts +1 -1
  18. package/dist/packages/button/button.stories.d.ts +4 -4
  19. package/dist/packages/button/button.stories.js +4 -4
  20. package/dist/packages/button/index.js +3 -3
  21. package/dist/packages/button/index.js.map +2 -2
  22. package/dist/packages/button/react.d.ts +1 -1
  23. package/dist/packages/card/index.js.map +2 -2
  24. package/dist/packages/card/react.d.ts +1 -1
  25. package/dist/packages/combobox/combobox.react.stories.d.ts +1 -1
  26. package/dist/packages/combobox/index.js.map +2 -2
  27. package/dist/packages/combobox/react.d.ts +1 -1
  28. package/dist/packages/datepicker/react.d.ts +1 -1
  29. package/dist/packages/dead-toggle/index.js +2 -3
  30. package/dist/packages/dead-toggle/index.js.map +2 -2
  31. package/dist/packages/dead-toggle/react.d.ts +1 -1
  32. package/dist/packages/expandable/index.js.map +2 -2
  33. package/dist/packages/expandable/react.d.ts +1 -1
  34. package/dist/packages/link/index.js +3 -3
  35. package/dist/packages/link/index.js.map +1 -1
  36. package/dist/packages/link/react.d.ts +1 -1
  37. package/dist/packages/link/styles.js +3 -3
  38. package/dist/packages/modal/index.js.map +2 -2
  39. package/dist/packages/modal/modal-header.js.map +2 -2
  40. package/dist/packages/modal/modal.stories.d.ts +3 -3
  41. package/dist/packages/modal/modal.stories.js +32 -32
  42. package/dist/packages/modal/react.d.ts +1 -1
  43. package/dist/packages/pageindicator/react.d.ts +1 -1
  44. package/dist/packages/pagination/index.js.map +2 -2
  45. package/dist/packages/pagination/react.d.ts +1 -1
  46. package/dist/packages/pill/index.js.map +2 -2
  47. package/dist/packages/pill/react.d.ts +1 -1
  48. package/dist/packages/rip-and-tear-checkbox/checkbox-group.d.ts +10 -0
  49. package/dist/packages/rip-and-tear-checkbox/checkbox-group.js +7 -0
  50. package/dist/packages/rip-and-tear-checkbox/checkbox-group.js.map +7 -0
  51. package/dist/packages/rip-and-tear-checkbox/checkbox.js +2 -3
  52. package/dist/packages/rip-and-tear-checkbox/checkbox.js.map +2 -2
  53. package/dist/packages/rip-and-tear-checkbox/checkbox.stories.d.ts +3 -0
  54. package/dist/packages/rip-and-tear-checkbox/checkbox.stories.js +14 -0
  55. package/dist/packages/rip-and-tear-checkbox/index.js +2 -0
  56. package/dist/packages/rip-and-tear-checkbox/react.d.ts +3 -1
  57. package/dist/packages/rip-and-tear-checkbox/react.js +5 -0
  58. package/dist/packages/rip-and-tear-radio/radio-group.js +2 -3
  59. package/dist/packages/rip-and-tear-radio/radio-group.js.map +2 -2
  60. package/dist/packages/rip-and-tear-radio/radio.js +2 -3
  61. package/dist/packages/rip-and-tear-radio/radio.js.map +2 -2
  62. package/dist/packages/rip-and-tear-radio/radio.stories.js +2 -3
  63. package/dist/packages/rip-and-tear-radio/radio.stories.js.map +2 -2
  64. package/dist/packages/rip-and-tear-radio/react.d.ts +2 -2
  65. package/dist/packages/select/index.d.ts +25 -5
  66. package/dist/packages/select/index.js +14 -13
  67. package/dist/packages/select/index.js.map +2 -2
  68. package/dist/packages/select/react.d.ts +1 -1
  69. package/dist/packages/select/select.react.stories.d.ts +1 -1
  70. package/dist/packages/select/select.stories.d.ts +1 -1
  71. package/dist/packages/select/select.stories.js +3 -4
  72. package/dist/packages/slider/react.d.ts +2 -2
  73. package/dist/packages/slider/slider-thumb.d.ts +11 -7
  74. package/dist/packages/slider/slider-thumb.js +92 -49
  75. package/dist/packages/slider/slider-thumb.js.map +4 -4
  76. package/dist/packages/slider/slider.d.ts +10 -1
  77. package/dist/packages/slider/slider.js +99 -31
  78. package/dist/packages/slider/slider.js.map +3 -3
  79. package/dist/packages/slider/slider.react.stories.d.ts +1 -0
  80. package/dist/packages/slider/slider.react.stories.js +22 -0
  81. package/dist/packages/slider/slider.stories.d.ts +3 -0
  82. package/dist/packages/slider/slider.stories.js +240 -33
  83. package/dist/packages/slider/styles/w-slider-thumb.styles.js +24 -16
  84. package/dist/packages/slider/styles/w-slider.styles.js +65 -18
  85. package/dist/packages/steps/index.d.ts +3 -2
  86. package/dist/packages/steps/index.js +8 -8
  87. package/dist/packages/steps/index.js.map +3 -3
  88. package/dist/packages/steps/react.d.ts +2 -2
  89. package/dist/packages/steps/react.js +2 -2
  90. package/dist/packages/steps/steps.react.stories.d.ts +4 -4
  91. package/dist/packages/steps/steps.react.stories.js +11 -11
  92. package/dist/packages/steps/steps.stories.js +16 -16
  93. package/dist/packages/switch/index.js +4 -3
  94. package/dist/packages/switch/index.js.map +2 -2
  95. package/dist/packages/switch/react.d.ts +1 -1
  96. package/dist/packages/switch/styles.js +1 -1
  97. package/dist/packages/tabs/tab.js +4 -3
  98. package/dist/packages/tabs/tab.js.map +2 -2
  99. package/dist/packages/tabs/tabs.js +5 -5
  100. package/dist/packages/tabs/tabs.js.map +3 -3
  101. package/dist/packages/tabs/tabs.stories.d.ts +3 -0
  102. package/dist/packages/tabs/tabs.stories.js +16 -7
  103. package/dist/packages/textarea/index.d.ts +1 -0
  104. package/dist/packages/textarea/index.js +1 -0
  105. package/dist/packages/textarea/locales/da/messages.d.mts +1 -0
  106. package/dist/packages/textarea/locales/da/messages.mjs +1 -0
  107. package/dist/packages/textarea/locales/en/messages.d.mts +1 -0
  108. package/dist/packages/textarea/locales/en/messages.mjs +1 -0
  109. package/dist/packages/textarea/locales/fi/messages.d.mts +1 -0
  110. package/dist/packages/textarea/locales/fi/messages.mjs +1 -0
  111. package/dist/packages/textarea/locales/nb/messages.d.mts +1 -0
  112. package/dist/packages/textarea/locales/nb/messages.mjs +1 -0
  113. package/dist/packages/textarea/locales/sv/messages.d.mts +1 -0
  114. package/dist/packages/textarea/locales/sv/messages.mjs +1 -0
  115. package/dist/packages/textarea/react.d.ts +11 -0
  116. package/dist/packages/textarea/react.js +21 -0
  117. package/dist/packages/textarea/styles.d.ts +1 -0
  118. package/dist/packages/textarea/styles.js +2 -0
  119. package/dist/packages/textarea/textarea.d.ts +48 -0
  120. package/dist/packages/textarea/textarea.js +2475 -0
  121. package/dist/packages/textarea/textarea.js.map +7 -0
  122. package/dist/packages/textarea/textarea.react.stories.d.ts +33 -0
  123. package/dist/packages/textarea/textarea.react.stories.js +41 -0
  124. package/dist/packages/textarea/textarea.stories.d.ts +19 -0
  125. package/dist/packages/textarea/textarea.stories.js +85 -0
  126. package/dist/packages/textarea/textarea.test.d.ts +1 -0
  127. package/dist/packages/textarea/textarea.test.js +49 -0
  128. package/dist/packages/textfield/index.d.ts +3 -0
  129. package/dist/packages/textfield/index.js +17 -16
  130. package/dist/packages/textfield/index.js.map +2 -2
  131. package/dist/packages/textfield/react.d.ts +1 -1
  132. package/dist/packages/textfield/textfield.react.stories.d.ts +1 -1
  133. package/dist/packages/toggle-styles.js +2 -3
  134. package/dist/web-types.json +128 -15
  135. package/package.json +201 -12
@@ -27,6 +27,9 @@ declare class WarpSlider extends WarpSlider_base {
27
27
  */
28
28
  label: string;
29
29
  disabled: boolean;
30
+ allowValuesOutsideRange: boolean;
31
+ error: string;
32
+ helpText: string;
30
33
  invalid: boolean;
31
34
  /** Ensures a child slider thumb has a value before allowing the containing form to submit. */
32
35
  required: boolean;
@@ -38,9 +41,15 @@ declare class WarpSlider extends WarpSlider_base {
38
41
  /** Suffix used in text input fields and for the min and max values of the slider. */
39
42
  suffix: string;
40
43
  /** Function to format the to- and from labels and value in the slider thumb tooltip. */
41
- formatter: (value: string) => string;
44
+ formatter: (value: string, type: 'to' | 'from') => string;
45
+ _invalidMessage: string;
46
+ _hasInternalError: boolean;
47
+ get edgeMin(): string;
48
+ get edgeMax(): string;
42
49
  connectedCallback(): Promise<void>;
43
50
  updated(changedProperties: PropertyValues<this>): void;
51
+ get componentHasError(): boolean;
52
+ get errorText(): string;
44
53
  render(): import("lit").TemplateResult<1>;
45
54
  }
46
55
  export { WarpSlider };
@@ -1,4 +1,4 @@
1
- var ee=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var N=l=>{throw TypeError(l)};var u=(l,r,e,t)=>{for(var n=t>1?void 0:t?re(r,e):r,a=l.length-1,v;a>=0;a--)(v=l[a])&&(n=(t?v(r,e,n):v(n))||n);return t&&n&&ee(r,e,n),n};var oe=(l,r,e)=>r.has(l)||N("Cannot "+e);var R=(l,r,e)=>r.has(l)?N("Cannot add the same private member more than once"):r instanceof WeakSet?r.add(l):r.set(l,e);var m=(l,r,e)=>(oe(l,r,"access private method"),e);var s=function(l,r,e,t){if(e==="a"&&!t)throw new TypeError("Private accessor was defined without a getter");if(typeof r=="function"?l!==r||!t:!r.has(l))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?t:e==="a"?t.call(l):t?t.value:r.get(l)},c=function(l,r,e,t,n){if(t==="m")throw new TypeError("Private method is not writable");if(t==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof r=="function"?l!==r||!n:!r.has(l))throw new TypeError("Cannot write private member to an object whose class did not declare it");return t==="a"?n.call(l,e):n?n.value=e:r.set(l,e),e};function W(l){var r,e,t,n,a,v,k,K,z,P,j,S,E,C,T,x,A,X,Z;class Q extends l{constructor(...o){var i,d,b;super(...o),r.add(this),this.internals=this.attachInternals(),e.set(this,!1),t.set(this,!1),n.set(this,!1),a.set(this,void 0),v.set(this,void 0),k.set(this,!0),z.set(this,""),P.set(this,()=>{c(this,n,!0,"f"),c(this,e,!0,"f"),s(this,r,"m",x).call(this)}),j.set(this,()=>{c(this,e,!1,"f"),s(this,r,"m",A).call(this,this.shouldFormValueUpdate()?s(this,z,"f"):""),!this.validity.valid&&s(this,n,"f")&&c(this,t,!0,"f");let f=s(this,r,"m",x).call(this);this.validationMessageCallback&&this.validationMessageCallback(f?this.internals.validationMessage:"")}),S.set(this,()=>{var f;s(this,k,"f")&&this.validationTarget&&(this.internals.setValidity(this.validity,this.validationMessage,this.validationTarget),c(this,k,!1,"f")),c(this,n,!0,"f"),c(this,t,!0,"f"),s(this,r,"m",x).call(this),(f=this===null||this===void 0?void 0:this.validationMessageCallback)===null||f===void 0||f.call(this,this.showError?this.internals.validationMessage:"")}),E.set(this,void 0),C.set(this,!1),T.set(this,Promise.resolve()),(i=this.addEventListener)===null||i===void 0||i.call(this,"focus",s(this,P,"f")),(d=this.addEventListener)===null||d===void 0||d.call(this,"blur",s(this,j,"f")),(b=this.addEventListener)===null||b===void 0||b.call(this,"invalid",s(this,S,"f")),this.setValue(null)}static get formAssociated(){return!0}static get validators(){return this.formControlValidators||[]}static get observedAttributes(){let o=this.validators.map(b=>b.attribute).flat(),i=super.observedAttributes||[];return[...new Set([...i,...o])]}static getValidator(o){return this.validators.find(i=>i.attribute===o)||null}static getValidators(o){return this.validators.filter(i=>{var d;if(i.attribute===o||!((d=i.attribute)===null||d===void 0)&&d.includes(o))return!0})}get form(){return this.internals.form}get showError(){return s(this,r,"m",x).call(this)}checkValidity(){return this.internals.checkValidity()}get validity(){return this.internals.validity}get validationMessage(){return this.internals.validationMessage}attributeChangedCallback(o,i,d){var b;(b=super.attributeChangedCallback)===null||b===void 0||b.call(this,o,i,d);let V=this.constructor.getValidators(o);V!=null&&V.length&&this.validationTarget&&this.setValue(s(this,z,"f"))}setValue(o){var i;c(this,t,!1,"f"),(i=this.validationMessageCallback)===null||i===void 0||i.call(this,""),c(this,z,o,"f");let b=this.shouldFormValueUpdate()?o:null;this.internals.setFormValue(b),s(this,r,"m",A).call(this,b),this.valueChangedCallback&&this.valueChangedCallback(b),s(this,r,"m",x).call(this)}shouldFormValueUpdate(){return!0}get validationComplete(){return new Promise(o=>o(s(this,T,"f")))}formResetCallback(){var o,i;c(this,n,!1,"f"),c(this,t,!1,"f"),s(this,r,"m",x).call(this),(o=this.resetFormControl)===null||o===void 0||o.call(this),(i=this.validationMessageCallback)===null||i===void 0||i.call(this,s(this,r,"m",x).call(this)?this.validationMessage:"")}}return e=new WeakMap,t=new WeakMap,n=new WeakMap,a=new WeakMap,v=new WeakMap,k=new WeakMap,z=new WeakMap,P=new WeakMap,j=new WeakMap,S=new WeakMap,E=new WeakMap,C=new WeakMap,T=new WeakMap,r=new WeakSet,K=function(){let o=this.getRootNode(),i=`${this.localName}[name="${this.getAttribute("name")}"]`;return o.querySelectorAll(i)},x=function(){if(this.hasAttribute("disabled"))return!1;let o=s(this,t,"f")||s(this,n,"f")&&!this.validity.valid&&!s(this,e,"f");return o&&this.internals.states?this.internals.states.add("--show-error"):this.internals.states&&this.internals.states.delete("--show-error"),o},A=function(o){let i=this.constructor,d={},b=i.validators,f=[],V=b.some(p=>p.isValid instanceof Promise);s(this,C,"f")||(c(this,T,new Promise(p=>{c(this,E,p,"f")}),"f"),c(this,C,!0,"f")),s(this,a,"f")&&(s(this,a,"f").abort(),c(this,v,s(this,a,"f"),"f"));let M=new AbortController;c(this,a,M,"f");let Y,q=!1;b.length&&(b.forEach(p=>{let I=p.key||"customError",y=p.isValid(this,o,M.signal);y instanceof Promise?(f.push(y),y.then($=>{$!=null&&(d[I]=!$,Y=s(this,r,"m",Z).call(this,p,o),s(this,r,"m",X).call(this,d,Y))})):(d[I]=!y,this.validity[I]!==!y&&(q=!0),!y&&!Y&&(Y=s(this,r,"m",Z).call(this,p,o)))}),Promise.allSettled(f).then(()=>{var p;M!=null&&M.signal.aborted||(c(this,C,!1,"f"),(p=s(this,E,"f"))===null||p===void 0||p.call(this))}),(q||!V)&&s(this,r,"m",X).call(this,d,Y))},X=function(o,i){if(this.validationTarget)this.internals.setValidity(o,i,this.validationTarget),c(this,k,!1,"f");else{if(this.internals.setValidity(o,i),this.internals.validity.valid)return;c(this,k,!0,"f")}},Z=function(o,i){if(this.validityCallback){let d=this.validityCallback(o.key||"customError");if(d)return d}return o.message instanceof Function?o.message(this,i):o.message},Q}import{html as G,LitElement as D,nothing as ae}from"lit";import{property as w}from"lit/decorators.js";import{css as O}from"lit";var U=O`
1
+ var ae=Object.defineProperty;var ie=Object.getOwnPropertyDescriptor;var W=l=>{throw TypeError(l)};var p=(l,o,e,r)=>{for(var n=r>1?void 0:r?ie(o,e):o,a=l.length-1,x;a>=0;a--)(x=l[a])&&(n=(r?x(o,e,n):x(n))||n);return r&&n&&ae(o,e,n),n};var se=(l,o,e)=>o.has(l)||W("Cannot "+e);var U=(l,o,e)=>o.has(l)?W("Cannot add the same private member more than once"):o instanceof WeakSet?o.add(l):o.set(l,e);var v=(l,o,e)=>(se(l,o,"access private method"),e);var s=function(l,o,e,r){if(e==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof o=="function"?l!==o||!r:!o.has(l))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?r:e==="a"?r.call(l):r?r.value:o.get(l)},b=function(l,o,e,r,n){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof o=="function"?l!==o||!n:!o.has(l))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?n.call(l,e):n?n.value=e:o.set(l,e),e};function B(l){var o,e,r,n,a,x,k,oe,z,P,A,R,Y,C,S,f,$,I,X;class te extends l{constructor(...t){var i,h,g;super(...t),o.add(this),this.internals=this.attachInternals(),e.set(this,!1),r.set(this,!1),n.set(this,!1),a.set(this,void 0),x.set(this,void 0),k.set(this,!0),z.set(this,""),P.set(this,()=>{b(this,n,!0,"f"),b(this,e,!0,"f"),s(this,o,"m",f).call(this)}),A.set(this,()=>{b(this,e,!1,"f"),s(this,o,"m",$).call(this,this.shouldFormValueUpdate()?s(this,z,"f"):""),!this.validity.valid&&s(this,n,"f")&&b(this,r,!0,"f");let w=s(this,o,"m",f).call(this);this.validationMessageCallback&&this.validationMessageCallback(w?this.internals.validationMessage:"")}),R.set(this,()=>{var w;s(this,k,"f")&&this.validationTarget&&(this.internals.setValidity(this.validity,this.validationMessage,this.validationTarget),b(this,k,!1,"f")),b(this,n,!0,"f"),b(this,r,!0,"f"),s(this,o,"m",f).call(this),(w=this===null||this===void 0?void 0:this.validationMessageCallback)===null||w===void 0||w.call(this,this.showError?this.internals.validationMessage:"")}),Y.set(this,void 0),C.set(this,!1),S.set(this,Promise.resolve()),(i=this.addEventListener)===null||i===void 0||i.call(this,"focus",s(this,P,"f")),(h=this.addEventListener)===null||h===void 0||h.call(this,"blur",s(this,A,"f")),(g=this.addEventListener)===null||g===void 0||g.call(this,"invalid",s(this,R,"f")),this.setValue(null)}static get formAssociated(){return!0}static get validators(){return this.formControlValidators||[]}static get observedAttributes(){let t=this.validators.map(g=>g.attribute).flat(),i=super.observedAttributes||[];return[...new Set([...i,...t])]}static getValidator(t){return this.validators.find(i=>i.attribute===t)||null}static getValidators(t){return this.validators.filter(i=>{var h;if(i.attribute===t||!((h=i.attribute)===null||h===void 0)&&h.includes(t))return!0})}get form(){return this.internals.form}get showError(){return s(this,o,"m",f).call(this)}checkValidity(){return this.internals.checkValidity()}get validity(){return this.internals.validity}get validationMessage(){return this.internals.validationMessage}attributeChangedCallback(t,i,h){var g;(g=super.attributeChangedCallback)===null||g===void 0||g.call(this,t,i,h);let F=this.constructor.getValidators(t);F!=null&&F.length&&this.validationTarget&&this.setValue(s(this,z,"f"))}setValue(t){var i;b(this,r,!1,"f"),(i=this.validationMessageCallback)===null||i===void 0||i.call(this,""),b(this,z,t,"f");let g=this.shouldFormValueUpdate()?t:null;this.internals.setFormValue(g),s(this,o,"m",$).call(this,g),this.valueChangedCallback&&this.valueChangedCallback(g),s(this,o,"m",f).call(this)}shouldFormValueUpdate(){return!0}get validationComplete(){return new Promise(t=>t(s(this,S,"f")))}formResetCallback(){var t,i;b(this,n,!1,"f"),b(this,r,!1,"f"),s(this,o,"m",f).call(this),(t=this.resetFormControl)===null||t===void 0||t.call(this),(i=this.validationMessageCallback)===null||i===void 0||i.call(this,s(this,o,"m",f).call(this)?this.validationMessage:"")}}return e=new WeakMap,r=new WeakMap,n=new WeakMap,a=new WeakMap,x=new WeakMap,k=new WeakMap,z=new WeakMap,P=new WeakMap,A=new WeakMap,R=new WeakMap,Y=new WeakMap,C=new WeakMap,S=new WeakMap,o=new WeakSet,oe=function(){let t=this.getRootNode(),i=`${this.localName}[name="${this.getAttribute("name")}"]`;return t.querySelectorAll(i)},f=function(){if(this.hasAttribute("disabled"))return!1;let t=s(this,r,"f")||s(this,n,"f")&&!this.validity.valid&&!s(this,e,"f");return t&&this.internals.states?this.internals.states.add("--show-error"):this.internals.states&&this.internals.states.delete("--show-error"),t},$=function(t){let i=this.constructor,h={},g=i.validators,w=[],F=g.some(m=>m.isValid instanceof Promise);s(this,C,"f")||(b(this,S,new Promise(m=>{b(this,Y,m,"f")}),"f"),b(this,C,!0,"f")),s(this,a,"f")&&(s(this,a,"f").abort(),b(this,x,s(this,a,"f"),"f"));let V=new AbortController;b(this,a,V,"f");let T,L=!1;g.length&&(g.forEach(m=>{let O=m.key||"customError",y=m.isValid(this,t,V.signal);y instanceof Promise?(w.push(y),y.then(Z=>{Z!=null&&(h[O]=!Z,T=s(this,o,"m",X).call(this,m,t),s(this,o,"m",I).call(this,h,T))})):(h[O]=!y,this.validity[O]!==!y&&(L=!0),!y&&!T&&(T=s(this,o,"m",X).call(this,m,t)))}),Promise.allSettled(w).then(()=>{var m;V!=null&&V.signal.aborted||(b(this,C,!1,"f"),(m=s(this,Y,"f"))===null||m===void 0||m.call(this))}),(L||!F)&&s(this,o,"m",I).call(this,h,T))},I=function(t,i){if(this.validationTarget)this.internals.setValidity(t,i,this.validationTarget),b(this,k,!1,"f");else{if(this.internals.setValidity(t,i),this.internals.validity.valid)return;b(this,k,!0,"f")}},X=function(t,i){if(this.validityCallback){let h=this.validityCallback(t.key||"customError");if(h)return h}return t.message instanceof Function?t.message(this,i):t.message},te}import{html as E,LitElement as J,nothing as j}from"lit";import{property as u,state as K}from"lit/decorators.js";import{css as G}from"lit";var H=G`
2
2
  *,
3
3
  :before,
4
4
  :after {
@@ -271,7 +271,7 @@ var ee=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var N=l=>{th
271
271
  svg {
272
272
  pointer-events: none;
273
273
  }
274
- `,de=O`*, :before, :after {
274
+ `,be=G`*, :before, :after {
275
275
  --w-rotate: 0;
276
276
  --w-rotate-x: 0;
277
277
  --w-rotate-y: 0;
@@ -2437,7 +2437,7 @@ var ee=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var N=l=>{th
2437
2437
  display: none
2438
2438
  }
2439
2439
  }
2440
- `;import{css as te}from"lit";var B=te`
2440
+ `;import{css as ne}from"lit";var D=ne`
2441
2441
  .w-slider {
2442
2442
  position: relative;
2443
2443
  border: none;
@@ -2446,9 +2446,10 @@ var ee=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var N=l=>{th
2446
2446
  display: grid;
2447
2447
  width: 100%;
2448
2448
  grid-template-areas:
2449
- 'label'
2450
- 'description'
2451
- 'slider';
2449
+ "label"
2450
+ "description"
2451
+ "slider"
2452
+ "error";
2452
2453
  grid-template-columns: 1fr;
2453
2454
 
2454
2455
  --w-slider-track-background: var(--w-s-color-background-disabled-subtle);
@@ -2456,7 +2457,9 @@ var ee=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var N=l=>{th
2456
2457
  --w-slider-track-height: 4px;
2457
2458
  --w-slider-track-active-height: 6px;
2458
2459
  --w-slider-thumb-background: var(--w-s-color-background-primary);
2459
- --w-slider-thumb-background-hover: var(--w-s-color-background-primary-hover);
2460
+ --w-slider-thumb-background-hover: var(
2461
+ --w-s-color-background-primary-hover
2462
+ );
2460
2463
  --w-slider-thumb-size: 28px;
2461
2464
  --w-slider-thumb-offset: calc(var(--w-slider-thumb-size) / 2);
2462
2465
  --w-slider-marker-color: var(--w-s-color-border);
@@ -2467,26 +2470,45 @@ var ee=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var N=l=>{th
2467
2470
  --_value-range: calc(var(--max) - var(--min));
2468
2471
 
2469
2472
  /** Round up to the nearest --step, which defaults to 1 (https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input/range#step) */
2470
- --_from-in-range: round(up, max(calc(var(--from) - var(--min)), 0), var(--step, 1));
2473
+ --_from-in-range: round(
2474
+ up,
2475
+ max(calc(var(--from) - var(--min)), 0),
2476
+ var(--step, 1)
2477
+ );
2471
2478
 
2472
2479
  /* limit to maximum value in range so typing a value larger than max doesn't explode layouts */
2473
- --_to-in-range: round(up, min(calc(var(--to) - var(--min)), var(--_value-range)), var(--step, 1));
2480
+ --_to-in-range: round(
2481
+ up,
2482
+ min(calc(var(--to) - var(--min)), var(--_value-range)),
2483
+ var(--step, 1)
2484
+ );
2474
2485
 
2475
2486
  /* Position the starting point of the fill in the case of a non-zero --from value in a range slider.
2476
2487
  * In other words, given a width of 100% how many percent should be left unfilled/blank
2477
2488
  * at the beginning of the range slider (dashes in this ASCII-range-slider: |---O******O|) */
2478
- --_from-as-percent-of-max: calc(var(--_from-in-range) / var(--_value-range) * 100);
2489
+ --_from-as-percent-of-max: calc(
2490
+ var(--_from-in-range) / var(--_value-range) * 100
2491
+ );
2479
2492
  --_blank-values-before: var(--_from-as-percent-of-max);
2480
2493
 
2481
2494
  /* Set the width of the fill as a percentage.
2482
2495
  * In other words, given a width of 100% how many percent should be left unfilled/blank
2483
2496
  * at the end of the slider (dashes in this ASCII-slider: |******O---|) */
2484
- --_to-as-percent-of-max: calc(var(--_to-in-range) / var(--_value-range) * 100);
2485
- --_filled-values: calc(var(--_to-as-percent-of-max) - var(--_blank-values-before));
2497
+ --_to-as-percent-of-max: calc(
2498
+ var(--_to-in-range) / var(--_value-range) * 100
2499
+ );
2500
+ --_filled-values: calc(
2501
+ var(--_to-as-percent-of-max) - var(--_blank-values-before)
2502
+ );
2486
2503
 
2487
2504
  /* Vertical position of range and markers */
2488
2505
  --_range-top: calc(
2489
- var(--w-slider-thumb-size) / 2 + calc(var(--w-slider-track-active-height) - calc(var(--w-slider-track-height) / 2) + 1px)
2506
+ var(--w-slider-thumb-size) / 2 +
2507
+ calc(
2508
+ var(--w-slider-track-active-height) - calc(
2509
+ var(--w-slider-track-height) / 2
2510
+ ) + 1px
2511
+ )
2490
2512
  );
2491
2513
  }
2492
2514
 
@@ -2528,8 +2550,16 @@ var ee=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var N=l=>{th
2528
2550
  border-start-start-radius: var(--active-range-border-radius, 0);
2529
2551
  border-end-start-radius: var(--active-range-border-radius, 0);
2530
2552
 
2531
- margin-left: calc(calc(var(--_blank-values-before) * 1%) - var(--active-range-inline-start-padding, 0px));
2532
- width: calc(calc(var(--_filled-values) * 1%) + var(--active-range-inline-end-padding, 0px));
2553
+ margin-left: calc(
2554
+ calc(var(--_blank-values-before) * 1%) - var(
2555
+ --active-range-inline-start-padding,
2556
+ 0px
2557
+ )
2558
+ );
2559
+ width: calc(
2560
+ calc(var(--_filled-values) * 1%) +
2561
+ var(--active-range-inline-end-padding, 0px)
2562
+ );
2533
2563
  z-index: 1;
2534
2564
  }
2535
2565
 
@@ -2543,13 +2573,15 @@ var ee=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var N=l=>{th
2543
2573
  followed by enough transparent that we can repeat the gradient
2544
2574
  along the X axis and have markers visible where we want them. */
2545
2575
  background: linear-gradient(
2546
- to right,
2547
- var(--w-slider-marker-color) var(--_marker-width),
2548
- rgba(0, 0, 0, 0) 1px calc(100% - 1px),
2549
- var(--w-slider-marker-color) 100%
2550
- ) repeat-x;
2576
+ to right,
2577
+ var(--w-slider-marker-color) var(--_marker-width),
2578
+ rgba(0, 0, 0, 0) 1px calc(100% - 1px),
2579
+ var(--w-slider-marker-color) 100%
2580
+ )
2581
+ repeat-x;
2551
2582
  --_step-width-as-percent: calc(var(--markers) / var(--_value-range) * 100);
2552
- background-size: calc(var(--_step-width-as-percent) * 1%) var(--_marker-height);
2583
+ background-size: calc(var(--_step-width-as-percent) * 1%)
2584
+ var(--_marker-height);
2553
2585
 
2554
2586
  background-position: bottom 0 left 8px right 8px;
2555
2587
  position: absolute;
@@ -2561,6 +2593,21 @@ var ee=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var N=l=>{th
2561
2593
  margin-inline: var(--w-slider-thumb-offset);
2562
2594
  }
2563
2595
 
2596
+ .w-slider__error {
2597
+ grid-area: error;
2598
+ padding-top: 8px;
2599
+ font-size: var(--w-font-size-xs);
2600
+ line-height: var(--w-line-height-xs);
2601
+ color: var(--w-s-color-text-negative);
2602
+ }
2603
+
2604
+ .w-slider__help-text {
2605
+ grid-area: error;
2606
+ padding-top: 8px;
2607
+ font-size: var(--w-font-size-xs);
2608
+ line-height: var(--w-line-height-xs);
2609
+ }
2610
+
2564
2611
  slot::slotted(w-slider-thumb) {
2565
2612
  position: static;
2566
2613
  top: 0;
@@ -2569,19 +2616,40 @@ var ee=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var N=l=>{th
2569
2616
  bottom: 0;
2570
2617
  grid-area: slider;
2571
2618
  }
2572
- `;var g,_,H,J,L,h=class extends W(D){constructor(){super(...arguments);R(this,g);this.disabled=!1;this.invalid=!1;this.required=!1}async connectedCallback(){super.connectedCallback(),await this.updateComplete,this.step&&this.style.setProperty("--step",String(this.step)),this.style.setProperty("--min",this.min),this.style.setProperty("--max",this.max),this.markers&&this.style.setProperty("--markers",String(this.markers)),m(this,g,_).call(this)}updated(e){(e.has("disabled")||e.has("invalid")||e.has("required")||e.has("min")||e.has("step")||e.has("max")||e.has("suffix")||e.has("formatter"))&&m(this,g,_).call(this)}render(){return G`
2573
- <fieldset id="fieldset" class="w-slider" @input="${m(this,g,H)}" @slidervalidity="${m(this,g,J)}">
2574
- <legend class="w-slider__label">
2575
- <slot id="label" name="label">${this.label}</slot>
2576
- </legend>
2619
+ `;var c,_,Q,ee,re,N,q,d=class extends B(J){constructor(){super(...arguments);U(this,c);this.disabled=!1;this.allowValuesOutsideRange=!1;this.error="";this.helpText="";this.invalid=!1;this.required=!1;this.suffix="";this._invalidMessage="";this._hasInternalError=!1}get edgeMin(){return this.allowValuesOutsideRange?(Number(this.min)-1).toString():this.min}get edgeMax(){return this.allowValuesOutsideRange?(Number(this.max)+1).toString():this.max}async connectedCallback(){super.connectedCallback(),await this.updateComplete,this.step&&this.style.setProperty("--step",String(this.step)),this.style.setProperty("--min",this.edgeMin),this.style.setProperty("--max",this.max),this.markers&&this.style.setProperty("--markers",String(this.markers)),v(this,c,_).call(this)}updated(e){(e.has("disabled")||e.has("invalid")||e.has("required")||e.has("min")||e.has("step")||e.has("max")||e.has("suffix")||e.has("formatter")||e.has("_invalidMessage")||e.has("_hasInternalError"))&&v(this,c,_).call(this)}get componentHasError(){return this.invalid||this._hasInternalError}get errorText(){return this.componentHasError?this.error||this._invalidMessage:""}render(){return E`
2620
+ <fieldset
2621
+ id="fieldset"
2622
+ class="w-slider"
2623
+ @input="${v(this,c,Q)}"
2624
+ @slidervalidity="${v(this,c,re)}"
2625
+ aria-invalid="${this.errorText?"true":j}"
2626
+ >
2627
+ ${this.label?E`<legend class="w-slider__label">
2628
+ <slot id="label" name="label">${this.label}</slot>
2629
+ </legend>`:j}
2577
2630
  <slot class="w-slider__description" name="description"></slot>
2578
- ${this.markers?G`<div class="w-slider__markers"></div>`:ae}
2631
+ ${this.markers?E`<div class="w-slider__markers"></div>`:j}
2579
2632
  <div class="w-slider__range">
2580
2633
  <div class="w-slider__active-range"></div>
2581
2634
  </div>
2582
- <slot class="w-slider__slider" @slotchange=${m(this,g,_)}></slot>
2583
- <slot class="w-slider__slider" name="from" @slotchange=${m(this,g,_)}></slot>
2584
- <slot class="w-slider__slider" name="to" @slotchange=${m(this,g,_)}></slot>
2635
+ <slot
2636
+ class="w-slider__slider"
2637
+ @slotchange=${v(this,c,_)}
2638
+ ></slot>
2639
+ <slot
2640
+ class="w-slider__slider"
2641
+ name="from"
2642
+ @slotchange=${v(this,c,_)}
2643
+ ></slot>
2644
+ <slot
2645
+ class="w-slider__slider"
2646
+ name="to"
2647
+ @slotchange=${v(this,c,_)}
2648
+ ></slot>
2649
+ ${this.errorText?E`<p class="w-slider__error" aria-describes="fieldset">
2650
+ ${this.errorText}
2651
+ </p>`:this.helpText?E`<p class="w-slider__help-text" aria-describes="fieldset">
2652
+ ${this.helpText}</p>`:j}
2585
2653
  </fieldset>
2586
- `}};g=new WeakSet,_=function(){let e=this.querySelectorAll("w-slider-thumb"),t=!1;for(let a of e.values())a.min=this.min,a.max=this.max,a.step=this.step,a.suffix=this.suffix,a.required=this.required,a.formatter=this.formatter,a.ariaLabel||(a.slot||(a.ariaLabel=this.label),a.slot==="from"&&(a.ariaLabel=`${this.label} min`),a.slot==="to"&&(a.ariaLabel=`${this.label} max`)),(a.slot==="from"||a.slot==="to")&&(t=!0),a.forceDisabled=this.disabled,a.forceInvalid=this.invalid,m(this,g,L).call(this,a);let n=this.shadowRoot.querySelector("fieldset");t?(n.style.setProperty("--active-range-inline-start-padding","var(--w-slider-thumb-size)"),n.style.setProperty("--active-range-inline-end-padding","var(--w-slider-thumb-size)")):n.style.setProperty("--active-range-border-radius","4px")},H=function(e){let t=e.target;m(this,g,L).call(this,t)},J=function(e){e.stopPropagation(),this.invalid=e.detail.invalid},L=function(e){var n,a;let t=e.slot;if(t||this.style.setProperty("--from","0"),t==="from"){let v=(n=e.value)!=null?n:e.value=this.min;this.style.setProperty("--from",v)}if(!t||t==="to"){let v=(a=e.value)!=null?a:e.value=this.max;this.style.setProperty("--to",v)}},h.shadowRootOptions={...D.shadowRootOptions,delegatesFocus:!0},h.styles=[U,B],u([w({reflect:!0})],h.prototype,"label",2),u([w({type:Boolean,reflect:!0})],h.prototype,"disabled",2),u([w({type:Boolean,reflect:!0})],h.prototype,"invalid",2),u([w({type:Boolean,reflect:!0})],h.prototype,"required",2),u([w({reflect:!0})],h.prototype,"min",2),u([w({reflect:!0})],h.prototype,"max",2),u([w({type:Number,reflect:!0})],h.prototype,"markers",2),u([w({type:Number,reflect:!0})],h.prototype,"step",2),u([w({reflect:!0})],h.prototype,"suffix",2),u([w({attribute:!1})],h.prototype,"formatter",2);customElements.get("w-slider")||customElements.define("w-slider",h);export{h as WarpSlider};
2654
+ `}};c=new WeakSet,_=function(){let e=this.querySelectorAll("w-slider-thumb"),r=!1;for(let a of e.values())a.min=this.edgeMin,a.max=this.edgeMax,a.step=this.step,a.suffix=this.suffix,a.required=this.required,a.formatter=this.formatter,a.allowValuesOutsideRange=this.allowValuesOutsideRange,a.ariaLabel||(a.slot||(a.ariaLabel=this.label),a.slot==="from"&&(a.ariaLabel=`${this.label} min`),a.slot==="to"&&(a.ariaLabel=`${this.label} max`)),(a.slot==="from"||a.slot==="to")&&(r=!0),a.disabled=this.disabled,a.invalid=this.invalid||this._hasInternalError,v(this,c,q).call(this,a);let n=this.shadowRoot.querySelector("fieldset");r?(n.style.setProperty("--active-range-inline-start-padding","var(--w-slider-thumb-size)"),n.style.setProperty("--active-range-inline-end-padding","var(--w-slider-thumb-size)")):n.style.setProperty("--active-range-border-radius","4px")},Q=function(e){let r=e.target;v(this,c,q).call(this,r),r.slot&&v(this,c,ee).call(this)},ee=function(){let e,r,n=this.querySelectorAll("w-slider-thumb");for(let a of n.values())a.slot==="from"&&(e=a),a.slot==="to"&&(r=a);!e||!r||!e.invalid&&r.invalid},re=function(e){e.stopPropagation(),this._hasInternalError=!!e.detail.invalid,this._invalidMessage=e.detail.invalid},N=function(e,r){return(r.value===void 0||r.value===null)&&(r.value=this.allowValuesOutsideRange?"":e),r.value===""?e:r.value},q=function(e){let r=e.slot;r||this.style.setProperty("--from","0"),r==="from"&&this.style.setProperty("--from",v(this,c,N).call(this,this.edgeMin,e)),(!r||r==="to")&&this.style.setProperty("--to",v(this,c,N).call(this,this.edgeMax,e))},d.shadowRootOptions={...J.shadowRootOptions,delegatesFocus:!0},d.styles=[H,D],p([u({reflect:!0})],d.prototype,"label",2),p([u({type:Boolean,reflect:!0})],d.prototype,"disabled",2),p([u({type:Boolean,attribute:"allow-values-outside-range"})],d.prototype,"allowValuesOutsideRange",2),p([u({type:String,reflect:!0})],d.prototype,"error",2),p([u({type:String,reflect:!0,attribute:"help-text"})],d.prototype,"helpText",2),p([u({type:Boolean,reflect:!0})],d.prototype,"invalid",2),p([u({type:Boolean,reflect:!0})],d.prototype,"required",2),p([u({reflect:!0})],d.prototype,"min",2),p([u({reflect:!0})],d.prototype,"max",2),p([u({type:Number,reflect:!0})],d.prototype,"markers",2),p([u({type:Number,reflect:!0})],d.prototype,"step",2),p([u({reflect:!0})],d.prototype,"suffix",2),p([u({attribute:!1})],d.prototype,"formatter",2),p([K()],d.prototype,"_invalidMessage",2),p([K()],d.prototype,"_hasInternalError",2);customElements.get("w-slider")||customElements.define("w-slider",d);export{d as WarpSlider};
2587
2655
  //# sourceMappingURL=slider.js.map