smoothly 1.119.0 → 1.121.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 (446) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/smoothly-app_99.cjs.entry.js +270 -141
  3. package/dist/cjs/smoothly-app_99.cjs.entry.js.map +1 -1
  4. package/dist/cjs/smoothly-input-checkbox-demo.cjs.entry.js +1 -1
  5. package/dist/cjs/smoothly-submit.cjs.entry.js +1 -1
  6. package/dist/cjs/smoothly-trigger-sink.cjs.entry.js +1 -1
  7. package/dist/cjs/smoothly-trigger-source.cjs.entry.js +1 -1
  8. package/dist/cjs/smoothly.cjs.js +1 -1
  9. package/dist/collection/components/form/demo/all/index.js +1 -1
  10. package/dist/collection/components/form/demo/all/index.js.map +1 -1
  11. package/dist/collection/components/form/demo/card/index.js +1 -1
  12. package/dist/collection/components/form/demo/controlled/index.js +1 -1
  13. package/dist/collection/components/form/demo/date/index.js +1 -1
  14. package/dist/collection/components/form/demo/date-range/index.js +1 -1
  15. package/dist/collection/components/form/demo/login/index.js +1 -1
  16. package/dist/collection/components/form/demo/pet/index.js +2 -2
  17. package/dist/collection/components/form/demo/prices/index.js +1 -1
  18. package/dist/collection/components/form/demo/schedule/index.js +1 -1
  19. package/dist/collection/components/form/demo/transparent/index.js +1 -1
  20. package/dist/collection/components/form/demo/typed/index.js +1 -1
  21. package/dist/collection/components/icon/demo/index.js +5 -5
  22. package/dist/collection/components/icon/index.js +1 -1
  23. package/dist/collection/components/input/checkbox/demo/index.js +1 -1
  24. package/dist/collection/components/input/checkbox/index.js +2 -2
  25. package/dist/collection/components/input/checkbox/style.css +3 -0
  26. package/dist/collection/components/input/clear/index.js +1 -1
  27. package/dist/collection/components/input/color/demo/index.js +1 -1
  28. package/dist/collection/components/input/color/index.js +2 -2
  29. package/dist/collection/components/input/color/style.css +4 -1
  30. package/dist/collection/components/input/date/index.js +1 -1
  31. package/dist/collection/components/input/date/range/index.js +3 -3
  32. package/dist/collection/components/input/date/range/style.css +3 -0
  33. package/dist/collection/components/input/date/style.css +3 -0
  34. package/dist/collection/components/input/date/text/index.js +1 -1
  35. package/dist/collection/components/input/date/time/index.js +5 -5
  36. package/dist/collection/components/input/date/time/style.css +3 -0
  37. package/dist/collection/components/input/demo/date/index.js +1 -1
  38. package/dist/collection/components/input/demo/index.js +4 -4
  39. package/dist/collection/components/input/demo/price/index.js +1 -1
  40. package/dist/collection/components/input/demo/radio/index.js +1 -1
  41. package/dist/collection/components/input/demo/standard/index.js +1 -1
  42. package/dist/collection/components/input/demo/user-input/index.js +3 -3
  43. package/dist/collection/components/input/edit/index.js +1 -1
  44. package/dist/collection/components/input/file/index.js +1 -1
  45. package/dist/collection/components/input/file/style.css +3 -0
  46. package/dist/collection/components/input/index.js +21 -2
  47. package/dist/collection/components/input/index.js.map +1 -1
  48. package/dist/collection/components/input/month/index.js +4 -4
  49. package/dist/collection/components/input/radio/item/index.js +1 -1
  50. package/dist/collection/components/input/radio/style.css +3 -0
  51. package/dist/collection/components/input/range/Range.js +45 -0
  52. package/dist/collection/components/input/range/Range.js.map +1 -0
  53. package/dist/collection/components/input/range/demo/index.js +1 -1
  54. package/dist/collection/components/input/range/demo/index.js.map +1 -1
  55. package/dist/collection/components/input/range/index.js +136 -27
  56. package/dist/collection/components/input/range/index.js.map +1 -1
  57. package/dist/collection/components/input/range/style.css +101 -1
  58. package/dist/collection/components/input/reset/index.js +1 -1
  59. package/dist/collection/components/input/select/index.js +12 -3
  60. package/dist/collection/components/input/select/index.js.map +1 -1
  61. package/dist/collection/components/input/select/style.css +6 -2
  62. package/dist/collection/components/input/style.css +10 -0
  63. package/dist/collection/components/input/submit/index.js +1 -1
  64. package/dist/collection/components/item/index.js +1 -1
  65. package/dist/collection/components/label/index.js +2 -2
  66. package/dist/collection/components/lazy/index.js +1 -1
  67. package/dist/collection/components/load-more/index.js +1 -1
  68. package/dist/collection/components/modal/index.js +2 -2
  69. package/dist/collection/components/notification/index.js +1 -1
  70. package/dist/collection/components/notifier/demo/index.js +1 -1
  71. package/dist/collection/components/notifier/index.js +1 -1
  72. package/dist/collection/components/spinner/index.js +2 -2
  73. package/dist/collection/components/submit/index.js +1 -1
  74. package/dist/collection/components/summary/index.js +1 -1
  75. package/dist/collection/components/table/body/index.js +1 -1
  76. package/dist/collection/components/table/cell/index.js +1 -1
  77. package/dist/collection/components/table/demo/colspan/index.js +1 -1
  78. package/dist/collection/components/table/demo/filler-row/index.js +1 -1
  79. package/dist/collection/components/table/demo/group/index.js +1 -1
  80. package/dist/collection/components/table/demo/index.js +1 -1
  81. package/dist/collection/components/table/demo/nested-no-cell/index.js +2 -2
  82. package/dist/collection/components/table/demo/nested-no-cell/inner/index.js +1 -1
  83. package/dist/collection/components/table/demo/simple/simple.js +1 -1
  84. package/dist/collection/components/table/expandable/cell/index.js +1 -1
  85. package/dist/collection/components/table/expandable/row/index.js +1 -1
  86. package/dist/collection/components/table/filler-row/index.js +1 -1
  87. package/dist/collection/components/table/foot/index.js +1 -1
  88. package/dist/collection/components/table/group/index.js +1 -1
  89. package/dist/collection/components/table/head/index.js +2 -2
  90. package/dist/collection/components/table/index.js +1 -1
  91. package/dist/collection/components/table/row/index.js +1 -1
  92. package/dist/collection/components/tabs/demo/index.js +1 -1
  93. package/dist/collection/components/tabs/tab/index.js +1 -1
  94. package/dist/collection/components/theme/color/index.js +1 -1
  95. package/dist/collection/components/theme/demo/index.js +1 -1
  96. package/dist/collection/components/theme/guide/index.js +8 -8
  97. package/dist/collection/components/theme/picker/index.js +2 -2
  98. package/dist/collection/components/toggle-switch/demo/index.js +1 -1
  99. package/dist/collection/components/toggle-switch/index.js +1 -1
  100. package/dist/collection/components/trigger/index.js +1 -1
  101. package/dist/collection/components/trigger/sink/index.js +1 -1
  102. package/dist/collection/components/trigger/source/index.js +1 -1
  103. package/dist/components/{p-mgqCIR9Q.js → p--44NQk1v.js} +2 -2
  104. package/dist/components/{p-BTjay9Fy.js → p-0Oak1FtC.js} +2 -2
  105. package/dist/components/p-1eBV_fsy.js +2 -0
  106. package/dist/components/{p-BQOdxeHU.js → p-4Xn3Nprv.js} +2 -2
  107. package/dist/components/{p-vB-efyHR.js → p-7_LLYsTi.js} +2 -2
  108. package/dist/components/{p-CNEHa0dN.js → p-B2eJc1lR.js} +2 -2
  109. package/dist/components/{p-CauRo4fz.js → p-B3S9rR8a.js} +2 -2
  110. package/dist/components/p-B7BXt5wC.js +2 -0
  111. package/dist/components/{p-BDuUY4CB.js.map → p-B7BXt5wC.js.map} +1 -1
  112. package/dist/components/{p-M0gzpGV-.js → p-B7WG3bLU.js} +2 -2
  113. package/dist/components/p-B7y_cC4v.js +2 -0
  114. package/dist/components/{p-DnvyyAaF.js → p-BE5E3Jm6.js} +2 -2
  115. package/dist/components/p-BI_XG1Oj.js +2 -0
  116. package/dist/components/p-BJA3pU4q.js +2 -0
  117. package/dist/components/p-BKiQn3aG.js +2 -0
  118. package/dist/components/{p-ycoVDLCD.js → p-BLdivqFr.js} +2 -2
  119. package/dist/components/p-BSHxNVcQ.js +2 -0
  120. package/dist/components/{p-BdhEVyZ3.js.map → p-BSHxNVcQ.js.map} +1 -1
  121. package/dist/components/{p-D2AakJMz.js → p-BWdGj6F8.js} +2 -2
  122. package/dist/components/{p-Dk4OvZyQ.js → p-BX-sEZyq.js} +2 -2
  123. package/dist/components/{p-CE-IZkWY.js → p-BaXCWr8l.js} +2 -2
  124. package/dist/components/p-BbI_Odg-.js +2 -0
  125. package/dist/components/p-BcV_X5mg.js +2 -0
  126. package/dist/components/p-BplZiuMF.js +2 -0
  127. package/dist/components/p-BplZiuMF.js.map +1 -0
  128. package/dist/components/p-BrBilp2f.js +2 -0
  129. package/dist/components/{p-BCwizh6U.js → p-BsHachOX.js} +2 -2
  130. package/dist/components/{p-Df80nM_T.js → p-BsimTIMh.js} +2 -2
  131. package/dist/components/p-Bzg8bBIr.js +2 -0
  132. package/dist/components/p-C-5nbahV.js +2 -0
  133. package/dist/components/{p-CIXMGKGQ.js → p-C0Vb-3iG.js} +2 -2
  134. package/dist/components/{p-CLqKhHZ8.js → p-C22G-tNF.js} +2 -2
  135. package/dist/components/{p-DFPMixk-.js → p-C2woWb9T.js} +2 -2
  136. package/dist/components/{p-Cuq_eaHi.js → p-C9_7A_n7.js} +2 -2
  137. package/dist/components/{p-zLhQ1mMe.js → p-CCwzp3Kg.js} +2 -2
  138. package/dist/components/{p-DDtRlhit.js → p-CF7MePy1.js} +2 -2
  139. package/dist/components/p-CGfga7g-.js +2 -0
  140. package/dist/components/{p-bQGZECIZ.js → p-CHjWijPI.js} +2 -2
  141. package/dist/components/p-CKD_8Dn1.js +2 -0
  142. package/dist/components/{p-CMMaSJvr.js.map → p-CKD_8Dn1.js.map} +1 -1
  143. package/dist/components/{p-BFa-ypRu.js → p-CM72sJqO.js} +2 -2
  144. package/dist/components/p-CM72sJqO.js.map +1 -0
  145. package/dist/components/p-CPhreyuD.js +2 -0
  146. package/dist/components/{p-C9Wv8Ynb.js → p-CTwHHE82.js} +2 -2
  147. package/dist/components/{p-ByRyVRgY.js → p-CVdJ19AA.js} +2 -2
  148. package/dist/components/{p-BWT1q2tN.js → p-CceVYEd4.js} +2 -2
  149. package/dist/components/p-ChiRe9cW.js +2 -0
  150. package/dist/components/{p-MHAaISnU.js → p-Cl8L61mt.js} +2 -2
  151. package/dist/components/{p-Cq3zOYlg.js → p-CrDAs9xy.js} +2 -2
  152. package/dist/components/{p-B8I-Yh5P.js → p-CrnjoFOX.js} +2 -2
  153. package/dist/components/{p-BcEDrfmP.js → p-Cs0CtSI2.js} +2 -2
  154. package/dist/components/p-Cs1TuGgV.js +2 -0
  155. package/dist/components/{p-Dw1KwhCp.js.map → p-Cs1TuGgV.js.map} +1 -1
  156. package/dist/components/p-CtVEKtM6.js +2 -0
  157. package/dist/components/{p-BAMFAtTN.js.map → p-CtVEKtM6.js.map} +1 -1
  158. package/dist/components/{p-CTvqaqVm.js → p-CttQUOE5.js} +2 -2
  159. package/dist/components/p-Cx_sM6Sy.js +2 -0
  160. package/dist/components/{p-C77C00Ii.js.map → p-Cx_sM6Sy.js.map} +1 -1
  161. package/dist/components/p-Cyi2S_Qh.js +2 -0
  162. package/dist/components/{p-l818BCpp.js → p-D57O7AkC.js} +2 -2
  163. package/dist/components/p-D5xdTtVs.js +2 -0
  164. package/dist/components/p-D97PTGAK.js +2 -0
  165. package/dist/components/p-D97PTGAK.js.map +1 -0
  166. package/dist/components/{p-5Z_db2DH.js → p-DA4pyC19.js} +2 -2
  167. package/dist/components/{p-DDYB8QLF.js → p-DFSiKg4M.js} +2 -2
  168. package/dist/components/{p-w1uPMi4U.js → p-DFh4J14i.js} +2 -2
  169. package/dist/components/{p-BOzzNfNj.js → p-DLgeylX5.js} +2 -2
  170. package/dist/components/p-DLtJSM-r.js +2 -0
  171. package/dist/components/{p-C7rAw-Sf.js → p-DN8CxJxb.js} +2 -2
  172. package/dist/components/p-DO3QrEu1.js +2 -0
  173. package/dist/components/{p-B2GxOEjl.js → p-DUoSHWe1.js} +2 -2
  174. package/dist/components/p-DWcI5nnM.js +2 -0
  175. package/dist/components/p-DY_crgmf.js +2 -0
  176. package/dist/components/{p-C7PxdEtX.js → p-DYvlD9aR.js} +2 -2
  177. package/dist/components/p-DZ4052aB.js +2 -0
  178. package/dist/components/{p-ACHjKlBz.js → p-DbQqZdoI.js} +2 -2
  179. package/dist/components/p-Dd9tz4Tj.js +2 -0
  180. package/dist/components/{p-B-jhX7aN.js.map → p-Dd9tz4Tj.js.map} +1 -1
  181. package/dist/components/p-Dff2v1VD.js +2 -0
  182. package/dist/components/{p-jSrgQO7o.js.map → p-Dff2v1VD.js.map} +1 -1
  183. package/dist/components/{p-Iph4bHku.js → p-DlkQKgfQ.js} +2 -2
  184. package/dist/components/{p-CmUug44L.js → p-DvOr53No.js} +2 -2
  185. package/dist/components/p-EsCYK0HQ.js +2 -0
  186. package/dist/components/{p-CZERsWDV.js.map → p-EsCYK0HQ.js.map} +1 -1
  187. package/dist/components/p-KZeR_6LG.js +2 -0
  188. package/dist/components/{p-BrYTMGo3.js.map → p-KZeR_6LG.js.map} +1 -1
  189. package/dist/components/p-KhaLdt5K.js +2 -0
  190. package/dist/components/{p-DeslbBen.js → p-MduEqLch.js} +2 -2
  191. package/dist/components/{p-UCcJDJNC.js → p-MqffyRVU.js} +2 -2
  192. package/dist/components/{p-BdYr9Wou.js → p-QtHFbgfu.js} +2 -2
  193. package/dist/components/p-U7a1lSmf.js +2 -0
  194. package/dist/components/{p-CFwdTUm-.js → p-XZAGPm4i.js} +2 -2
  195. package/dist/components/p-ewmy4_JT.js +2 -0
  196. package/dist/components/{p-DUZEz-6n.js.map → p-ewmy4_JT.js.map} +1 -1
  197. package/dist/components/p-gEWA_tZo.js +2 -0
  198. package/dist/components/{p-UqPFIGlg.js.map → p-gEWA_tZo.js.map} +1 -1
  199. package/dist/components/p-j4UEmpTa.js +2 -0
  200. package/dist/components/p-j4UEmpTa.js.map +1 -0
  201. package/dist/components/p-o8kM0Soe.js +2 -0
  202. package/dist/components/p-o8kM0Soe.js.map +1 -0
  203. package/dist/components/{p-DGTXEwvN.js → p-tD13Ef_1.js} +2 -2
  204. package/dist/components/{p-DPlYDxyJ.js → p-vvQg46ti.js} +2 -2
  205. package/dist/components/p-wjlHVReJ.js +2 -0
  206. package/dist/components/{p-Bo1NnbuT.js.map → p-wjlHVReJ.js.map} +1 -1
  207. package/dist/components/p-y6VfFBKz.js +2 -0
  208. package/dist/components/p-y6VfFBKz.js.map +1 -0
  209. package/dist/components/{p-CKGlbozb.js → p-zRKK2Cul.js} +2 -2
  210. package/dist/components/smoothly-app-demo.js +1 -1
  211. package/dist/components/smoothly-app-room.js +1 -1
  212. package/dist/components/smoothly-app.js +1 -1
  213. package/dist/components/smoothly-back-to-top.js +1 -1
  214. package/dist/components/smoothly-burger.js +1 -1
  215. package/dist/components/smoothly-button-confirm.js +1 -1
  216. package/dist/components/smoothly-button-demo-standard.js +1 -1
  217. package/dist/components/smoothly-button-demo.js +1 -1
  218. package/dist/components/smoothly-calendar.js +1 -1
  219. package/dist/components/smoothly-checkbox.js +1 -1
  220. package/dist/components/smoothly-date-text.js +1 -1
  221. package/dist/components/smoothly-dialog-demo.js +1 -1
  222. package/dist/components/smoothly-dialog.js +1 -1
  223. package/dist/components/smoothly-display-demo.js +1 -1
  224. package/dist/components/smoothly-form-demo-all.js +1 -1
  225. package/dist/components/smoothly-form-demo-card.js +1 -1
  226. package/dist/components/smoothly-form-demo-controlled.js +1 -1
  227. package/dist/components/smoothly-form-demo-date-range.js +1 -1
  228. package/dist/components/smoothly-form-demo-date.js +1 -1
  229. package/dist/components/smoothly-form-demo-login.js +1 -1
  230. package/dist/components/smoothly-form-demo-pet.js +1 -1
  231. package/dist/components/smoothly-form-demo-prices.js +1 -1
  232. package/dist/components/smoothly-form-demo-schedule.js +1 -1
  233. package/dist/components/smoothly-form-demo-transparent.js +1 -1
  234. package/dist/components/smoothly-form-demo-typed.js +1 -1
  235. package/dist/components/smoothly-form-demo.js +1 -1
  236. package/dist/components/smoothly-form.js +1 -1
  237. package/dist/components/smoothly-icon-demo.js +1 -1
  238. package/dist/components/smoothly-icon.js +1 -1
  239. package/dist/components/smoothly-input-checkbox-demo.js +1 -1
  240. package/dist/components/smoothly-input-checkbox.js +1 -1
  241. package/dist/components/smoothly-input-clear.js +1 -1
  242. package/dist/components/smoothly-input-color-demo.js +1 -1
  243. package/dist/components/smoothly-input-color.js +1 -1
  244. package/dist/components/smoothly-input-date-demo.js +1 -1
  245. package/dist/components/smoothly-input-date-range.js +1 -1
  246. package/dist/components/smoothly-input-date-time.js +1 -1
  247. package/dist/components/smoothly-input-date.js +1 -1
  248. package/dist/components/smoothly-input-demo-radio.js +1 -1
  249. package/dist/components/smoothly-input-demo-standard.js +1 -1
  250. package/dist/components/smoothly-input-demo-user-input.js +1 -1
  251. package/dist/components/smoothly-input-demo.js +1 -1
  252. package/dist/components/smoothly-input-edit.js +1 -1
  253. package/dist/components/smoothly-input-file.js +1 -1
  254. package/dist/components/smoothly-input-month.js +1 -1
  255. package/dist/components/smoothly-input-price-demo.js +1 -1
  256. package/dist/components/smoothly-input-radio-item.js +1 -1
  257. package/dist/components/smoothly-input-radio.js +1 -1
  258. package/dist/components/smoothly-input-range-demo.js +1 -1
  259. package/dist/components/smoothly-input-range.js +1 -1
  260. package/dist/components/smoothly-input-reset.js +1 -1
  261. package/dist/components/smoothly-input-select.js +1 -1
  262. package/dist/components/smoothly-input-submit.js +1 -1
  263. package/dist/components/smoothly-input.js +1 -1
  264. package/dist/components/smoothly-item.js +1 -1
  265. package/dist/components/smoothly-label.js +1 -1
  266. package/dist/components/smoothly-lazy.js +1 -1
  267. package/dist/components/smoothly-load-more.js +1 -1
  268. package/dist/components/smoothly-modal.js +1 -1
  269. package/dist/components/smoothly-notification.js +1 -1
  270. package/dist/components/smoothly-notifier-demo.js +1 -1
  271. package/dist/components/smoothly-notifier.js +1 -1
  272. package/dist/components/smoothly-spinner.js +1 -1
  273. package/dist/components/smoothly-submit.js +1 -1
  274. package/dist/components/smoothly-summary.js +1 -1
  275. package/dist/components/smoothly-tab.js +1 -1
  276. package/dist/components/smoothly-table-body.js +1 -1
  277. package/dist/components/smoothly-table-cell.js +1 -1
  278. package/dist/components/smoothly-table-demo-colspan.js +1 -1
  279. package/dist/components/smoothly-table-demo-filler-row.js +1 -1
  280. package/dist/components/smoothly-table-demo-group.js +1 -1
  281. package/dist/components/smoothly-table-demo-nested-no-cell-inner.js +1 -1
  282. package/dist/components/smoothly-table-demo-nested-no-cell.js +1 -1
  283. package/dist/components/smoothly-table-demo-simple.js +1 -1
  284. package/dist/components/smoothly-table-demo.js +1 -1
  285. package/dist/components/smoothly-table-expandable-cell.js +1 -1
  286. package/dist/components/smoothly-table-expandable-row.js +1 -1
  287. package/dist/components/smoothly-table-filler-row.js +1 -1
  288. package/dist/components/smoothly-table-foot.js +1 -1
  289. package/dist/components/smoothly-table-head.js +1 -1
  290. package/dist/components/smoothly-table-row-group.js +1 -1
  291. package/dist/components/smoothly-table-row.js +1 -1
  292. package/dist/components/smoothly-table.js +1 -1
  293. package/dist/components/smoothly-tabs-demo.js +1 -1
  294. package/dist/components/smoothly-theme-color.js +1 -1
  295. package/dist/components/smoothly-theme-colors.js +1 -1
  296. package/dist/components/smoothly-theme-demo.js +1 -1
  297. package/dist/components/smoothly-theme-guide.js +1 -1
  298. package/dist/components/smoothly-theme-picker.js +1 -1
  299. package/dist/components/smoothly-toggle-switch-demo.js +1 -1
  300. package/dist/components/smoothly-toggle-switch.js +1 -1
  301. package/dist/components/smoothly-trigger-sink.js +1 -1
  302. package/dist/components/smoothly-trigger-source.js +1 -1
  303. package/dist/components/smoothly-trigger.js +1 -1
  304. package/dist/esm/loader.js +1 -1
  305. package/dist/esm/smoothly-app_99.entry.js +270 -141
  306. package/dist/esm/smoothly-app_99.entry.js.map +1 -1
  307. package/dist/esm/smoothly-input-checkbox-demo.entry.js +1 -1
  308. package/dist/esm/smoothly-submit.entry.js +1 -1
  309. package/dist/esm/smoothly-trigger-sink.entry.js +1 -1
  310. package/dist/esm/smoothly-trigger-source.entry.js +1 -1
  311. package/dist/esm/smoothly.js +1 -1
  312. package/dist/smoothly/{p-7a9308b9.entry.js → p-64cc747b.entry.js} +2 -2
  313. package/dist/smoothly/p-a2041097.entry.js +2 -0
  314. package/dist/smoothly/p-baf5063c.entry.js +2 -0
  315. package/dist/smoothly/p-baf5063c.entry.js.map +1 -0
  316. package/dist/smoothly/{p-ac2162c3.entry.js → p-c70e24bf.entry.js} +2 -2
  317. package/dist/smoothly/{p-36966f71.entry.js → p-e8015fc7.entry.js} +2 -2
  318. package/dist/smoothly/smoothly.esm.js +1 -1
  319. package/dist/types/components/input/index.d.ts +1 -0
  320. package/dist/types/components/input/range/Range.d.ts +15 -0
  321. package/dist/types/components/input/range/index.d.ts +13 -2
  322. package/dist/types/components/input/select/index.d.ts +1 -0
  323. package/dist/types/components.d.ts +18 -4
  324. package/package.json +1 -1
  325. package/dist/components/p-7UXKt7wZ.js +0 -2
  326. package/dist/components/p-B-jhX7aN.js +0 -2
  327. package/dist/components/p-BAMFAtTN.js +0 -2
  328. package/dist/components/p-BDuUY4CB.js +0 -2
  329. package/dist/components/p-BFa-ypRu.js.map +0 -1
  330. package/dist/components/p-BH3GbIqq.js +0 -2
  331. package/dist/components/p-BHTAR2x1.js +0 -2
  332. package/dist/components/p-BHTAR2x1.js.map +0 -1
  333. package/dist/components/p-BLIeXp8k.js +0 -2
  334. package/dist/components/p-BdhEVyZ3.js +0 -2
  335. package/dist/components/p-Bo1NnbuT.js +0 -2
  336. package/dist/components/p-BrYTMGo3.js +0 -2
  337. package/dist/components/p-Bv6ll-a-.js +0 -2
  338. package/dist/components/p-BvTs7KUn.js +0 -2
  339. package/dist/components/p-C0OwGHaZ.js +0 -2
  340. package/dist/components/p-C77C00Ii.js +0 -2
  341. package/dist/components/p-C9BPfP8V.js +0 -2
  342. package/dist/components/p-CCaI37_s.js +0 -2
  343. package/dist/components/p-CDzU4-Ri.js +0 -2
  344. package/dist/components/p-CDzU4-Ri.js.map +0 -1
  345. package/dist/components/p-CEYFnw7c.js +0 -2
  346. package/dist/components/p-CMMaSJvr.js +0 -2
  347. package/dist/components/p-CT5ZkMDd.js +0 -2
  348. package/dist/components/p-CUmpHIzY.js +0 -2
  349. package/dist/components/p-CXcvp4fs.js +0 -2
  350. package/dist/components/p-CZERsWDV.js +0 -2
  351. package/dist/components/p-CcBRUK1s.js +0 -2
  352. package/dist/components/p-Cppqe_PV.js +0 -2
  353. package/dist/components/p-Cppqe_PV.js.map +0 -1
  354. package/dist/components/p-Cu0ProBU.js +0 -2
  355. package/dist/components/p-CuBPxYv2.js +0 -2
  356. package/dist/components/p-DRyQsXc9.js +0 -2
  357. package/dist/components/p-DUZEz-6n.js +0 -2
  358. package/dist/components/p-DjX23A0S.js +0 -2
  359. package/dist/components/p-Dq8EU803.js +0 -2
  360. package/dist/components/p-Dq8EU803.js.map +0 -1
  361. package/dist/components/p-DvMoIxws.js +0 -2
  362. package/dist/components/p-Dw1KwhCp.js +0 -2
  363. package/dist/components/p-UqPFIGlg.js +0 -2
  364. package/dist/components/p-UyMXVF_R.js +0 -2
  365. package/dist/components/p-VQuZJp8X.js +0 -2
  366. package/dist/components/p-WiBL-FFH.js +0 -2
  367. package/dist/components/p-e7wZ4-5T.js +0 -2
  368. package/dist/components/p-jSrgQO7o.js +0 -2
  369. package/dist/components/p-vN0nUvmF.js +0 -2
  370. package/dist/components/p-vN0nUvmF.js.map +0 -1
  371. package/dist/smoothly/p-17170ef1.entry.js +0 -2
  372. package/dist/smoothly/p-b962448b.entry.js +0 -2
  373. package/dist/smoothly/p-b962448b.entry.js.map +0 -1
  374. /package/dist/components/{p-mgqCIR9Q.js.map → p--44NQk1v.js.map} +0 -0
  375. /package/dist/components/{p-BTjay9Fy.js.map → p-0Oak1FtC.js.map} +0 -0
  376. /package/dist/components/{p-CCaI37_s.js.map → p-1eBV_fsy.js.map} +0 -0
  377. /package/dist/components/{p-BQOdxeHU.js.map → p-4Xn3Nprv.js.map} +0 -0
  378. /package/dist/components/{p-vB-efyHR.js.map → p-7_LLYsTi.js.map} +0 -0
  379. /package/dist/components/{p-CNEHa0dN.js.map → p-B2eJc1lR.js.map} +0 -0
  380. /package/dist/components/{p-CauRo4fz.js.map → p-B3S9rR8a.js.map} +0 -0
  381. /package/dist/components/{p-M0gzpGV-.js.map → p-B7WG3bLU.js.map} +0 -0
  382. /package/dist/components/{p-Cu0ProBU.js.map → p-B7y_cC4v.js.map} +0 -0
  383. /package/dist/components/{p-DnvyyAaF.js.map → p-BE5E3Jm6.js.map} +0 -0
  384. /package/dist/components/{p-BH3GbIqq.js.map → p-BI_XG1Oj.js.map} +0 -0
  385. /package/dist/components/{p-VQuZJp8X.js.map → p-BJA3pU4q.js.map} +0 -0
  386. /package/dist/components/{p-UyMXVF_R.js.map → p-BKiQn3aG.js.map} +0 -0
  387. /package/dist/components/{p-ycoVDLCD.js.map → p-BLdivqFr.js.map} +0 -0
  388. /package/dist/components/{p-D2AakJMz.js.map → p-BWdGj6F8.js.map} +0 -0
  389. /package/dist/components/{p-Dk4OvZyQ.js.map → p-BX-sEZyq.js.map} +0 -0
  390. /package/dist/components/{p-CE-IZkWY.js.map → p-BaXCWr8l.js.map} +0 -0
  391. /package/dist/components/{p-CXcvp4fs.js.map → p-BbI_Odg-.js.map} +0 -0
  392. /package/dist/components/{p-BLIeXp8k.js.map → p-BcV_X5mg.js.map} +0 -0
  393. /package/dist/components/{p-CuBPxYv2.js.map → p-BrBilp2f.js.map} +0 -0
  394. /package/dist/components/{p-BCwizh6U.js.map → p-BsHachOX.js.map} +0 -0
  395. /package/dist/components/{p-Df80nM_T.js.map → p-BsimTIMh.js.map} +0 -0
  396. /package/dist/components/{p-CT5ZkMDd.js.map → p-Bzg8bBIr.js.map} +0 -0
  397. /package/dist/components/{p-C9BPfP8V.js.map → p-C-5nbahV.js.map} +0 -0
  398. /package/dist/components/{p-CIXMGKGQ.js.map → p-C0Vb-3iG.js.map} +0 -0
  399. /package/dist/components/{p-CLqKhHZ8.js.map → p-C22G-tNF.js.map} +0 -0
  400. /package/dist/components/{p-DFPMixk-.js.map → p-C2woWb9T.js.map} +0 -0
  401. /package/dist/components/{p-Cuq_eaHi.js.map → p-C9_7A_n7.js.map} +0 -0
  402. /package/dist/components/{p-zLhQ1mMe.js.map → p-CCwzp3Kg.js.map} +0 -0
  403. /package/dist/components/{p-DDtRlhit.js.map → p-CF7MePy1.js.map} +0 -0
  404. /package/dist/components/{p-Bv6ll-a-.js.map → p-CGfga7g-.js.map} +0 -0
  405. /package/dist/components/{p-bQGZECIZ.js.map → p-CHjWijPI.js.map} +0 -0
  406. /package/dist/components/{p-CcBRUK1s.js.map → p-CPhreyuD.js.map} +0 -0
  407. /package/dist/components/{p-C9Wv8Ynb.js.map → p-CTwHHE82.js.map} +0 -0
  408. /package/dist/components/{p-ByRyVRgY.js.map → p-CVdJ19AA.js.map} +0 -0
  409. /package/dist/components/{p-BWT1q2tN.js.map → p-CceVYEd4.js.map} +0 -0
  410. /package/dist/components/{p-DRyQsXc9.js.map → p-ChiRe9cW.js.map} +0 -0
  411. /package/dist/components/{p-MHAaISnU.js.map → p-Cl8L61mt.js.map} +0 -0
  412. /package/dist/components/{p-Cq3zOYlg.js.map → p-CrDAs9xy.js.map} +0 -0
  413. /package/dist/components/{p-B8I-Yh5P.js.map → p-CrnjoFOX.js.map} +0 -0
  414. /package/dist/components/{p-BcEDrfmP.js.map → p-Cs0CtSI2.js.map} +0 -0
  415. /package/dist/components/{p-CTvqaqVm.js.map → p-CttQUOE5.js.map} +0 -0
  416. /package/dist/components/{p-DjX23A0S.js.map → p-Cyi2S_Qh.js.map} +0 -0
  417. /package/dist/components/{p-l818BCpp.js.map → p-D57O7AkC.js.map} +0 -0
  418. /package/dist/components/{p-7UXKt7wZ.js.map → p-D5xdTtVs.js.map} +0 -0
  419. /package/dist/components/{p-5Z_db2DH.js.map → p-DA4pyC19.js.map} +0 -0
  420. /package/dist/components/{p-DDYB8QLF.js.map → p-DFSiKg4M.js.map} +0 -0
  421. /package/dist/components/{p-w1uPMi4U.js.map → p-DFh4J14i.js.map} +0 -0
  422. /package/dist/components/{p-BOzzNfNj.js.map → p-DLgeylX5.js.map} +0 -0
  423. /package/dist/components/{p-CUmpHIzY.js.map → p-DLtJSM-r.js.map} +0 -0
  424. /package/dist/components/{p-C7rAw-Sf.js.map → p-DN8CxJxb.js.map} +0 -0
  425. /package/dist/components/{p-DvMoIxws.js.map → p-DO3QrEu1.js.map} +0 -0
  426. /package/dist/components/{p-B2GxOEjl.js.map → p-DUoSHWe1.js.map} +0 -0
  427. /package/dist/components/{p-WiBL-FFH.js.map → p-DWcI5nnM.js.map} +0 -0
  428. /package/dist/components/{p-BvTs7KUn.js.map → p-DY_crgmf.js.map} +0 -0
  429. /package/dist/components/{p-C7PxdEtX.js.map → p-DYvlD9aR.js.map} +0 -0
  430. /package/dist/components/{p-C0OwGHaZ.js.map → p-DZ4052aB.js.map} +0 -0
  431. /package/dist/components/{p-ACHjKlBz.js.map → p-DbQqZdoI.js.map} +0 -0
  432. /package/dist/components/{p-Iph4bHku.js.map → p-DlkQKgfQ.js.map} +0 -0
  433. /package/dist/components/{p-CmUug44L.js.map → p-DvOr53No.js.map} +0 -0
  434. /package/dist/components/{p-e7wZ4-5T.js.map → p-KhaLdt5K.js.map} +0 -0
  435. /package/dist/components/{p-DeslbBen.js.map → p-MduEqLch.js.map} +0 -0
  436. /package/dist/components/{p-UCcJDJNC.js.map → p-MqffyRVU.js.map} +0 -0
  437. /package/dist/components/{p-BdYr9Wou.js.map → p-QtHFbgfu.js.map} +0 -0
  438. /package/dist/components/{p-CEYFnw7c.js.map → p-U7a1lSmf.js.map} +0 -0
  439. /package/dist/components/{p-CFwdTUm-.js.map → p-XZAGPm4i.js.map} +0 -0
  440. /package/dist/components/{p-DGTXEwvN.js.map → p-tD13Ef_1.js.map} +0 -0
  441. /package/dist/components/{p-DPlYDxyJ.js.map → p-vvQg46ti.js.map} +0 -0
  442. /package/dist/components/{p-CKGlbozb.js.map → p-zRKK2Cul.js.map} +0 -0
  443. /package/dist/smoothly/{p-7a9308b9.entry.js.map → p-64cc747b.entry.js.map} +0 -0
  444. /package/dist/smoothly/{p-17170ef1.entry.js.map → p-a2041097.entry.js.map} +0 -0
  445. /package/dist/smoothly/{p-ac2162c3.entry.js.map → p-c70e24bf.entry.js.map} +0 -0
  446. /package/dist/smoothly/{p-36966f71.entry.js.map → p-e8015fc7.entry.js.map} +0 -0
@@ -1,12 +1,15 @@
1
1
  import { h, Host, } from "@stencil/core";
2
2
  import { Editable } from "../Editable";
3
3
  import { Input } from "../Input";
4
+ import { Range } from "./Range";
4
5
  export class SmoothlyInputRange {
5
6
  constructor() {
6
7
  this.isDifferentFromInitial = false;
7
8
  this.observer = Editable.Observer.create(this);
8
9
  this.initialValue = undefined;
10
+ this.sliding = false;
9
11
  this.value = undefined;
12
+ this.dual = false;
10
13
  this.defined = false;
11
14
  this.readonly = false;
12
15
  this.type = "text";
@@ -18,11 +21,16 @@ export class SmoothlyInputRange {
18
21
  }
19
22
  componentWillLoad() {
20
23
  this.smoothlyInputLooks.emit((looks, color) => { var _a; return ((this.looks = (_a = this.looks) !== null && _a !== void 0 ? _a : looks), (this.color = color)); });
21
- this.smoothlyInput.emit({ [this.name]: this.value });
22
24
  this.smoothlyInputLoad.emit(parent => (this.parent = parent));
23
25
  !this.readonly && this.smoothlyFormDisable.emit(readonly => (this.readonly = readonly));
24
- this.value && (this.initialValue = this.value);
25
- this.valueChanged();
26
+ if (this.dual && !Range.is(this.value)) {
27
+ this.initialValue = { start: this.min, end: this.max };
28
+ this.value = this.initialValue;
29
+ }
30
+ else {
31
+ this.value && (this.initialValue = this.value);
32
+ this.valueChanged();
33
+ }
26
34
  }
27
35
  smoothlyInputLoadHandler(event) {
28
36
  Input.registerSubAction(this, event);
@@ -67,20 +75,24 @@ export class SmoothlyInputRange {
67
75
  this.valueChanged();
68
76
  }
69
77
  valueChanged() {
70
- var _a, _b;
71
- const decimals = !this.step ? undefined : ((_b = (_a = this.step.toString().split(".")[1]) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0);
72
- this.value = Number.isNaN(this.value) || this.value == undefined ? undefined : +this.value.toFixed(decimals);
73
- this.isDifferentFromInitial = this.initialValue != this.value;
74
- this.defined = typeof this.value == "number";
75
- this.observer.publish();
76
- this.smoothlyInput.emit({ [this.name]: this.value });
78
+ const normalized = Range.normalize(this.value, this.step);
79
+ if (!Range.equals(normalized, this.value)) {
80
+ this.value = normalized;
81
+ return;
82
+ }
83
+ this.isDifferentFromInitial = !Range.equals(this.initialValue, this.value);
84
+ this.defined = Range.defined(this.value);
85
+ if (!this.sliding) {
86
+ this.observer.publish();
87
+ this.smoothlyInput.emit({ [this.name]: this.value });
88
+ }
77
89
  }
78
90
  watchingReadonly() {
79
91
  this.observer.publish();
80
92
  }
81
93
  setValue(value) {
82
94
  var _a;
83
- if (value == undefined) {
95
+ if (value == undefined || Number.isNaN(value)) {
84
96
  this.value = undefined;
85
97
  }
86
98
  else if (value < this.min) {
@@ -94,20 +106,84 @@ export class SmoothlyInputRange {
94
106
  }
95
107
  this.input && (this.input.value = this.type == "text" ? (_a = this.value) === null || _a === void 0 ? void 0 : _a.toString() : this.value);
96
108
  }
97
- render() {
109
+ setRange(part, value) {
110
+ const current = Range.is(this.value) ? this.value : { start: this.min, end: this.max };
111
+ const resolved = value == undefined || Number.isNaN(value) ? (part == "start" ? this.min : this.max) : value;
112
+ const next = Range.setPart(current, part, resolved, this.min, this.max);
113
+ if (Range.equals(next, this.value)) {
114
+ return;
115
+ }
116
+ this.value = next;
117
+ const field = part == "start" ? this.startInput : this.endInput;
118
+ const bound = next[part];
119
+ field && (field.value = this.type == "text" ? bound.toString() : bound);
120
+ !this.sliding && this.smoothlyUserInput.emit({ name: this.name, value: this.value });
121
+ }
122
+ async commitField(part) {
123
+ const field = part == "start" ? this.startInput : this.endInput;
124
+ this.setRange(part, field ? Number(await field.getValue()) : undefined);
125
+ const bound = Range.is(this.value) ? this.value[part] : undefined;
126
+ field === null || field === void 0 ? void 0 : field.setValue(this.type == "text" ? bound === null || bound === void 0 ? void 0 : bound.toString() : bound);
127
+ }
128
+ renderSingle() {
98
129
  var _a, _b, _c;
99
- return (h(Host, { key: '5156fee6f8e0d7a3a14c11bc6476424935972d46', class: {
100
- "output-side-right": this.outputSide === "right",
101
- "show-label": this.outputSide === "left" && !!this.label,
102
- } }, h("slot", { key: '85ba263c778cec6970979f819a815a98088a8dae', name: "start" }), h("div", { key: 'd1e281cc39cfd5b442c298659ddad32927f83a7e' }, h("label", { key: 'fbe971c908c237c3f2497e8c5c4d858abf031be6', htmlFor: this.name }, this.label), h("smoothly-input", { key: 'a123e5a35b4524d8d3f200f31dea6586947e2a3e', ref: e => (this.input = e), looks: undefined, color: this.color, name: this.name, showLabel: this.outputSide === "left" && !!this.label, type: this.type, onSmoothlyInputLoad: async (e) => (e.stopPropagation(),
103
- this.setValue(Input.Element.is(e.target) ? Number(await e.target.getValue()) : undefined)), onSmoothlyBlur: e => e.stopPropagation(), onSmoothlyInput: async (e) => {
104
- e.stopPropagation();
105
- this.setValue(Input.Element.is(e.target) ? Number(await e.target.getValue()) : undefined);
106
- }, value: this.type == "percent" ? this.value : (_a = this.value) === null || _a === void 0 ? void 0 : _a.toString(), placeholder: this.outputSide === "right" ? "-" : undefined, readonly: this.readonly, disabled: this.disabled }, this.label), h("smoothly-display", { key: '8d3df2b1b5899cfe814bb70754ca586af4a5de25', label: (this.type == "percent" ? this.min * 100 : this.min).toString() }), h("input", { key: '819a42fa4da5e95b804260f99197524fa2aaf90d', name: this.name, part: "range", type: "range", min: this.min, max: this.max, step: (_b = this.step) !== null && _b !== void 0 ? _b : "any", disabled: this.readonly || this.disabled, onInput: event => {
130
+ return [
131
+ h("smoothly-input", { ref: e => (this.input = e), looks: undefined, color: this.color, name: this.name, showLabel: this.outputSide === "left" && !!this.label, type: this.type, onSmoothlyInputLoad: async (e) => (e.stopPropagation(),
132
+ this.setValue(Input.Element.is(e.target) ? Number(await e.target.getValue()) : undefined)), onSmoothlyBlur: e => e.stopPropagation(), onSmoothlyInput: async (e) => {
133
+ e.stopPropagation();
134
+ this.setValue(Input.Element.is(e.target) ? Number(await e.target.getValue()) : undefined);
135
+ }, value: this.type == "percent" ? this.value : (_a = this.value) === null || _a === void 0 ? void 0 : _a.toString(), placeholder: this.outputSide === "right" ? "-" : undefined, readonly: this.readonly, disabled: this.disabled }, this.label),
136
+ h("smoothly-display", { label: (this.type == "percent" ? this.min * 100 : this.min).toString() }),
137
+ h("input", { name: this.name, part: "range", type: "range", min: this.min, max: this.max, step: (_b = this.step) !== null && _b !== void 0 ? _b : "any", disabled: this.readonly || this.disabled, onInput: event => {
138
+ event.stopPropagation();
139
+ this.sliding = true;
140
+ this.setValue(event.target.valueAsNumber);
141
+ }, onChange: event => {
142
+ event.stopPropagation();
143
+ this.sliding = false;
144
+ this.observer.publish();
145
+ this.smoothlyInput.emit({ [this.name]: this.value });
146
+ this.smoothlyUserInput.emit({ name: this.name, value: this.value });
147
+ }, value: (_c = this.value) !== null && _c !== void 0 ? _c : this.min }),
148
+ h("smoothly-display", { label: (this.type == "percent" ? this.max * 100 : this.max).toString() }),
149
+ ];
150
+ }
151
+ renderDual() {
152
+ const range = Range.is(this.value) ? this.value : { start: this.min, end: this.max };
153
+ const left = Range.percent(range.start, this.min, this.max);
154
+ const right = 100 - Range.percent(range.end, this.min, this.max);
155
+ return [
156
+ this.renderField("start", range.start),
157
+ h("div", { class: "track", part: "track" }, h("div", { class: "fill", part: "fill", style: { left: `${left}%`, right: `${right}%` } }), this.renderRangeInput("start", range.start), this.renderRangeInput("end", range.end)),
158
+ this.renderField("end", range.end),
159
+ ];
160
+ }
161
+ renderField(part, value) {
162
+ return (h("smoothly-input", { ref: e => (part == "start" ? (this.startInput = e) : (this.endInput = e)), class: part, color: this.color, name: `${this.name}-${part}`, showLabel: true, type: this.type, onSmoothlyBlur: e => (e.stopPropagation(), this.commitField(part)), onSmoothlyKeydown: e => void (e.detail.key == "Enter" && this.commitField(part)), onSmoothlyInput: e => e.stopPropagation(), onSmoothlyUserInput: e => e.stopPropagation(), value: this.type == "percent" ? value : value === null || value === void 0 ? void 0 : value.toString(), readonly: this.readonly, disabled: this.disabled, right: part == "start" }, part == "start" ? "From" : "To"));
163
+ }
164
+ renderRangeInput(part, value) {
165
+ var _a;
166
+ return (h("input", { part: part == "start" ? "range range-start" : "range range-end", type: "range", min: this.min, max: this.max, step: (_a = this.step) !== null && _a !== void 0 ? _a : "any", disabled: this.readonly || this.disabled, onInput: event => {
167
+ const input = event.target;
168
+ event.stopPropagation();
169
+ this.sliding = true;
170
+ this.setRange(part, input.valueAsNumber);
171
+ const bound = Range.is(this.value) ? this.value[part] : undefined;
172
+ bound != undefined && (input.value = String(bound));
173
+ }, onChange: event => {
107
174
  event.stopPropagation();
108
- this.setValue(event.target.valueAsNumber);
175
+ this.sliding = false;
176
+ this.observer.publish();
177
+ this.smoothlyInput.emit({ [this.name]: this.value });
109
178
  this.smoothlyUserInput.emit({ name: this.name, value: this.value });
110
- }, value: (_c = this.value) !== null && _c !== void 0 ? _c : this.min }), h("smoothly-display", { key: 'f0d1d8872a42854cf442f996de63ffcf584995cf', label: (this.type == "percent" ? this.max * 100 : this.max).toString() })), h("slot", { key: 'e3e904b4883dbceda975cd4d74cd526b77c5d471', name: "end" })));
179
+ }, value: value !== null && value !== void 0 ? value : (part == "start" ? this.min : this.max) }));
180
+ }
181
+ render() {
182
+ return (h(Host, { key: '93a4e9afcd01c8eda143e413360f20e14bcaa920', class: {
183
+ "output-side-right": this.outputSide === "right",
184
+ "show-label": this.outputSide === "left" && !!this.label,
185
+ dual: this.dual,
186
+ } }, h("slot", { key: '72711b5578bab0320901dbd513bb312b54b3ff40', name: "start" }), h("div", { key: 'be83442baeb8cd97fd650ac17717a0e4d703976e' }, h("label", { key: '17c0d638d8a9550c01de699efae66f55e1b27b8c', htmlFor: this.name }, this.label), this.dual ? this.renderDual() : this.renderSingle()), h("slot", { key: '1162b21a65fdd05c5703ff547201765b28858554', name: "end" })));
111
187
  }
112
188
  static get is() { return "smoothly-input-range"; }
113
189
  static get encapsulation() { return "scoped"; }
@@ -127,9 +203,16 @@ export class SmoothlyInputRange {
127
203
  "type": "number",
128
204
  "mutable": true,
129
205
  "complexType": {
130
- "original": "number | undefined",
131
- "resolved": "number | undefined",
132
- "references": {}
206
+ "original": "Range.Value | undefined",
207
+ "resolved": "number | undefined | { start: number; end: number; }",
208
+ "references": {
209
+ "Range": {
210
+ "location": "import",
211
+ "path": "./Range",
212
+ "id": "src/components/input/range/Range.ts::Range",
213
+ "referenceLocation": "Range"
214
+ }
215
+ }
133
216
  },
134
217
  "required": false,
135
218
  "optional": false,
@@ -143,6 +226,26 @@ export class SmoothlyInputRange {
143
226
  "attribute": "value",
144
227
  "defaultValue": "undefined"
145
228
  },
229
+ "dual": {
230
+ "type": "boolean",
231
+ "mutable": false,
232
+ "complexType": {
233
+ "original": "boolean",
234
+ "resolved": "boolean",
235
+ "references": {}
236
+ },
237
+ "required": false,
238
+ "optional": false,
239
+ "docs": {
240
+ "tags": [],
241
+ "text": ""
242
+ },
243
+ "getter": false,
244
+ "setter": false,
245
+ "reflect": false,
246
+ "attribute": "dual",
247
+ "defaultValue": "false"
248
+ },
146
249
  "looks": {
147
250
  "type": "string",
148
251
  "mutable": true,
@@ -558,15 +661,21 @@ export class SmoothlyInputRange {
558
661
  },
559
662
  "getValue": {
560
663
  "complexType": {
561
- "signature": "() => Promise<number | undefined>",
664
+ "signature": "() => Promise<Range.Value | undefined>",
562
665
  "parameters": [],
563
666
  "references": {
564
667
  "Promise": {
565
668
  "location": "global",
566
669
  "id": "global::Promise"
670
+ },
671
+ "Range": {
672
+ "location": "import",
673
+ "path": "./Range",
674
+ "id": "src/components/input/range/Range.ts::Range",
675
+ "referenceLocation": "Range"
567
676
  }
568
677
  },
569
- "return": "Promise<number | undefined>"
678
+ "return": "Promise<Value | undefined>"
570
679
  },
571
680
  "docs": {
572
681
  "text": "",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/input/range/index.tsx"],"names":[],"mappings":"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","sourcesContent":["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 { tidily } from \"tidily\"\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-range\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyInputRange implements Input, Clearable, Editable, ComponentWillLoad {\n\tparent: Editable | undefined\n\tisDifferentFromInitial = false\n\tprivate observer = Editable.Observer.create(this)\n\tprivate input?: HTMLSmoothlyInputElement\n\tprivate initialValue: number | undefined = undefined\n\t@Element() element: HTMLSmoothlyInputRangeElement\n\t@Prop({ mutable: true }) value: number | undefined = undefined\n\t@Prop({ reflect: true, mutable: true }) looks?: Looks\n\t@Prop({ reflect: true, mutable: true }) color?: Color\n\t@Prop({ mutable: true }) defined = false\n\t@Prop({ reflect: true, mutable: true }) readonly = false\n\t@Prop({ reflect: true }) disabled?: boolean\n\t@Prop() type: Extract<tidily.Type, \"text\" | \"percent\"> = \"text\"\n\t@Prop() min = 0\n\t@Prop() max = 100\n\t@Prop({ reflect: true }) name = \"range\"\n\t@Prop() step?: number\n\t@Prop() outputSide: \"right\" | \"left\" = \"left\"\n\t@Prop() label: string\n\t@State() showInput = false\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\tcomponentWillLoad(): void | Promise<void> {\n\t\tthis.smoothlyInputLooks.emit((looks, color) => ((this.looks = this.looks ?? looks), (this.color = color)))\n\t\tthis.smoothlyInput.emit({ [this.name]: this.value })\n\t\tthis.smoothlyInputLoad.emit(parent => (this.parent = parent))\n\t\t!this.readonly && this.smoothlyFormDisable.emit(readonly => (this.readonly = readonly))\n\t\tthis.value && (this.initialValue = this.value)\n\t\tthis.valueChanged()\n\t}\n\t@Listen(\"smoothlyInputLoad\")\n\tsmoothlyInputLoadHandler(event: CustomEvent<(parent: SmoothlyInputRange) => void>) {\n\t\tInput.registerSubAction(this, event)\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\t}\n\t}\n\tasync disconnectedCallback() {\n\t\tif (!this.element.isConnected) {\n\t\t\tawait this.unregister()\n\t\t}\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<number | undefined> {\n\t\treturn this.value\n\t}\n\t@Method()\n\tasync clear(): Promise<void> {\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}\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tthis.value = this.initialValue\n\t}\n\t@Method()\n\tasync setInitialValue(): Promise<void> {\n\t\tthis.initialValue = this.value\n\t\tthis.isDifferentFromInitial = false\n\t\tthis.valueChanged()\n\t}\n\t@Watch(\"value\")\n\tvalueChanged(): void {\n\t\tconst decimals = !this.step ? undefined : (this.step.toString().split(\".\")[1]?.length ?? 0)\n\t\tthis.value = Number.isNaN(this.value) || this.value == undefined ? undefined : +this.value.toFixed(decimals)\n\t\tthis.isDifferentFromInitial = this.initialValue != this.value\n\t\tthis.defined = typeof this.value == \"number\"\n\t\tthis.observer.publish()\n\t\tthis.smoothlyInput.emit({ [this.name]: this.value })\n\t}\n\t@Watch(\"disabled\")\n\t@Watch(\"readonly\")\n\twatchingReadonly(): void {\n\t\tthis.observer.publish()\n\t}\n\tsetValue(value: number | undefined): void {\n\t\tif (value == undefined) {\n\t\t\tthis.value = undefined\n\t\t} else if (value < this.min) {\n\t\t\tthis.value = this.min\n\t\t} else if (value > this.max) {\n\t\t\tthis.value = this.max\n\t\t} else {\n\t\t\tthis.value = value\n\t\t}\n\t\tthis.input && (this.input.value = this.type == \"text\" ? this.value?.toString() : this.value)\n\t}\n\n\trender(): VNode | VNode[] {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={{\n\t\t\t\t\t\"output-side-right\": this.outputSide === \"right\",\n\t\t\t\t\t\"show-label\": this.outputSide === \"left\" && !!this.label,\n\t\t\t\t}}>\n\t\t\t\t<slot name=\"start\" />\n\t\t\t\t<div>\n\t\t\t\t\t<label htmlFor={this.name}>{this.label}</label>\n\t\t\t\t\t<smoothly-input\n\t\t\t\t\t\tref={e => (this.input = e)}\n\t\t\t\t\t\tlooks={undefined}\n\t\t\t\t\t\tcolor={this.color}\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\tshowLabel={this.outputSide === \"left\" && !!this.label}\n\t\t\t\t\t\ttype={this.type}\n\t\t\t\t\t\tonSmoothlyInputLoad={async e => (\n\t\t\t\t\t\t\te.stopPropagation(),\n\t\t\t\t\t\t\tthis.setValue(Input.Element.is(e.target) ? Number(await e.target.getValue()) : undefined)\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tonSmoothlyBlur={e => e.stopPropagation()}\n\t\t\t\t\t\tonSmoothlyInput={async e => {\n\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\tthis.setValue(Input.Element.is(e.target) ? Number(await e.target.getValue()) : undefined)\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tvalue={this.type == \"percent\" ? this.value : this.value?.toString()}\n\t\t\t\t\t\tplaceholder={this.outputSide === \"right\" ? \"-\" : undefined}\n\t\t\t\t\t\treadonly={this.readonly}\n\t\t\t\t\t\tdisabled={this.disabled}>\n\t\t\t\t\t\t{this.label}\n\t\t\t\t\t</smoothly-input>\n\t\t\t\t\t<smoothly-display label={(this.type == \"percent\" ? this.min * 100 : this.min).toString()} />\n\t\t\t\t\t<input\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\tpart=\"range\"\n\t\t\t\t\t\ttype=\"range\"\n\t\t\t\t\t\tmin={this.min}\n\t\t\t\t\t\tmax={this.max}\n\t\t\t\t\t\tstep={this.step ?? \"any\"}\n\t\t\t\t\t\tdisabled={this.readonly || this.disabled}\n\t\t\t\t\t\tonInput={event => {\n\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\tthis.setValue((event.target as HTMLInputElement).valueAsNumber)\n\t\t\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: this.value })\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tvalue={this.value ?? this.min}\n\t\t\t\t\t/>\n\t\t\t\t\t<smoothly-display label={(this.type == \"percent\" ? this.max * 100 : this.max).toString()} />\n\t\t\t\t</div>\n\t\t\t\t<slot name=\"end\" />\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/input/range/index.tsx"],"names":[],"mappings":"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","sourcesContent":["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 { tidily } from \"tidily\"\nimport { Color } from \"../../../model\"\nimport { Clearable } from \"../Clearable\"\nimport { Editable } from \"../Editable\"\nimport { Input } from \"../Input\"\nimport { Looks } from \"../Looks\"\nimport { Range } from \"./Range\"\n\n@Component({\n\ttag: \"smoothly-input-range\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyInputRange implements Input, Clearable, Editable, ComponentWillLoad {\n\tparent: Editable | undefined\n\tisDifferentFromInitial = false\n\tprivate observer = Editable.Observer.create(this)\n\tprivate input?: HTMLSmoothlyInputElement\n\tprivate startInput?: HTMLSmoothlyInputElement\n\tprivate endInput?: HTMLSmoothlyInputElement\n\tprivate initialValue: Range.Value | undefined = undefined\n\tprivate sliding = false\n\t@Element() element: HTMLSmoothlyInputRangeElement\n\t@Prop({ mutable: true }) value: Range.Value | undefined = undefined\n\t@Prop() dual = false\n\t@Prop({ reflect: true, mutable: true }) looks?: Looks\n\t@Prop({ reflect: true, mutable: true }) color?: Color\n\t@Prop({ mutable: true }) defined = false\n\t@Prop({ reflect: true, mutable: true }) readonly = false\n\t@Prop({ reflect: true }) disabled?: boolean\n\t@Prop() type: Extract<tidily.Type, \"text\" | \"percent\"> = \"text\"\n\t@Prop() min = 0\n\t@Prop() max = 100\n\t@Prop({ reflect: true }) name = \"range\"\n\t@Prop() step?: number\n\t@Prop() outputSide: \"right\" | \"left\" = \"left\"\n\t@Prop() label: string\n\t@State() showInput = false\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\tcomponentWillLoad(): void | Promise<void> {\n\t\tthis.smoothlyInputLooks.emit((looks, color) => ((this.looks = this.looks ?? looks), (this.color = color)))\n\t\tthis.smoothlyInputLoad.emit(parent => (this.parent = parent))\n\t\t!this.readonly && this.smoothlyFormDisable.emit(readonly => (this.readonly = readonly))\n\t\tif (this.dual && !Range.is(this.value)) {\n\t\t\tthis.initialValue = { start: this.min, end: this.max }\n\t\t\tthis.value = this.initialValue\n\t\t} else {\n\t\t\tthis.value && (this.initialValue = this.value)\n\t\t\tthis.valueChanged()\n\t\t}\n\t}\n\t@Listen(\"smoothlyInputLoad\")\n\tsmoothlyInputLoadHandler(event: CustomEvent<(parent: SmoothlyInputRange) => void>) {\n\t\tInput.registerSubAction(this, event)\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\t}\n\t}\n\tasync disconnectedCallback() {\n\t\tif (!this.element.isConnected) {\n\t\t\tawait this.unregister()\n\t\t}\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<Range.Value | undefined> {\n\t\treturn this.value\n\t}\n\t@Method()\n\tasync clear(): Promise<void> {\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}\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tthis.value = this.initialValue\n\t}\n\t@Method()\n\tasync setInitialValue(): Promise<void> {\n\t\tthis.initialValue = this.value\n\t\tthis.isDifferentFromInitial = false\n\t\tthis.valueChanged()\n\t}\n\t@Watch(\"value\")\n\tvalueChanged(): void {\n\t\tconst normalized = Range.normalize(this.value, this.step)\n\t\tif (!Range.equals(normalized, this.value)) {\n\t\t\tthis.value = normalized\n\t\t\treturn\n\t\t}\n\t\tthis.isDifferentFromInitial = !Range.equals(this.initialValue, this.value)\n\t\tthis.defined = Range.defined(this.value)\n\t\tif (!this.sliding) {\n\t\t\tthis.observer.publish()\n\t\t\tthis.smoothlyInput.emit({ [this.name]: this.value })\n\t\t}\n\t}\n\t@Watch(\"disabled\")\n\t@Watch(\"readonly\")\n\twatchingReadonly(): void {\n\t\tthis.observer.publish()\n\t}\n\tsetValue(value: number | undefined): void {\n\t\tif (value == undefined || Number.isNaN(value)) {\n\t\t\tthis.value = undefined\n\t\t} else if (value < this.min) {\n\t\t\tthis.value = this.min\n\t\t} else if (value > this.max) {\n\t\t\tthis.value = this.max\n\t\t} else {\n\t\t\tthis.value = value\n\t\t}\n\t\tthis.input && (this.input.value = this.type == \"text\" ? (this.value as number)?.toString() : (this.value as number))\n\t}\n\tsetRange(part: \"start\" | \"end\", value: number | undefined): void {\n\t\tconst current = Range.is(this.value) ? this.value : { start: this.min, end: this.max }\n\t\tconst resolved = value == undefined || Number.isNaN(value) ? (part == \"start\" ? this.min : this.max) : value\n\t\tconst next = Range.setPart(current, part, resolved, this.min, this.max)\n\t\tif (Range.equals(next, this.value)) {\n\t\t\treturn\n\t\t}\n\t\tthis.value = next\n\t\tconst field = part == \"start\" ? this.startInput : this.endInput\n\t\tconst bound = next[part]\n\t\tfield && (field.value = this.type == \"text\" ? bound.toString() : bound)\n\t\t!this.sliding && this.smoothlyUserInput.emit({ name: this.name, value: this.value })\n\t}\n\tprivate async commitField(part: \"start\" | \"end\"): Promise<void> {\n\t\tconst field = part == \"start\" ? this.startInput : this.endInput\n\t\tthis.setRange(part, field ? Number(await field.getValue()) : undefined)\n\t\tconst bound = Range.is(this.value) ? this.value[part] : undefined\n\t\tfield?.setValue(this.type == \"text\" ? bound?.toString() : bound)\n\t}\n\n\tprivate renderSingle(): VNode[] {\n\t\treturn [\n\t\t\t<smoothly-input\n\t\t\t\tref={e => (this.input = e)}\n\t\t\t\tlooks={undefined}\n\t\t\t\tcolor={this.color}\n\t\t\t\tname={this.name}\n\t\t\t\tshowLabel={this.outputSide === \"left\" && !!this.label}\n\t\t\t\ttype={this.type}\n\t\t\t\tonSmoothlyInputLoad={async e => (\n\t\t\t\t\te.stopPropagation(),\n\t\t\t\t\tthis.setValue(Input.Element.is(e.target) ? Number(await e.target.getValue()) : undefined)\n\t\t\t\t)}\n\t\t\t\tonSmoothlyBlur={e => e.stopPropagation()}\n\t\t\t\tonSmoothlyInput={async e => {\n\t\t\t\t\te.stopPropagation()\n\t\t\t\t\tthis.setValue(Input.Element.is(e.target) ? Number(await e.target.getValue()) : undefined)\n\t\t\t\t}}\n\t\t\t\tvalue={this.type == \"percent\" ? (this.value as number) : (this.value as number)?.toString()}\n\t\t\t\tplaceholder={this.outputSide === \"right\" ? \"-\" : undefined}\n\t\t\t\treadonly={this.readonly}\n\t\t\t\tdisabled={this.disabled}>\n\t\t\t\t{this.label}\n\t\t\t</smoothly-input>,\n\t\t\t<smoothly-display label={(this.type == \"percent\" ? this.min * 100 : this.min).toString()} />,\n\t\t\t<input\n\t\t\t\tname={this.name}\n\t\t\t\tpart=\"range\"\n\t\t\t\ttype=\"range\"\n\t\t\t\tmin={this.min}\n\t\t\t\tmax={this.max}\n\t\t\t\tstep={this.step ?? \"any\"}\n\t\t\t\tdisabled={this.readonly || this.disabled}\n\t\t\t\tonInput={event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\tthis.sliding = true\n\t\t\t\t\tthis.setValue((event.target as HTMLInputElement).valueAsNumber)\n\t\t\t\t}}\n\t\t\t\tonChange={event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\tthis.sliding = false\n\t\t\t\t\tthis.observer.publish()\n\t\t\t\t\tthis.smoothlyInput.emit({ [this.name]: this.value })\n\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: this.value })\n\t\t\t\t}}\n\t\t\t\tvalue={(this.value as number) ?? this.min}\n\t\t\t/>,\n\t\t\t<smoothly-display label={(this.type == \"percent\" ? this.max * 100 : this.max).toString()} />,\n\t\t]\n\t}\n\tprivate renderDual(): VNode[] {\n\t\tconst range = Range.is(this.value) ? this.value : { start: this.min, end: this.max }\n\t\tconst left = Range.percent(range.start, this.min, this.max)\n\t\tconst right = 100 - Range.percent(range.end, this.min, this.max)\n\t\treturn [\n\t\t\tthis.renderField(\"start\", range.start),\n\t\t\t<div class=\"track\" part=\"track\">\n\t\t\t\t<div class=\"fill\" part=\"fill\" style={{ left: `${left}%`, right: `${right}%` }} />\n\t\t\t\t{this.renderRangeInput(\"start\", range.start)}\n\t\t\t\t{this.renderRangeInput(\"end\", range.end)}\n\t\t\t</div>,\n\t\t\tthis.renderField(\"end\", range.end),\n\t\t]\n\t}\n\tprivate renderField(part: \"start\" | \"end\", value: number): VNode {\n\t\treturn (\n\t\t\t<smoothly-input\n\t\t\t\tref={e => (part == \"start\" ? (this.startInput = e) : (this.endInput = e))}\n\t\t\t\tclass={part}\n\t\t\t\tcolor={this.color}\n\t\t\t\tname={`${this.name}-${part}`}\n\t\t\t\tshowLabel={true}\n\t\t\t\ttype={this.type}\n\t\t\t\tonSmoothlyBlur={e => (e.stopPropagation(), this.commitField(part))}\n\t\t\t\tonSmoothlyKeydown={e => void (e.detail.key == \"Enter\" && this.commitField(part))}\n\t\t\t\tonSmoothlyInput={e => e.stopPropagation()}\n\t\t\t\tonSmoothlyUserInput={e => e.stopPropagation()}\n\t\t\t\tvalue={this.type == \"percent\" ? value : value?.toString()}\n\t\t\t\treadonly={this.readonly}\n\t\t\t\tdisabled={this.disabled}\n\t\t\t\tright={part == \"start\"}>\n\t\t\t\t{part == \"start\" ? \"From\" : \"To\"}\n\t\t\t</smoothly-input>\n\t\t)\n\t}\n\tprivate renderRangeInput(part: \"start\" | \"end\", value: number): VNode {\n\t\treturn (\n\t\t\t<input\n\t\t\t\tpart={part == \"start\" ? \"range range-start\" : \"range range-end\"}\n\t\t\t\ttype=\"range\"\n\t\t\t\tmin={this.min}\n\t\t\t\tmax={this.max}\n\t\t\t\tstep={this.step ?? \"any\"}\n\t\t\t\tdisabled={this.readonly || this.disabled}\n\t\t\t\tonInput={event => {\n\t\t\t\t\tconst input = event.target as HTMLInputElement\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\tthis.sliding = true\n\t\t\t\t\tthis.setRange(part, input.valueAsNumber)\n\t\t\t\t\tconst bound = Range.is(this.value) ? this.value[part] : undefined\n\t\t\t\t\tbound != undefined && (input.value = String(bound))\n\t\t\t\t}}\n\t\t\t\tonChange={event => {\n\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\tthis.sliding = false\n\t\t\t\t\tthis.observer.publish()\n\t\t\t\t\tthis.smoothlyInput.emit({ [this.name]: this.value })\n\t\t\t\t\tthis.smoothlyUserInput.emit({ name: this.name, value: this.value })\n\t\t\t\t}}\n\t\t\t\tvalue={value ?? (part == \"start\" ? this.min : this.max)}\n\t\t\t/>\n\t\t)\n\t}\n\trender(): VNode | VNode[] {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={{\n\t\t\t\t\t\"output-side-right\": this.outputSide === \"right\",\n\t\t\t\t\t\"show-label\": this.outputSide === \"left\" && !!this.label,\n\t\t\t\t\tdual: this.dual,\n\t\t\t\t}}>\n\t\t\t\t<slot name=\"start\" />\n\t\t\t\t<div>\n\t\t\t\t\t<label htmlFor={this.name}>{this.label}</label>\n\t\t\t\t\t{this.dual ? this.renderDual() : this.renderSingle()}\n\t\t\t\t</div>\n\t\t\t\t<slot name=\"end\" />\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
@@ -87,6 +87,9 @@
87
87
  transform-origin: top left;
88
88
  transition: transform 100ms ease;
89
89
  }
90
+ :host[right] .label {
91
+ transform-origin: top right;
92
+ }
90
93
 
91
94
  :host.floating-label ::slotted([slot=label]),
92
95
  :host.has-value ::slotted([slot=label]),
@@ -146,7 +149,7 @@
146
149
  margin-left: var(--input-padding-side);
147
150
  border: none;
148
151
  box-sizing: border-box;
149
- width: 5em;
152
+ width: 6rem;
150
153
  order: 3;
151
154
  margin: 0;
152
155
  }
@@ -253,3 +256,100 @@ input::-webkit-inner-spin-button {
253
256
  -webkit-appearance: none;
254
257
  margin: 0;
255
258
  }
259
+
260
+ /*--------------------DUAL MODE------------------ */
261
+ :host(.dual)>div>smoothly-input {
262
+ width: 6rem;
263
+ flex: 0 0 auto;
264
+ }
265
+ :host(.dual) .track {
266
+ position: relative;
267
+ flex: 1;
268
+ height: 1.5em;
269
+ display: flex;
270
+ align-items: center;
271
+ }
272
+ /* Shared visible track line */
273
+ :host(.dual) .track::before {
274
+ content: "";
275
+ position: absolute;
276
+ left: .4em;
277
+ right: .4em;
278
+ height: .3rem;
279
+ border-radius: 20px;
280
+ background-color: rgb(var(--smoothly-input-foreground));
281
+ }
282
+ :host(.dual) .fill {
283
+ position: absolute;
284
+ height: .3rem;
285
+ border-radius: 20px;
286
+ background-color: rgb(var(--smoothly-primary-color));
287
+ pointer-events: none;
288
+ }
289
+ /* Match the single range: the active fill drops to the foreground color when readonly/disabled. */
290
+ :host(.dual[readonly]) .fill,
291
+ :host(.dual[disabled]) .fill {
292
+ background-color: rgb(var(--smoothly-input-foreground));
293
+ }
294
+ /* Both range inputs occupy the same box; only their thumbs receive pointer events */
295
+ :host(.dual) .track > input[type=range] {
296
+ position: absolute;
297
+ left: 0;
298
+ right: 0;
299
+ width: 100%;
300
+ margin: 0;
301
+ background: transparent;
302
+ pointer-events: none;
303
+ }
304
+ :host(.dual) .track > input[type=range]::-webkit-slider-runnable-track {
305
+ background: transparent;
306
+ }
307
+ :host(.dual) .track > input[type=range]::-moz-range-track {
308
+ background: transparent;
309
+ }
310
+ :host(.dual) .track > input[type=range]::-webkit-slider-thumb {
311
+ pointer-events: auto;
312
+ }
313
+ :host(.dual) .track > input[type=range]::-moz-range-thumb {
314
+ pointer-events: auto;
315
+ }
316
+
317
+ /*--------------------DUAL MODE THUMBS------------------ */
318
+ /* Single-mode thumb rules only match the direct-child :host>div>input, not the nested dual inputs, so replicate them here. */
319
+ :host(.dual) .track > input[type=range] {
320
+ -webkit-appearance: none;
321
+ }
322
+ :host(.dual) .track > input[type=range]::-webkit-slider-runnable-track {
323
+ height: .3rem;
324
+ }
325
+ :host(.dual) .track > input[type=range]::-moz-range-track {
326
+ height: .3rem;
327
+ }
328
+ :host(.dual) .track > input[type=range]::-webkit-slider-thumb {
329
+ -webkit-appearance: none;
330
+ height: 0.8em;
331
+ width: 0.8em;
332
+ margin-top: -.25em;
333
+ border-radius: 100%;
334
+ border: none;
335
+ background-color: rgb(var(--smoothly-input-foreground));
336
+ }
337
+ :host(.dual):not([disabled]):not([readonly]) .track > input[type=range]::-webkit-slider-thumb {
338
+ background-color: rgb(var(--smoothly-primary-color));
339
+ cursor: pointer;
340
+ }
341
+ :host(.dual) .track > input[type=range]::-moz-range-thumb {
342
+ height: 0.8em;
343
+ width: 0.8em;
344
+ border-radius: 100%;
345
+ border: none;
346
+ background-color: rgb(var(--smoothly-input-foreground));
347
+ }
348
+ :host(.dual):not([disabled]):not([readonly]) .track > input[type=range]::-moz-range-thumb {
349
+ background-color: rgb(var(--smoothly-primary-color));
350
+ cursor: pointer;
351
+ }
352
+ :host(.dual)[disabled] .track > input[type=range]::-webkit-slider-thumb,
353
+ :host(.dual)[disabled] .track > input[type=range]::-moz-range-thumb {
354
+ cursor: not-allowed;
355
+ }
@@ -41,7 +41,7 @@ export class SmoothlyInputReset {
41
41
  }
42
42
  render() {
43
43
  var _a;
44
- return (h(Host, { key: 'f69a407428454170f461cee5d8e6b8ece33f682f', title: this.tooltip }, h("smoothly-button", { key: '21fed26fa5cb6c8dc32af427f492cb5879682d3c', disabled: this.disabled, size: this.size, type: "button", shape: this.shape, expand: this.expand, color: this.color, fill: (_a = this.fill) !== null && _a !== void 0 ? _a : (this.type == "input" ? "clear" : undefined), onClick: event => this.clickHandler(event) }, h("slot", { key: 'ed9f01c4274c9b5b59c6cd27c2cdd62e3a7bb259' }), h("smoothly-icon", { key: '0ddd9963d333449a5d029b6c29f532ca8d2b3423', flip: "x", name: "refresh-outline", size: "tiny" }))));
44
+ return (h(Host, { key: '29a3490c49e3b9d9e5f308b151c1fe4f6767cba0', title: this.tooltip }, h("smoothly-button", { key: '7c6c4f6ddf30a5118731012f645fc40fdc0ecde7', disabled: this.disabled, size: this.size, type: "button", shape: this.shape, expand: this.expand, color: this.color, fill: (_a = this.fill) !== null && _a !== void 0 ? _a : (this.type == "input" ? "clear" : undefined), onClick: event => this.clickHandler(event) }, h("slot", { key: '515048d8827b4be6d52c9b094f501a9face42bb3' }), h("smoothly-icon", { key: '6f20b342b2606118bca317997a6c54fe11a8f1ca', flip: "x", name: "refresh-outline", size: "tiny" }))));
45
45
  }
46
46
  static get is() { return "smoothly-input-reset"; }
47
47
  static get encapsulation() { return "scoped"; }
@@ -12,6 +12,7 @@ export class SmoothlyInputSelect {
12
12
  this.initialValueHandled = false;
13
13
  this.observer = Editable.Observer.create(this);
14
14
  this.items = [];
15
+ this.displaySeparator = '<span style="display:inline-block;width:0.8rem"></span>';
15
16
  this.invalid = false;
16
17
  this.name = "selected";
17
18
  this.showLabel = true;
@@ -183,7 +184,15 @@ export class SmoothlyInputSelect {
183
184
  return selected.length === initialValue.length && initialValue.every(value => selected.includes(value));
184
185
  }
185
186
  displaySelected() {
186
- this.display = this.selected.map(option => option.innerHTML);
187
+ this.display = this.selected.map(option => {
188
+ const clone = option.cloneNode(true);
189
+ clone.querySelectorAll("smoothly-icon").forEach(icon => {
190
+ const style = icon.style;
191
+ style.display = "inline-flex";
192
+ style.verticalAlign = "middle";
193
+ });
194
+ return clone.innerHTML;
195
+ });
187
196
  }
188
197
  onKeyDown(event) {
189
198
  event.stopPropagation();
@@ -278,11 +287,11 @@ export class SmoothlyInputSelect {
278
287
  }
279
288
  }
280
289
  render() {
281
- return (h(Host, { key: '65a7d8d8f4e241d01e6e5862cb399cbc575f561b', class: { "has-value": this.selected.length !== 0, open: this.open, "has-filter": this.filter !== "" }, onClick: (e) => this.onClick(e) }, h("div", { key: 'ac6e093f04b7ab37032aad27f1c82a02d255def9', class: "select-display" }, this.display.length > 0 ? h("div", { innerHTML: this.display.join(", ") }) : this.placeholder), h("div", { key: 'b80e14fcd129d7abf5836055f4a2e28a4ed16d0f', class: "icons", ref: element => (this.iconsElement = element) }, h("smoothly-icon", { key: '32de16a9eab82526f2f38dfaedc737cdd12f6d92', class: "smoothly-invalid", name: "alert-circle", size: "small", tooltip: this.errorMessage }), h("slot", { key: 'af50968ee2c894126b83d7813c82a0d0402cf7a9', name: "end" }), this.looks == "border" && !this.readonly && (h("smoothly-icon", { key: '0c0f8945582eae4e322f0e17a997995d4f4bd02c', ref: element => (this.toggleElement = element), size: "tiny", name: this.open ? "caret-down-outline" : "caret-forward-outline" }))), h("slot", { key: '1d4c5b7cc174c6ef6e10f4556b1d2387b4150619', name: "label" }), h("div", { key: '45417fef3b11e8e1da9347f60ef03e6fc0a5a421', class: "dropdown", ref: (el) => (this.dropdownElement = el) }, h("div", { key: 'b6556702655db2d495fc5a4e6ecca75886739c77', class: "search" }, h("smoothly-icon", { key: 'a638f9dffd30ed31bad8dadfe521402ce4133623', name: "search-outline", size: "small" }), h("input", { key: 'ee2c1fc1595145211c41d249ec734aabc97d9a00', class: "search-input", ref: el => (this.searchElement = el), disabled: this.searchDisabled, onKeyDown: e => this.onKeyDown(e), onInput: e => { var _a, _b; return (e.stopPropagation(), this.setFilter((_b = (_a = this.searchElement) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : "")); }, onPaste: e => { var _a, _b; return (e.stopPropagation(), this.setFilter((_b = (_a = this.searchElement) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : "")); } }), h("smoothly-icon", { key: '10d79827edb6792f0ff65a8f91102a8bdc33ea0f', name: "backspace-outline", size: "small", onClick: () => {
290
+ return (h(Host, { key: '1cfb5cdaeee4ecebbef19ba89e81ce750b748fd5', class: { "has-value": this.selected.length !== 0, open: this.open, "has-filter": this.filter !== "" }, onClick: (e) => this.onClick(e) }, h("div", { key: '8b70e7ed56604f4bdc9efea35f7ab030ae71ef28', class: "select-display" }, this.display.length > 0 ? (h("div", { class: "value", innerHTML: this.display.join(this.displaySeparator) })) : (this.placeholder)), h("div", { key: '61c7ed152c3a0e190a0acba91f0b16d868326d5a', class: "icons", ref: element => (this.iconsElement = element) }, h("smoothly-icon", { key: 'ad06e05c043692038e51e785414597de4d9fbb7a', class: "smoothly-invalid", name: "alert-circle", size: "small", tooltip: this.errorMessage }), h("slot", { key: '53d7011004fe7e76514b5a25cb93643b64115713', name: "end" }), this.looks == "border" && !this.readonly && (h("smoothly-icon", { key: '59cf62f39652ac58e42854e5552d7f097e8c031b', ref: element => (this.toggleElement = element), size: "tiny", name: this.open ? "caret-down-outline" : "caret-forward-outline" }))), h("slot", { key: '83b8024bc79bc83f7f75a20cc324d4555c683818', name: "label" }), h("div", { key: 'b03bb76da9b2e55d4111a958cf48c10611fbaf02', class: "dropdown", ref: (el) => (this.dropdownElement = el) }, h("div", { key: '3aa51b8ad250108d83da3741e4d9e0f684d1e2e0', class: "search" }, h("smoothly-icon", { key: 'b759aa93d460e8eae8e0bea32e77222b9fad12a5', name: "search-outline", size: "small" }), h("input", { key: '2089730dd304e16e38b09bb4c90aa0932031588d', class: "search-input", ref: el => (this.searchElement = el), disabled: this.searchDisabled, onKeyDown: e => this.onKeyDown(e), onInput: e => { var _a, _b; return (e.stopPropagation(), this.setFilter((_b = (_a = this.searchElement) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : "")); }, onPaste: e => { var _a, _b; return (e.stopPropagation(), this.setFilter((_b = (_a = this.searchElement) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : "")); } }), h("smoothly-icon", { key: '1ec0ce82744829f004b19fdbddfc39fc3e667754', name: "backspace-outline", size: "small", onClick: () => {
282
291
  var _a;
283
292
  this.resetFilter();
284
293
  (_a = this.searchElement) === null || _a === void 0 ? void 0 : _a.focus();
285
- } }), this.mutable && h("smoothly-icon", { key: 'c9845fdf253eb126f440178a7667a0c1839086d1', name: "add", size: "small", onClick: () => this.addItem() })), h("div", { key: 'c2decc722e32db1d3fcdcf734b6cc57867618a7a', class: "menu", hidden: !this.open }, h("slot", { key: '8e6e54b0dd4a7f1951fdfc312dd1573d43f0bdec' }), this.addedItems))));
294
+ } }), this.mutable && h("smoothly-icon", { key: '8a4c8af59466704939254337b0f8bae842631ab5', name: "add", size: "small", onClick: () => this.addItem() })), h("div", { key: '756d18dc29cdb02499b693fd25f5bf5b5e3799dd', class: "menu", hidden: !this.open }, h("slot", { key: '04471237e2fc63ae6b07d140a3dac4f4bfb6b16a' }), this.addedItems))));
286
295
  }
287
296
  static get is() { return "smoothly-input-select"; }
288
297
  static get encapsulation() { return "scoped"; }