@luzmo/lucero 1.0.1-alpha.21 → 1.0.1-alpha.22

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 (203) hide show
  1. package/components/accordion/index.cjs +6 -6
  2. package/components/accordion/index.js +8 -7
  3. package/components/action-bar/index.cjs +4 -4
  4. package/components/action-bar/index.js +10 -8
  5. package/components/action-button/index.cjs +3 -3
  6. package/components/action-button/index.js +5 -4
  7. package/components/action-group/index.cjs +1 -1
  8. package/components/action-group/index.js +1 -1
  9. package/components/action-group-D6rV7sfq.cjs +20 -0
  10. package/components/{action-group-C9dsPJg-.js → action-group-DS7x8jfJ.js} +10 -9
  11. package/components/action-menu/index.cjs +9 -9
  12. package/components/action-menu/index.js +9 -9
  13. package/components/{async-directive-BwIAw5tB.js → async-directive-CDQoI4mS.js} +18 -19
  14. package/components/async-directive-CddlkYlZ.cjs +22 -0
  15. package/components/avatar/index.cjs +3 -3
  16. package/components/avatar/index.js +6 -6
  17. package/components/base-5nDSSNeT.cjs +18 -0
  18. package/components/base-CdYjmV_8.js +96 -0
  19. package/components/button/index.cjs +2 -2
  20. package/components/button/index.js +7 -6
  21. package/components/{button-base-BwbaTInD.js → button-base-BGAqeDTT.js} +5 -5
  22. package/components/button-base-CShsEDFM.cjs +25 -0
  23. package/components/button-group/index.cjs +1 -1
  24. package/components/button-group/index.js +10 -8
  25. package/components/calendar/index.cjs +96 -1
  26. package/components/calendar/index.js +538 -6
  27. package/components/checkbox/index.cjs +4 -4
  28. package/components/checkbox/index.js +6 -4
  29. package/components/{checkbox-mixin-BOTvuPEu.js → checkbox-mixin-DUbGDm7f.js} +9 -9
  30. package/components/{checkbox-mixin-BVPpXtsq.cjs → checkbox-mixin-DhN8CIXY.cjs} +3 -3
  31. package/components/clear-button-BWJrTbkk.cjs +18 -0
  32. package/components/{clear-button-ahIIuwV-.js → clear-button-CMhq1QsA.js} +14 -13
  33. package/components/{close-button-DFh14y6u.js → close-button-BiJwFZyW.js} +13 -12
  34. package/components/close-button-DrMdfzPW.cjs +18 -0
  35. package/components/color-area/index.cjs +5 -5
  36. package/components/color-area/index.js +10 -9
  37. package/components/color-controller-7sNUf7SP.js +386 -0
  38. package/components/color-controller-ChN-A9Ft.cjs +18 -0
  39. package/components/color-field/index.cjs +2 -2
  40. package/components/color-field/index.js +4 -3
  41. package/components/color-handle/index.cjs +2 -2
  42. package/components/color-handle/index.js +7 -5
  43. package/components/color-loupe/index.cjs +1 -1
  44. package/components/color-loupe/index.js +1 -1
  45. package/components/color-loupe-CIEFp7ln.cjs +56 -0
  46. package/components/{color-loupe-DmQe3SpP.js → color-loupe-CLPX6xVb.js} +6 -4
  47. package/components/color-menu/index.cjs +7 -7
  48. package/components/color-menu/index.js +7 -7
  49. package/components/color-palette/index.cjs +1 -1
  50. package/components/color-palette/index.js +4 -3
  51. package/components/color-palette-group/index.cjs +3 -3
  52. package/components/color-palette-group/index.js +33 -32
  53. package/components/color-picker/index.cjs +4 -4
  54. package/components/color-picker/index.js +11 -11
  55. package/components/color-slider/index.cjs +40 -1
  56. package/components/color-slider/index.js +452 -6
  57. package/components/date-time-picker/index.cjs +16 -16
  58. package/components/date-time-picker/index.js +103 -104
  59. package/components/directive-DrvvqO47.cjs +32 -0
  60. package/components/directive-OK_Jd_xx.js +314 -0
  61. package/components/divider/index.cjs +1 -1
  62. package/components/divider/index.js +10 -8
  63. package/components/field-group/index.cjs +1 -1
  64. package/components/field-group/index.js +1 -1
  65. package/components/field-group-BYHNJmv0.cjs +23 -0
  66. package/components/{field-group-D4B0IOdA.js → field-group-CHmw159R.js} +7 -5
  67. package/components/field-label/index.cjs +1 -1
  68. package/components/field-label/index.js +1 -1
  69. package/components/{field-label-DxmPiC5p.js → field-label-Cy3xMWZ-.js} +9 -8
  70. package/components/field-label-DZoeqJJX.cjs +25 -0
  71. package/components/{focusable-C5JjRZmT.js → focusable-BjvsvVam.js} +2 -1
  72. package/components/focusable-CbVKgGfS.cjs +18 -0
  73. package/components/icon/index.cjs +1 -1
  74. package/components/icon/index.js +20 -18
  75. package/components/index.cjs +1 -1
  76. package/components/index.js +18 -18
  77. package/components/infield-button/index.cjs +2 -2
  78. package/components/infield-button/index.js +4 -3
  79. package/components/label/index.cjs +1 -1
  80. package/components/label/index.js +6 -4
  81. package/components/like-anchor-B2EqJPdw.cjs +32 -0
  82. package/components/{like-anchor-DCFJN0LV.js → like-anchor-CgqCU210.js} +23 -22
  83. package/components/{manage-help-text-DNqdEkTA.cjs → manage-help-text-Bat9yGvF.cjs} +3 -3
  84. package/components/{manage-help-text-CHfMLzSa.js → manage-help-text-C9sCHK3R.js} +8 -8
  85. package/components/menu/index.cjs +16 -16
  86. package/components/menu/index.js +15 -16
  87. package/components/multi-language-field/index.cjs +2 -2
  88. package/components/multi-language-field/index.js +8 -6
  89. package/components/number-field/index.cjs +6 -6
  90. package/components/number-field/index.js +34 -35
  91. package/components/observe-slot-text-ByPG1Lqw.cjs +18 -0
  92. package/components/{observe-slot-text-C3moTjwy.js → observe-slot-text-CugmOzNZ.js} +20 -21
  93. package/components/options/index.cjs +27 -55
  94. package/components/options/index.js +210 -800
  95. package/components/overlay/index.cjs +6 -6
  96. package/components/overlay/index.js +9 -9
  97. package/components/overlay-DpWon1Rp.js +1736 -0
  98. package/components/overlay-nUwFClQq.cjs +47 -0
  99. package/components/{pending-state-bJr-nEJl.cjs → pending-state-DQctFHI8.cjs} +2 -2
  100. package/components/{pending-state-B2wWssTo.js → pending-state-Dx1u3EXA.js} +2 -2
  101. package/components/picker/index.cjs +1 -1
  102. package/components/picker/index.js +2 -2
  103. package/components/{picker-BsQJBF9j.js → picker-Cm6_didQ.js} +19 -20
  104. package/components/picker-DxYgh4LR.cjs +123 -0
  105. package/components/picker-button/index.cjs +4 -4
  106. package/components/picker-button/index.js +6 -5
  107. package/components/{platform-BiXhwqk3.cjs → platform-BJnOJJag.cjs} +1 -1
  108. package/components/{platform-BM-uMWpX.js → platform-CqwNrovd.js} +12 -12
  109. package/components/popover/index.cjs +1 -1
  110. package/components/popover/index.js +1 -1
  111. package/components/popover-lcZnODPK.cjs +30 -0
  112. package/components/{popover-iD8f5Jkp.js → popover-ucIgjbQs.js} +8 -7
  113. package/components/progress-circle/index.cjs +1 -1
  114. package/components/progress-circle/index.js +1 -1
  115. package/components/{progress-circle-USIIU1up.js → progress-circle-D5J0ZwY0.js} +8 -7
  116. package/components/progress-circle-DgMbqrzG.cjs +33 -0
  117. package/components/radio/index.cjs +2 -2
  118. package/components/radio/index.js +10 -9
  119. package/components/search/index.cjs +6 -6
  120. package/components/search/index.js +5 -5
  121. package/components/select/index.cjs +43 -43
  122. package/components/select/index.js +33 -33
  123. package/components/{directive-C7oCP5Bh.cjs → sized-mixin-DcvJLFeo.cjs} +1 -5
  124. package/components/{sized-mixin-CJbBHWRQ.js → sized-mixin-cJbo3PKR.js} +5 -5
  125. package/components/slider/index.cjs +1 -1
  126. package/components/slider/index.js +48 -1101
  127. package/components/{streaming-listener-BQ68fKMa.js → streaming-listener-BgU36S1Z.js} +3 -3
  128. package/components/streaming-listener-CfUtuELp.cjs +18 -0
  129. package/components/swatch/index.cjs +5 -5
  130. package/components/swatch/index.js +11 -10
  131. package/components/switch/index.cjs +2 -2
  132. package/components/switch/index.js +5 -4
  133. package/components/tabs/index.cjs +31 -23
  134. package/components/tabs/index.js +497 -230
  135. package/components/tags/index.cjs +4 -4
  136. package/components/tags/index.js +13 -12
  137. package/components/text-field/index.cjs +3 -3
  138. package/components/text-field/index.js +12 -10
  139. package/components/{text-field-C2n3rzCK.js → text-field-BTEpwGFu.js} +73 -99
  140. package/components/text-field-JMrsh-zo.cjs +81 -0
  141. package/components/toast/index.cjs +11 -11
  142. package/components/toast/index.js +9 -7
  143. package/components/tooltip/index.cjs +4 -4
  144. package/components/tooltip/index.js +8 -7
  145. package/components/unit-input/index.cjs +6 -6
  146. package/components/unit-input/index.js +27 -26
  147. package/components/utils.cjs +1 -1
  148. package/components/utils.js +5 -5
  149. package/package.json +62 -1
  150. package/components/NumberFormatter-DewVDY5w.cjs +0 -18
  151. package/components/NumberFormatter-DgOUVrge.js +0 -136
  152. package/components/NumberParser-Dik4a0h-.cjs +0 -18
  153. package/components/NumberParser-ci9J5EKv.js +0 -173
  154. package/components/action-group-C54IxNZk.cjs +0 -20
  155. package/components/async-directive-DLz6JB0v.cjs +0 -22
  156. package/components/base-BjTwmyRF.cjs +0 -22
  157. package/components/base-CFWO09N1.js +0 -684
  158. package/components/base-Cy0MQrPT.cjs +0 -40
  159. package/components/base-D76d76ww.js +0 -26
  160. package/components/button-base-CC9ZL53k.cjs +0 -25
  161. package/components/class-map-CGfNk3Ee.js +0 -51
  162. package/components/class-map-D-Y-hsN5.cjs +0 -22
  163. package/components/clear-button-CHcbu9Bz.cjs +0 -18
  164. package/components/close-button-DMd52_KV.cjs +0 -18
  165. package/components/color-controller-B0uX6Zso.js +0 -3230
  166. package/components/color-controller-CoUL5f9K.cjs +0 -18
  167. package/components/color-loupe-CrM2DVY3.cjs +0 -56
  168. package/components/directive-helpers-D4KMv2dC.js +0 -62
  169. package/components/directive-helpers-t-TVum7J.cjs +0 -22
  170. package/components/directive-oAbCiebi.js +0 -44
  171. package/components/field-group-5WQMBOk4.cjs +0 -23
  172. package/components/field-label-Dz9kisdW.cjs +0 -25
  173. package/components/flow-D-0MTYCm.js +0 -527
  174. package/components/flow-DM3dNAKs.cjs +0 -30
  175. package/components/focusable-B_KwfEec.cjs +0 -18
  176. package/components/if-defined-DULpqYwi.js +0 -27
  177. package/components/if-defined-DaXWqfzc.cjs +0 -22
  178. package/components/index-CNK8wHXu.cjs +0 -57
  179. package/components/index-Cf6G4q52.js +0 -1490
  180. package/components/index-D3ICqC7S.js +0 -1174
  181. package/components/index-hqVbNKYy.cjs +0 -113
  182. package/components/like-anchor-Bu3pXbjT.cjs +0 -32
  183. package/components/luzmo-icons-CiSek5iM.js +0 -229
  184. package/components/luzmo-icons-CtA-TJPd.cjs +0 -29
  185. package/components/observe-slot-text-D2VAEFSd.cjs +0 -18
  186. package/components/overlay-B3ajDLLq.cjs +0 -47
  187. package/components/overlay-CUKs69yr.js +0 -2745
  188. package/components/picker-X96xmLAw.cjs +0 -123
  189. package/components/popover-fwJeZHMQ.cjs +0 -30
  190. package/components/progress-circle-DZxaMe8L.cjs +0 -33
  191. package/components/query-BL-TJj7K.cjs +0 -22
  192. package/components/query-D_KR_GUc.js +0 -51
  193. package/components/query-assigned-elements-DjfhL1cl.js +0 -36
  194. package/components/query-assigned-elements-DsKsfk7G.cjs +0 -22
  195. package/components/query-assigned-nodes-BcKWmGzy.cjs +0 -22
  196. package/components/query-assigned-nodes-C76XVPWY.js +0 -36
  197. package/components/sized-mixin-WPHH0a_D.cjs +0 -18
  198. package/components/state-DwIwYPvt.js +0 -29
  199. package/components/state-vf0PJN3_.cjs +0 -22
  200. package/components/streaming-listener-DeGQYM-9.cjs +0 -18
  201. package/components/style-map-Bnhf_mVZ.js +0 -53
  202. package/components/style-map-DuMd5xlY.cjs +0 -22
  203. package/components/text-field-BkFPYo7S.cjs +0 -85
@@ -1,53 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- import { T as l } from "./base-CFWO09N1.js";
19
- import { e as u, i as c, t as d } from "./directive-oAbCiebi.js";
20
- /**
21
- * @license
22
- * Copyright 2018 Google LLC
23
- * SPDX-License-Identifier: BSD-3-Clause
24
- */
25
- const o = "important", f = " !" + o, p = u(class extends c {
26
- constructor(n) {
27
- var e;
28
- if (super(n), n.type !== d.ATTRIBUTE || n.name !== "style" || ((e = n.strings) == null ? void 0 : e.length) > 2) throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.");
29
- }
30
- render(n) {
31
- return Object.keys(n).reduce((e, s) => {
32
- const t = n[s];
33
- return t == null ? e : e + `${s = s.includes("-") ? s : s.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g, "-$&").toLowerCase()}:${t};`;
34
- }, "");
35
- }
36
- update(n, [e]) {
37
- const { style: s } = n.element;
38
- if (this.ft === void 0) return this.ft = new Set(Object.keys(e)), this.render(e);
39
- for (const t of this.ft) e[t] == null && (this.ft.delete(t), t.includes("-") ? s.removeProperty(t) : s[t] = null);
40
- for (const t in e) {
41
- const r = e[t];
42
- if (r != null) {
43
- this.ft.add(t);
44
- const i = typeof r == "string" && r.endsWith(f);
45
- t.includes("-") || i ? s.setProperty(t, i ? r.slice(0, -11) : r, i ? o : "") : s[t] = r;
46
- }
47
- }
48
- return l;
49
- }
50
- });
51
- export {
52
- p as o
53
- };
@@ -1,22 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- "use strict";const u=require("./base-Cy0MQrPT.cjs"),o=require("./directive-C7oCP5Bh.cjs");/**
19
- * @license
20
- * Copyright 2018 Google LLC
21
- * SPDX-License-Identifier: BSD-3-Clause
22
- */const c="important",l=" !"+c,d=o.e(class extends o.i{constructor(n){var t;if(super(n),n.type!==o.t.ATTRIBUTE||n.name!=="style"||((t=n.strings)==null?void 0:t.length)>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(n){return Object.keys(n).reduce((t,s)=>{const e=n[s];return e==null?t:t+`${s=s.includes("-")?s:s.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${e};`},"")}update(n,[t]){const{style:s}=n.element;if(this.ft===void 0)return this.ft=new Set(Object.keys(t)),this.render(t);for(const e of this.ft)t[e]==null&&(this.ft.delete(e),e.includes("-")?s.removeProperty(e):s[e]=null);for(const e in t){const r=t[e];if(r!=null){this.ft.add(e);const i=typeof r=="string"&&r.endsWith(l);e.includes("-")||i?s.setProperty(e,i?r.slice(0,-11):r,i?c:""):s[e]=r}}return u.T}});exports.o=d;
@@ -1,85 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- "use strict";const t=require("./base-Cy0MQrPT.cjs"),v=require("./state-vf0PJN3_.cjs"),m=require("./query-BL-TJj7K.cjs"),r=require("./if-defined-DaXWqfzc.cjs"),u=require("./directive-C7oCP5Bh.cjs"),c=require("./directive-helpers-t-TVum7J.cjs"),h=require("./luzmo-icons-CtA-TJPd.cjs"),g=require("./focusable-B_KwfEec.cjs"),f=require("./sized-mixin-WPHH0a_D.cjs"),$=require("./manage-help-text-DNqdEkTA.cjs"),x=require("./text-field.module-DXhFA9G-.cjs");/**
19
- * @license
20
- * Copyright 2020 Google LLC
21
- * SPDX-License-Identifier: BSD-3-Clause
22
- */const b=u.e(class extends u.i{constructor(s){if(super(s),s.type!==u.t.PROPERTY&&s.type!==u.t.ATTRIBUTE&&s.type!==u.t.BOOLEAN_ATTRIBUTE)throw Error("The `live` directive is not allowed on child or event bindings");if(!c.f(s))throw Error("`live` bindings can only contain a single expression")}render(s){return s}update(s,[e]){if(e===t.T||e===t.E)return e;const l=s.element,a=s.name;if(s.type===u.t.PROPERTY){if(e===l[a])return t.T}else if(s.type===u.t.BOOLEAN_ATTRIBUTE){if(!!e===l.hasAttribute(a))return t.T}else if(s.type===u.t.ATTRIBUTE&&l.getAttribute(a)===e+"")return t.T;return c.m(s),e}});var E=Object.defineProperty,T=Object.getOwnPropertyDescriptor,n=(s,e,l,a)=>{for(var o=a>1?void 0:a?T(e,l):e,p=s.length-1,d;p>=0;p--)(d=s[p])&&(o=(a?d(e,l,o):d(o))||o);return a&&o&&E(e,l,o),o};const q=["text","url","tel","email","password"];class i extends $.ManageHelpText(f.SizedMixin(g.Focusable,{noDefaultSize:!0})){constructor(){super(...arguments),this.allowedKeys="",this.focused=!1,this.invalid=!1,this.label="",this.placeholder="",this._type="text",this.grows=!1,this.maxlength=-1,this.minlength=-1,this.multiline=!1,this.readonly=!1,this.rows=-1,this.valid=!1,this._value="",this.quiet=!1,this.required=!1}static get styles(){return[t.r(x.textFieldStyles)]}set type(e){const l=this._type;this._type=e,this.requestUpdate("type",l)}get type(){return q.find(e=>e===this._type)??"text"}set value(e){if(e===this.value)return;const l=this._value;this._value=e,this.requestUpdate("value",l)}get value(){return this._value}get focusElement(){return this.inputElement}setSelectionRange(e,l,a="none"){this.inputElement.setSelectionRange(e,l,a)}select(){this.inputElement.select()}handleInput(e){if(this.allowedKeys&&this.inputElement.value&&!new RegExp(`^[${this.allowedKeys}]*$`,"u").test(this.inputElement.value)){const o=this.inputElement.selectionStart-1;this.inputElement.value=this.value.toString(),this.inputElement.setSelectionRange(o,o);return}this.value=this.inputElement.value}handleChange(){this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0}))}onFocus(){this.focused=!this.readonly&&!0}onBlur(e){this.focused=!this.readonly&&!1}handleInputElementPointerdown(){}renderStateIcons(){return this.invalid?t.x`
23
- <div id="invalid" class="icon">${h.T3(h.$)}</div>
24
- `:this.valid?t.x`
25
- <div id="valid" class="icon">${h.T3(h.F)}</div>
26
- `:t.E}get displayValue(){return this.value.toString()}get renderMultiline(){return t.x`
27
- ${this.multiline&&this.grows&&this.rows===-1?t.x`
28
- <div id="sizer" class="input" aria-hidden="true">${this.value}&#8203;
29
- </div>
30
- `:t.E}
31
- <!-- @ts-ignore -->
32
- <textarea
33
- name=${r.o(this.name||void 0)}
34
- aria-describedby=${this.helpTextId}
35
- aria-label=${this.label||this.appliedLabel||this.placeholder}
36
- aria-invalid=${r.o(this.invalid||void 0)}
37
- class="input"
38
- maxlength=${r.o(this.maxlength>-1?this.maxlength:void 0)}
39
- minlength=${r.o(this.minlength>-1?this.minlength:void 0)}
40
- title=${this.invalid?"":t.E}
41
- pattern=${r.o(this.pattern)}
42
- placeholder=${this.placeholder}
43
- .value=${this.displayValue}
44
- @change=${this.handleChange}
45
- @input=${this.handleInput}
46
- @focus=${this.onFocus}
47
- @blur=${this.onBlur}
48
- ?disabled=${this.disabled}
49
- ?required=${this.required}
50
- ?readonly=${this.readonly}
51
- rows=${r.o(this.rows>-1?this.rows:void 0)}
52
- autocomplete=${r.o(this.autocomplete)}
53
- ></textarea>
54
- `}get renderInput(){return t.x`
55
- <!-- @ts-ignore -->
56
- <input
57
- name=${r.o(this.name||void 0)}
58
- type=${this.type}
59
- aria-describedby=${this.helpTextId}
60
- aria-label=${this.label||this.appliedLabel||this.placeholder}
61
- aria-invalid=${r.o(this.invalid||void 0)}
62
- class="input"
63
- title=${this.invalid?"":t.E}
64
- maxlength=${r.o(this.maxlength>-1?this.maxlength:void 0)}
65
- minlength=${r.o(this.minlength>-1?this.minlength:void 0)}
66
- pattern=${r.o(this.pattern)}
67
- placeholder=${this.placeholder}
68
- .value=${b(this.displayValue)}
69
- @change=${this.handleChange}
70
- @input=${this.handleInput}
71
- @pointerdown=${this.handleInputElementPointerdown}
72
- @focus=${this.onFocus}
73
- @blur=${this.onBlur}
74
- ?disabled=${this.disabled}
75
- ?required=${this.required}
76
- ?readonly=${this.readonly}
77
- autocomplete=${r.o(this.autocomplete)}
78
- />
79
- `}renderField(){return t.x`
80
- ${this.renderStateIcons()}
81
- ${this.multiline?this.renderMultiline:this.renderInput}
82
- `}render(){return t.x`
83
- <div id="text-field">${this.renderField()}</div>
84
- ${this.renderHelpText(this.invalid)}
85
- `}update(e){(e.has("value")||e.has("required")&&this.required)&&this.updateComplete.then(()=>{this.checkValidity()}),super.update(e)}checkValidity(){let e=this.inputElement.checkValidity();return(this.required||this.value&&this.pattern)&&((this.disabled||this.multiline)&&this.pattern&&(e=new RegExp(`^${this.pattern}$`,"u").test(this.value.toString())),this.minlength!==void 0&&(e=e&&this.value.toString().length>=this.minlength),this.valid=e,this.invalid=!e),e}}n([v.r()],i.prototype,"appliedLabel",2);n([t.n({attribute:"allowed-keys"})],i.prototype,"allowedKeys",2);n([t.n({type:Boolean,reflect:!0})],i.prototype,"focused",2);n([m.e(".input:not(#sizer)")],i.prototype,"inputElement",2);n([t.n({type:Boolean,reflect:!0})],i.prototype,"invalid",2);n([t.n()],i.prototype,"label",2);n([t.n({type:String,reflect:!0})],i.prototype,"name",2);n([t.n()],i.prototype,"placeholder",2);n([v.r()],i.prototype,"type",1);n([t.n({attribute:"type",reflect:!0})],i.prototype,"_type",2);n([t.n()],i.prototype,"pattern",2);n([t.n({type:Boolean,reflect:!0})],i.prototype,"grows",2);n([t.n({type:Number})],i.prototype,"maxlength",2);n([t.n({type:Number})],i.prototype,"minlength",2);n([t.n({type:Boolean,reflect:!0})],i.prototype,"multiline",2);n([t.n({type:Boolean,reflect:!0})],i.prototype,"readonly",2);n([t.n({type:Number})],i.prototype,"rows",2);n([t.n({type:Boolean,reflect:!0})],i.prototype,"valid",2);n([t.n({type:String})],i.prototype,"value",1);n([t.n({type:Boolean,reflect:!0})],i.prototype,"quiet",2);n([t.n({type:Boolean,reflect:!0})],i.prototype,"required",2);n([t.n({type:String,reflect:!0})],i.prototype,"autocomplete",2);class y extends i{constructor(){super(...arguments),this._value=""}set value(e){if(e===this.value)return;const l=this._value;this._value=e,this.requestUpdate("value",l)}get value(){return this._value}}n([t.n({type:String})],y.prototype,"value",1);exports.LuzmoTextField=y;exports.LuzmoTextFieldBase=i;