smoothly 1.103.0 → 1.104.0

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 (96) hide show
  1. package/dist/cjs/smoothly-app_104.cjs.entry.js +1 -1
  2. package/dist/cjs/smoothly-app_104.cjs.entry.js.map +1 -1
  3. package/dist/collection/components/input/style.css +4 -5
  4. package/dist/components/{p-4faf0679.js → p-0f6f0385.js} +2 -2
  5. package/dist/components/{p-4faf0679.js.map → p-0f6f0385.js.map} +1 -1
  6. package/dist/components/{p-e72aaf1f.js → p-1a006926.js} +2 -2
  7. package/dist/components/{p-e72aaf1f.js.map → p-1a006926.js.map} +1 -1
  8. package/dist/components/{p-aee7c7ad.js → p-1b2cdb40.js} +3 -3
  9. package/dist/components/{p-aee7c7ad.js.map → p-1b2cdb40.js.map} +1 -1
  10. package/dist/components/{p-bd4239d1.js → p-23411737.js} +10 -10
  11. package/dist/components/{p-bd4239d1.js.map → p-23411737.js.map} +1 -1
  12. package/dist/components/{p-6bda7e35.js → p-2b01f531.js} +2 -2
  13. package/dist/components/{p-6bda7e35.js.map → p-2b01f531.js.map} +1 -1
  14. package/dist/components/{p-ed3f781f.js → p-31af74d1.js} +5 -5
  15. package/dist/components/{p-ed3f781f.js.map → p-31af74d1.js.map} +1 -1
  16. package/dist/components/{p-50d6a16d.js → p-4be11c6b.js} +2 -2
  17. package/dist/components/{p-50d6a16d.js.map → p-4be11c6b.js.map} +1 -1
  18. package/dist/components/{p-08c44bae.js → p-555fc66e.js} +2 -2
  19. package/dist/components/{p-08c44bae.js.map → p-555fc66e.js.map} +1 -1
  20. package/dist/components/{p-eada567a.js → p-56100bc5.js} +4 -4
  21. package/dist/components/{p-eada567a.js.map → p-56100bc5.js.map} +1 -1
  22. package/dist/components/{p-36137940.js → p-5d5bf179.js} +2 -2
  23. package/dist/components/{p-36137940.js.map → p-5d5bf179.js.map} +1 -1
  24. package/dist/components/{p-75916f5e.js → p-6337ab02.js} +2 -2
  25. package/dist/components/{p-75916f5e.js.map → p-6337ab02.js.map} +1 -1
  26. package/dist/components/{p-9aeab5df.js → p-6386d760.js} +3 -3
  27. package/dist/components/{p-9aeab5df.js.map → p-6386d760.js.map} +1 -1
  28. package/dist/components/{p-8f9e26ce.js → p-73a6bddc.js} +2 -2
  29. package/dist/components/{p-8f9e26ce.js.map → p-73a6bddc.js.map} +1 -1
  30. package/dist/components/{p-f0fc48a4.js → p-766ab435.js} +3 -3
  31. package/dist/components/{p-f0fc48a4.js.map → p-766ab435.js.map} +1 -1
  32. package/dist/components/{p-c669761d.js → p-792c42af.js} +2 -2
  33. package/dist/components/{p-c669761d.js.map → p-792c42af.js.map} +1 -1
  34. package/dist/components/{p-83676034.js → p-81dec243.js} +14 -14
  35. package/dist/components/{p-83676034.js.map → p-81dec243.js.map} +1 -1
  36. package/dist/components/{p-612f2051.js → p-82336e7b.js} +2 -2
  37. package/dist/components/{p-612f2051.js.map → p-82336e7b.js.map} +1 -1
  38. package/dist/components/{p-cb02f661.js → p-82c97ae6.js} +2 -2
  39. package/dist/components/{p-cb02f661.js.map → p-82c97ae6.js.map} +1 -1
  40. package/dist/components/{p-fd1366e6.js → p-830b192c.js} +2 -2
  41. package/dist/components/{p-fd1366e6.js.map → p-830b192c.js.map} +1 -1
  42. package/dist/components/{p-61a80c6e.js → p-831cc89a.js} +5 -5
  43. package/dist/components/{p-61a80c6e.js.map → p-831cc89a.js.map} +1 -1
  44. package/dist/components/{p-4e8a6a86.js → p-8435133a.js} +5 -5
  45. package/dist/components/{p-4e8a6a86.js.map → p-8435133a.js.map} +1 -1
  46. package/dist/components/{p-b2be4c15.js → p-a9dd6d56.js} +3 -3
  47. package/dist/components/{p-b2be4c15.js.map → p-a9dd6d56.js.map} +1 -1
  48. package/dist/components/{p-a66e99e6.js → p-bc772857.js} +4 -4
  49. package/dist/components/{p-a66e99e6.js.map → p-bc772857.js.map} +1 -1
  50. package/dist/components/{p-760a7e6a.js → p-c65c7493.js} +5 -5
  51. package/dist/components/{p-760a7e6a.js.map → p-c65c7493.js.map} +1 -1
  52. package/dist/components/{p-08a3d487.js → p-ced1fd1c.js} +6 -6
  53. package/dist/components/{p-08a3d487.js.map → p-ced1fd1c.js.map} +1 -1
  54. package/dist/components/{p-684de2fd.js → p-d5f78e0f.js} +2 -2
  55. package/dist/components/{p-684de2fd.js.map → p-d5f78e0f.js.map} +1 -1
  56. package/dist/components/{p-2974c59f.js → p-d8a2f2ba.js} +3 -3
  57. package/dist/components/{p-2974c59f.js.map → p-d8a2f2ba.js.map} +1 -1
  58. package/dist/components/{p-3d846c0d.js → p-f5400818.js} +2 -2
  59. package/dist/components/{p-3d846c0d.js.map → p-f5400818.js.map} +1 -1
  60. package/dist/components/smoothly-app-demo.js +28 -28
  61. package/dist/components/smoothly-button-demo-standard.js +1 -1
  62. package/dist/components/smoothly-button-demo.js +1 -1
  63. package/dist/components/smoothly-filter-field.js +1 -1
  64. package/dist/components/smoothly-filter-input.js +1 -1
  65. package/dist/components/smoothly-filter.js +1 -1
  66. package/dist/components/smoothly-form-demo-all.js +1 -1
  67. package/dist/components/smoothly-form-demo-card.js +1 -1
  68. package/dist/components/smoothly-form-demo-controlled.js +1 -1
  69. package/dist/components/smoothly-form-demo-login.js +1 -1
  70. package/dist/components/smoothly-form-demo-pet.js +1 -1
  71. package/dist/components/smoothly-form-demo-prices.js +1 -1
  72. package/dist/components/smoothly-form-demo-schedule.js +1 -1
  73. package/dist/components/smoothly-form-demo-transparent.js +1 -1
  74. package/dist/components/smoothly-form-demo-typed.js +1 -1
  75. package/dist/components/smoothly-form-demo.js +1 -1
  76. package/dist/components/smoothly-icon-demo.js +1 -1
  77. package/dist/components/smoothly-input-checkbox-demo.js +3 -3
  78. package/dist/components/smoothly-input-color-demo.js +1 -1
  79. package/dist/components/smoothly-input-color.js +1 -1
  80. package/dist/components/smoothly-input-date-time.js +1 -1
  81. package/dist/components/smoothly-input-demo-standard.js +1 -1
  82. package/dist/components/smoothly-input-demo-user-input.js +1 -1
  83. package/dist/components/smoothly-input-demo.js +1 -1
  84. package/dist/components/smoothly-input-price-demo.js +1 -1
  85. package/dist/components/smoothly-input-range-demo.js +1 -1
  86. package/dist/components/smoothly-input-range.js +1 -1
  87. package/dist/components/smoothly-input.js +1 -1
  88. package/dist/components/smoothly-table-demo-filtered.js +1 -1
  89. package/dist/components/smoothly-table-demo.js +1 -1
  90. package/dist/esm/smoothly-app_104.entry.js +1 -1
  91. package/dist/esm/smoothly-app_104.entry.js.map +1 -1
  92. package/dist/smoothly/{p-ad9cd2da.entry.js → p-2b771608.entry.js} +2 -2
  93. package/dist/smoothly/p-2b771608.entry.js.map +1 -0
  94. package/dist/smoothly/smoothly.esm.js +1 -1
  95. package/package.json +1 -1
  96. package/dist/smoothly/p-ad9cd2da.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"file":"p-36137940.js","mappings":";;;;;;;AAAA,MAAM,QAAQ,GAAG,gDAAgD,CAAC;AAClE,qCAAe,QAAQ;;MCOV,sBAAsB;;;;0BACM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;wBACxB,KAAK;;IAE1C,MAAM;QACL,QACC,EAAC,IAAI,uDACJ,4FAAqC,EACrC,iIAAyE,EACzE,6IAAqF,EACrF,6EACC,IAAI,EAAE,UAAU,EAChB,eAAe,EAAE,CAAC,KAAK,IAAI,CAAC,QAAQ,GAAGA,QAAc,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,GAAG,SAAS,CAAC,IAC3G,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,KAC5B,iCAA2B,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAC5F,QAAQ,CACkB,CAC5B,CAAC,CACoB,EACvB,uEAAgB,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,YAErC,CACX,EACP;KACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["isoly.Currency"],"sources":["src/components/input/demo/price/style.css?tag=smoothly-input-price-demo&encapsulation=scoped","src/components/input/demo/price/index.tsx"],"sourcesContent":[":host {\n\tdisplay: block;\n}\n","import { Component, h, Host, State, VNode } from \"@stencil/core\"\nimport { isoly } from \"isoly\"\n\n@Component({\n\ttag: \"smoothly-input-price-demo\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyInputPriceDemo {\n\t@State() currencies: isoly.Currency[] = [\"EUR\", \"USD\", \"GBP\"]\n\t@State() currency?: isoly.Currency = \"USD\"\n\n\trender(): VNode | VNode[] {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<h2>State demo on smoothly-input</h2>\n\t\t\t\t<p>This demo/test the internal state of the smoothly-input component.</p>\n\t\t\t\t<p>The currency of the price should update when switching between the currencies.</p>\n\t\t\t\t<smoothly-input-radio\n\t\t\t\t\tname={\"currency\"}\n\t\t\t\t\tonSmoothlyInput={e => (this.currency = isoly.Currency.is(e.detail.currency) ? e.detail.currency : undefined)}>\n\t\t\t\t\t{this.currencies.map(currency => (\n\t\t\t\t\t\t<smoothly-input-radio-item key={currency} selected={currency == this.currency} value={currency}>\n\t\t\t\t\t\t\t{currency}\n\t\t\t\t\t\t</smoothly-input-radio-item>\n\t\t\t\t\t))}\n\t\t\t\t</smoothly-input-radio>\n\t\t\t\t<smoothly-input type={\"price\"} currency={this.currency}>\n\t\t\t\t\tprice\n\t\t\t\t</smoothly-input>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
1
+ {"file":"p-5d5bf179.js","mappings":";;;;;;;AAAA,MAAM,QAAQ,GAAG,gDAAgD,CAAC;AAClE,qCAAe,QAAQ;;MCOV,sBAAsB;;;;0BACM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;wBACxB,KAAK;;IAE1C,MAAM;QACL,QACC,EAAC,IAAI,uDACJ,4FAAqC,EACrC,iIAAyE,EACzE,6IAAqF,EACrF,6EACC,IAAI,EAAE,UAAU,EAChB,eAAe,EAAE,CAAC,KAAK,IAAI,CAAC,QAAQ,GAAGA,QAAc,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,GAAG,SAAS,CAAC,IAC3G,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,KAC5B,iCAA2B,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAC5F,QAAQ,CACkB,CAC5B,CAAC,CACoB,EACvB,uEAAgB,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,YAErC,CACX,EACP;KACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["isoly.Currency"],"sources":["src/components/input/demo/price/style.css?tag=smoothly-input-price-demo&encapsulation=scoped","src/components/input/demo/price/index.tsx"],"sourcesContent":[":host {\n\tdisplay: block;\n}\n","import { Component, h, Host, State, VNode } from \"@stencil/core\"\nimport { isoly } from \"isoly\"\n\n@Component({\n\ttag: \"smoothly-input-price-demo\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyInputPriceDemo {\n\t@State() currencies: isoly.Currency[] = [\"EUR\", \"USD\", \"GBP\"]\n\t@State() currency?: isoly.Currency = \"USD\"\n\n\trender(): VNode | VNode[] {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<h2>State demo on smoothly-input</h2>\n\t\t\t\t<p>This demo/test the internal state of the smoothly-input component.</p>\n\t\t\t\t<p>The currency of the price should update when switching between the currencies.</p>\n\t\t\t\t<smoothly-input-radio\n\t\t\t\t\tname={\"currency\"}\n\t\t\t\t\tonSmoothlyInput={e => (this.currency = isoly.Currency.is(e.detail.currency) ? e.detail.currency : undefined)}>\n\t\t\t\t\t{this.currencies.map(currency => (\n\t\t\t\t\t\t<smoothly-input-radio-item key={currency} selected={currency == this.currency} value={currency}>\n\t\t\t\t\t\t\t{currency}\n\t\t\t\t\t\t</smoothly-input-radio-item>\n\t\t\t\t\t))}\n\t\t\t\t</smoothly-input-radio>\n\t\t\t\t<smoothly-input type={\"price\"} currency={this.currency}>\n\t\t\t\t\tprice\n\t\t\t\t</smoothly-input>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
@@ -289,7 +289,7 @@ var Key;
289
289
  Key.create = create;
290
290
  })(Key || (Key = {}));
291
291
 
292
- const styleCss = ".sc-smoothly-input-h{--input-padding-side:.5rem;--input-value-padding-top:1.25rem;--input-value-padding-bottom:.25rem;--input-min-height:3rem;min-height:var(--input-min-height);box-sizing:border-box;border-radius:var(--smoothly-input-border-radius)}[looks=\"border\"].sc-smoothly-input-h{border:rgb(var(--smoothly-input-border)) solid 1px}[looks=\"border\"].sc-smoothly-input-h:not([readonly]):not([disabled]):focus-within{outline:2px solid rgb(var(--smoothly-input-border-focus))}[looks=\"border\"][readonly].sc-smoothly-input-h{border:transparent solid 1px}[looks=\"line\"].sc-smoothly-input-h{border-bottom:rgb(var(--smoothly-input-border)) solid 1px;position:relative}[looks=\"line\"][readonly].sc-smoothly-input-h{border-bottom:transparent solid 1px}[looks=\"line\"].sc-smoothly-input-h:not([readonly]):not([disabled]):focus-within::before{content:\"\";position:absolute;inset:0;pointer-events:none;border-bottom:2px solid rgb(var(--smoothly-input-border-focus));z-index:10}[looks=\"grid\"].sc-smoothly-input-h{flex-grow:1;flex-basis:40%;box-shadow:0px 0px 0px 1px rgb(var(--smoothly-input-border));border:none}[looks=\"grid\"][readonly].sc-smoothly-input-h{box-shadow:0px 0px 0px 1px rgba(var(--smoothly-input-border-readonly))}[looks=\"grid\"].sc-smoothly-input-h:not([readonly]):not([disabled]):focus-within{position:relative;box-shadow:0px 0px 0px 2px rgb(var(--smoothly-input-border-focus));outline:none;z-index:10}[looks=\"transparent\"].sc-smoothly-input-h{border:none}[looks=\"transparent\"][readonly].sc-smoothly-input-h,[looks=\"transparent\"].sc-smoothly-input-h:not(:focus-within){background-color:transparent}[looks=\"transparent\"][readonly].sc-smoothly-input-h>input.sc-smoothly-input,[looks=\"transparent\"].sc-smoothly-input-h:not(:focus-within)>input.sc-smoothly-input{background-color:transparent}[looks=\"transparent\"].sc-smoothly-input-h:not([readonly]):focus-within{outline:1px solid rgb(var(--smoothly-input-border))}[disabled].sc-smoothly-input-h{cursor:not-allowed;--smoothly-input-foreground:var(--smoothly-input-disabled-foreground);--smoothly-input-background:var(--smoothly-input-disabled-background);--smoothly-input-border:var(--smoothly-input-disabled-border)}.sc-smoothly-input-h.sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h .sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h .label.sc-smoothly-input{position:absolute;top:.6rem;opacity:0.8;user-select:none;cursor:inherit;transform-origin:top left;transition:transform 100ms ease}.sc-smoothly-input-h.floating-label.sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h.floating-label .sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h.has-value.sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h.has-value .sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h[placeholder].sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h[placeholder] .sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h[readonly].sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h[readonly] .sc-smoothly-input-s>[slot=label],.floating-label.sc-smoothly-input-h .label.sc-smoothly-input,.has-value.sc-smoothly-input-h .label.sc-smoothly-input,.has-text.sc-smoothly-input-h .label.sc-smoothly-input,[placeholder].sc-smoothly-input-h .label.sc-smoothly-input,[readonly].sc-smoothly-input-h .label.sc-smoothly-input,.sc-smoothly-input-h:not([readonly]):focus-within .label.float-on-focus.sc-smoothly-input{top:.2rem;transform:scale(0.8)}.sc-smoothly-input-h:not([show-label]):not(.show-label) .label.sc-smoothly-input{display:none}.sc-smoothly-input-h smoothly-icon.smoothly-invalid.sc-smoothly-input{fill:rgb(var(--smoothly-input-invalid-icon, var(--smoothly-danger-color)))}.sc-smoothly-input-h{display:flex;align-items:center;justify-content:center;font-weight:var(--smoothly-font-weight);background-color:rgb(var(--smoothly-input-background));color:rgb(var(--smoothly-input-foreground))}[hidden].sc-smoothly-input-h{display:none}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input{position:relative;flex-grow:1;height:100%}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>label.sc-smoothly-input{left:var(--input-padding-side)}.sc-smoothly-input-h:not([show-label])>div.sc-smoothly-input>input.sc-smoothly-input{padding:0 var(--input-padding-side)}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>div.guide.sc-smoothly-input{position:absolute;box-sizing:border-box;align-content:center;height:100%;padding:var(--input-value-padding-top) \n\t\tvar(--input-padding-side) \n\t\tvar(--input-value-padding-bottom) \n\t\tvar(--input-padding-side)}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>div.guide.sc-smoothly-input>div.value.sc-smoothly-input{display:inline;pointer-events:none;opacity:0}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>div.guide.sc-smoothly-input>div.remainder.sc-smoothly-input{display:inline;pointer-events:none;opacity:0.5}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>input.sc-smoothly-input{padding:var(--input-value-padding-top) \n\t\tvar(--input-padding-side) \n\t\tvar(--input-value-padding-bottom) \n\t\tvar(--input-padding-side);box-sizing:border-box;width:100%;height:100%;border:0;z-index:1;position:relative;font-size:1rem;font-family:var(--smoothly-font-family)}[disabled].sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>input.sc-smoothly-input{cursor:not-allowed}.sc-smoothly-input-h>.smoothly-invalid.sc-smoothly-input{display:none;z-index:2;padding:0.5rem}[invalid].sc-smoothly-input-h>.smoothly-invalid.sc-smoothly-input{display:flex}.sc-smoothly-input-h>div.sc-smoothly-input>label.sc-smoothly-input{z-index:1;pointer-events:none}.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:focus{outline:none}.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill,.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill:hover,.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill:focus,.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill:active{box-shadow:0 0 0 40em rgb(var(--smoothly-input-background)) inset;-webkit-box-shadow:0 0 0 40em rgb(var(--smoothly-input-background)) inset}.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill,.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill+label.sc-smoothly-input{-webkit-text-fill-color:rgb(var(--smoothly-input-foreground))}.sc-smoothly-input-h>span.copyable.sc-smoothly-input{position:relative}.sc-smoothly-input-h>span.copyable.sc-smoothly-input>smoothly-icon.sc-smoothly-input{cursor:pointer;display:flex;align-items:center;padding:0.5rem}.sc-smoothly-input-h>span.copyable.sc-smoothly-input:hover small.sc-smoothly-input,.sc-smoothly-input-h>span.copyable.sc-smoothly-input:focus small.sc-smoothly-input{display:block}.sc-smoothly-input-h>span.copyable.sc-smoothly-input>small.sc-smoothly-input{display:none;width:max-content;border-radius:0.25rem;padding:0.2rem 0.3rem;position:absolute;right:-0.5rem;top:-2rem;background-color:rgb(var(--smoothly-default-contrast));color:rgb(var(--smoothly-default-tint))}";
292
+ const styleCss = ".sc-smoothly-input-h{--input-padding-side:.5rem;--input-value-padding-top:1.25rem;--input-value-padding-bottom:.25rem;--input-min-height:3rem;min-height:var(--input-min-height);box-sizing:border-box;border-radius:var(--smoothly-input-border-radius)}[looks=\"border\"].sc-smoothly-input-h{border:rgb(var(--smoothly-input-border)) solid 1px}[looks=\"border\"].sc-smoothly-input-h:not([readonly]):not([disabled]):focus-within{outline:2px solid rgb(var(--smoothly-input-border-focus))}[looks=\"border\"][readonly].sc-smoothly-input-h{border:transparent solid 1px}[looks=\"line\"].sc-smoothly-input-h{border-bottom:rgb(var(--smoothly-input-border)) solid 1px;position:relative}[looks=\"line\"][readonly].sc-smoothly-input-h{border-bottom:transparent solid 1px}[looks=\"line\"].sc-smoothly-input-h:not([readonly]):not([disabled]):focus-within::before{content:\"\";position:absolute;inset:0;pointer-events:none;border-bottom:2px solid rgb(var(--smoothly-input-border-focus));z-index:10}[looks=\"grid\"].sc-smoothly-input-h{flex-grow:1;flex-basis:40%;box-shadow:0px 0px 0px 1px rgb(var(--smoothly-input-border));border:none}[looks=\"grid\"][readonly].sc-smoothly-input-h{box-shadow:0px 0px 0px 1px rgba(var(--smoothly-input-border-readonly))}[looks=\"grid\"].sc-smoothly-input-h:not([readonly]):not([disabled]):focus-within{position:relative;box-shadow:0px 0px 0px 2px rgb(var(--smoothly-input-border-focus));outline:none;z-index:10}[looks=\"transparent\"].sc-smoothly-input-h{border:none}[looks=\"transparent\"][readonly].sc-smoothly-input-h,[looks=\"transparent\"].sc-smoothly-input-h:not(:focus-within){background-color:transparent}[looks=\"transparent\"][readonly].sc-smoothly-input-h>input.sc-smoothly-input,[looks=\"transparent\"].sc-smoothly-input-h:not(:focus-within)>input.sc-smoothly-input{background-color:transparent}[looks=\"transparent\"].sc-smoothly-input-h:not([readonly]):focus-within{outline:1px solid rgb(var(--smoothly-input-border))}[disabled].sc-smoothly-input-h{cursor:not-allowed;--smoothly-input-foreground:var(--smoothly-input-disabled-foreground);--smoothly-input-background:var(--smoothly-input-disabled-background);--smoothly-input-border:var(--smoothly-input-disabled-border)}.sc-smoothly-input-h.sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h .sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h .label.sc-smoothly-input{position:absolute;top:.6rem;opacity:0.8;user-select:none;cursor:inherit;transform-origin:top left;transition:transform 100ms ease}.sc-smoothly-input-h.floating-label.sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h.floating-label .sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h.has-value.sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h.has-value .sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h[placeholder].sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h[placeholder] .sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h[readonly].sc-smoothly-input-s>[slot=label],.sc-smoothly-input-h[readonly] .sc-smoothly-input-s>[slot=label],.floating-label.sc-smoothly-input-h .label.sc-smoothly-input,.has-value.sc-smoothly-input-h .label.sc-smoothly-input,.has-text.sc-smoothly-input-h .label.sc-smoothly-input,[placeholder].sc-smoothly-input-h .label.sc-smoothly-input,[readonly].sc-smoothly-input-h .label.sc-smoothly-input,.sc-smoothly-input-h:not([readonly]):focus-within .label.float-on-focus.sc-smoothly-input{top:.2rem;transform:scale(0.8)}.sc-smoothly-input-h:not([show-label]):not(.show-label) .label.sc-smoothly-input{display:none}.sc-smoothly-input-h smoothly-icon.smoothly-invalid.sc-smoothly-input{fill:rgb(var(--smoothly-input-invalid-icon, var(--smoothly-danger-color)))}.sc-smoothly-input-h{display:flex;align-items:center;justify-content:center;font-weight:var(--smoothly-font-weight);background-color:rgb(var(--smoothly-input-background));color:rgb(var(--smoothly-input-foreground))}[hidden].sc-smoothly-input-h{display:none}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input{position:relative;flex-grow:1;height:100%}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>label.sc-smoothly-input{left:var(--input-padding-side)}.sc-smoothly-input-h:not([show-label])>div.sc-smoothly-input>input.sc-smoothly-input{padding:0 var(--input-padding-side)}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>div.guide.sc-smoothly-input{position:absolute;box-sizing:border-box;align-content:center;height:100%;padding-inline:var(--input-padding-side)}[show-label].sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>div.guide.sc-smoothly-input{padding-block:var(--input-value-padding-top) var(--input-value-padding-bottom)}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>div.guide.sc-smoothly-input>div.value.sc-smoothly-input{display:inline;pointer-events:none;opacity:0}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>div.guide.sc-smoothly-input>div.remainder.sc-smoothly-input{display:inline;pointer-events:none;opacity:0.5}.sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>input.sc-smoothly-input{padding:var(--input-value-padding-top) \n\t\tvar(--input-padding-side) \n\t\tvar(--input-value-padding-bottom) \n\t\tvar(--input-padding-side);box-sizing:border-box;width:100%;height:100%;border:0;z-index:1;position:relative;font-size:1rem;font-family:var(--smoothly-font-family)}[disabled].sc-smoothly-input-h>.smoothly-input-container.sc-smoothly-input>input.sc-smoothly-input{cursor:not-allowed}.sc-smoothly-input-h>.smoothly-invalid.sc-smoothly-input{display:none;z-index:2;padding:0.5rem}[invalid].sc-smoothly-input-h>.smoothly-invalid.sc-smoothly-input{display:flex}.sc-smoothly-input-h>div.sc-smoothly-input>label.sc-smoothly-input{z-index:1;pointer-events:none}.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:focus{outline:none}.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill,.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill:hover,.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill:focus,.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill:active{box-shadow:0 0 0 40em rgb(var(--smoothly-input-background)) inset;-webkit-box-shadow:0 0 0 40em rgb(var(--smoothly-input-background)) inset}.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill,.sc-smoothly-input-h>div.sc-smoothly-input>input.sc-smoothly-input:-webkit-autofill+label.sc-smoothly-input{-webkit-text-fill-color:rgb(var(--smoothly-input-foreground))}.sc-smoothly-input-h>span.copyable.sc-smoothly-input{position:relative}.sc-smoothly-input-h>span.copyable.sc-smoothly-input>smoothly-icon.sc-smoothly-input{cursor:pointer;display:flex;align-items:center;padding:0.5rem}.sc-smoothly-input-h>span.copyable.sc-smoothly-input:hover small.sc-smoothly-input,.sc-smoothly-input-h>span.copyable.sc-smoothly-input:focus small.sc-smoothly-input{display:block}.sc-smoothly-input-h>span.copyable.sc-smoothly-input>small.sc-smoothly-input{display:none;width:max-content;border-radius:0.25rem;padding:0.2rem 0.3rem;position:absolute;right:-0.5rem;top:-2rem;background-color:rgb(var(--smoothly-default-contrast));color:rgb(var(--smoothly-default-tint))}";
293
293
  const SmoothlyInputStyle0 = styleCss;
294
294
 
295
295
  const SmoothlyInput = proxyCustomElement(class SmoothlyInput extends H {
@@ -535,4 +535,4 @@ defineCustomElement();
535
535
 
536
536
  export { SmoothlyInput as S, defineCustomElement as d };
537
537
 
538
- //# sourceMappingURL=p-75916f5e.js.map
538
+ //# sourceMappingURL=p-6337ab02.js.map
@@ -1 +1 @@
1
- {"file":"p-75916f5e.js","mappings":"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","names":["tidily.get","tidily.Selection","tidily.State","tidily.StateEditor","isly.object","isly.string","isly.boolean"],"sources":["src/components/input/Deep.ts","src/components/input/Adjacent.ts","src/components/input/InputStateHandler.ts","src/components/input/Key.ts","src/components/input/style.css?tag=smoothly-input&encapsulation=scoped","src/components/input/index.tsx"],"sourcesContent":["export namespace Deep {\n\texport function equal(a: any, b: any): boolean {\n\t\tif (a === b)\n\t\t\treturn true\n\t\tif (typeof a == \"object\" && typeof b == \"object\") {\n\t\t\tconst keys = Object.keys(a)\n\t\t\tif (keys.length == Object.keys(b).length && keys.every(key => equal(a[key], b[key])))\n\t\t\t\treturn true\n\t\t}\n\t\treturn false\n\t}\n\texport function notEqual(a: any, b: any): boolean {\n\t\treturn !equal(a, b)\n\t}\n}\n","export namespace Adjacent {\n\texport function getWordBreakIndex(str: string, index: number, direction: \"backward\" | \"forward\"): number {\n\t\tconst wordRegex = /([^.-@\\s]+)/gi\n\t\treturn direction == \"backward\"\n\t\t\t? getBackwardWordBreakIndex(str, index, wordRegex)\n\t\t\t: getForwardWordBreakIndex(str, index, wordRegex)\n\t}\n\n\tfunction getBackwardWordBreakIndex(str: string, index: number, wordRegex: RegExp): number {\n\t\tlet result = 0\n\t\tlet execArray: RegExpExecArray | null\n\t\twhile ((execArray = wordRegex.exec(str)) != null) {\n\t\t\tif (wordRegex.lastIndex - execArray[0].length < index)\n\t\t\t\tresult = wordRegex.lastIndex - execArray[0].length\n\t\t\telse\n\t\t\t\tbreak\n\t\t}\n\t\treturn result\n\t}\n\n\tfunction getForwardWordBreakIndex(str: string, index: number, wordRegex: RegExp): number {\n\t\tlet result = 0\n\t\twhile (wordRegex.exec(str) != null) {\n\t\t\tresult = wordRegex.lastIndex\n\t\t\tif (wordRegex.lastIndex > index)\n\t\t\t\tbreak\n\t\t}\n\t\twordRegex.lastIndex <= index && (result = str.length)\n\t\treturn result\n\t}\n}\n","import { isoly } from \"isoly\"\nimport { tidily } from \"tidily\"\nimport { Adjacent } from \"./Adjacent\"\n\ntype Formatter = tidily.Formatter & tidily.Converter<any>\ntype Handler<E extends Event> = (event: E, unformatted: tidily.State, formatted: tidily.State) => tidily.State\n\nexport class InputStateHandler {\n\tconstructor(private formatter: Formatter, private type: tidily.Type) {}\n\tstatic create(type: \"price\", priceOptions: { currency?: isoly.Currency; toInteger?: boolean }): InputStateHandler\n\tstatic create(type: \"integer\", integerOptions: { min?: number; max?: number; pad?: number }): InputStateHandler\n\tstatic create(type: tidily.Type, locale?: isoly.Locale): InputStateHandler\n\tstatic create(type: tidily.Type, extra?: any): InputStateHandler {\n\t\tlet result: (tidily.Formatter & tidily.Converter<any>) | undefined\n\t\tswitch (type) {\n\t\t\tcase \"price\":\n\t\t\t\tresult = tidily.get(\"price\", extra)\n\t\t\t\tbreak\n\t\t\tcase \"integer\":\n\t\t\t\tresult = tidily.get(\"integer\", extra)\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tresult = tidily.get(type, extra)\n\t\t\t\tbreak\n\t\t}\n\t\t// eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n\t\treturn new InputStateHandler(result || tidily.get(\"text\")!, type)\n\t}\n\n\tpublic onKeyDown(\n\t\tevent: KeyboardEvent,\n\t\tstate: Readonly<tidily.State> & tidily.Settings\n\t): Readonly<tidily.State> & tidily.Settings {\n\t\tlet result: Readonly<tidily.State> & tidily.Settings = state\n\t\tconst handler = this.keydownHandlers[event.key]\n\t\tif (handler) {\n\t\t\tconst input = event.target as HTMLInputElement\n\t\t\tstate.selection.start = input.selectionStart ?? state.selection.start\n\t\t\tstate.selection.end = input.selectionEnd ?? state.selection.end\n\t\t\tstate.selection.direction = input.selectionDirection ?? state.selection.direction\n\t\t\tconst unformatted = handler(event, this.unformatState(state), state)\n\t\t\tconst formatted = this.partialFormatState(unformatted)\n\t\t\tif (event.defaultPrevented) {\n\t\t\t\tinput.selectionStart = formatted.selection.start\n\t\t\t\tinput.selectionEnd = formatted.selection.end\n\t\t\t\tinput.selectionDirection = formatted.selection.direction ?? null\n\t\t\t}\n\t\t\tresult = formatted\n\t\t}\n\t\treturn result\n\t}\n\tkeydownHandlers: { [key: string]: Handler<KeyboardEvent> | undefined } = {\n\t\tArrowLeft: (event, state) => (event.ctrlKey || event.metaKey ? state : this.moveCursor(event, state)),\n\t\tArrowRight: (event, state) => (event.ctrlKey || event.metaKey ? state : this.moveCursor(event, state)),\n\t}\n\n\tmoveCursor(event: KeyboardEvent, state: tidily.State): tidily.State {\n\t\tevent.preventDefault()\n\t\tlet cursor = tidily.Selection.getCursor(state.selection)\n\t\tlet stalk = tidily.Selection.getStalker(state.selection)\n\t\tcursor = Math.min(Math.max(cursor + (event.key == \"ArrowLeft\" ? -1 : 1), 0), state.value.length)\n\t\tstalk = event.shiftKey ? stalk : cursor\n\t\tstate.selection.direction = stalk < cursor ? \"forward\" : stalk > cursor ? \"backward\" : \"none\"\n\t\tstate.selection.start = Math.min(stalk, cursor)\n\t\tstate.selection.end = Math.max(stalk, cursor)\n\t\treturn state\n\t}\n\n\tpublic onFocus(event: FocusEvent, state: tidily.State) {\n\t\tconst result = this.partialFormatState(this.unformatState(state))\n\t\tconst input = event.target as HTMLInputElement\n\t\tinput.value = result.value\n\t\treturn result\n\t}\n\n\tpublic onBlur(event: FocusEvent, state: tidily.State): Readonly<tidily.State> & tidily.Settings {\n\t\tconst result = this.createFormattedState(state)\n\t\tconst input = event.target as HTMLInputElement\n\t\tinput.value = result.value\n\t\treturn result\n\t}\n\n\tpublic onInputEvent(event: InputEvent, state: tidily.State): Readonly<tidily.State> & tidily.Settings {\n\t\tconst input = event.target as HTMLInputElement\n\t\tstate.selection.start = input.selectionStart ?? state.selection.start\n\t\tstate.selection.end = input.selectionEnd ?? state.selection.end\n\t\tstate.selection.direction = input.selectionDirection ?? state.selection.direction\n\t\tconst result =\n\t\t\tevent.type == \"beforeinput\" || event.type == \"input\"\n\t\t\t\t? this.eventHandlers[event.type][event.inputType]?.(event, this.unformatState(state), state) ?? state\n\t\t\t\t: state\n\t\tconst formatted = this.partialFormatState(result)\n\t\tif (event.defaultPrevented) {\n\t\t\tinput.value = formatted.value\n\t\t\tinput.selectionStart = formatted.selection.start\n\t\t\tinput.selectionEnd = formatted.selection.end\n\t\t\tinput.selectionDirection = formatted.selection.direction ?? null\n\t\t}\n\t\treturn formatted\n\t}\n\tprivate eventHandlers: Record<\"beforeinput\" | \"input\", { [inputType: string]: Handler<InputEvent> | undefined }> = {\n\t\tbeforeinput: {\n\t\t\tinsertText: (event, state) => this.insert(event, state),\n\t\t\tinsertFromPaste: (event, state) => this.insert(event, state),\n\t\t\tinsertFromDrop: (event, state) => this.insert(event, state),\n\t\t\tdeleteContentBackward: (event, state) => {\n\t\t\t\tevent.preventDefault()\n\t\t\t\tif (state.selection.start == state.selection.end)\n\t\t\t\t\tthis.select(state, state.selection.start - 1, state.selection.end)\n\t\t\t\tthis.erase(state)\n\t\t\t\treturn state\n\t\t\t},\n\t\t\tdeleteContentForward: (event, state) => {\n\t\t\t\tevent.preventDefault()\n\t\t\t\tif (state.selection.start == state.selection.end)\n\t\t\t\t\tthis.select(state, state.selection.start, state.selection.end + 1)\n\t\t\t\tthis.erase(state)\n\t\t\t\treturn state\n\t\t\t},\n\t\t\tdeleteWordBackward: (event, unformatted, formattedState) => {\n\t\t\t\tlet result = unformatted\n\t\t\t\tif (this.type != \"password\") {\n\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\tresult = this.deleteWord(formattedState, \"backward\")\n\t\t\t\t}\n\t\t\t\treturn result\n\t\t\t},\n\t\t\tdeleteWordForward: (event, unformatted, formattedState) => {\n\t\t\t\tlet result = unformatted\n\t\t\t\tif (this.type != \"password\") {\n\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\tresult = this.deleteWord(formattedState, \"forward\")\n\t\t\t\t}\n\t\t\t\treturn result\n\t\t\t},\n\t\t\tdeleteByCut: (_, state) => {\n\t\t\t\tthis.erase(state)\n\t\t\t\treturn state\n\t\t\t},\n\t\t\t// historyUndo - TODO\n\t\t\t// historyRedo - TODO\n\t\t\t// insertLineBreak - TODO\n\t\t},\n\t\tinput: {\n\t\t\tinsertReplacementText: (event, state) => ({ ...state, value: (event.target as HTMLInputElement).value }),\n\t\t\tinsertCompositionText: (event, state) => ({ ...state, value: (event.target as HTMLInputElement).value }),\n\t\t\tdeleteWordBackward: (event, state) =>\n\t\t\t\tthis.type == \"password\" ? { ...state, value: (event.target as HTMLInputElement).value } : state,\n\t\t\tdeleteWordForward: (event, state) =>\n\t\t\t\tthis.type == \"password\" ? { ...state, value: (event.target as HTMLInputElement).value } : state,\n\t\t\t// Chrome will dispatch an input event without inputType when auto-filling\n\t\t\tundefined: (event, state) => ({ ...state, value: (event.target as HTMLInputElement).value }),\n\t\t},\n\t}\n\n\tprivate insert(event: InputEvent, unformatted: tidily.State): tidily.State {\n\t\tevent.preventDefault()\n\t\tif (typeof event.data == \"string\")\n\t\t\tfor (const c of event.data)\n\t\t\t\tthis.formatter.allowed(c, unformatted) && this.replace(unformatted, c.replace(/(\\r|\\n|\\t)/g, \"\"))\n\t\treturn unformatted\n\t}\n\tprivate deleteWord(formattedState: tidily.State, direction: \"backward\" | \"forward\"): tidily.State {\n\t\tconst cursorPosition = tidily.Selection.getCursor(formattedState.selection)\n\t\tconst adjacentIndex = Adjacent.getWordBreakIndex(formattedState.value, cursorPosition, direction)\n\t\tconst result = this.unformatState({\n\t\t\t...formattedState,\n\t\t\tselection: {\n\t\t\t\tstart: Math.min(cursorPosition, adjacentIndex),\n\t\t\t\tend: Math.max(cursorPosition, adjacentIndex),\n\t\t\t\tdirection: \"none\",\n\t\t\t},\n\t\t})\n\t\tconst value = result.value.substring(0, result.selection.start) + result.value.substring(result.selection.end)\n\t\tresult.value = value\n\t\tresult.selection.end = result.selection.start\n\t\treturn result\n\t}\n\n\tprivate select(state: tidily.State, from: number, to: number, direction?: tidily.Direction): void {\n\t\tstate.selection.start = from\n\t\tstate.selection.end = to\n\t\tdirection && (state.selection.direction = direction)\n\t}\n\tprivate erase(state: tidily.State): void {\n\t\tthis.replace(state, \"\")\n\t}\n\tprivate replace(state: tidily.State, insertString: string): void {\n\t\tstate.value =\n\t\t\tstate.value.substring(0, state.selection.start) + insertString + state.value.substring(state.selection.end)\n\t\tstate.selection.start = state.selection.start + insertString.length\n\t\tstate.selection.end = state.selection.start\n\t}\n\n\tprivate unformatState(formattedState: tidily.State): tidily.State {\n\t\treturn tidily.State.copy(this.formatter.unformat(tidily.StateEditor.copy(formattedState)))\n\t}\n\tprivate partialFormatState(unformattedState: tidily.State): Readonly<tidily.State> & tidily.Settings {\n\t\treturn this.formatter.partialFormat(tidily.StateEditor.copy(unformattedState))\n\t}\n\tprivate createFormattedState(state: tidily.State): Readonly<tidily.State> & tidily.Settings {\n\t\treturn this.formatter.format(tidily.StateEditor.copy(this.formatter.unformat(tidily.StateEditor.copy(state))))\n\t}\n\tprivate toString(value: any): string {\n\t\treturn this.formatter.toString(value)\n\t}\n\tpublic initialState(value: any, inputElement?: HTMLInputElement): Readonly<tidily.State> & tidily.Settings {\n\t\tconst stringValue = this.toString(value) || \"\"\n\t\tconst start = stringValue.length\n\t\tconst state = this.createFormattedState({\n\t\t\tvalue: stringValue,\n\t\t\tselection: { start, end: start, direction: \"none\" },\n\t\t})\n\t\tif (inputElement)\n\t\t\tinputElement.value = state.value\n\t\treturn state\n\t}\n\tpublic setValue(\n\t\tinputElement: HTMLInputElement,\n\t\tformattedState: Readonly<tidily.State> & tidily.Settings,\n\t\tvalue: any\n\t): Readonly<tidily.State> & tidily.Settings {\n\t\tconst result = {\n\t\t\t...formattedState,\n\t\t\tvalue: this.createFormattedState({ value: this.formatter.toString(value), selection: formattedState.selection })\n\t\t\t\t.value,\n\t\t}\n\t\tinputElement.value = result.value\n\t\treturn result\n\t}\n\tpublic getValue(formattedState: tidily.State): any {\n\t\treturn this.formatter.fromString(this.unformatState(formattedState).value)\n\t}\n\tpublic setSelection(\n\t\tinputElement: HTMLInputElement,\n\t\tformattedState: Readonly<tidily.State> & tidily.Settings,\n\t\tstart: number,\n\t\tend: number\n\t) {\n\t\tinputElement.focus()\n\t\tinputElement.selectionStart = start\n\t\tinputElement.selectionEnd = end\n\t\tthis.select(formattedState, start, end)\n\t\treturn formattedState\n\t}\n}\n","import { isly } from \"isly\"\n\nexport interface Key {\n\tname: string\n\tkey: string\n\tshift: boolean\n\tctrl: boolean\n\talt: boolean\n\tmeta: boolean\n}\n\nexport namespace Key {\n\texport const type = isly.object<Key>({\n\t\tname: isly.string(),\n\t\tkey: isly.string(),\n\t\tshift: isly.boolean(),\n\t\tctrl: isly.boolean(),\n\t\talt: isly.boolean(),\n\t\tmeta: isly.boolean(),\n\t})\n\texport const is = type.is\n\n\texport function create(name: string, event: KeyboardEvent): Key {\n\t\treturn {\n\t\t\tname,\n\t\t\tkey: event.key,\n\t\t\tshift: event.shiftKey,\n\t\t\tctrl: event.ctrlKey,\n\t\t\talt: event.altKey,\n\t\t\tmeta: event.metaKey,\n\t\t}\n\t}\n}\n","@import \"./shared.css\";\n\n:host {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tfont-weight: var(--smoothly-font-weight);\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tcolor: rgb(var(--smoothly-input-foreground));\n}\n\n:host[hidden] {\n\tdisplay: none;\n}\n\n:host>.smoothly-input-container {\n\tposition: relative;\n\tflex-grow: 1;\n\theight: 100%;\n}\n\n:host>.smoothly-input-container>label {\n\tleft: var(--input-padding-side);\n}\n\n:host:not([show-label])>div>input {\n\tpadding: 0 var(--input-padding-side);\n}\n\n:host>.smoothly-input-container>div.guide {\n\tposition: absolute;\n box-sizing: border-box;\n align-content: center;\n\theight: 100%;\n\tpadding: \n\t\tvar(--input-value-padding-top) \n\t\tvar(--input-padding-side) \n\t\tvar(--input-value-padding-bottom) \n\t\tvar(--input-padding-side);\n}\n:host>.smoothly-input-container>div.guide>div.value {\n\tdisplay: inline;\n\tpointer-events: none;\n\topacity: 0;\n}\n:host>.smoothly-input-container>div.guide>div.remainder {\n\tdisplay: inline;\n\tpointer-events: none;\n\topacity: 0.5;\n}\n\n:host>.smoothly-input-container>input {\n\tpadding: \n\t\tvar(--input-value-padding-top) \n\t\tvar(--input-padding-side) \n\t\tvar(--input-value-padding-bottom) \n\t\tvar(--input-padding-side);\n\tbox-sizing: border-box;\n\twidth: 100%;\n\theight: 100%;\n\tborder: 0;\n\tz-index: 1;\n\tposition: relative;\n\tfont-size: 1rem;\n\tfont-family: var(--smoothly-font-family);\n}\n:host([disabled])>.smoothly-input-container>input {\n\tcursor: not-allowed;\n}\n\n:host>.smoothly-invalid {\n\tdisplay: none;\n\tz-index: 2;\n\tpadding: 0.5rem;\n}\n:host[invalid]>.smoothly-invalid {\n\tdisplay: flex;\n}\n\n:host>div>label {\n\tz-index: 1;\n\tpointer-events: none;\n}\n\n:host>div>input:focus {\n\toutline: none;\n}\n\n:host>div>input:-webkit-autofill,\n:host>div>input:-webkit-autofill:hover,\n:host>div>input:-webkit-autofill:focus,\n:host>div>input:-webkit-autofill:active {\n\tbox-shadow: 0 0 0 40em rgb(var(--smoothly-input-background)) inset;\n\t-webkit-box-shadow: 0 0 0 40em rgb(var(--smoothly-input-background)) inset;\n}\n\n:host>div>input:-webkit-autofill,\n:host>div>input:-webkit-autofill+label {\n\t-webkit-text-fill-color: rgb(var(--smoothly-input-foreground));\n}\n:host>span.copyable {\n\tposition: relative;\n}\n:host>span.copyable>smoothly-icon {\n\tcursor: pointer;\n\tdisplay: flex;\n\talign-items: center;\n\tpadding: 0.5rem;\n\n}\n:host>span.copyable:hover small,\n:host>span.copyable:focus small {\n\tdisplay: block;\n}\n:host>span.copyable>small {\n\tdisplay: none;\n\twidth: max-content;\n\tborder-radius: 0.25rem;\n\tpadding: 0.2rem 0.3rem;\n\tposition: absolute;\n\tright: -0.5rem;\n\ttop: -2rem;\n\tbackground-color: rgb(var(--smoothly-default-contrast));\n\tcolor: rgb(var(--smoothly-default-tint));\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, State, Watch } from \"@stencil/core\"\nimport { isoly } from \"isoly\"\nimport { tidily } from \"tidily\"\nimport { Color } from \"../../model\"\nimport { getLocale } from \"../../model/getLocale\"\nimport { Clearable } from \"./Clearable\"\nimport { Deep } from \"./Deep\"\nimport { Editable } from \"./Editable\"\nimport { Input } from \"./Input\"\nimport { InputStateHandler } from \"./InputStateHandler\"\nimport { Key } from \"./Key\"\nimport { Looks } from \"./Looks\"\n\n@Component({\n\ttag: \"smoothly-input\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyInput implements Clearable, Input, Editable {\n\t@Element() element: HTMLSmoothlyInputElement\n\t@Prop({ reflect: true, mutable: true }) color?: Color\n\t@Prop({ reflect: true, mutable: true }) looks?: Looks\n\t@Prop({ reflect: true }) name: string\n\t@Prop({ mutable: true }) value: any\n\t@Prop({ reflect: true }) type: tidily.Type = \"text\"\n\t@Prop({ reflect: true }) required = false\n\t@Prop({ reflect: true }) showLabel = true\n\t@Prop() autocomplete?: Exclude<tidily.Settings[\"autocomplete\"], undefined>\n\t@Prop({ reflect: true }) placeholder: string | undefined\n\t@Prop({ reflect: true }) disabled = false\n\t@Prop({ mutable: true, reflect: true }) readonly = false\n\t@Prop() toInteger?: boolean\n\t@Prop({ reflect: true }) currency?: isoly.Currency\n\t@Prop() min?: number\n\t@Prop() max?: number\n\t@Prop() pad?: number\n\t@Prop({ reflect: true }) invalid?: boolean = false\n\t@Prop({ reflect: true }) errorMessage?: string\n\t@Prop({ reflect: true }) copyable?: boolean\n\t@State() initialValue?: any\n\t@State() state: Readonly<tidily.State> & Readonly<tidily.Settings>\n\t@State() copied = false\n\tisDifferentFromInitial = false\n\tparent: Editable | undefined\n\tprivate stateHandler: InputStateHandler\n\tprivate inputElement: HTMLInputElement | undefined\n\tprivate uneditable = this.readonly\n\tprivate observer = Editable.Observer.create(this)\n\t@Event() smoothlyInputLooks: EventEmitter<(looks?: Looks, color?: Color) => void>\n\t@Event() smoothlyInputLoad: EventEmitter<(parent: Editable) => void>\n\t@Event() smoothlyFormDisable: EventEmitter<(disabled: boolean) => void>\n\t@Event() smoothlyKeydown: EventEmitter<Key>\n\t@Event() smoothlyBlur: EventEmitter<void>\n\t@Event() smoothlyChange: EventEmitter<Record<string, any>>\n\t@Event() smoothlyInput: EventEmitter<Record<string, any>>\n\t@Event() smoothlyUserInput: EventEmitter<Input.UserInput>\n\n\t@Method()\n\tasync getValue(): Promise<any | undefined> {\n\t\treturn this.stateHandler.getValue(this.state)\n\t}\n\t@Method()\n\tasync setValue(value: any): Promise<void> {\n\t\tif (this.inputElement)\n\t\t\tthis.state = this.stateHandler.setValue(this.inputElement, this.state, value)\n\t}\n\t@Method()\n\tasync setFocus(): Promise<void> {\n\t\tthis.inputElement?.focus()\n\t}\n\t@Method()\n\tasync setSelection(start: number, end: number): Promise<void> {\n\t\tif (this.inputElement)\n\t\t\tthis.state = this.stateHandler.setSelection(\n\t\t\t\tthis.inputElement,\n\t\t\t\tthis.state,\n\t\t\t\tstart,\n\t\t\t\tend < 0 ? this.inputElement.value.length + end + 1 : end\n\t\t\t)\n\t}\n\t@Method()\n\tasync listen(listener: Editable.Observer.Listener): Promise<void> {\n\t\tthis.observer.subscribe(listener)\n\t}\n\t@Watch(\"name\")\n\tnameChange(_: string | undefined, oldName: string | undefined) {\n\t\tInput.formRename(this, oldName)\n\t}\n\t@Method()\n\tasync register() {\n\t\tInput.formAdd(this)\n\t}\n\t@Method()\n\tasync unregister() {\n\t\tInput.formRemove(this)\n\t}\n\t@Method()\n\tasync clear(): Promise<void> {\n\t\tif (!this.uneditable && this.inputElement) {\n\t\t\tthis.state = this.stateHandler.setValue(this.inputElement, this.state, undefined)\n\t\t}\n\t}\n\t@Method()\n\tasync edit(editable: boolean): Promise<void> {\n\t\t!this.uneditable && (this.readonly = !editable)\n\t}\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tif (!this.uneditable && this.inputElement) {\n\t\t\tthis.state = this.stateHandler.setValue(this.inputElement, this.state, this.initialValue)\n\t\t}\n\t}\n\t@Method()\n\tasync setInitialValue(): Promise<void> {\n\t\tthis.isDifferentFromInitial = false\n\t\tthis.initialValue = this.value\n\t\tthis.smoothlyInput.emit({ [this.name]: await this.getValue() })\n\t}\n\t@Method()\n\tasync setCustomInitialValue(value: any): Promise<void> {\n\t\tthis.initialValue = value\n\t}\n\t@Listen(\"smoothlyInputLoad\")\n\tasync smoothlyInputLoadHandler(event: CustomEvent<(parent: SmoothlyInput) => void>): Promise<void> {\n\t\tInput.registerSubAction(this, event)\n\t}\n\t@Watch(\"currency\")\n\t@Watch(\"type\")\n\ttypeChange(): void {\n\t\tswitch (this.type) {\n\t\t\tcase \"price\":\n\t\t\t\tthis.stateHandler = InputStateHandler.create(\"price\", { currency: this.currency, toInteger: this.toInteger })\n\t\t\t\tbreak\n\t\t\tcase \"integer\":\n\t\t\t\tthis.stateHandler = InputStateHandler.create(\"integer\", { min: this.min, max: this.max, pad: this.pad })\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tthis.stateHandler = InputStateHandler.create(this.type, getLocale())\n\t\t\t\tbreak\n\t\t}\n\t\tthis.state = this.stateHandler.initialState(this.value ?? this.state?.value, this.inputElement)\n\t}\n\t@Watch(\"state\")\n\tstateChange() {\n\t\tconst value = this.stateHandler.getValue(this.state)\n\t\tthis.isDifferentFromInitial = Deep.notEqual(this.initialValue, value)\n\t\tthis.smoothlyInput.emit({ [this.name]: value })\n\t\tthis.observer.publish()\n\t}\n\t@Watch(\"value\")\n\tvalueChange(value: any) {\n\t\tconst lastValue = this.stateHandler.getValue(this.state)\n\t\tif (Deep.notEqual(lastValue, value) && this.inputElement) {\n\t\t\tthis.state = this.stateHandler.setValue(this.inputElement, this.state, value)\n\t\t\tthis.smoothlyInput.emit({ [this.name]: this.stateHandler.getValue(this.state) })\n\t\t}\n\t}\n\t@Watch(\"disabled\")\n\t@Watch(\"readonly\")\n\treadonlyChange() {\n\t\tthis.observer.publish()\n\t}\n\tcomponentWillLoad() {\n\t\tthis.initialValue = this.value\n\t\tthis.typeChange()\n\t\tthis.smoothlyInputLooks.emit(\n\t\t\t(looks, color) => ((this.looks = this.looks ?? looks), !this.color && (this.color = color))\n\t\t)\n\t\tthis.smoothlyInputLoad.emit(parent => (this.parent = parent))\n\t\t!this.readonly && this.smoothlyFormDisable.emit(readonly => (this.readonly = readonly))\n\t\tthis.observer.publish()\n\t}\n\tcomponentDidLoad() {\n\t\tif (this.inputElement)\n\t\t\tthis.inputElement.value = this.state.value\n\t}\n\tasync disconnectedCallback() {\n\t\tif (!this.element.isConnected)\n\t\t\tawait this.unregister()\n\t}\n\t@Listen(\"input\")\n\t@Listen(\"beforeinput\")\n\tonEvent(event: InputEvent) {\n\t\tthis.state = this.stateHandler.onInputEvent(event, this.state)\n\t\tif (event.type == \"input\" || event.defaultPrevented)\n\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: this.stateHandler.getValue(this.state) })\n\t}\n\tcopyText(value?: string) {\n\t\tif (value) {\n\t\t\tnavigator.clipboard.writeText(value)\n\t\t\tthis.copied = true\n\t\t}\n\t}\n\trender() {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={{ \"has-value\": this.state?.value != undefined && this.state?.value != \"\" }}\n\t\t\t\tonclick={() => this.inputElement?.focus()}>\n\t\t\t\t<slot name=\"start\" />\n\t\t\t\t<div class=\"smoothly-input-container\">\n\t\t\t\t\t<div class={\"guide\"}>\n\t\t\t\t\t\t<div class={\"value\"}>{this.state?.value}</div>\n\t\t\t\t\t\t<div class={\"remainder\"}>{this.state?.remainder}</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<input\n\t\t\t\t\t\tref={(el: HTMLInputElement) => (this.inputElement = el)}\n\t\t\t\t\t\tcolor={this.color}\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\ttype={this.state?.type}\n\t\t\t\t\t\tinputmode={this.state?.inputmode}\n\t\t\t\t\t\tplaceholder={this.placeholder}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tautocomplete={this.autocomplete ?? this.state?.autocomplete}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\treadOnly={this.readonly}\n\t\t\t\t\t\tpattern={this.state?.pattern && this.state?.pattern.source}\n\t\t\t\t\t\tonKeyDown={async event => {\n\t\t\t\t\t\t\tthis.state = this.stateHandler.onKeyDown(event, this.state)\n\t\t\t\t\t\t\tif (!this.readonly && !this.disabled)\n\t\t\t\t\t\t\t\tthis.smoothlyKeydown.emit(Key.create(this.name, event))\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonFocus={event => !this.readonly && (this.state = this.stateHandler.onFocus(event, this.state))}\n\t\t\t\t\t\tonBlur={event => {\n\t\t\t\t\t\t\tif (!this.readonly) {\n\t\t\t\t\t\t\t\tconst lastValue = this.stateHandler.getValue(this.state)\n\t\t\t\t\t\t\t\tthis.state = this.stateHandler.onBlur(event, this.state)\n\t\t\t\t\t\t\t\tthis.smoothlyBlur.emit()\n\t\t\t\t\t\t\t\tthis.smoothlyInput.emit({ [this.name]: this.stateHandler.getValue(this.state) })\n\t\t\t\t\t\t\t\tif (Deep.notEqual(lastValue, this.stateHandler.getValue(this.state))) {\n\t\t\t\t\t\t\t\t\tthis.smoothlyChange.emit({ [this.name]: this.stateHandler.getValue(this.state) })\n\t\t\t\t\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: this.stateHandler.getValue(this.state) })\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t\t<label class={\"label float-on-focus\"} htmlFor={this.name}>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</label>\n\t\t\t\t</div>\n\t\t\t\t{this.copyable && this.value && (\n\t\t\t\t\t<span class=\"copyable\">\n\t\t\t\t\t\t<small>{this.copied ? \"Copied!\" : \"Copy\"}</small>\n\t\t\t\t\t\t<smoothly-icon\n\t\t\t\t\t\t\tname=\"copy-outline\"\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tonClick={() => this.copyText(this.value)}\n\t\t\t\t\t\t\tonMouseLeave={() => (this.copied = false)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t\t<smoothly-icon class=\"smoothly-invalid\" name=\"alert-circle\" size=\"small\" tooltip={this.errorMessage} />\n\t\t\t\t<slot name=\"end\" />\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
1
+ {"file":"p-6337ab02.js","mappings":"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","names":["tidily.get","tidily.Selection","tidily.State","tidily.StateEditor","isly.object","isly.string","isly.boolean"],"sources":["src/components/input/Deep.ts","src/components/input/Adjacent.ts","src/components/input/InputStateHandler.ts","src/components/input/Key.ts","src/components/input/style.css?tag=smoothly-input&encapsulation=scoped","src/components/input/index.tsx"],"sourcesContent":["export namespace Deep {\n\texport function equal(a: any, b: any): boolean {\n\t\tif (a === b)\n\t\t\treturn true\n\t\tif (typeof a == \"object\" && typeof b == \"object\") {\n\t\t\tconst keys = Object.keys(a)\n\t\t\tif (keys.length == Object.keys(b).length && keys.every(key => equal(a[key], b[key])))\n\t\t\t\treturn true\n\t\t}\n\t\treturn false\n\t}\n\texport function notEqual(a: any, b: any): boolean {\n\t\treturn !equal(a, b)\n\t}\n}\n","export namespace Adjacent {\n\texport function getWordBreakIndex(str: string, index: number, direction: \"backward\" | \"forward\"): number {\n\t\tconst wordRegex = /([^.-@\\s]+)/gi\n\t\treturn direction == \"backward\"\n\t\t\t? getBackwardWordBreakIndex(str, index, wordRegex)\n\t\t\t: getForwardWordBreakIndex(str, index, wordRegex)\n\t}\n\n\tfunction getBackwardWordBreakIndex(str: string, index: number, wordRegex: RegExp): number {\n\t\tlet result = 0\n\t\tlet execArray: RegExpExecArray | null\n\t\twhile ((execArray = wordRegex.exec(str)) != null) {\n\t\t\tif (wordRegex.lastIndex - execArray[0].length < index)\n\t\t\t\tresult = wordRegex.lastIndex - execArray[0].length\n\t\t\telse\n\t\t\t\tbreak\n\t\t}\n\t\treturn result\n\t}\n\n\tfunction getForwardWordBreakIndex(str: string, index: number, wordRegex: RegExp): number {\n\t\tlet result = 0\n\t\twhile (wordRegex.exec(str) != null) {\n\t\t\tresult = wordRegex.lastIndex\n\t\t\tif (wordRegex.lastIndex > index)\n\t\t\t\tbreak\n\t\t}\n\t\twordRegex.lastIndex <= index && (result = str.length)\n\t\treturn result\n\t}\n}\n","import { isoly } from \"isoly\"\nimport { tidily } from \"tidily\"\nimport { Adjacent } from \"./Adjacent\"\n\ntype Formatter = tidily.Formatter & tidily.Converter<any>\ntype Handler<E extends Event> = (event: E, unformatted: tidily.State, formatted: tidily.State) => tidily.State\n\nexport class InputStateHandler {\n\tconstructor(private formatter: Formatter, private type: tidily.Type) {}\n\tstatic create(type: \"price\", priceOptions: { currency?: isoly.Currency; toInteger?: boolean }): InputStateHandler\n\tstatic create(type: \"integer\", integerOptions: { min?: number; max?: number; pad?: number }): InputStateHandler\n\tstatic create(type: tidily.Type, locale?: isoly.Locale): InputStateHandler\n\tstatic create(type: tidily.Type, extra?: any): InputStateHandler {\n\t\tlet result: (tidily.Formatter & tidily.Converter<any>) | undefined\n\t\tswitch (type) {\n\t\t\tcase \"price\":\n\t\t\t\tresult = tidily.get(\"price\", extra)\n\t\t\t\tbreak\n\t\t\tcase \"integer\":\n\t\t\t\tresult = tidily.get(\"integer\", extra)\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tresult = tidily.get(type, extra)\n\t\t\t\tbreak\n\t\t}\n\t\t// eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n\t\treturn new InputStateHandler(result || tidily.get(\"text\")!, type)\n\t}\n\n\tpublic onKeyDown(\n\t\tevent: KeyboardEvent,\n\t\tstate: Readonly<tidily.State> & tidily.Settings\n\t): Readonly<tidily.State> & tidily.Settings {\n\t\tlet result: Readonly<tidily.State> & tidily.Settings = state\n\t\tconst handler = this.keydownHandlers[event.key]\n\t\tif (handler) {\n\t\t\tconst input = event.target as HTMLInputElement\n\t\t\tstate.selection.start = input.selectionStart ?? state.selection.start\n\t\t\tstate.selection.end = input.selectionEnd ?? state.selection.end\n\t\t\tstate.selection.direction = input.selectionDirection ?? state.selection.direction\n\t\t\tconst unformatted = handler(event, this.unformatState(state), state)\n\t\t\tconst formatted = this.partialFormatState(unformatted)\n\t\t\tif (event.defaultPrevented) {\n\t\t\t\tinput.selectionStart = formatted.selection.start\n\t\t\t\tinput.selectionEnd = formatted.selection.end\n\t\t\t\tinput.selectionDirection = formatted.selection.direction ?? null\n\t\t\t}\n\t\t\tresult = formatted\n\t\t}\n\t\treturn result\n\t}\n\tkeydownHandlers: { [key: string]: Handler<KeyboardEvent> | undefined } = {\n\t\tArrowLeft: (event, state) => (event.ctrlKey || event.metaKey ? state : this.moveCursor(event, state)),\n\t\tArrowRight: (event, state) => (event.ctrlKey || event.metaKey ? state : this.moveCursor(event, state)),\n\t}\n\n\tmoveCursor(event: KeyboardEvent, state: tidily.State): tidily.State {\n\t\tevent.preventDefault()\n\t\tlet cursor = tidily.Selection.getCursor(state.selection)\n\t\tlet stalk = tidily.Selection.getStalker(state.selection)\n\t\tcursor = Math.min(Math.max(cursor + (event.key == \"ArrowLeft\" ? -1 : 1), 0), state.value.length)\n\t\tstalk = event.shiftKey ? stalk : cursor\n\t\tstate.selection.direction = stalk < cursor ? \"forward\" : stalk > cursor ? \"backward\" : \"none\"\n\t\tstate.selection.start = Math.min(stalk, cursor)\n\t\tstate.selection.end = Math.max(stalk, cursor)\n\t\treturn state\n\t}\n\n\tpublic onFocus(event: FocusEvent, state: tidily.State) {\n\t\tconst result = this.partialFormatState(this.unformatState(state))\n\t\tconst input = event.target as HTMLInputElement\n\t\tinput.value = result.value\n\t\treturn result\n\t}\n\n\tpublic onBlur(event: FocusEvent, state: tidily.State): Readonly<tidily.State> & tidily.Settings {\n\t\tconst result = this.createFormattedState(state)\n\t\tconst input = event.target as HTMLInputElement\n\t\tinput.value = result.value\n\t\treturn result\n\t}\n\n\tpublic onInputEvent(event: InputEvent, state: tidily.State): Readonly<tidily.State> & tidily.Settings {\n\t\tconst input = event.target as HTMLInputElement\n\t\tstate.selection.start = input.selectionStart ?? state.selection.start\n\t\tstate.selection.end = input.selectionEnd ?? state.selection.end\n\t\tstate.selection.direction = input.selectionDirection ?? state.selection.direction\n\t\tconst result =\n\t\t\tevent.type == \"beforeinput\" || event.type == \"input\"\n\t\t\t\t? this.eventHandlers[event.type][event.inputType]?.(event, this.unformatState(state), state) ?? state\n\t\t\t\t: state\n\t\tconst formatted = this.partialFormatState(result)\n\t\tif (event.defaultPrevented) {\n\t\t\tinput.value = formatted.value\n\t\t\tinput.selectionStart = formatted.selection.start\n\t\t\tinput.selectionEnd = formatted.selection.end\n\t\t\tinput.selectionDirection = formatted.selection.direction ?? null\n\t\t}\n\t\treturn formatted\n\t}\n\tprivate eventHandlers: Record<\"beforeinput\" | \"input\", { [inputType: string]: Handler<InputEvent> | undefined }> = {\n\t\tbeforeinput: {\n\t\t\tinsertText: (event, state) => this.insert(event, state),\n\t\t\tinsertFromPaste: (event, state) => this.insert(event, state),\n\t\t\tinsertFromDrop: (event, state) => this.insert(event, state),\n\t\t\tdeleteContentBackward: (event, state) => {\n\t\t\t\tevent.preventDefault()\n\t\t\t\tif (state.selection.start == state.selection.end)\n\t\t\t\t\tthis.select(state, state.selection.start - 1, state.selection.end)\n\t\t\t\tthis.erase(state)\n\t\t\t\treturn state\n\t\t\t},\n\t\t\tdeleteContentForward: (event, state) => {\n\t\t\t\tevent.preventDefault()\n\t\t\t\tif (state.selection.start == state.selection.end)\n\t\t\t\t\tthis.select(state, state.selection.start, state.selection.end + 1)\n\t\t\t\tthis.erase(state)\n\t\t\t\treturn state\n\t\t\t},\n\t\t\tdeleteWordBackward: (event, unformatted, formattedState) => {\n\t\t\t\tlet result = unformatted\n\t\t\t\tif (this.type != \"password\") {\n\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\tresult = this.deleteWord(formattedState, \"backward\")\n\t\t\t\t}\n\t\t\t\treturn result\n\t\t\t},\n\t\t\tdeleteWordForward: (event, unformatted, formattedState) => {\n\t\t\t\tlet result = unformatted\n\t\t\t\tif (this.type != \"password\") {\n\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\tresult = this.deleteWord(formattedState, \"forward\")\n\t\t\t\t}\n\t\t\t\treturn result\n\t\t\t},\n\t\t\tdeleteByCut: (_, state) => {\n\t\t\t\tthis.erase(state)\n\t\t\t\treturn state\n\t\t\t},\n\t\t\t// historyUndo - TODO\n\t\t\t// historyRedo - TODO\n\t\t\t// insertLineBreak - TODO\n\t\t},\n\t\tinput: {\n\t\t\tinsertReplacementText: (event, state) => ({ ...state, value: (event.target as HTMLInputElement).value }),\n\t\t\tinsertCompositionText: (event, state) => ({ ...state, value: (event.target as HTMLInputElement).value }),\n\t\t\tdeleteWordBackward: (event, state) =>\n\t\t\t\tthis.type == \"password\" ? { ...state, value: (event.target as HTMLInputElement).value } : state,\n\t\t\tdeleteWordForward: (event, state) =>\n\t\t\t\tthis.type == \"password\" ? { ...state, value: (event.target as HTMLInputElement).value } : state,\n\t\t\t// Chrome will dispatch an input event without inputType when auto-filling\n\t\t\tundefined: (event, state) => ({ ...state, value: (event.target as HTMLInputElement).value }),\n\t\t},\n\t}\n\n\tprivate insert(event: InputEvent, unformatted: tidily.State): tidily.State {\n\t\tevent.preventDefault()\n\t\tif (typeof event.data == \"string\")\n\t\t\tfor (const c of event.data)\n\t\t\t\tthis.formatter.allowed(c, unformatted) && this.replace(unformatted, c.replace(/(\\r|\\n|\\t)/g, \"\"))\n\t\treturn unformatted\n\t}\n\tprivate deleteWord(formattedState: tidily.State, direction: \"backward\" | \"forward\"): tidily.State {\n\t\tconst cursorPosition = tidily.Selection.getCursor(formattedState.selection)\n\t\tconst adjacentIndex = Adjacent.getWordBreakIndex(formattedState.value, cursorPosition, direction)\n\t\tconst result = this.unformatState({\n\t\t\t...formattedState,\n\t\t\tselection: {\n\t\t\t\tstart: Math.min(cursorPosition, adjacentIndex),\n\t\t\t\tend: Math.max(cursorPosition, adjacentIndex),\n\t\t\t\tdirection: \"none\",\n\t\t\t},\n\t\t})\n\t\tconst value = result.value.substring(0, result.selection.start) + result.value.substring(result.selection.end)\n\t\tresult.value = value\n\t\tresult.selection.end = result.selection.start\n\t\treturn result\n\t}\n\n\tprivate select(state: tidily.State, from: number, to: number, direction?: tidily.Direction): void {\n\t\tstate.selection.start = from\n\t\tstate.selection.end = to\n\t\tdirection && (state.selection.direction = direction)\n\t}\n\tprivate erase(state: tidily.State): void {\n\t\tthis.replace(state, \"\")\n\t}\n\tprivate replace(state: tidily.State, insertString: string): void {\n\t\tstate.value =\n\t\t\tstate.value.substring(0, state.selection.start) + insertString + state.value.substring(state.selection.end)\n\t\tstate.selection.start = state.selection.start + insertString.length\n\t\tstate.selection.end = state.selection.start\n\t}\n\n\tprivate unformatState(formattedState: tidily.State): tidily.State {\n\t\treturn tidily.State.copy(this.formatter.unformat(tidily.StateEditor.copy(formattedState)))\n\t}\n\tprivate partialFormatState(unformattedState: tidily.State): Readonly<tidily.State> & tidily.Settings {\n\t\treturn this.formatter.partialFormat(tidily.StateEditor.copy(unformattedState))\n\t}\n\tprivate createFormattedState(state: tidily.State): Readonly<tidily.State> & tidily.Settings {\n\t\treturn this.formatter.format(tidily.StateEditor.copy(this.formatter.unformat(tidily.StateEditor.copy(state))))\n\t}\n\tprivate toString(value: any): string {\n\t\treturn this.formatter.toString(value)\n\t}\n\tpublic initialState(value: any, inputElement?: HTMLInputElement): Readonly<tidily.State> & tidily.Settings {\n\t\tconst stringValue = this.toString(value) || \"\"\n\t\tconst start = stringValue.length\n\t\tconst state = this.createFormattedState({\n\t\t\tvalue: stringValue,\n\t\t\tselection: { start, end: start, direction: \"none\" },\n\t\t})\n\t\tif (inputElement)\n\t\t\tinputElement.value = state.value\n\t\treturn state\n\t}\n\tpublic setValue(\n\t\tinputElement: HTMLInputElement,\n\t\tformattedState: Readonly<tidily.State> & tidily.Settings,\n\t\tvalue: any\n\t): Readonly<tidily.State> & tidily.Settings {\n\t\tconst result = {\n\t\t\t...formattedState,\n\t\t\tvalue: this.createFormattedState({ value: this.formatter.toString(value), selection: formattedState.selection })\n\t\t\t\t.value,\n\t\t}\n\t\tinputElement.value = result.value\n\t\treturn result\n\t}\n\tpublic getValue(formattedState: tidily.State): any {\n\t\treturn this.formatter.fromString(this.unformatState(formattedState).value)\n\t}\n\tpublic setSelection(\n\t\tinputElement: HTMLInputElement,\n\t\tformattedState: Readonly<tidily.State> & tidily.Settings,\n\t\tstart: number,\n\t\tend: number\n\t) {\n\t\tinputElement.focus()\n\t\tinputElement.selectionStart = start\n\t\tinputElement.selectionEnd = end\n\t\tthis.select(formattedState, start, end)\n\t\treturn formattedState\n\t}\n}\n","import { isly } from \"isly\"\n\nexport interface Key {\n\tname: string\n\tkey: string\n\tshift: boolean\n\tctrl: boolean\n\talt: boolean\n\tmeta: boolean\n}\n\nexport namespace Key {\n\texport const type = isly.object<Key>({\n\t\tname: isly.string(),\n\t\tkey: isly.string(),\n\t\tshift: isly.boolean(),\n\t\tctrl: isly.boolean(),\n\t\talt: isly.boolean(),\n\t\tmeta: isly.boolean(),\n\t})\n\texport const is = type.is\n\n\texport function create(name: string, event: KeyboardEvent): Key {\n\t\treturn {\n\t\t\tname,\n\t\t\tkey: event.key,\n\t\t\tshift: event.shiftKey,\n\t\t\tctrl: event.ctrlKey,\n\t\t\talt: event.altKey,\n\t\t\tmeta: event.metaKey,\n\t\t}\n\t}\n}\n","@import \"./shared.css\";\n\n:host {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tfont-weight: var(--smoothly-font-weight);\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tcolor: rgb(var(--smoothly-input-foreground));\n}\n\n:host[hidden] {\n\tdisplay: none;\n}\n\n:host>.smoothly-input-container {\n\tposition: relative;\n\tflex-grow: 1;\n\theight: 100%;\n}\n\n:host>.smoothly-input-container>label {\n\tleft: var(--input-padding-side);\n}\n\n:host:not([show-label])>div>input {\n\tpadding: 0 var(--input-padding-side);\n}\n\n:host>.smoothly-input-container>div.guide {\n\tposition: absolute;\n box-sizing: border-box;\n align-content: center;\n\theight: 100%;\n\tpadding-inline: var(--input-padding-side);\n}\n:host([show-label])>.smoothly-input-container>div.guide {\n\tpadding-block: var(--input-value-padding-top) var(--input-value-padding-bottom);\n}\n:host>.smoothly-input-container>div.guide>div.value {\n\tdisplay: inline;\n\tpointer-events: none;\n\topacity: 0;\n}\n:host>.smoothly-input-container>div.guide>div.remainder {\n\tdisplay: inline;\n\tpointer-events: none;\n\topacity: 0.5;\n}\n\n:host>.smoothly-input-container>input {\n\tpadding: \n\t\tvar(--input-value-padding-top) \n\t\tvar(--input-padding-side) \n\t\tvar(--input-value-padding-bottom) \n\t\tvar(--input-padding-side);\n\tbox-sizing: border-box;\n\twidth: 100%;\n\theight: 100%;\n\tborder: 0;\n\tz-index: 1;\n\tposition: relative;\n\tfont-size: 1rem;\n\tfont-family: var(--smoothly-font-family);\n}\n:host([disabled])>.smoothly-input-container>input {\n\tcursor: not-allowed;\n}\n\n:host>.smoothly-invalid {\n\tdisplay: none;\n\tz-index: 2;\n\tpadding: 0.5rem;\n}\n:host[invalid]>.smoothly-invalid {\n\tdisplay: flex;\n}\n\n:host>div>label {\n\tz-index: 1;\n\tpointer-events: none;\n}\n\n:host>div>input:focus {\n\toutline: none;\n}\n\n:host>div>input:-webkit-autofill,\n:host>div>input:-webkit-autofill:hover,\n:host>div>input:-webkit-autofill:focus,\n:host>div>input:-webkit-autofill:active {\n\tbox-shadow: 0 0 0 40em rgb(var(--smoothly-input-background)) inset;\n\t-webkit-box-shadow: 0 0 0 40em rgb(var(--smoothly-input-background)) inset;\n}\n\n:host>div>input:-webkit-autofill,\n:host>div>input:-webkit-autofill+label {\n\t-webkit-text-fill-color: rgb(var(--smoothly-input-foreground));\n}\n:host>span.copyable {\n\tposition: relative;\n}\n:host>span.copyable>smoothly-icon {\n\tcursor: pointer;\n\tdisplay: flex;\n\talign-items: center;\n\tpadding: 0.5rem;\n\n}\n:host>span.copyable:hover small,\n:host>span.copyable:focus small {\n\tdisplay: block;\n}\n:host>span.copyable>small {\n\tdisplay: none;\n\twidth: max-content;\n\tborder-radius: 0.25rem;\n\tpadding: 0.2rem 0.3rem;\n\tposition: absolute;\n\tright: -0.5rem;\n\ttop: -2rem;\n\tbackground-color: rgb(var(--smoothly-default-contrast));\n\tcolor: rgb(var(--smoothly-default-tint));\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, State, Watch } from \"@stencil/core\"\nimport { isoly } from \"isoly\"\nimport { tidily } from \"tidily\"\nimport { Color } from \"../../model\"\nimport { getLocale } from \"../../model/getLocale\"\nimport { Clearable } from \"./Clearable\"\nimport { Deep } from \"./Deep\"\nimport { Editable } from \"./Editable\"\nimport { Input } from \"./Input\"\nimport { InputStateHandler } from \"./InputStateHandler\"\nimport { Key } from \"./Key\"\nimport { Looks } from \"./Looks\"\n\n@Component({\n\ttag: \"smoothly-input\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyInput implements Clearable, Input, Editable {\n\t@Element() element: HTMLSmoothlyInputElement\n\t@Prop({ reflect: true, mutable: true }) color?: Color\n\t@Prop({ reflect: true, mutable: true }) looks?: Looks\n\t@Prop({ reflect: true }) name: string\n\t@Prop({ mutable: true }) value: any\n\t@Prop({ reflect: true }) type: tidily.Type = \"text\"\n\t@Prop({ reflect: true }) required = false\n\t@Prop({ reflect: true }) showLabel = true\n\t@Prop() autocomplete?: Exclude<tidily.Settings[\"autocomplete\"], undefined>\n\t@Prop({ reflect: true }) placeholder: string | undefined\n\t@Prop({ reflect: true }) disabled = false\n\t@Prop({ mutable: true, reflect: true }) readonly = false\n\t@Prop() toInteger?: boolean\n\t@Prop({ reflect: true }) currency?: isoly.Currency\n\t@Prop() min?: number\n\t@Prop() max?: number\n\t@Prop() pad?: number\n\t@Prop({ reflect: true }) invalid?: boolean = false\n\t@Prop({ reflect: true }) errorMessage?: string\n\t@Prop({ reflect: true }) copyable?: boolean\n\t@State() initialValue?: any\n\t@State() state: Readonly<tidily.State> & Readonly<tidily.Settings>\n\t@State() copied = false\n\tisDifferentFromInitial = false\n\tparent: Editable | undefined\n\tprivate stateHandler: InputStateHandler\n\tprivate inputElement: HTMLInputElement | undefined\n\tprivate uneditable = this.readonly\n\tprivate observer = Editable.Observer.create(this)\n\t@Event() smoothlyInputLooks: EventEmitter<(looks?: Looks, color?: Color) => void>\n\t@Event() smoothlyInputLoad: EventEmitter<(parent: Editable) => void>\n\t@Event() smoothlyFormDisable: EventEmitter<(disabled: boolean) => void>\n\t@Event() smoothlyKeydown: EventEmitter<Key>\n\t@Event() smoothlyBlur: EventEmitter<void>\n\t@Event() smoothlyChange: EventEmitter<Record<string, any>>\n\t@Event() smoothlyInput: EventEmitter<Record<string, any>>\n\t@Event() smoothlyUserInput: EventEmitter<Input.UserInput>\n\n\t@Method()\n\tasync getValue(): Promise<any | undefined> {\n\t\treturn this.stateHandler.getValue(this.state)\n\t}\n\t@Method()\n\tasync setValue(value: any): Promise<void> {\n\t\tif (this.inputElement)\n\t\t\tthis.state = this.stateHandler.setValue(this.inputElement, this.state, value)\n\t}\n\t@Method()\n\tasync setFocus(): Promise<void> {\n\t\tthis.inputElement?.focus()\n\t}\n\t@Method()\n\tasync setSelection(start: number, end: number): Promise<void> {\n\t\tif (this.inputElement)\n\t\t\tthis.state = this.stateHandler.setSelection(\n\t\t\t\tthis.inputElement,\n\t\t\t\tthis.state,\n\t\t\t\tstart,\n\t\t\t\tend < 0 ? this.inputElement.value.length + end + 1 : end\n\t\t\t)\n\t}\n\t@Method()\n\tasync listen(listener: Editable.Observer.Listener): Promise<void> {\n\t\tthis.observer.subscribe(listener)\n\t}\n\t@Watch(\"name\")\n\tnameChange(_: string | undefined, oldName: string | undefined) {\n\t\tInput.formRename(this, oldName)\n\t}\n\t@Method()\n\tasync register() {\n\t\tInput.formAdd(this)\n\t}\n\t@Method()\n\tasync unregister() {\n\t\tInput.formRemove(this)\n\t}\n\t@Method()\n\tasync clear(): Promise<void> {\n\t\tif (!this.uneditable && this.inputElement) {\n\t\t\tthis.state = this.stateHandler.setValue(this.inputElement, this.state, undefined)\n\t\t}\n\t}\n\t@Method()\n\tasync edit(editable: boolean): Promise<void> {\n\t\t!this.uneditable && (this.readonly = !editable)\n\t}\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tif (!this.uneditable && this.inputElement) {\n\t\t\tthis.state = this.stateHandler.setValue(this.inputElement, this.state, this.initialValue)\n\t\t}\n\t}\n\t@Method()\n\tasync setInitialValue(): Promise<void> {\n\t\tthis.isDifferentFromInitial = false\n\t\tthis.initialValue = this.value\n\t\tthis.smoothlyInput.emit({ [this.name]: await this.getValue() })\n\t}\n\t@Method()\n\tasync setCustomInitialValue(value: any): Promise<void> {\n\t\tthis.initialValue = value\n\t}\n\t@Listen(\"smoothlyInputLoad\")\n\tasync smoothlyInputLoadHandler(event: CustomEvent<(parent: SmoothlyInput) => void>): Promise<void> {\n\t\tInput.registerSubAction(this, event)\n\t}\n\t@Watch(\"currency\")\n\t@Watch(\"type\")\n\ttypeChange(): void {\n\t\tswitch (this.type) {\n\t\t\tcase \"price\":\n\t\t\t\tthis.stateHandler = InputStateHandler.create(\"price\", { currency: this.currency, toInteger: this.toInteger })\n\t\t\t\tbreak\n\t\t\tcase \"integer\":\n\t\t\t\tthis.stateHandler = InputStateHandler.create(\"integer\", { min: this.min, max: this.max, pad: this.pad })\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tthis.stateHandler = InputStateHandler.create(this.type, getLocale())\n\t\t\t\tbreak\n\t\t}\n\t\tthis.state = this.stateHandler.initialState(this.value ?? this.state?.value, this.inputElement)\n\t}\n\t@Watch(\"state\")\n\tstateChange() {\n\t\tconst value = this.stateHandler.getValue(this.state)\n\t\tthis.isDifferentFromInitial = Deep.notEqual(this.initialValue, value)\n\t\tthis.smoothlyInput.emit({ [this.name]: value })\n\t\tthis.observer.publish()\n\t}\n\t@Watch(\"value\")\n\tvalueChange(value: any) {\n\t\tconst lastValue = this.stateHandler.getValue(this.state)\n\t\tif (Deep.notEqual(lastValue, value) && this.inputElement) {\n\t\t\tthis.state = this.stateHandler.setValue(this.inputElement, this.state, value)\n\t\t\tthis.smoothlyInput.emit({ [this.name]: this.stateHandler.getValue(this.state) })\n\t\t}\n\t}\n\t@Watch(\"disabled\")\n\t@Watch(\"readonly\")\n\treadonlyChange() {\n\t\tthis.observer.publish()\n\t}\n\tcomponentWillLoad() {\n\t\tthis.initialValue = this.value\n\t\tthis.typeChange()\n\t\tthis.smoothlyInputLooks.emit(\n\t\t\t(looks, color) => ((this.looks = this.looks ?? looks), !this.color && (this.color = color))\n\t\t)\n\t\tthis.smoothlyInputLoad.emit(parent => (this.parent = parent))\n\t\t!this.readonly && this.smoothlyFormDisable.emit(readonly => (this.readonly = readonly))\n\t\tthis.observer.publish()\n\t}\n\tcomponentDidLoad() {\n\t\tif (this.inputElement)\n\t\t\tthis.inputElement.value = this.state.value\n\t}\n\tasync disconnectedCallback() {\n\t\tif (!this.element.isConnected)\n\t\t\tawait this.unregister()\n\t}\n\t@Listen(\"input\")\n\t@Listen(\"beforeinput\")\n\tonEvent(event: InputEvent) {\n\t\tthis.state = this.stateHandler.onInputEvent(event, this.state)\n\t\tif (event.type == \"input\" || event.defaultPrevented)\n\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: this.stateHandler.getValue(this.state) })\n\t}\n\tcopyText(value?: string) {\n\t\tif (value) {\n\t\t\tnavigator.clipboard.writeText(value)\n\t\t\tthis.copied = true\n\t\t}\n\t}\n\trender() {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={{ \"has-value\": this.state?.value != undefined && this.state?.value != \"\" }}\n\t\t\t\tonclick={() => this.inputElement?.focus()}>\n\t\t\t\t<slot name=\"start\" />\n\t\t\t\t<div class=\"smoothly-input-container\">\n\t\t\t\t\t<div class={\"guide\"}>\n\t\t\t\t\t\t<div class={\"value\"}>{this.state?.value}</div>\n\t\t\t\t\t\t<div class={\"remainder\"}>{this.state?.remainder}</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<input\n\t\t\t\t\t\tref={(el: HTMLInputElement) => (this.inputElement = el)}\n\t\t\t\t\t\tcolor={this.color}\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\ttype={this.state?.type}\n\t\t\t\t\t\tinputmode={this.state?.inputmode}\n\t\t\t\t\t\tplaceholder={this.placeholder}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tautocomplete={this.autocomplete ?? this.state?.autocomplete}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\treadOnly={this.readonly}\n\t\t\t\t\t\tpattern={this.state?.pattern && this.state?.pattern.source}\n\t\t\t\t\t\tonKeyDown={async event => {\n\t\t\t\t\t\t\tthis.state = this.stateHandler.onKeyDown(event, this.state)\n\t\t\t\t\t\t\tif (!this.readonly && !this.disabled)\n\t\t\t\t\t\t\t\tthis.smoothlyKeydown.emit(Key.create(this.name, event))\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonFocus={event => !this.readonly && (this.state = this.stateHandler.onFocus(event, this.state))}\n\t\t\t\t\t\tonBlur={event => {\n\t\t\t\t\t\t\tif (!this.readonly) {\n\t\t\t\t\t\t\t\tconst lastValue = this.stateHandler.getValue(this.state)\n\t\t\t\t\t\t\t\tthis.state = this.stateHandler.onBlur(event, this.state)\n\t\t\t\t\t\t\t\tthis.smoothlyBlur.emit()\n\t\t\t\t\t\t\t\tthis.smoothlyInput.emit({ [this.name]: this.stateHandler.getValue(this.state) })\n\t\t\t\t\t\t\t\tif (Deep.notEqual(lastValue, this.stateHandler.getValue(this.state))) {\n\t\t\t\t\t\t\t\t\tthis.smoothlyChange.emit({ [this.name]: this.stateHandler.getValue(this.state) })\n\t\t\t\t\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: this.stateHandler.getValue(this.state) })\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t\t<label class={\"label float-on-focus\"} htmlFor={this.name}>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</label>\n\t\t\t\t</div>\n\t\t\t\t{this.copyable && this.value && (\n\t\t\t\t\t<span class=\"copyable\">\n\t\t\t\t\t\t<small>{this.copied ? \"Copied!\" : \"Copy\"}</small>\n\t\t\t\t\t\t<smoothly-icon\n\t\t\t\t\t\t\tname=\"copy-outline\"\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tonClick={() => this.copyText(this.value)}\n\t\t\t\t\t\t\tonMouseLeave={() => (this.copied = false)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t\t<smoothly-icon class=\"smoothly-invalid\" name=\"alert-circle\" size=\"small\" tooltip={this.errorMessage} />\n\t\t\t\t<slot name=\"end\" />\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
@@ -6,9 +6,9 @@ import { d as defineCustomElement$7 } from './p-f893b6cc.js';
6
6
  import { d as defineCustomElement$6 } from './p-ccbdacc9.js';
7
7
  import { d as defineCustomElement$5 } from './p-3aed2b34.js';
8
8
  import { d as defineCustomElement$4 } from './p-604f869e.js';
9
- import { d as defineCustomElement$3 } from './p-75916f5e.js';
9
+ import { d as defineCustomElement$3 } from './p-6337ab02.js';
10
10
  import { d as defineCustomElement$2 } from './p-fd230d2b.js';
11
- import { d as defineCustomElement$1 } from './p-cb02f661.js';
11
+ import { d as defineCustomElement$1 } from './p-82c97ae6.js';
12
12
 
13
13
  const SmoothlyInputRangeDemo = proxyCustomElement(class SmoothlyInputRangeDemo extends H {
14
14
  constructor() {
@@ -86,4 +86,4 @@ defineCustomElement();
86
86
 
87
87
  export { SmoothlyInputRangeDemo as S, defineCustomElement as d };
88
88
 
89
- //# sourceMappingURL=p-9aeab5df.js.map
89
+ //# sourceMappingURL=p-6386d760.js.map
@@ -1 +1 @@
1
- {"file":"p-9aeab5df.js","mappings":";;;;;;;;;;;;MAKa,sBAAsB;;;;;IAClC,MAAM;QACL,QACC,EAAC,IAAI,uDACJ,qEAAc,EACd,4EAAqB,EACrB,6EAAsB,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,cAAc,GAAI,EACxF,gFAAyB,EACzB,6EAAsB,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,GAAI,EAC1D,uEAAgB,EAChB,6EAAsB,IAAI,EAAC,SAAS,EAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,GAAI,EAC7E,mGAA4C,EAC5C,6EAAsB,IAAI,EAAE,CAAC,EAAE,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAC,QAAQ,IAC1D,sEAAe,IAAI,EAAC,kBAAkB,EAAC,IAAI,EAAC,OAAO,GAAG,EACtD,6EAAsB,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,KAAK,GAAG,CACzB,CACjB,EACP;KACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/input/range/demo/index.tsx"],"sourcesContent":["import { Component, h, Host } from \"@stencil/core\"\n\n@Component({\n\ttag: \"smoothly-input-range-demo\",\n})\nexport class SmoothlyInputRangeDemo {\n\trender() {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<h2>Range</h2>\n\t\t\t\t<h3>Phone Number</h3>\n\t\t\t\t<smoothly-input-range min={700000000} max={799999999} step={1} label={\"Phone Number\"} />\n\t\t\t\t<h3>Stars out of ten</h3>\n\t\t\t\t<smoothly-input-range max={10} step={1} label={\"Stars\"} />\n\t\t\t\t<h3>Percent</h3>\n\t\t\t\t<smoothly-input-range type=\"percent\" max={1} step={0.01} label={\"Percent\"} />\n\t\t\t\t<h3>With icon at start and clear button</h3>\n\t\t\t\t<smoothly-input-range step={1} name=\"range2\" label=\"Select\">\n\t\t\t\t\t<smoothly-icon name=\"checkmark-circle\" slot=\"start\" />\n\t\t\t\t\t<smoothly-input-clear size=\"icon\" slot=\"end\" />\n\t\t\t\t</smoothly-input-range>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
1
+ {"file":"p-6386d760.js","mappings":";;;;;;;;;;;;MAKa,sBAAsB;;;;;IAClC,MAAM;QACL,QACC,EAAC,IAAI,uDACJ,qEAAc,EACd,4EAAqB,EACrB,6EAAsB,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,cAAc,GAAI,EACxF,gFAAyB,EACzB,6EAAsB,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,GAAI,EAC1D,uEAAgB,EAChB,6EAAsB,IAAI,EAAC,SAAS,EAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,GAAI,EAC7E,mGAA4C,EAC5C,6EAAsB,IAAI,EAAE,CAAC,EAAE,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAC,QAAQ,IAC1D,sEAAe,IAAI,EAAC,kBAAkB,EAAC,IAAI,EAAC,OAAO,GAAG,EACtD,6EAAsB,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,KAAK,GAAG,CACzB,CACjB,EACP;KACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/input/range/demo/index.tsx"],"sourcesContent":["import { Component, h, Host } from \"@stencil/core\"\n\n@Component({\n\ttag: \"smoothly-input-range-demo\",\n})\nexport class SmoothlyInputRangeDemo {\n\trender() {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<h2>Range</h2>\n\t\t\t\t<h3>Phone Number</h3>\n\t\t\t\t<smoothly-input-range min={700000000} max={799999999} step={1} label={\"Phone Number\"} />\n\t\t\t\t<h3>Stars out of ten</h3>\n\t\t\t\t<smoothly-input-range max={10} step={1} label={\"Stars\"} />\n\t\t\t\t<h3>Percent</h3>\n\t\t\t\t<smoothly-input-range type=\"percent\" max={1} step={0.01} label={\"Percent\"} />\n\t\t\t\t<h3>With icon at start and clear button</h3>\n\t\t\t\t<smoothly-input-range step={1} name=\"range2\" label=\"Select\">\n\t\t\t\t\t<smoothly-icon name=\"checkmark-circle\" slot=\"start\" />\n\t\t\t\t\t<smoothly-input-clear size=\"icon\" slot=\"end\" />\n\t\t\t\t</smoothly-input-range>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
@@ -4,7 +4,7 @@ import { E as Editable } from './p-ddd5bc95.js';
4
4
  import { I as Input } from './p-c9caeeb4.js';
5
5
  import { d as defineCustomElement$6 } from './p-5eafd1ac.js';
6
6
  import { d as defineCustomElement$5 } from './p-604f869e.js';
7
- import { d as defineCustomElement$4 } from './p-75916f5e.js';
7
+ import { d as defineCustomElement$4 } from './p-6337ab02.js';
8
8
  import { d as defineCustomElement$3 } from './p-b34956f3.js';
9
9
  import { d as defineCustomElement$2 } from './p-efb6497e.js';
10
10
  import { d as defineCustomElement$1 } from './p-33c30e05.js';
@@ -241,4 +241,4 @@ defineCustomElement();
241
241
 
242
242
  export { SmoothlyInputDateTime as S, defineCustomElement as d };
243
243
 
244
- //# sourceMappingURL=p-8f9e26ce.js.map
244
+ //# sourceMappingURL=p-73a6bddc.js.map
@@ -1 +1 @@
1
- {"file":"p-8f9e26ce.js","mappings":";;;;;;;;;;;AAAA,MAAM,QAAQ,GAAG,q9MAAq9M,CAAC;AACv+M,oCAAe,QAAQ;;MCyBV,qBAAqB;;;;;;;;;;QAUjC,2BAAsB,GAAG,KAAK,CAAA;QAEtB,aAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;;;;wBAPE,KAAK;;uBAEX,KAAK;;;;yBAQb,IAAI;;;;;;;IAazC,iBAAiB;QAChB,IAAI,CAAC,eAAe,EAAE,CAAA;QACtB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAC3B,CAAC,KAAK,EAAE,KAAK,eAAK,QAAC,CAAC,IAAI,CAAC,KAAK,GAAG,MAAA,IAAI,CAAC,KAAK,mCAAI,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,EAAC,EAAA,CAC3F,CAAA;QACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAA;QAC7D,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAA;QACvF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;QACvB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;KAC5B;IACD,MAAM,oBAAoB;QACzB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;YAC5B,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;KACxB;IAED,UAAU,CAAC,CAAqB,EAAE,OAA2B;QAC5D,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;KAC/B;IAED,MAAM,QAAQ;QACb,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;KACnB;IAED,MAAM,UAAU;QACf,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;KACtB;IAED,MAAM,QAAQ;QACb,MAAM,KAAK,GACV,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,IAAI,QAAQ,IAAI,OAAO,IAAI,CAAC,MAAM,IAAI,QAAQ;cACxE,GAAG,IAAI,CAAC,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU;cAC9F,SAAS,CAAA;QACb,OAAOA,QAAc,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,SAAS,CAAA;KACnD;IAED,MAAM,MAAM,CAAC,QAAoC;QAChD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;KACjC;IAED,MAAM,KAAK;QACV,IAAI,CAAC,KAAK,GAAG,SAAS,CAAA;QACtB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAA;QACrB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAA;QACrB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;KACvB;IAKD,MAAM,YAAY;QACjB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QACnC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,EAAE,CAAC,CAAA;QAC/C,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;KACvB;IAGD,WAAW,CAAC,KAAsB;QACjC,IAAIA,QAAc,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE;YAC7B,IAAI,CAAC,IAAI,GAAGA,QAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACzC,IAAI,CAAC,IAAI,GAAGA,QAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACzC,IAAI,CAAC,MAAM,GAAGA,QAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;SAC7C;QACD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,EAAE,CAAC,CAAA;QAC/C,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;KACvB;IAGD,gBAAgB;QACf,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;KACvB;IAED,yBAAyB,CAAC,KAA0C;QACnE,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO;YAC/B,KAAK,CAAC,eAAe,EAAE,CAAA;KACxB;IAED,wBAAwB,CAAC,KAA2D;QACnF,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;KACpC;IAED,aAAa,CAAC,KAAY;QACzB,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KACrF;IAED,MAAM,IAAI,CAAC,QAAiB;QAC3B,IAAI,CAAC,QAAQ,GAAG,CAAC,QAAQ,CAAA;KACzB;IAED,MAAM,KAAK;QACV,IAAIA,QAAc,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YACzC,IAAI,CAAC,IAAI,GAAGA,QAAc,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACrD,IAAI,CAAC,IAAI,GAAGA,QAAc,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACrD,IAAI,CAAC,MAAM,GAAGA,QAAc,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;SACzD;aAAM;YACN,IAAI,CAAC,IAAI,GAAG,SAAS,CAAA;YACrB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAA;YACrB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;SACvB;KACD;IAED,MAAM,eAAe;QACpB,IAAI,CAAC,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QACzC,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAA;KACnC;IACD,MAAM;QACL,QACC,EAAC,IAAI,uDACJ,uEACC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,aAAa,GAAG,IAAI,CAAC,KAAK,GAAG,SAAS,EAC3D,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAC3E,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAC3E,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,IAAI,CAAC,IAAI,EAChB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,EAC7C,eAAe,EAAE,OAAM,CAAC;gBACvB,CAAC,CAAC,eAAe,EAAE,CAAA;gBACnB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAA;aACzB,EACD,mBAAmB,EAAE,OAAM,CAAC;gBAC3B,CAAC,CAAC,eAAe,EAAE,CAAA;gBACnB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;aAC9E,IACD,8DAAQ,CACQ,EACjB,uEACC,IAAI,EAAC,MAAM,EACX,IAAI,EAAC,SAAS,EACd,GAAG,EAAE,EAAE,EACP,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,IAAI,CAAC,IAAI,EAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,WAAW,EAAC,IAAI,EAChB,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,EAC7C,eAAe,EAAE,OAAM,CAAC;gBACvB,CAAC,CAAC,eAAe,EAAE,CAAA;gBACnB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAA;aACzB,EACD,mBAAmB,EAAE,OAAM,CAAC;gBAC3B,CAAC,CAAC,eAAe,EAAE,CAAA;gBACnB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;aAC9E,GACA,EACF,6DAAM,KAAK,EAAC,OAAO,QAAS,EAC5B,uEACC,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,SAAS,EACd,GAAG,EAAE,EAAE,EACP,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,IAAI,CAAC,MAAM,EAClB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,WAAW,EAAC,IAAI,EAChB,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,EAC7C,eAAe,EAAE,OAAM,CAAC;gBACvB,CAAC,CAAC,eAAe,EAAE,CAAA;gBACnB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAA;aAC7B,EACD,mBAAmB,EAAE,OAAM,CAAC;gBAC3B,CAAC,CAAC,eAAe,EAAE,CAAA;gBACnB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;aAC9E,GACA,EACF,6DAAM,KAAK,EAAC,OAAO,IAClB,sEAAe,KAAK,EAAC,kBAAkB,EAAC,IAAI,EAAC,cAAc,EAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAE,IAAI,CAAC,YAAY,GAAI,EACvG,6DAAM,IAAI,EAAE,KAAK,GAAI,CACf,EACN,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,KAC3B,0EACC,WAAW,EAAE,KAAK,EAClB,KAAK,EAAE,IAAI,CAAC,KAAK,GAAGA,QAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,SAAS,EAClE,GAAG,EAAE,IAAI,CAAC,GAAG,GAAGA,QAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,EAC5D,GAAG,EAAE,IAAI,CAAC,GAAG,GAAGA,QAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,EAC5D,iBAAiB,EAAE,OAAM,CAAC;gBACzB,CAAC,CAAC,eAAe,EAAE,CAAA;gBACnB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,MAAM,CAAA;gBACpB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;gBAC9E,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;aACjB,IACD,4DAAK,IAAI,EAAE,YAAY,IACtB,6DAAM,IAAI,EAAE,YAAY,GAAI,CACvB,EACN,4DAAK,IAAI,EAAE,aAAa,IACvB,6DAAM,IAAI,EAAE,aAAa,GAAI,CACxB,CACa,CACpB,CACK,EACP;KACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["isoly.DateTime"],"sources":["src/components/input/date/time/style.css?tag=smoothly-input-date-time&encapsulation=scoped","src/components/input/date/time/index.tsx"],"sourcesContent":["@import \"../../shared.css\";\n\n:host {\n\tdisplay: flex;\n\tposition: relative;\n\tmax-width: 100vw;\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tbox-sizing: border-box;\n\tmin-height: var(--input-min-height);\n}\n\n:host>smoothly-input {\n\t--input-min-height: calc(var(--input-min-height) - 2px);\n\t--smoothly-input-border-focus: none;\n}\n\n:host:not([readonly])>smoothly-input>div>input {\n\tcursor: pointer;\n}\n\n:host[disabled],\n:host[disabled]>smoothly-input>div>input {\n\tcursor: not-allowed;\n}\n\n:host[looks=transparent] smoothly-input {\n\toutline: none;\n}\n\n:host>smoothly-calendar {\n\tposition: absolute;\n\tz-index: 20;\n\ttop: 4rem;\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tmin-width: 18rem;\n\tmax-width: 22rem;\n}\n\n:host>smoothly-calendar::before {\n\tcontent: \"\";\n\tbox-sizing: border-box;\n\tposition: absolute;\n\ttop: -0.55rem;\n\tleft: 2rem;\n\tz-index: 9;\n\ttransform: rotate(45deg);\n\twidth: 1rem;\n\theight: 1rem;\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tborder-top: 1px solid rgb(var(--smoothly-input-border));\n\tborder-left: 1px solid rgb(var(--smoothly-input-border));\n}\n\n:host>span.icons {\n\tdisplay: flex;\n\tflex-direction: row;\n\talign-items: center;\n}\n:host>smoothly-input[name=\"date\"] {\n\twidth: 12rem;\n}\n:host>smoothly-input[name=\"hour\"] {\n\twidth: 4rem;\n}\n:host>smoothly-input[name=\"minute\"] {\n\tmin-width: 4rem;\n\tflex-grow: 1;\n}\n:host>span.colon {\n\tpadding: \n\t\tvar(--input-value-padding-top) \n\t\tvar(--input-padding-side) \n\t\tvar(--input-value-padding-bottom) \n\t\tvar(--input-padding-side);\n}\n:host>.icons>.smoothly-invalid {\n\tdisplay: none;\n\tz-index: 2;\n\tcursor: pointer;\n\tpadding: 0.5rem;\n}\n:host[invalid]>.icons>.smoothly-invalid {\n\tdisplay: flex;\n}\n","import {\n\tComponent,\n\tComponentWillLoad,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tMethod,\n\tProp,\n\tState,\n\tWatch,\n} from \"@stencil/core\"\nimport { isoly } from \"isoly\"\nimport { Color } from \"../../../../model\"\nimport { Clearable } from \"../../Clearable\"\nimport { Editable } from \"../../Editable\"\nimport { Input } from \"../../Input\"\nimport { Looks } from \"../../Looks\"\n\n@Component({\n\ttag: \"smoothly-input-date-time\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyInputDateTime implements ComponentWillLoad, Clearable, Input, Editable {\n\t@Element() element: HTMLElement\n\t@Prop({ reflect: true, mutable: true }) color?: Color\n\t@Prop({ reflect: true, mutable: true }) looks?: Looks\n\t@Prop({ reflect: true }) name: string\n\t@Prop({ reflect: true, mutable: true }) readonly = false\n\t@Prop({ reflect: true }) disabled?: boolean\n\t@Prop({ reflect: true }) invalid?: boolean = false\n\t@Prop({ reflect: true }) errorMessage?: string\n\tparent: Editable | undefined\n\tisDifferentFromInitial = false\n\tprivate initialValue?: isoly.DateTime\n\tprivate observer = Editable.Observer.create(this)\n\t@Prop({ mutable: true }) value?: isoly.DateTime\n\t@Prop({ mutable: true }) open: boolean\n\t@Prop({ reflect: true }) showLabel = true\n\t@Prop() min?: isoly.DateTime\n\t@Prop() max?: isoly.DateTime\n\t@State() date?: isoly.Date\n\t@State() hour?: number\n\t@State() minute?: number\n\t@Event() smoothlyInputLoad: EventEmitter<(parent: Editable) => void>\n\t@Event() smoothlyValueChange: EventEmitter<isoly.DateTime>\n\t@Event() smoothlyInput: EventEmitter<Record<string, any>>\n\t@Event() smoothlyUserInput: EventEmitter<Input.UserInput>\n\t@Event() smoothlyInputLooks: EventEmitter<(looks?: Looks, color?: Color) => void>\n\t@Event() smoothlyFormDisable: EventEmitter<(disabled: boolean) => void>\n\n\tcomponentWillLoad(): void {\n\t\tthis.setInitialValue()\n\t\tthis.smoothlyInputLooks.emit(\n\t\t\t(looks, color) => ((this.looks = this.looks ?? looks), !this.color && (this.color = color))\n\t\t)\n\t\tthis.smoothlyInputLoad.emit(parent => (this.parent = parent))\n\t\t!this.readonly && this.smoothlyFormDisable.emit(readonly => (this.readonly = readonly))\n\t\tthis.observer.publish()\n\t\tthis.valueChange(this.value)\n\t}\n\tasync disconnectedCallback() {\n\t\tif (!this.element.isConnected)\n\t\t\tawait this.unregister()\n\t}\n\t@Watch(\"name\")\n\tnameChange(_: string | undefined, oldName: string | undefined) {\n\t\tInput.formRename(this, oldName)\n\t}\n\t@Method()\n\tasync register() {\n\t\tInput.formAdd(this)\n\t}\n\t@Method()\n\tasync unregister() {\n\t\tInput.formRemove(this)\n\t}\n\t@Method()\n\tasync getValue(): Promise<isoly.DateTime | undefined> {\n\t\tconst value =\n\t\t\tthis.date && typeof this.hour == \"number\" && typeof this.minute == \"number\"\n\t\t\t\t? `${this.date}T${`${this.hour}`.padStart(2, \"0\")}:${`${this.minute}`.padStart(2, \"0\")}:00.000Z`\n\t\t\t\t: undefined\n\t\treturn isoly.DateTime.is(value) ? value : undefined\n\t}\n\t@Method()\n\tasync listen(listener: Editable.Observer.Listener): Promise<void> {\n\t\tthis.observer.subscribe(listener)\n\t}\n\t@Method()\n\tasync clear(): Promise<void> {\n\t\tthis.value = undefined\n\t\tthis.date = undefined\n\t\tthis.hour = undefined\n\t\tthis.minute = undefined\n\t}\n\n\t@Watch(\"date\")\n\t@Watch(\"hour\")\n\t@Watch(\"minute\")\n\tasync handleChange() {\n\t\tconst value = await this.getValue()\n\t\tthis.smoothlyValueChange.emit(value)\n\t\tthis.smoothlyInput.emit({ [this.name]: value })\n\t\tthis.observer.publish()\n\t}\n\n\t@Watch(\"value\")\n\tvalueChange(value?: isoly.DateTime) {\n\t\tif (isoly.DateTime.is(value)) {\n\t\t\tthis.date = isoly.DateTime.getDate(value)\n\t\t\tthis.hour = isoly.DateTime.getHour(value)\n\t\t\tthis.minute = isoly.DateTime.getMinute(value)\n\t\t}\n\t\tthis.smoothlyValueChange.emit(value)\n\t\tthis.smoothlyInput.emit({ [this.name]: value })\n\t\tthis.observer.publish()\n\t}\n\t@Watch(\"disabled\")\n\t@Watch(\"readonly\")\n\twatchingReadonly(): void {\n\t\tthis.observer.publish()\n\t}\n\t@Listen(\"smoothlyInputLooks\")\n\tsmoothlyInputLooksHandler(event: CustomEvent<(looks: Looks) => void>) {\n\t\tif (event.target != this.element)\n\t\t\tevent.stopPropagation()\n\t}\n\t@Listen(\"smoothlyInputLoad\")\n\tsmoothlyInputLoadHandler(event: CustomEvent<(parent: SmoothlyInputDateTime) => void>): void {\n\t\tInput.registerSubAction(this, event)\n\t}\n\t@Listen(\"click\", { target: \"window\" })\n\tonWindowClick(event: Event): void {\n\t\t!event.composedPath().includes(this.element) && this.open && (this.open = !this.open)\n\t}\n\t@Method()\n\tasync edit(editable: boolean) {\n\t\tthis.readonly = !editable\n\t}\n\t@Method()\n\tasync reset() {\n\t\tif (isoly.DateTime.is(this.initialValue)) {\n\t\t\tthis.date = isoly.DateTime.getDate(this.initialValue)\n\t\t\tthis.hour = isoly.DateTime.getHour(this.initialValue)\n\t\t\tthis.minute = isoly.DateTime.getMinute(this.initialValue)\n\t\t} else {\n\t\t\tthis.date = undefined\n\t\t\tthis.hour = undefined\n\t\t\tthis.minute = undefined\n\t\t}\n\t}\n\t@Method()\n\tasync setInitialValue() {\n\t\tthis.initialValue = await this.getValue()\n\t\tthis.isDifferentFromInitial = false\n\t}\n\trender() {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<smoothly-input\n\t\t\t\t\tcolor={this.color}\n\t\t\t\t\tlooks={this.looks == \"transparent\" ? this.looks : undefined}\n\t\t\t\t\tname={\"date\"}\n\t\t\t\t\tonFocus={() => !this.readonly && !this.disabled && (this.open = !this.open)}\n\t\t\t\t\tonClick={() => !this.readonly && !this.disabled && (this.open = !this.open)}\n\t\t\t\t\treadonly={this.readonly}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\ttype=\"date\"\n\t\t\t\t\tvalue={this.date}\n\t\t\t\t\tshowLabel={this.showLabel}\n\t\t\t\t\tonSmoothlyInputLoad={e => e.stopPropagation()}\n\t\t\t\t\tonSmoothlyInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.date = e.detail.date\n\t\t\t\t\t}}\n\t\t\t\t\tonSmoothlyUserInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: await this.getValue() })\n\t\t\t\t\t}}>\n\t\t\t\t\t<slot />\n\t\t\t\t</smoothly-input>\n\t\t\t\t<smoothly-input\n\t\t\t\t\tname=\"hour\"\n\t\t\t\t\ttype=\"integer\"\n\t\t\t\t\tmax={23}\n\t\t\t\t\tpad={2}\n\t\t\t\t\tvalue={this.hour}\n\t\t\t\t\treadonly={this.readonly}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\tplaceholder=\"hh\"\n\t\t\t\t\tonSmoothlyInputLoad={e => e.stopPropagation()}\n\t\t\t\t\tonSmoothlyInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.hour = e.detail.hour\n\t\t\t\t\t}}\n\t\t\t\t\tonSmoothlyUserInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: await this.getValue() })\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t\t<span class=\"colon\">:</span>\n\t\t\t\t<smoothly-input\n\t\t\t\t\tname=\"minute\"\n\t\t\t\t\ttype=\"integer\"\n\t\t\t\t\tmax={59}\n\t\t\t\t\tpad={2}\n\t\t\t\t\tvalue={this.minute}\n\t\t\t\t\treadonly={this.readonly}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\tplaceholder=\"mm\"\n\t\t\t\t\tonSmoothlyInputLoad={e => e.stopPropagation()}\n\t\t\t\t\tonSmoothlyInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.minute = e.detail.minute\n\t\t\t\t\t}}\n\t\t\t\t\tonSmoothlyUserInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: await this.getValue() })\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t\t<span class=\"icons\">\n\t\t\t\t\t<smoothly-icon class=\"smoothly-invalid\" name=\"alert-circle\" size=\"small\" tooltip={this.errorMessage} />\n\t\t\t\t\t<slot name={\"end\"} />\n\t\t\t\t</span>\n\t\t\t\t{this.open && !this.readonly && (\n\t\t\t\t\t<smoothly-calendar\n\t\t\t\t\t\tdoubleInput={false}\n\t\t\t\t\t\tvalue={this.value ? isoly.DateTime.getDate(this.value) : undefined}\n\t\t\t\t\t\tmin={this.min ? isoly.DateTime.getDate(this.min) : undefined}\n\t\t\t\t\t\tmax={this.max ? isoly.DateTime.getDate(this.max) : undefined}\n\t\t\t\t\t\tonSmoothlyDateSet={async e => {\n\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\tthis.date = e.detail\n\t\t\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: await this.getValue() })\n\t\t\t\t\t\t\tthis.open = false\n\t\t\t\t\t\t}}>\n\t\t\t\t\t\t<div slot={\"year-label\"}>\n\t\t\t\t\t\t\t<slot name={\"year-label\"} />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div slot={\"month-label\"}>\n\t\t\t\t\t\t\t<slot name={\"month-label\"} />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</smoothly-calendar>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
1
+ {"file":"p-73a6bddc.js","mappings":"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","names":["isoly.DateTime"],"sources":["src/components/input/date/time/style.css?tag=smoothly-input-date-time&encapsulation=scoped","src/components/input/date/time/index.tsx"],"sourcesContent":["@import \"../../shared.css\";\n\n:host {\n\tdisplay: flex;\n\tposition: relative;\n\tmax-width: 100vw;\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tbox-sizing: border-box;\n\tmin-height: var(--input-min-height);\n}\n\n:host>smoothly-input {\n\t--input-min-height: calc(var(--input-min-height) - 2px);\n\t--smoothly-input-border-focus: none;\n}\n\n:host:not([readonly])>smoothly-input>div>input {\n\tcursor: pointer;\n}\n\n:host[disabled],\n:host[disabled]>smoothly-input>div>input {\n\tcursor: not-allowed;\n}\n\n:host[looks=transparent] smoothly-input {\n\toutline: none;\n}\n\n:host>smoothly-calendar {\n\tposition: absolute;\n\tz-index: 20;\n\ttop: 4rem;\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tmin-width: 18rem;\n\tmax-width: 22rem;\n}\n\n:host>smoothly-calendar::before {\n\tcontent: \"\";\n\tbox-sizing: border-box;\n\tposition: absolute;\n\ttop: -0.55rem;\n\tleft: 2rem;\n\tz-index: 9;\n\ttransform: rotate(45deg);\n\twidth: 1rem;\n\theight: 1rem;\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tborder-top: 1px solid rgb(var(--smoothly-input-border));\n\tborder-left: 1px solid rgb(var(--smoothly-input-border));\n}\n\n:host>span.icons {\n\tdisplay: flex;\n\tflex-direction: row;\n\talign-items: center;\n}\n:host>smoothly-input[name=\"date\"] {\n\twidth: 12rem;\n}\n:host>smoothly-input[name=\"hour\"] {\n\twidth: 4rem;\n}\n:host>smoothly-input[name=\"minute\"] {\n\tmin-width: 4rem;\n\tflex-grow: 1;\n}\n:host>span.colon {\n\tpadding: \n\t\tvar(--input-value-padding-top) \n\t\tvar(--input-padding-side) \n\t\tvar(--input-value-padding-bottom) \n\t\tvar(--input-padding-side);\n}\n:host>.icons>.smoothly-invalid {\n\tdisplay: none;\n\tz-index: 2;\n\tcursor: pointer;\n\tpadding: 0.5rem;\n}\n:host[invalid]>.icons>.smoothly-invalid {\n\tdisplay: flex;\n}\n","import {\n\tComponent,\n\tComponentWillLoad,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tMethod,\n\tProp,\n\tState,\n\tWatch,\n} from \"@stencil/core\"\nimport { isoly } from \"isoly\"\nimport { Color } from \"../../../../model\"\nimport { Clearable } from \"../../Clearable\"\nimport { Editable } from \"../../Editable\"\nimport { Input } from \"../../Input\"\nimport { Looks } from \"../../Looks\"\n\n@Component({\n\ttag: \"smoothly-input-date-time\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyInputDateTime implements ComponentWillLoad, Clearable, Input, Editable {\n\t@Element() element: HTMLElement\n\t@Prop({ reflect: true, mutable: true }) color?: Color\n\t@Prop({ reflect: true, mutable: true }) looks?: Looks\n\t@Prop({ reflect: true }) name: string\n\t@Prop({ reflect: true, mutable: true }) readonly = false\n\t@Prop({ reflect: true }) disabled?: boolean\n\t@Prop({ reflect: true }) invalid?: boolean = false\n\t@Prop({ reflect: true }) errorMessage?: string\n\tparent: Editable | undefined\n\tisDifferentFromInitial = false\n\tprivate initialValue?: isoly.DateTime\n\tprivate observer = Editable.Observer.create(this)\n\t@Prop({ mutable: true }) value?: isoly.DateTime\n\t@Prop({ mutable: true }) open: boolean\n\t@Prop({ reflect: true }) showLabel = true\n\t@Prop() min?: isoly.DateTime\n\t@Prop() max?: isoly.DateTime\n\t@State() date?: isoly.Date\n\t@State() hour?: number\n\t@State() minute?: number\n\t@Event() smoothlyInputLoad: EventEmitter<(parent: Editable) => void>\n\t@Event() smoothlyValueChange: EventEmitter<isoly.DateTime>\n\t@Event() smoothlyInput: EventEmitter<Record<string, any>>\n\t@Event() smoothlyUserInput: EventEmitter<Input.UserInput>\n\t@Event() smoothlyInputLooks: EventEmitter<(looks?: Looks, color?: Color) => void>\n\t@Event() smoothlyFormDisable: EventEmitter<(disabled: boolean) => void>\n\n\tcomponentWillLoad(): void {\n\t\tthis.setInitialValue()\n\t\tthis.smoothlyInputLooks.emit(\n\t\t\t(looks, color) => ((this.looks = this.looks ?? looks), !this.color && (this.color = color))\n\t\t)\n\t\tthis.smoothlyInputLoad.emit(parent => (this.parent = parent))\n\t\t!this.readonly && this.smoothlyFormDisable.emit(readonly => (this.readonly = readonly))\n\t\tthis.observer.publish()\n\t\tthis.valueChange(this.value)\n\t}\n\tasync disconnectedCallback() {\n\t\tif (!this.element.isConnected)\n\t\t\tawait this.unregister()\n\t}\n\t@Watch(\"name\")\n\tnameChange(_: string | undefined, oldName: string | undefined) {\n\t\tInput.formRename(this, oldName)\n\t}\n\t@Method()\n\tasync register() {\n\t\tInput.formAdd(this)\n\t}\n\t@Method()\n\tasync unregister() {\n\t\tInput.formRemove(this)\n\t}\n\t@Method()\n\tasync getValue(): Promise<isoly.DateTime | undefined> {\n\t\tconst value =\n\t\t\tthis.date && typeof this.hour == \"number\" && typeof this.minute == \"number\"\n\t\t\t\t? `${this.date}T${`${this.hour}`.padStart(2, \"0\")}:${`${this.minute}`.padStart(2, \"0\")}:00.000Z`\n\t\t\t\t: undefined\n\t\treturn isoly.DateTime.is(value) ? value : undefined\n\t}\n\t@Method()\n\tasync listen(listener: Editable.Observer.Listener): Promise<void> {\n\t\tthis.observer.subscribe(listener)\n\t}\n\t@Method()\n\tasync clear(): Promise<void> {\n\t\tthis.value = undefined\n\t\tthis.date = undefined\n\t\tthis.hour = undefined\n\t\tthis.minute = undefined\n\t}\n\n\t@Watch(\"date\")\n\t@Watch(\"hour\")\n\t@Watch(\"minute\")\n\tasync handleChange() {\n\t\tconst value = await this.getValue()\n\t\tthis.smoothlyValueChange.emit(value)\n\t\tthis.smoothlyInput.emit({ [this.name]: value })\n\t\tthis.observer.publish()\n\t}\n\n\t@Watch(\"value\")\n\tvalueChange(value?: isoly.DateTime) {\n\t\tif (isoly.DateTime.is(value)) {\n\t\t\tthis.date = isoly.DateTime.getDate(value)\n\t\t\tthis.hour = isoly.DateTime.getHour(value)\n\t\t\tthis.minute = isoly.DateTime.getMinute(value)\n\t\t}\n\t\tthis.smoothlyValueChange.emit(value)\n\t\tthis.smoothlyInput.emit({ [this.name]: value })\n\t\tthis.observer.publish()\n\t}\n\t@Watch(\"disabled\")\n\t@Watch(\"readonly\")\n\twatchingReadonly(): void {\n\t\tthis.observer.publish()\n\t}\n\t@Listen(\"smoothlyInputLooks\")\n\tsmoothlyInputLooksHandler(event: CustomEvent<(looks: Looks) => void>) {\n\t\tif (event.target != this.element)\n\t\t\tevent.stopPropagation()\n\t}\n\t@Listen(\"smoothlyInputLoad\")\n\tsmoothlyInputLoadHandler(event: CustomEvent<(parent: SmoothlyInputDateTime) => void>): void {\n\t\tInput.registerSubAction(this, event)\n\t}\n\t@Listen(\"click\", { target: \"window\" })\n\tonWindowClick(event: Event): void {\n\t\t!event.composedPath().includes(this.element) && this.open && (this.open = !this.open)\n\t}\n\t@Method()\n\tasync edit(editable: boolean) {\n\t\tthis.readonly = !editable\n\t}\n\t@Method()\n\tasync reset() {\n\t\tif (isoly.DateTime.is(this.initialValue)) {\n\t\t\tthis.date = isoly.DateTime.getDate(this.initialValue)\n\t\t\tthis.hour = isoly.DateTime.getHour(this.initialValue)\n\t\t\tthis.minute = isoly.DateTime.getMinute(this.initialValue)\n\t\t} else {\n\t\t\tthis.date = undefined\n\t\t\tthis.hour = undefined\n\t\t\tthis.minute = undefined\n\t\t}\n\t}\n\t@Method()\n\tasync setInitialValue() {\n\t\tthis.initialValue = await this.getValue()\n\t\tthis.isDifferentFromInitial = false\n\t}\n\trender() {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<smoothly-input\n\t\t\t\t\tcolor={this.color}\n\t\t\t\t\tlooks={this.looks == \"transparent\" ? this.looks : undefined}\n\t\t\t\t\tname={\"date\"}\n\t\t\t\t\tonFocus={() => !this.readonly && !this.disabled && (this.open = !this.open)}\n\t\t\t\t\tonClick={() => !this.readonly && !this.disabled && (this.open = !this.open)}\n\t\t\t\t\treadonly={this.readonly}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\ttype=\"date\"\n\t\t\t\t\tvalue={this.date}\n\t\t\t\t\tshowLabel={this.showLabel}\n\t\t\t\t\tonSmoothlyInputLoad={e => e.stopPropagation()}\n\t\t\t\t\tonSmoothlyInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.date = e.detail.date\n\t\t\t\t\t}}\n\t\t\t\t\tonSmoothlyUserInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: await this.getValue() })\n\t\t\t\t\t}}>\n\t\t\t\t\t<slot />\n\t\t\t\t</smoothly-input>\n\t\t\t\t<smoothly-input\n\t\t\t\t\tname=\"hour\"\n\t\t\t\t\ttype=\"integer\"\n\t\t\t\t\tmax={23}\n\t\t\t\t\tpad={2}\n\t\t\t\t\tvalue={this.hour}\n\t\t\t\t\treadonly={this.readonly}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\tplaceholder=\"hh\"\n\t\t\t\t\tonSmoothlyInputLoad={e => e.stopPropagation()}\n\t\t\t\t\tonSmoothlyInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.hour = e.detail.hour\n\t\t\t\t\t}}\n\t\t\t\t\tonSmoothlyUserInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: await this.getValue() })\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t\t<span class=\"colon\">:</span>\n\t\t\t\t<smoothly-input\n\t\t\t\t\tname=\"minute\"\n\t\t\t\t\ttype=\"integer\"\n\t\t\t\t\tmax={59}\n\t\t\t\t\tpad={2}\n\t\t\t\t\tvalue={this.minute}\n\t\t\t\t\treadonly={this.readonly}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\tplaceholder=\"mm\"\n\t\t\t\t\tonSmoothlyInputLoad={e => e.stopPropagation()}\n\t\t\t\t\tonSmoothlyInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.minute = e.detail.minute\n\t\t\t\t\t}}\n\t\t\t\t\tonSmoothlyUserInput={async e => {\n\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: await this.getValue() })\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t\t<span class=\"icons\">\n\t\t\t\t\t<smoothly-icon class=\"smoothly-invalid\" name=\"alert-circle\" size=\"small\" tooltip={this.errorMessage} />\n\t\t\t\t\t<slot name={\"end\"} />\n\t\t\t\t</span>\n\t\t\t\t{this.open && !this.readonly && (\n\t\t\t\t\t<smoothly-calendar\n\t\t\t\t\t\tdoubleInput={false}\n\t\t\t\t\t\tvalue={this.value ? isoly.DateTime.getDate(this.value) : undefined}\n\t\t\t\t\t\tmin={this.min ? isoly.DateTime.getDate(this.min) : undefined}\n\t\t\t\t\t\tmax={this.max ? isoly.DateTime.getDate(this.max) : undefined}\n\t\t\t\t\t\tonSmoothlyDateSet={async e => {\n\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\tthis.date = e.detail\n\t\t\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: await this.getValue() })\n\t\t\t\t\t\t\tthis.open = false\n\t\t\t\t\t\t}}>\n\t\t\t\t\t\t<div slot={\"year-label\"}>\n\t\t\t\t\t\t\t<slot name={\"year-label\"} />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div slot={\"month-label\"}>\n\t\t\t\t\t\t\t<slot name={\"month-label\"} />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</smoothly-calendar>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
@@ -10,8 +10,8 @@ import { d as defineCustomElement$7 } from './p-f893b6cc.js';
10
10
  import { d as defineCustomElement$6 } from './p-ccbdacc9.js';
11
11
  import { d as defineCustomElement$5 } from './p-3aed2b34.js';
12
12
  import { d as defineCustomElement$4 } from './p-604f869e.js';
13
- import { d as defineCustomElement$3 } from './p-75916f5e.js';
14
- import { d as defineCustomElement$2 } from './p-cb02f661.js';
13
+ import { d as defineCustomElement$3 } from './p-6337ab02.js';
14
+ import { d as defineCustomElement$2 } from './p-82c97ae6.js';
15
15
  import { d as defineCustomElement$1 } from './p-ac63635b.js';
16
16
 
17
17
  const styleCss = ".sc-smoothly-input-color-h{--input-padding-side:.5rem;--input-value-padding-top:1.25rem;--input-value-padding-bottom:.25rem;--input-min-height:3rem;min-height:var(--input-min-height);box-sizing:border-box;border-radius:var(--smoothly-input-border-radius)}[looks=\"border\"].sc-smoothly-input-color-h{border:rgb(var(--smoothly-input-border)) solid 1px}[looks=\"border\"].sc-smoothly-input-color-h:not([readonly]):not([disabled]):focus-within{outline:2px solid rgb(var(--smoothly-input-border-focus))}[looks=\"border\"][readonly].sc-smoothly-input-color-h{border:transparent solid 1px}[looks=\"line\"].sc-smoothly-input-color-h{border-bottom:rgb(var(--smoothly-input-border)) solid 1px;position:relative}[looks=\"line\"][readonly].sc-smoothly-input-color-h{border-bottom:transparent solid 1px}[looks=\"line\"].sc-smoothly-input-color-h:not([readonly]):not([disabled]):focus-within::before{content:\"\";position:absolute;inset:0;pointer-events:none;border-bottom:2px solid rgb(var(--smoothly-input-border-focus));z-index:10}[looks=\"grid\"].sc-smoothly-input-color-h{flex-grow:1;flex-basis:40%;box-shadow:0px 0px 0px 1px rgb(var(--smoothly-input-border));border:none}[looks=\"grid\"][readonly].sc-smoothly-input-color-h{box-shadow:0px 0px 0px 1px rgba(var(--smoothly-input-border-readonly))}[looks=\"grid\"].sc-smoothly-input-color-h:not([readonly]):not([disabled]):focus-within{position:relative;box-shadow:0px 0px 0px 2px rgb(var(--smoothly-input-border-focus));outline:none;z-index:10}[looks=\"transparent\"].sc-smoothly-input-color-h{border:none}[looks=\"transparent\"][readonly].sc-smoothly-input-color-h,[looks=\"transparent\"].sc-smoothly-input-color-h:not(:focus-within){background-color:transparent}[looks=\"transparent\"][readonly].sc-smoothly-input-color-h>input.sc-smoothly-input-color,[looks=\"transparent\"].sc-smoothly-input-color-h:not(:focus-within)>input.sc-smoothly-input-color{background-color:transparent}[looks=\"transparent\"].sc-smoothly-input-color-h:not([readonly]):focus-within{outline:1px solid rgb(var(--smoothly-input-border))}[disabled].sc-smoothly-input-color-h{cursor:not-allowed;--smoothly-input-foreground:var(--smoothly-input-disabled-foreground);--smoothly-input-background:var(--smoothly-input-disabled-background);--smoothly-input-border:var(--smoothly-input-disabled-border)}.sc-smoothly-input-color-h.sc-smoothly-input-color-s>[slot=label],.sc-smoothly-input-color-h .sc-smoothly-input-color-s>[slot=label],.sc-smoothly-input-color-h .label.sc-smoothly-input-color{position:absolute;top:.6rem;opacity:0.8;user-select:none;cursor:inherit;transform-origin:top left;transition:transform 100ms ease}.sc-smoothly-input-color-h.floating-label.sc-smoothly-input-color-s>[slot=label],.sc-smoothly-input-color-h.floating-label .sc-smoothly-input-color-s>[slot=label],.sc-smoothly-input-color-h.has-value.sc-smoothly-input-color-s>[slot=label],.sc-smoothly-input-color-h.has-value .sc-smoothly-input-color-s>[slot=label],.sc-smoothly-input-color-h[placeholder].sc-smoothly-input-color-s>[slot=label],.sc-smoothly-input-color-h[placeholder] .sc-smoothly-input-color-s>[slot=label],.sc-smoothly-input-color-h[readonly].sc-smoothly-input-color-s>[slot=label],.sc-smoothly-input-color-h[readonly] .sc-smoothly-input-color-s>[slot=label],.floating-label.sc-smoothly-input-color-h .label.sc-smoothly-input-color,.has-value.sc-smoothly-input-color-h .label.sc-smoothly-input-color,.has-text.sc-smoothly-input-color-h .label.sc-smoothly-input-color,[placeholder].sc-smoothly-input-color-h .label.sc-smoothly-input-color,[readonly].sc-smoothly-input-color-h .label.sc-smoothly-input-color,.sc-smoothly-input-color-h:not([readonly]):focus-within .label.float-on-focus.sc-smoothly-input-color{top:.2rem;transform:scale(0.8)}.sc-smoothly-input-color-h:not([show-label]):not(.show-label) .label.sc-smoothly-input-color{display:none}.sc-smoothly-input-color-h smoothly-icon.smoothly-invalid.sc-smoothly-input-color{fill:rgb(var(--smoothly-input-invalid-icon, var(--smoothly-danger-color)))}.sc-smoothly-input-color-h{display:flex;position:relative;background-color:rgb(var(--smoothly-input-background));align-items:center;justify-content:center}.sc-smoothly-input-color-h>smoothly-input.sc-smoothly-input-color{width:100%;--input-min-height:calc(var(--input-min-height) - 2px);--smoothly-input-border-focus:none}.sc-smoothly-input-color-h div.color-sample.sc-smoothly-input-color{height:2em;width:3em;margin-right:0.5rem;background-color:var(--hexCode);outline:1px solid rgb(var(--smoothly-input-border));border-radius:3px}.sc-smoothly-input-color-h smoothly-icon[name=options-outline].sc-smoothly-input-color{padding-right:var(--input-padding-side)}[readonly].sc-smoothly-input-color-h smoothly-icon[name=options-outline].sc-smoothly-input-color,[disabled].sc-smoothly-input-color-h smoothly-icon[name=options-outline].sc-smoothly-input-color{display:none}.sc-smoothly-input-color-h:not([readonly]):not([disabled]) smoothly-icon[name=options-outline].sc-smoothly-input-color{cursor:pointer}.sc-smoothly-input-color-h>div.rgb-sliders.sc-smoothly-input-color{background-color:rgb(var(--smoothly-input-background));position:absolute;padding:1em 1em 1em 0;top:calc(var(--element-height) + .8em);left:0;box-sizing:border-box;z-index:20;border:1px solid rgb(var(--smoothly-input-border))}.sc-smoothly-input-color-h>div.rgb-sliders.sc-smoothly-input-color::before{content:\"\";transform:translate(2em, -0.55em) rotate(45deg);width:1em;height:1em;background-color:rgb(var(--smoothly-input-background));border-top:1px solid rgb(var(--smoothly-input-border));border-left:1px solid rgb(var(--smoothly-input-border));position:absolute;z-index:100;top:0em}.sc-smoothly-input-color-h>div.rgb-sliders.sc-smoothly-input-color>smoothly-toggle-switch.sc-smoothly-input-color{margin-left:auto;margin-right:1em;margin-bottom:1em}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color{padding:.5em 0}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color label.sc-smoothly-input-color{width:4em}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=r].sc-smoothly-input-color::-webkit-slider-runnable-track{background:linear-gradient(to left, rgb(255, var(--rgb-g), var(--rgb-b)), rgb(0, var(--rgb-g), var(--rgb-b)))}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=r].sc-smoothly-input-color::-moz-range-track{background:linear-gradient(to left, rgb(255, var(--rgb-g), var(--rgb-b)), rgb(0, var(--rgb-g), var(--rgb-b)))}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=r].sc-smoothly-input-color::-moz-range-thumb{background-color:red}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=r].sc-smoothly-input-color::-webkit-slider-thumb{background-color:red}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=g].sc-smoothly-input-color::-webkit-slider-runnable-track{background:linear-gradient(to left, rgb(var(--rgb-r), 255, var(--rgb-b)), rgb(var(--rgb-r), 0, var(--rgb-b)))}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=g].sc-smoothly-input-color::-moz-range-track{background:linear-gradient(to left, rgb(var(--rgb-r), 255, var(--rgb-b)), rgb(var(--rgb-r), 0, var(--rgb-b)))}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=g].sc-smoothly-input-color::-moz-range-thumb{background-color:green}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=g].sc-smoothly-input-color::-webkit-slider-thumb{background-color:green}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=b].sc-smoothly-input-color::-webkit-slider-runnable-track{background:linear-gradient(to left, rgb(var(--rgb-r), var(--rgb-g), 255), rgb(var(--rgb-r), var(--rgb-g), 0))}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=b].sc-smoothly-input-color::-moz-range-track{background:linear-gradient(to left, rgb(var(--rgb-r), var(--rgb-g), 255), rgb(var(--rgb-r), var(--rgb-g), 0))}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=b].sc-smoothly-input-color::-moz-range-thumb{background-color:blue}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=b].sc-smoothly-input-color::-webkit-slider-thumb{background-color:blue}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=h].sc-smoothly-input-color::-webkit-slider-runnable-track{background:linear-gradient(to right in hsl longer hue, red, red)}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=h].sc-smoothly-input-color::-moz-range-track{background:linear-gradient(to right in hsl longer hue, red, red)}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=h].sc-smoothly-input-color::-webkit-slider-thumb{background-color:hsl(var(--hsl-h), 100%, 50%)}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=h].sc-smoothly-input-color::-moz-range-thumb{background-color:hsl(var(--hsl-h), 100%, 50%)}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=s].sc-smoothly-input-color::-webkit-slider-runnable-track{background:linear-gradient(to right, hsl(var(--hsl-h), 0%, 50%), hsl(var(--hsl-h), 100%, 50%))}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=s].sc-smoothly-input-color::-moz-range-track{background:linear-gradient(to right, hsl(var(--hsl-h), 0%, 50%), hsl(var(--hsl-h), 100%, 50%))}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=s].sc-smoothly-input-color::-moz-range-thumb{background-color:hsl(var(--hsl-h), var(--hsl-s), 50%)}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=s].sc-smoothly-input-color::-webkit-slider-thumb{background-color:hsl(var(--hsl-h), var(--hsl-s), 50%)}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=l].sc-smoothly-input-color::-moz-range-track{background:linear-gradient(to right, black, white)}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=l].sc-smoothly-input-color::-webkit-slider-runnable-track{background:linear-gradient(to right, black, white)}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=l].sc-smoothly-input-color::-moz-range-thumb{background-color:#777}div.rgb-sliders.sc-smoothly-input-color smoothly-input-range.sc-smoothly-input-color>div.sc-smoothly-input-color>input[name=l].sc-smoothly-input-color::-webkit-slider-thumb{background-color:#777}";
@@ -273,4 +273,4 @@ defineCustomElement();
273
273
 
274
274
  export { SmoothlyInputColor as S, defineCustomElement as d };
275
275
 
276
- //# sourceMappingURL=p-f0fc48a4.js.map
276
+ //# sourceMappingURL=p-766ab435.js.map
@@ -1 +1 @@
1
- {"file":"p-f0fc48a4.js","mappings":";;;;;;;;;;;;;;;;AAAA,MAAM,QAAQ,GAAG,m5WAAm5W,CAAC;AACr6W,iCAAe,QAAQ;;MC2BV,kBAAkB;;;;;;;;;QAE9B,2BAAsB,GAAG,KAAK,CAAA;QACtB,aAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACzC,QAAG,GAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAA;QACvD,QAAG,GAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAA;qBAEV,SAAS;;;wBAGX,KAAK;;sBAExB,KAAK;;yBAEA,IAAI;oBAEzB,KAAK;0BACgB,KAAK;;IAM1C,MAAM,iBAAiB;QACtB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAA;QACpC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;QACtD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,eAAK,QAAC,CAAC,IAAI,CAAC,KAAK,GAAG,MAAA,IAAI,CAAC,KAAK,mCAAI,KAAK,IAAI,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,EAAC,EAAA,CAAC,CAAA;QAC1G,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QAC/D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAA;QAC7D,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAA;KACvF;IAED,yBAAyB,CAAC,KAA0C;QACnE,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO;YAC/B,KAAK,CAAC,eAAe,EAAE,CAAA;KACxB;IAED,wBAAwB,CAAC,KAAwD;QAChF,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;KACpC;IAED,aAAa,CAAC,KAAY;QACzB,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KACrF;IACD,MAAM,oBAAoB;QACzB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;YAC5B,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;KACxB;IAED,UAAU,CAAC,CAAqB,EAAE,OAA2B;QAC5D,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;KAC/B;IAGD,gBAAgB;QACf,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;KACvB;IAED,MAAM,QAAQ;QACb,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;KACnB;IAED,MAAM,UAAU;QACf,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;KACtB;IAED,MAAM,QAAQ;QACb,OAAO,IAAI,CAAC,MAAM,KAAK,KAAK;cACzB;gBACA,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAChE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAChE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;aAC/D;cACD,IAAI,CAAC,KAAK;kBACV,IAAI,CAAC,KAAK;kBACV,SAAS,CAAA;KACZ;IAED,MAAM,KAAK;QACV,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAA;QACvD,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAA;QACvD,IAAI,CAAC,KAAK,GAAG,SAAS,CAAA;KACtB;IAED,MAAM,MAAM,CAAC,QAAoC;QAChD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;KACjC;IAED,MAAM,IAAI,CAAC,QAAiB;QAC3B,IAAI,CAAC,QAAQ,GAAG,CAAC,QAAQ,CAAA;QACzB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;KACjB;IAED,MAAM,KAAK;QACV,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAA;QAC9B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;KACjB;IAED,MAAM,eAAe;QACpB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAA;QAC9B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;KACjB;IAED,MAAM,YAAY;QACjB,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,KAAK,CAAA;QAC9D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QAC/D,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;KACvB;IACD,gBAAgB,CAAC,KAAkB;QAClC,KAAK,CAAC,eAAe,EAAE,CAAA;QACvB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,GAAG,KAAK,CAAA;QAC9C,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE;YAC9B,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;SACtD;aAAM;YACN,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;SACvE;KACD;IACD,MAAM,eAAe,CAAC,KAAa;QAClC,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE;YACzB,IAAI,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE;gBACtC,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS,EAAE;oBAC1D,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;iBACjC;gBACD,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS,EAAE;oBAC1D,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;iBAClD;aACD;iBAAM,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE;gBAC/C,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAA;gBACvD,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAA;aACvD;YACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;YAClB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;SAC9E;KACD;IACD,kBAAkB,CAAC,KAAwB;;QAC1C,KAAK,CAAC,eAAe,EAAE,CAAA;QACvB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QAC1C,IAAI,cAAc,GAAG,IAAI,CAAC,UAAU,KAAK,KAAK,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;QAEpE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC,EAAE;YACzC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;gBAC5C,IAAI,GAAG,KAAK,KAAK;oBAChB,cAAc,mCACV,cAAc,KACjB,CAAC,GAAG,GAAG,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,GAAG,EAAE,MAAA,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAI,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAC3F,CAAA;qBACG,IAAI,cAAc,CAAC,GAAsB,CAAC,KAAK,SAAS;oBAC5D,cAAc,mCAAQ,cAAc,KAAE,CAAC,GAAG,GAAG,CAAC,GAAE,CAAA;YAClD,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE;gBAC9B,IAAI,CAAC,GAAG,GAAG,kBAAK,cAAc,CAAS,CAAA;gBACvC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACpC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;aAC/C;iBAAM;gBACN,IAAI,CAAC,GAAG,GAAG,kBAAK,cAAc,CAAS,CAAA;gBACvC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACpC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;aAChE;SACD;KACD;IACD,YAAY;QACX,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAA;KACtB;IAED,MAAM;;QACL,QACC,EAAC,IAAI,qDACJ,KAAK,EAAE;gBACN,WAAW,EAAE,IAAI,CAAC,KAAK;gBACvB,SAAS,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAA,IAAI,CAAC,GAAG,CAAC,CAAC,mCAAI,CAAC,CAAC,EAAE;gBAC3C,SAAS,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAA,IAAI,CAAC,GAAG,CAAC,CAAC,mCAAI,CAAC,CAAC,EAAE;gBAC3C,SAAS,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAA,IAAI,CAAC,GAAG,CAAC,CAAC,mCAAI,CAAC,CAAC,EAAE;gBAC3C,SAAS,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAA,IAAI,CAAC,GAAG,CAAC,CAAC,mCAAI,CAAC,CAAC,EAAE;gBAC3C,SAAS,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAA,IAAI,CAAC,GAAG,CAAC,CAAC,mCAAI,CAAC,CAAC,GAAG;gBAC5C,SAAS,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAA,IAAI,CAAC,GAAG,CAAC,CAAC,mCAAI,CAAC,CAAC,GAAG;gBAC5C,kBAAkB,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI;aACpD,IACD,uEACC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,eAAe,EAAE,KAAK,KAAK,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IACnG,8DAAQ,CACQ,EACjB,4DAAK,KAAK,EAAC,cAAc,GAAG,EAC5B,sEACC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAC,iBAAiB,EACtB,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,EAAE,GACrE,EACF,8DAEC,6DAAM,IAAI,EAAC,KAAK,GAAG,CACd,EACL,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,KAC7C,4DAAK,KAAK,EAAC,aAAa,IACvB,+EACC,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,KAAK,KAAK,GAAG,QAAQ,GAAG,QAAQ,EAAE,EAC3D,4BAA4B,EAAE,KAAK,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EACnE,IAAI,EAAC,MAAM,EACX,SAAS,EAAE,KAAK,EAChB,QAAQ,EAAE,IAAI,CAAC,UAAU,KAAK,KAAK,GAClC,EACD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,MAC1C,4BACC,KAAK,EAAE,IAAI,CAAC,UAAU,IAAI,KAAK,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAC1D,IAAI,EAAE,GAAG,EACT,GAAG,EAAE,CAAC,EACN,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,CAAC,EACP,UAAU,EAAC,OAAO,EAClB,eAAe,EAAE,KAAK,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EACxD,mBAAmB,EAAE,KAAK,IAAI,KAAK,CAAC,eAAe,EAAE,EACrD,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,GACvB,CACF,CAAC,EACD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,MAC1C,4BACC,KAAK,EAAE,IAAI,CAAC,UAAU,IAAI,KAAK,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAC1D,IAAI,EAAE,GAAG,EACT,GAAG,EAAE,CAAC,EACN,GAAG,EAAE,GAAG,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC,EAC1B,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,GAAG,SAAS,GAAG,MAAM,EACrD,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,KAAK,GAAG,KAAK,GAAG,GAAG,GAAG,KAAK,EAClE,IAAI,EAAE,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,GAAG,IAAI,GAAG,CAAC,EAC3C,UAAU,EAAC,OAAO,EAClB,eAAe,EAAE,KAAK,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EACxD,mBAAmB,EAAE,KAAK,IAAI,KAAK,CAAC,eAAe,EAAE,EACrD,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,GACvB,CACF,CAAC,CACG,CACN,CACK,EACP;KACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/input/color/style.css?tag=smoothly-input-color&encapsulation=scoped","src/components/input/color/index.tsx"],"sourcesContent":["@import \"../shared.css\";\n\n:host {\n\tdisplay: flex;\n\tposition: relative;\n\tbackground-color: rgb(var(--smoothly-input-background));\n\talign-items: center;\n\tjustify-content: center;\n}\n:host>smoothly-input {\n\twidth: 100%;\n\t--input-min-height: calc(var(--input-min-height) - 2px);\n\t--smoothly-input-border-focus: none;\n}\n:host div.color-sample {\n\theight: 2em;\n\twidth: 3em;\n\tmargin-right: 0.5rem;\n\tbackground-color: var(--hexCode);\n\toutline: 1px solid rgb(var(--smoothly-input-border));\n\tborder-radius: 3px;\n}\n:host smoothly-icon[name=options-outline] {\n\tpadding-right: var(--input-padding-side);\n}\n:host[readonly] smoothly-icon[name=options-outline],\n:host[disabled] smoothly-icon[name=options-outline] {\n\tdisplay: none;\n}\n:host:not([readonly]):not([disabled]) smoothly-icon[name=options-outline] {\n\tcursor: pointer;\n}\n:host>div.rgb-sliders {\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tposition: absolute;\n\tpadding: 1em 1em 1em 0;\n\ttop: calc(var(--element-height) + .8em);\n\tleft: 0;\n\tbox-sizing: border-box;\n\tz-index: 20;\n\tborder: 1px solid rgb(var(--smoothly-input-border));\n}\n:host>div.rgb-sliders::before {\n\tcontent: \"\";\n\ttransform: translate(2em, -0.55em) rotate(45deg);\n\twidth: 1em;\n\theight: 1em;\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tborder-top: 1px solid rgb(var(--smoothly-input-border));\n\tborder-left: 1px solid rgb(var(--smoothly-input-border));\n\tposition: absolute;\n\tz-index: 100;\n\ttop: 0em\n}\n:host>div.rgb-sliders>smoothly-toggle-switch {\n\tmargin-left: auto;\n\tmargin-right: 1em;\n\tmargin-bottom: 1em;\n}\ndiv.rgb-sliders smoothly-input-range {\n\tpadding: .5em 0\n}\ndiv.rgb-sliders smoothly-input-range label {\n\twidth: 4em;\n}\n\n/* -------------RGB SLIDERS------------------- */\n\n/* --------------------R------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=r]::-webkit-slider-runnable-track {\n\tbackground: linear-gradient(to left, rgb(255, var(--rgb-g), var(--rgb-b)), rgb(0, var(--rgb-g), var(--rgb-b)))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=r]::-moz-range-track {\n\tbackground: linear-gradient(to left, rgb(255, var(--rgb-g), var(--rgb-b)), rgb(0, var(--rgb-g), var(--rgb-b)))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=r]::-moz-range-thumb {\n\tbackground-color: red;\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=r]::-webkit-slider-thumb {\n\tbackground-color: red;\n}\n\n/* --------------------G------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=g]::-webkit-slider-runnable-track {\n\tbackground: linear-gradient(to left, rgb(var(--rgb-r), 255, var(--rgb-b)), rgb(var(--rgb-r), 0, var(--rgb-b)))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=g]::-moz-range-track {\n\tbackground: linear-gradient(to left, rgb(var(--rgb-r), 255, var(--rgb-b)), rgb(var(--rgb-r), 0, var(--rgb-b)))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=g]::-moz-range-thumb {\n\tbackground-color: green;\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=g]::-webkit-slider-thumb {\n\tbackground-color: green;\n}\n\n/* --------------------B------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=b]::-webkit-slider-runnable-track {\n\tbackground: linear-gradient(to left, rgb(var(--rgb-r), var(--rgb-g), 255), rgb(var(--rgb-r), var(--rgb-g), 0))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=b]::-moz-range-track {\n\tbackground: linear-gradient(to left, rgb(var(--rgb-r), var(--rgb-g), 255), rgb(var(--rgb-r), var(--rgb-g), 0))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=b]::-moz-range-thumb { \n\tbackground-color: blue;\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=b]::-webkit-slider-thumb {\n\tbackground-color: blue;\n}\n\n/* -------------HSL SLIDERS------------------- */\n\n/* --------------------H------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=h]::-webkit-slider-runnable-track {\n\tbackground: linear-gradient(to right in hsl longer hue, red, red)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=h]::-moz-range-track {\n\tbackground: linear-gradient(to right in hsl longer hue, red, red)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=h]::-webkit-slider-thumb {\n\tbackground-color: hsl(var(--hsl-h), 100%, 50%)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=h]::-moz-range-thumb {\n\tbackground-color: hsl(var(--hsl-h), 100%, 50%)\n}\n\n\n/* --------------------S------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=s]::-webkit-slider-runnable-track { \n\tbackground: linear-gradient(to right, hsl(var(--hsl-h), 0%, 50%), hsl(var(--hsl-h), 100%, 50%)); \n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=s]::-moz-range-track {\n\tbackground: linear-gradient(to right, hsl(var(--hsl-h), 0%, 50%), hsl(var(--hsl-h), 100%, 50%)); \n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=s]::-moz-range-thumb {\n\tbackground-color: hsl(var(--hsl-h), var(--hsl-s), 50%)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=s]::-webkit-slider-thumb {\n\tbackground-color: hsl(var(--hsl-h), var(--hsl-s), 50%)\n}\n\n/* --------------------L------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=l]::-moz-range-track {\n\tbackground: linear-gradient(to right, black, white)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=l]::-webkit-slider-runnable-track {\n\tbackground: linear-gradient(to right, black, white)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=l]::-moz-range-thumb {\n\tbackground-color: #777;\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=l]::-webkit-slider-thumb {\n\tbackground-color: #777;\n}\n","import {\n\tComponent,\n\tComponentWillLoad,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tMethod,\n\tProp,\n\tState,\n\tVNode,\n\tWatch,\n} from \"@stencil/core\"\nimport { Color, Data } from \"../../../model\"\nimport { HSL } from \"../../../model/Color/HSL\"\nimport { RGB } from \"../../../model/Color/RGB\"\nimport { Clearable } from \"../Clearable\"\nimport { Editable } from \"../Editable\"\nimport { Input } from \"../Input\"\nimport { Looks } from \"../Looks\"\n\n@Component({\n\ttag: \"smoothly-input-color\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyInputColor implements Input, Clearable, Editable, ComponentWillLoad {\n\tparent: Editable | undefined\n\tisDifferentFromInitial = false\n\tprivate observer = Editable.Observer.create(this)\n\tprivate rgb: RGB = { r: undefined, g: undefined, b: undefined }\n\tprivate hsl: HSL = { h: undefined, s: undefined, l: undefined }\n\tprivate initialValue: string | undefined\n\t@Prop({ mutable: true }) value: string | undefined = undefined\n\t@Prop({ mutable: true, reflect: true }) looks?: Looks\n\t@Prop({ reflect: true, mutable: true }) color?: Color\n\t@Prop({ reflect: true, mutable: true }) readonly = false\n\t@Prop({ reflect: true }) disabled?: boolean\n\t@Prop() output: \"rgb\" | \"hex\" = \"rgb\"\n\t@Prop({ reflect: true }) name: string\n\t@Prop({ reflect: true }) showLabel = true\n\t@Element() element: HTMLSmoothlyInputColorElement\n\t@State() open = false\n\t@State() sliderMode: \"rgb\" | \"hsl\" = \"rgb\"\n\t@Event() smoothlyInputLooks: EventEmitter<(looks?: Looks, color?: Color) => void>\n\t@Event() smoothlyInput: EventEmitter<Record<string, any>>\n\t@Event() smoothlyUserInput: EventEmitter<Input.UserInput>\n\t@Event() smoothlyInputLoad: EventEmitter<(parent: Editable) => void>\n\t@Event() smoothlyFormDisable: EventEmitter<(disabled: boolean) => void>\n\tasync componentWillLoad(): Promise<void> {\n\t\tthis.value && this.setInitialValue()\n\t\tthis.value && (this.rgb = Color.Hex.toRGB(this.value))\n\t\tthis.smoothlyInputLooks.emit((looks, color) => ((this.looks = this.looks ?? looks), (this.color = color)))\n\t\tthis.smoothlyInput.emit({ [this.name]: await this.getValue() })\n\t\tthis.smoothlyInputLoad.emit(parent => (this.parent = parent))\n\t\t!this.readonly && this.smoothlyFormDisable.emit(readonly => (this.readonly = readonly))\n\t}\n\t@Listen(\"smoothlyInputLooks\")\n\tsmoothlyInputLooksHandler(event: CustomEvent<(looks: Looks) => void>): void {\n\t\tif (event.target != this.element)\n\t\t\tevent.stopPropagation()\n\t}\n\t@Listen(\"smoothlyInputLoad\")\n\tsmoothlyInputLoadHandler(event: CustomEvent<(parent: SmoothlyInputColor) => void>): void {\n\t\tInput.registerSubAction(this, event)\n\t}\n\t@Listen(\"click\", { target: \"window\" })\n\tonWindowClick(event: Event): void {\n\t\t!event.composedPath().includes(this.element) && this.open && (this.open = !this.open)\n\t}\n\tasync disconnectedCallback() {\n\t\tif (!this.element.isConnected)\n\t\t\tawait this.unregister()\n\t}\n\t@Watch(\"name\")\n\tnameChange(_: string | undefined, oldName: string | undefined) {\n\t\tInput.formRename(this, oldName)\n\t}\n\t@Watch(\"disabled\")\n\t@Watch(\"readonly\")\n\twatchingReadonly(): void {\n\t\tthis.observer.publish()\n\t}\n\t@Method()\n\tasync register() {\n\t\tInput.formAdd(this)\n\t}\n\t@Method()\n\tasync unregister() {\n\t\tInput.formRemove(this)\n\t}\n\t@Method()\n\tasync getValue(): Promise<RGB | string | undefined> {\n\t\treturn this.output === \"rgb\"\n\t\t\t? {\n\t\t\t\t\tr: this.rgb.r === undefined ? undefined : Math.round(this.rgb.r),\n\t\t\t\t\tg: this.rgb.g === undefined ? undefined : Math.round(this.rgb.g),\n\t\t\t\t\tb: this.rgb.b === undefined ? undefined : Math.round(this.rgb.b),\n\t\t\t }\n\t\t\t: this.value\n\t\t\t? this.value\n\t\t\t: undefined\n\t}\n\t@Method()\n\tasync clear(): Promise<void> {\n\t\tthis.rgb = { r: undefined, g: undefined, b: undefined }\n\t\tthis.hsl = { h: undefined, s: undefined, l: undefined }\n\t\tthis.value = undefined\n\t}\n\t@Method()\n\tasync listen(listener: Editable.Observer.Listener): Promise<void> {\n\t\tthis.observer.subscribe(listener)\n\t}\n\t@Method()\n\tasync edit(editable: boolean): Promise<void> {\n\t\tthis.readonly = !editable\n\t\tthis.open = false\n\t}\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tthis.value = this.initialValue\n\t\tthis.open = false\n\t}\n\t@Method()\n\tasync setInitialValue(): Promise<void> {\n\t\tthis.initialValue = this.value\n\t\tthis.open = false\n\t}\n\t@Watch(\"value\")\n\tasync valueChanged(): Promise<void> {\n\t\tthis.isDifferentFromInitial = this.initialValue !== this.value\n\t\tthis.smoothlyInput.emit({ [this.name]: await this.getValue() })\n\t\tthis.observer.publish()\n\t}\n\thandleSwitchMode(event: CustomEvent): void {\n\t\tevent.stopPropagation()\n\t\tthis.sliderMode = event.detail ? \"hsl\" : \"rgb\"\n\t\tif (this.sliderMode === \"rgb\") {\n\t\t\tthis.value && (this.rgb = Color.Hex.toRGB(this.value))\n\t\t} else {\n\t\t\tthis.value && (this.hsl = Color.RGB.toHSL(Color.Hex.toRGB(this.value)))\n\t\t}\n\t}\n\tasync hexInputHandler(value: string): Promise<void> {\n\t\tif (value !== this.value) {\n\t\t\tif (value && Color.Hex.type.is(value)) {\n\t\t\t\tif (this.sliderMode === \"hsl\" || this.rgb.r === undefined) {\n\t\t\t\t\tthis.rgb = Color.Hex.toRGB(value)\n\t\t\t\t}\n\t\t\t\tif (this.sliderMode === \"rgb\" || this.hsl.h === undefined) {\n\t\t\t\t\tthis.hsl = Color.RGB.toHSL(Color.Hex.toRGB(value))\n\t\t\t\t}\n\t\t\t} else if (!value || !Color.Hex.type.is(value)) {\n\t\t\t\tthis.rgb = { r: undefined, g: undefined, b: undefined }\n\t\t\t\tthis.hsl = { h: undefined, s: undefined, l: undefined }\n\t\t\t}\n\t\t\tthis.value = value\n\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: await this.getValue() })\n\t\t}\n\t}\n\tsliderInputHandler(event: CustomEvent<Data>): void {\n\t\tevent.stopPropagation()\n\t\tconst color = Object.keys(event.detail)[0]\n\t\tlet temporaryColor = this.sliderMode === \"rgb\" ? this.rgb : this.hsl\n\t\ttype ColorType = HSL | RGB\n\t\tif (!(event.detail[color] === undefined)) {\n\t\t\tfor (const key of Object.keys(temporaryColor))\n\t\t\t\tif (key === color)\n\t\t\t\t\ttemporaryColor = {\n\t\t\t\t\t\t...temporaryColor,\n\t\t\t\t\t\t[key]: key === \"s\" || key === \"l\" ? +(event.detail[color] ?? 0) * 100 : event.detail[color],\n\t\t\t\t\t}\n\t\t\t\telse if (temporaryColor[key as keyof ColorType] === undefined)\n\t\t\t\t\ttemporaryColor = { ...temporaryColor, [key]: 0 }\n\t\t\tif (this.sliderMode === \"rgb\") {\n\t\t\t\tthis.rgb = { ...temporaryColor } as RGB\n\t\t\t\tthis.hsl = Color.RGB.toHSL(this.rgb)\n\t\t\t\tthis.hexInputHandler(Color.RGB.toHex(this.rgb))\n\t\t\t} else {\n\t\t\t\tthis.hsl = { ...temporaryColor } as HSL\n\t\t\t\tthis.rgb = Color.HSL.toRGB(this.hsl)\n\t\t\t\tthis.hexInputHandler(Color.RGB.toHex(Color.HSL.toRGB(this.hsl)))\n\t\t\t}\n\t\t}\n\t}\n\topenDropdown(): void {\n\t\tthis.open = !this.open\n\t}\n\n\trender(): VNode | VNode[] {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tstyle={{\n\t\t\t\t\t\"--hexCode\": this.value,\n\t\t\t\t\t\"--rgb-r\": `${Math.round(this.rgb.r ?? 0)}`,\n\t\t\t\t\t\"--rgb-g\": `${Math.round(this.rgb.g ?? 0)}`,\n\t\t\t\t\t\"--rgb-b\": `${Math.round(this.rgb.b ?? 0)}`,\n\t\t\t\t\t\"--hsl-h\": `${Math.round(this.hsl.h ?? 0)}`,\n\t\t\t\t\t\"--hsl-s\": `${Math.round(this.hsl.s ?? 0)}%`,\n\t\t\t\t\t\"--hsl-l\": `${Math.round(this.hsl.l ?? 0)}%`,\n\t\t\t\t\t\"--element-height\": `${this.element.clientHeight}px`,\n\t\t\t\t}}>\n\t\t\t\t<smoothly-input\n\t\t\t\t\tvalue={this.value}\n\t\t\t\t\tcolor={this.color}\n\t\t\t\t\tlooks={undefined}\n\t\t\t\t\tname={this.name}\n\t\t\t\t\ttype={\"hex-color\"}\n\t\t\t\t\treadonly={this.readonly}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\tshowLabel={this.showLabel}\n\t\t\t\t\tonSmoothlyInput={event => (event?.stopPropagation(), this.hexInputHandler(event.detail[this.name]))}>\n\t\t\t\t\t<slot />\n\t\t\t\t</smoothly-input>\n\t\t\t\t<div class=\"color-sample\" />\n\t\t\t\t<smoothly-icon\n\t\t\t\t\tcolor={this.color}\n\t\t\t\t\tname=\"options-outline\"\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tonClick={() => !this.readonly && !this.disabled && this.openDropdown()}\n\t\t\t\t/>\n\t\t\t\t<div>\n\t\t\t\t\t{/* Extra div needed otherwise stencil sets hidden on the slot for no apparent reason */}\n\t\t\t\t\t<slot name=\"end\" />\n\t\t\t\t</div>\n\t\t\t\t{this.open && !this.readonly && !this.disabled && (\n\t\t\t\t\t<div class=\"rgb-sliders\">\n\t\t\t\t\t\t<smoothly-toggle-switch\n\t\t\t\t\t\t\ttitle={`${this.sliderMode === \"rgb\" ? \"To HSL\" : \"To RGB\"}`}\n\t\t\t\t\t\t\tonSmoothlyToggleSwitchChange={event => this.handleSwitchMode(event)}\n\t\t\t\t\t\t\tsize=\"tiny\"\n\t\t\t\t\t\t\tcheckmark={false}\n\t\t\t\t\t\t\tselected={this.sliderMode === \"hsl\"}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{Object.entries(this.rgb).map(([key, value]) => (\n\t\t\t\t\t\t\t<smoothly-input-range\n\t\t\t\t\t\t\t\tstyle={this.sliderMode != \"rgb\" ? { display: \"none\" } : {}}\n\t\t\t\t\t\t\t\tname={key}\n\t\t\t\t\t\t\t\tmin={0}\n\t\t\t\t\t\t\t\tmax={255}\n\t\t\t\t\t\t\t\tcolor={undefined}\n\t\t\t\t\t\t\t\ttype={\"text\"}\n\t\t\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t\t\t\tstep={1}\n\t\t\t\t\t\t\t\toutputSide=\"right\"\n\t\t\t\t\t\t\t\tonSmoothlyInput={event => this.sliderInputHandler(event)}\n\t\t\t\t\t\t\t\tonSmoothlyUserInput={event => event.stopPropagation()}\n\t\t\t\t\t\t\t\tlabel={key.toUpperCase()}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t\t{Object.entries(this.hsl).map(([key, value]) => (\n\t\t\t\t\t\t\t<smoothly-input-range\n\t\t\t\t\t\t\t\tstyle={this.sliderMode != \"hsl\" ? { display: \"none\" } : {}}\n\t\t\t\t\t\t\t\tname={key}\n\t\t\t\t\t\t\t\tmin={0}\n\t\t\t\t\t\t\t\tmax={key === \"h\" ? 359 : 1}\n\t\t\t\t\t\t\t\tcolor={undefined}\n\t\t\t\t\t\t\t\ttype={key === \"s\" || key === \"l\" ? \"percent\" : \"text\"}\n\t\t\t\t\t\t\t\tvalue={(key === \"s\" || key === \"l\") && value ? value / 100 : value}\n\t\t\t\t\t\t\t\tstep={key === \"s\" || key === \"l\" ? 0.01 : 1}\n\t\t\t\t\t\t\t\toutputSide=\"right\"\n\t\t\t\t\t\t\t\tonSmoothlyInput={event => this.sliderInputHandler(event)}\n\t\t\t\t\t\t\t\tonSmoothlyUserInput={event => event.stopPropagation()}\n\t\t\t\t\t\t\t\tlabel={key.toUpperCase()}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
1
+ {"file":"p-766ab435.js","mappings":"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","names":[],"sources":["src/components/input/color/style.css?tag=smoothly-input-color&encapsulation=scoped","src/components/input/color/index.tsx"],"sourcesContent":["@import \"../shared.css\";\n\n:host {\n\tdisplay: flex;\n\tposition: relative;\n\tbackground-color: rgb(var(--smoothly-input-background));\n\talign-items: center;\n\tjustify-content: center;\n}\n:host>smoothly-input {\n\twidth: 100%;\n\t--input-min-height: calc(var(--input-min-height) - 2px);\n\t--smoothly-input-border-focus: none;\n}\n:host div.color-sample {\n\theight: 2em;\n\twidth: 3em;\n\tmargin-right: 0.5rem;\n\tbackground-color: var(--hexCode);\n\toutline: 1px solid rgb(var(--smoothly-input-border));\n\tborder-radius: 3px;\n}\n:host smoothly-icon[name=options-outline] {\n\tpadding-right: var(--input-padding-side);\n}\n:host[readonly] smoothly-icon[name=options-outline],\n:host[disabled] smoothly-icon[name=options-outline] {\n\tdisplay: none;\n}\n:host:not([readonly]):not([disabled]) smoothly-icon[name=options-outline] {\n\tcursor: pointer;\n}\n:host>div.rgb-sliders {\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tposition: absolute;\n\tpadding: 1em 1em 1em 0;\n\ttop: calc(var(--element-height) + .8em);\n\tleft: 0;\n\tbox-sizing: border-box;\n\tz-index: 20;\n\tborder: 1px solid rgb(var(--smoothly-input-border));\n}\n:host>div.rgb-sliders::before {\n\tcontent: \"\";\n\ttransform: translate(2em, -0.55em) rotate(45deg);\n\twidth: 1em;\n\theight: 1em;\n\tbackground-color: rgb(var(--smoothly-input-background));\n\tborder-top: 1px solid rgb(var(--smoothly-input-border));\n\tborder-left: 1px solid rgb(var(--smoothly-input-border));\n\tposition: absolute;\n\tz-index: 100;\n\ttop: 0em\n}\n:host>div.rgb-sliders>smoothly-toggle-switch {\n\tmargin-left: auto;\n\tmargin-right: 1em;\n\tmargin-bottom: 1em;\n}\ndiv.rgb-sliders smoothly-input-range {\n\tpadding: .5em 0\n}\ndiv.rgb-sliders smoothly-input-range label {\n\twidth: 4em;\n}\n\n/* -------------RGB SLIDERS------------------- */\n\n/* --------------------R------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=r]::-webkit-slider-runnable-track {\n\tbackground: linear-gradient(to left, rgb(255, var(--rgb-g), var(--rgb-b)), rgb(0, var(--rgb-g), var(--rgb-b)))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=r]::-moz-range-track {\n\tbackground: linear-gradient(to left, rgb(255, var(--rgb-g), var(--rgb-b)), rgb(0, var(--rgb-g), var(--rgb-b)))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=r]::-moz-range-thumb {\n\tbackground-color: red;\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=r]::-webkit-slider-thumb {\n\tbackground-color: red;\n}\n\n/* --------------------G------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=g]::-webkit-slider-runnable-track {\n\tbackground: linear-gradient(to left, rgb(var(--rgb-r), 255, var(--rgb-b)), rgb(var(--rgb-r), 0, var(--rgb-b)))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=g]::-moz-range-track {\n\tbackground: linear-gradient(to left, rgb(var(--rgb-r), 255, var(--rgb-b)), rgb(var(--rgb-r), 0, var(--rgb-b)))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=g]::-moz-range-thumb {\n\tbackground-color: green;\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=g]::-webkit-slider-thumb {\n\tbackground-color: green;\n}\n\n/* --------------------B------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=b]::-webkit-slider-runnable-track {\n\tbackground: linear-gradient(to left, rgb(var(--rgb-r), var(--rgb-g), 255), rgb(var(--rgb-r), var(--rgb-g), 0))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=b]::-moz-range-track {\n\tbackground: linear-gradient(to left, rgb(var(--rgb-r), var(--rgb-g), 255), rgb(var(--rgb-r), var(--rgb-g), 0))\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=b]::-moz-range-thumb { \n\tbackground-color: blue;\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=b]::-webkit-slider-thumb {\n\tbackground-color: blue;\n}\n\n/* -------------HSL SLIDERS------------------- */\n\n/* --------------------H------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=h]::-webkit-slider-runnable-track {\n\tbackground: linear-gradient(to right in hsl longer hue, red, red)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=h]::-moz-range-track {\n\tbackground: linear-gradient(to right in hsl longer hue, red, red)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=h]::-webkit-slider-thumb {\n\tbackground-color: hsl(var(--hsl-h), 100%, 50%)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=h]::-moz-range-thumb {\n\tbackground-color: hsl(var(--hsl-h), 100%, 50%)\n}\n\n\n/* --------------------S------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=s]::-webkit-slider-runnable-track { \n\tbackground: linear-gradient(to right, hsl(var(--hsl-h), 0%, 50%), hsl(var(--hsl-h), 100%, 50%)); \n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=s]::-moz-range-track {\n\tbackground: linear-gradient(to right, hsl(var(--hsl-h), 0%, 50%), hsl(var(--hsl-h), 100%, 50%)); \n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=s]::-moz-range-thumb {\n\tbackground-color: hsl(var(--hsl-h), var(--hsl-s), 50%)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=s]::-webkit-slider-thumb {\n\tbackground-color: hsl(var(--hsl-h), var(--hsl-s), 50%)\n}\n\n/* --------------------L------------------- */\ndiv.rgb-sliders smoothly-input-range>div>input[name=l]::-moz-range-track {\n\tbackground: linear-gradient(to right, black, white)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=l]::-webkit-slider-runnable-track {\n\tbackground: linear-gradient(to right, black, white)\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=l]::-moz-range-thumb {\n\tbackground-color: #777;\n}\ndiv.rgb-sliders smoothly-input-range>div>input[name=l]::-webkit-slider-thumb {\n\tbackground-color: #777;\n}\n","import {\n\tComponent,\n\tComponentWillLoad,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tMethod,\n\tProp,\n\tState,\n\tVNode,\n\tWatch,\n} from \"@stencil/core\"\nimport { Color, Data } from \"../../../model\"\nimport { HSL } from \"../../../model/Color/HSL\"\nimport { RGB } from \"../../../model/Color/RGB\"\nimport { Clearable } from \"../Clearable\"\nimport { Editable } from \"../Editable\"\nimport { Input } from \"../Input\"\nimport { Looks } from \"../Looks\"\n\n@Component({\n\ttag: \"smoothly-input-color\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyInputColor implements Input, Clearable, Editable, ComponentWillLoad {\n\tparent: Editable | undefined\n\tisDifferentFromInitial = false\n\tprivate observer = Editable.Observer.create(this)\n\tprivate rgb: RGB = { r: undefined, g: undefined, b: undefined }\n\tprivate hsl: HSL = { h: undefined, s: undefined, l: undefined }\n\tprivate initialValue: string | undefined\n\t@Prop({ mutable: true }) value: string | undefined = undefined\n\t@Prop({ mutable: true, reflect: true }) looks?: Looks\n\t@Prop({ reflect: true, mutable: true }) color?: Color\n\t@Prop({ reflect: true, mutable: true }) readonly = false\n\t@Prop({ reflect: true }) disabled?: boolean\n\t@Prop() output: \"rgb\" | \"hex\" = \"rgb\"\n\t@Prop({ reflect: true }) name: string\n\t@Prop({ reflect: true }) showLabel = true\n\t@Element() element: HTMLSmoothlyInputColorElement\n\t@State() open = false\n\t@State() sliderMode: \"rgb\" | \"hsl\" = \"rgb\"\n\t@Event() smoothlyInputLooks: EventEmitter<(looks?: Looks, color?: Color) => void>\n\t@Event() smoothlyInput: EventEmitter<Record<string, any>>\n\t@Event() smoothlyUserInput: EventEmitter<Input.UserInput>\n\t@Event() smoothlyInputLoad: EventEmitter<(parent: Editable) => void>\n\t@Event() smoothlyFormDisable: EventEmitter<(disabled: boolean) => void>\n\tasync componentWillLoad(): Promise<void> {\n\t\tthis.value && this.setInitialValue()\n\t\tthis.value && (this.rgb = Color.Hex.toRGB(this.value))\n\t\tthis.smoothlyInputLooks.emit((looks, color) => ((this.looks = this.looks ?? looks), (this.color = color)))\n\t\tthis.smoothlyInput.emit({ [this.name]: await this.getValue() })\n\t\tthis.smoothlyInputLoad.emit(parent => (this.parent = parent))\n\t\t!this.readonly && this.smoothlyFormDisable.emit(readonly => (this.readonly = readonly))\n\t}\n\t@Listen(\"smoothlyInputLooks\")\n\tsmoothlyInputLooksHandler(event: CustomEvent<(looks: Looks) => void>): void {\n\t\tif (event.target != this.element)\n\t\t\tevent.stopPropagation()\n\t}\n\t@Listen(\"smoothlyInputLoad\")\n\tsmoothlyInputLoadHandler(event: CustomEvent<(parent: SmoothlyInputColor) => void>): void {\n\t\tInput.registerSubAction(this, event)\n\t}\n\t@Listen(\"click\", { target: \"window\" })\n\tonWindowClick(event: Event): void {\n\t\t!event.composedPath().includes(this.element) && this.open && (this.open = !this.open)\n\t}\n\tasync disconnectedCallback() {\n\t\tif (!this.element.isConnected)\n\t\t\tawait this.unregister()\n\t}\n\t@Watch(\"name\")\n\tnameChange(_: string | undefined, oldName: string | undefined) {\n\t\tInput.formRename(this, oldName)\n\t}\n\t@Watch(\"disabled\")\n\t@Watch(\"readonly\")\n\twatchingReadonly(): void {\n\t\tthis.observer.publish()\n\t}\n\t@Method()\n\tasync register() {\n\t\tInput.formAdd(this)\n\t}\n\t@Method()\n\tasync unregister() {\n\t\tInput.formRemove(this)\n\t}\n\t@Method()\n\tasync getValue(): Promise<RGB | string | undefined> {\n\t\treturn this.output === \"rgb\"\n\t\t\t? {\n\t\t\t\t\tr: this.rgb.r === undefined ? undefined : Math.round(this.rgb.r),\n\t\t\t\t\tg: this.rgb.g === undefined ? undefined : Math.round(this.rgb.g),\n\t\t\t\t\tb: this.rgb.b === undefined ? undefined : Math.round(this.rgb.b),\n\t\t\t }\n\t\t\t: this.value\n\t\t\t? this.value\n\t\t\t: undefined\n\t}\n\t@Method()\n\tasync clear(): Promise<void> {\n\t\tthis.rgb = { r: undefined, g: undefined, b: undefined }\n\t\tthis.hsl = { h: undefined, s: undefined, l: undefined }\n\t\tthis.value = undefined\n\t}\n\t@Method()\n\tasync listen(listener: Editable.Observer.Listener): Promise<void> {\n\t\tthis.observer.subscribe(listener)\n\t}\n\t@Method()\n\tasync edit(editable: boolean): Promise<void> {\n\t\tthis.readonly = !editable\n\t\tthis.open = false\n\t}\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tthis.value = this.initialValue\n\t\tthis.open = false\n\t}\n\t@Method()\n\tasync setInitialValue(): Promise<void> {\n\t\tthis.initialValue = this.value\n\t\tthis.open = false\n\t}\n\t@Watch(\"value\")\n\tasync valueChanged(): Promise<void> {\n\t\tthis.isDifferentFromInitial = this.initialValue !== this.value\n\t\tthis.smoothlyInput.emit({ [this.name]: await this.getValue() })\n\t\tthis.observer.publish()\n\t}\n\thandleSwitchMode(event: CustomEvent): void {\n\t\tevent.stopPropagation()\n\t\tthis.sliderMode = event.detail ? \"hsl\" : \"rgb\"\n\t\tif (this.sliderMode === \"rgb\") {\n\t\t\tthis.value && (this.rgb = Color.Hex.toRGB(this.value))\n\t\t} else {\n\t\t\tthis.value && (this.hsl = Color.RGB.toHSL(Color.Hex.toRGB(this.value)))\n\t\t}\n\t}\n\tasync hexInputHandler(value: string): Promise<void> {\n\t\tif (value !== this.value) {\n\t\t\tif (value && Color.Hex.type.is(value)) {\n\t\t\t\tif (this.sliderMode === \"hsl\" || this.rgb.r === undefined) {\n\t\t\t\t\tthis.rgb = Color.Hex.toRGB(value)\n\t\t\t\t}\n\t\t\t\tif (this.sliderMode === \"rgb\" || this.hsl.h === undefined) {\n\t\t\t\t\tthis.hsl = Color.RGB.toHSL(Color.Hex.toRGB(value))\n\t\t\t\t}\n\t\t\t} else if (!value || !Color.Hex.type.is(value)) {\n\t\t\t\tthis.rgb = { r: undefined, g: undefined, b: undefined }\n\t\t\t\tthis.hsl = { h: undefined, s: undefined, l: undefined }\n\t\t\t}\n\t\t\tthis.value = value\n\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: await this.getValue() })\n\t\t}\n\t}\n\tsliderInputHandler(event: CustomEvent<Data>): void {\n\t\tevent.stopPropagation()\n\t\tconst color = Object.keys(event.detail)[0]\n\t\tlet temporaryColor = this.sliderMode === \"rgb\" ? this.rgb : this.hsl\n\t\ttype ColorType = HSL | RGB\n\t\tif (!(event.detail[color] === undefined)) {\n\t\t\tfor (const key of Object.keys(temporaryColor))\n\t\t\t\tif (key === color)\n\t\t\t\t\ttemporaryColor = {\n\t\t\t\t\t\t...temporaryColor,\n\t\t\t\t\t\t[key]: key === \"s\" || key === \"l\" ? +(event.detail[color] ?? 0) * 100 : event.detail[color],\n\t\t\t\t\t}\n\t\t\t\telse if (temporaryColor[key as keyof ColorType] === undefined)\n\t\t\t\t\ttemporaryColor = { ...temporaryColor, [key]: 0 }\n\t\t\tif (this.sliderMode === \"rgb\") {\n\t\t\t\tthis.rgb = { ...temporaryColor } as RGB\n\t\t\t\tthis.hsl = Color.RGB.toHSL(this.rgb)\n\t\t\t\tthis.hexInputHandler(Color.RGB.toHex(this.rgb))\n\t\t\t} else {\n\t\t\t\tthis.hsl = { ...temporaryColor } as HSL\n\t\t\t\tthis.rgb = Color.HSL.toRGB(this.hsl)\n\t\t\t\tthis.hexInputHandler(Color.RGB.toHex(Color.HSL.toRGB(this.hsl)))\n\t\t\t}\n\t\t}\n\t}\n\topenDropdown(): void {\n\t\tthis.open = !this.open\n\t}\n\n\trender(): VNode | VNode[] {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tstyle={{\n\t\t\t\t\t\"--hexCode\": this.value,\n\t\t\t\t\t\"--rgb-r\": `${Math.round(this.rgb.r ?? 0)}`,\n\t\t\t\t\t\"--rgb-g\": `${Math.round(this.rgb.g ?? 0)}`,\n\t\t\t\t\t\"--rgb-b\": `${Math.round(this.rgb.b ?? 0)}`,\n\t\t\t\t\t\"--hsl-h\": `${Math.round(this.hsl.h ?? 0)}`,\n\t\t\t\t\t\"--hsl-s\": `${Math.round(this.hsl.s ?? 0)}%`,\n\t\t\t\t\t\"--hsl-l\": `${Math.round(this.hsl.l ?? 0)}%`,\n\t\t\t\t\t\"--element-height\": `${this.element.clientHeight}px`,\n\t\t\t\t}}>\n\t\t\t\t<smoothly-input\n\t\t\t\t\tvalue={this.value}\n\t\t\t\t\tcolor={this.color}\n\t\t\t\t\tlooks={undefined}\n\t\t\t\t\tname={this.name}\n\t\t\t\t\ttype={\"hex-color\"}\n\t\t\t\t\treadonly={this.readonly}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\tshowLabel={this.showLabel}\n\t\t\t\t\tonSmoothlyInput={event => (event?.stopPropagation(), this.hexInputHandler(event.detail[this.name]))}>\n\t\t\t\t\t<slot />\n\t\t\t\t</smoothly-input>\n\t\t\t\t<div class=\"color-sample\" />\n\t\t\t\t<smoothly-icon\n\t\t\t\t\tcolor={this.color}\n\t\t\t\t\tname=\"options-outline\"\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tonClick={() => !this.readonly && !this.disabled && this.openDropdown()}\n\t\t\t\t/>\n\t\t\t\t<div>\n\t\t\t\t\t{/* Extra div needed otherwise stencil sets hidden on the slot for no apparent reason */}\n\t\t\t\t\t<slot name=\"end\" />\n\t\t\t\t</div>\n\t\t\t\t{this.open && !this.readonly && !this.disabled && (\n\t\t\t\t\t<div class=\"rgb-sliders\">\n\t\t\t\t\t\t<smoothly-toggle-switch\n\t\t\t\t\t\t\ttitle={`${this.sliderMode === \"rgb\" ? \"To HSL\" : \"To RGB\"}`}\n\t\t\t\t\t\t\tonSmoothlyToggleSwitchChange={event => this.handleSwitchMode(event)}\n\t\t\t\t\t\t\tsize=\"tiny\"\n\t\t\t\t\t\t\tcheckmark={false}\n\t\t\t\t\t\t\tselected={this.sliderMode === \"hsl\"}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{Object.entries(this.rgb).map(([key, value]) => (\n\t\t\t\t\t\t\t<smoothly-input-range\n\t\t\t\t\t\t\t\tstyle={this.sliderMode != \"rgb\" ? { display: \"none\" } : {}}\n\t\t\t\t\t\t\t\tname={key}\n\t\t\t\t\t\t\t\tmin={0}\n\t\t\t\t\t\t\t\tmax={255}\n\t\t\t\t\t\t\t\tcolor={undefined}\n\t\t\t\t\t\t\t\ttype={\"text\"}\n\t\t\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t\t\t\tstep={1}\n\t\t\t\t\t\t\t\toutputSide=\"right\"\n\t\t\t\t\t\t\t\tonSmoothlyInput={event => this.sliderInputHandler(event)}\n\t\t\t\t\t\t\t\tonSmoothlyUserInput={event => event.stopPropagation()}\n\t\t\t\t\t\t\t\tlabel={key.toUpperCase()}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t\t{Object.entries(this.hsl).map(([key, value]) => (\n\t\t\t\t\t\t\t<smoothly-input-range\n\t\t\t\t\t\t\t\tstyle={this.sliderMode != \"hsl\" ? { display: \"none\" } : {}}\n\t\t\t\t\t\t\t\tname={key}\n\t\t\t\t\t\t\t\tmin={0}\n\t\t\t\t\t\t\t\tmax={key === \"h\" ? 359 : 1}\n\t\t\t\t\t\t\t\tcolor={undefined}\n\t\t\t\t\t\t\t\ttype={key === \"s\" || key === \"l\" ? \"percent\" : \"text\"}\n\t\t\t\t\t\t\t\tvalue={(key === \"s\" || key === \"l\") && value ? value / 100 : value}\n\t\t\t\t\t\t\t\tstep={key === \"s\" || key === \"l\" ? 0.01 : 1}\n\t\t\t\t\t\t\t\toutputSide=\"right\"\n\t\t\t\t\t\t\t\tonSmoothlyInput={event => this.sliderInputHandler(event)}\n\t\t\t\t\t\t\t\tonSmoothlyUserInput={event => event.stopPropagation()}\n\t\t\t\t\t\t\t\tlabel={key.toUpperCase()}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}