godown 3.3.0 → 3.5.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 (237) hide show
  1. package/build/godown+lit.iife.js +4 -4
  2. package/build/godown+lit.iife.js.map +1 -1
  3. package/build/godown+lit.js +4 -4
  4. package/build/godown+lit.js.map +1 -1
  5. package/build/godown+lit.umd.js +4 -4
  6. package/build/godown+lit.umd.js.map +1 -1
  7. package/build/godown.iife.js +4 -4
  8. package/build/godown.js +4 -4
  9. package/build/godown.js.map +1 -1
  10. package/build/godown.umd.js +4 -4
  11. package/build/godown.umd.js.map +1 -1
  12. package/components/alert.js +1 -1
  13. package/components/alert.js.map +1 -1
  14. package/components/avatar.d.ts +5 -4
  15. package/components/avatar.d.ts.map +1 -1
  16. package/components/avatar.js +1 -1
  17. package/components/avatar.js.map +1 -1
  18. package/components/badge.d.ts +10 -2
  19. package/components/badge.d.ts.map +1 -1
  20. package/components/badge.js.map +1 -1
  21. package/components/breath.d.ts +2 -3
  22. package/components/breath.d.ts.map +1 -1
  23. package/components/breath.js +1 -1
  24. package/components/breath.js.map +1 -1
  25. package/components/button.d.ts +7 -2
  26. package/components/button.d.ts.map +1 -1
  27. package/components/button.js +1 -1
  28. package/components/button.js.map +1 -1
  29. package/components/card.d.ts +6 -0
  30. package/components/card.d.ts.map +1 -1
  31. package/components/card.js +1 -1
  32. package/components/card.js.map +1 -1
  33. package/components/carousel.d.ts +2 -2
  34. package/components/details.d.ts +3 -3
  35. package/components/details.d.ts.map +1 -1
  36. package/components/dialog.d.ts +9 -6
  37. package/components/dialog.d.ts.map +1 -1
  38. package/components/dialog.js +1 -1
  39. package/components/dialog.js.map +1 -1
  40. package/components/divider.d.ts +1 -1
  41. package/components/divider.d.ts.map +1 -1
  42. package/components/divider.js +1 -1
  43. package/components/divider.js.map +1 -1
  44. package/components/heading.d.ts +2 -0
  45. package/components/heading.d.ts.map +1 -1
  46. package/components/heading.js.map +1 -1
  47. package/components/input.d.ts +2 -2
  48. package/components/input.d.ts.map +1 -1
  49. package/components/input.js +1 -1
  50. package/components/input.js.map +1 -1
  51. package/components/link.d.ts +1 -1
  52. package/components/link.d.ts.map +1 -1
  53. package/components/link.js +1 -1
  54. package/components/link.js.map +1 -1
  55. package/components/progress.d.ts +0 -7
  56. package/components/progress.d.ts.map +1 -1
  57. package/components/progress.js +1 -1
  58. package/components/progress.js.map +1 -1
  59. package/components/range.d.ts +50 -15
  60. package/components/range.d.ts.map +1 -1
  61. package/components/range.js +1 -1
  62. package/components/range.js.map +1 -1
  63. package/components/rotate.d.ts +6 -4
  64. package/components/rotate.d.ts.map +1 -1
  65. package/components/rotate.js.map +1 -1
  66. package/components/select.d.ts +4 -2
  67. package/components/select.d.ts.map +1 -1
  68. package/components/select.js +1 -1
  69. package/components/select.js.map +1 -1
  70. package/components/split.d.ts +2 -1
  71. package/components/split.d.ts.map +1 -1
  72. package/components/split.js +1 -1
  73. package/components/split.js.map +1 -1
  74. package/components/switch.d.ts +10 -20
  75. package/components/switch.d.ts.map +1 -1
  76. package/components/switch.js +1 -1
  77. package/components/switch.js.map +1 -1
  78. package/components/time.d.ts +2 -2
  79. package/components/time.d.ts.map +1 -1
  80. package/components/time.js.map +1 -1
  81. package/components/tooltip.d.ts +3 -2
  82. package/components/tooltip.d.ts.map +1 -1
  83. package/components/tooltip.js +1 -1
  84. package/components/tooltip.js.map +1 -1
  85. package/core/direction.d.ts +27 -0
  86. package/core/direction.d.ts.map +1 -0
  87. package/core/direction.js +2 -0
  88. package/core/direction.js.map +1 -0
  89. package/core/global-style.d.ts +0 -2
  90. package/core/global-style.d.ts.map +1 -1
  91. package/core/global-style.js +1 -1
  92. package/core/global-style.js.map +1 -1
  93. package/core/outline.d.ts +20 -0
  94. package/core/outline.d.ts.map +1 -0
  95. package/core/outline.js +2 -0
  96. package/core/outline.js.map +1 -0
  97. package/core/super-anchor.d.ts +2 -2
  98. package/core/super-anchor.d.ts.map +1 -1
  99. package/core/super-anchor.js +1 -1
  100. package/core/super-anchor.js.map +1 -1
  101. package/core/super-input.d.ts +4 -2
  102. package/core/super-input.d.ts.map +1 -1
  103. package/core/super-input.js +1 -1
  104. package/core/super-input.js.map +1 -1
  105. package/core/super-openable.d.ts +0 -4
  106. package/core/super-openable.d.ts.map +1 -1
  107. package/custom-elements.json +1 -1
  108. package/dev/components/alert.js +1 -1
  109. package/dev/components/avatar.d.ts +5 -4
  110. package/dev/components/avatar.d.ts.map +1 -1
  111. package/dev/components/avatar.js +7 -5
  112. package/dev/components/avatar.js.map +1 -1
  113. package/dev/components/badge.d.ts +10 -2
  114. package/dev/components/badge.d.ts.map +1 -1
  115. package/dev/components/badge.js +8 -0
  116. package/dev/components/badge.js.map +1 -1
  117. package/dev/components/breath.d.ts +2 -3
  118. package/dev/components/breath.d.ts.map +1 -1
  119. package/dev/components/breath.js +3 -14
  120. package/dev/components/breath.js.map +1 -1
  121. package/dev/components/button.d.ts +7 -2
  122. package/dev/components/button.d.ts.map +1 -1
  123. package/dev/components/button.js +19 -5
  124. package/dev/components/button.js.map +1 -1
  125. package/dev/components/card.d.ts +6 -0
  126. package/dev/components/card.d.ts.map +1 -1
  127. package/dev/components/card.js +15 -11
  128. package/dev/components/card.js.map +1 -1
  129. package/dev/components/carousel.d.ts +2 -2
  130. package/dev/components/carousel.js +2 -2
  131. package/dev/components/details.d.ts +3 -3
  132. package/dev/components/details.d.ts.map +1 -1
  133. package/dev/components/details.js +3 -3
  134. package/dev/components/details.js.map +1 -1
  135. package/dev/components/dialog.d.ts +9 -6
  136. package/dev/components/dialog.d.ts.map +1 -1
  137. package/dev/components/dialog.js +58 -62
  138. package/dev/components/dialog.js.map +1 -1
  139. package/dev/components/divider.d.ts +1 -1
  140. package/dev/components/divider.d.ts.map +1 -1
  141. package/dev/components/divider.js +3 -2
  142. package/dev/components/divider.js.map +1 -1
  143. package/dev/components/heading.d.ts +2 -0
  144. package/dev/components/heading.d.ts.map +1 -1
  145. package/dev/components/heading.js +2 -0
  146. package/dev/components/heading.js.map +1 -1
  147. package/dev/components/input.d.ts +2 -2
  148. package/dev/components/input.d.ts.map +1 -1
  149. package/dev/components/input.js +29 -8
  150. package/dev/components/input.js.map +1 -1
  151. package/dev/components/link.d.ts +1 -1
  152. package/dev/components/link.d.ts.map +1 -1
  153. package/dev/components/link.js +2 -2
  154. package/dev/components/link.js.map +1 -1
  155. package/dev/components/progress.d.ts +0 -7
  156. package/dev/components/progress.d.ts.map +1 -1
  157. package/dev/components/progress.js +4 -25
  158. package/dev/components/progress.js.map +1 -1
  159. package/dev/components/range.d.ts +50 -15
  160. package/dev/components/range.d.ts.map +1 -1
  161. package/dev/components/range.js +50 -14
  162. package/dev/components/range.js.map +1 -1
  163. package/dev/components/rotate.d.ts +6 -4
  164. package/dev/components/rotate.d.ts.map +1 -1
  165. package/dev/components/rotate.js +6 -4
  166. package/dev/components/rotate.js.map +1 -1
  167. package/dev/components/select.d.ts +4 -2
  168. package/dev/components/select.d.ts.map +1 -1
  169. package/dev/components/select.js +27 -24
  170. package/dev/components/select.js.map +1 -1
  171. package/dev/components/split.d.ts +2 -1
  172. package/dev/components/split.d.ts.map +1 -1
  173. package/dev/components/split.js +12 -7
  174. package/dev/components/split.js.map +1 -1
  175. package/dev/components/switch.d.ts +10 -20
  176. package/dev/components/switch.d.ts.map +1 -1
  177. package/dev/components/switch.js +57 -98
  178. package/dev/components/switch.js.map +1 -1
  179. package/dev/components/time.d.ts +2 -2
  180. package/dev/components/time.d.ts.map +1 -1
  181. package/dev/components/time.js.map +1 -1
  182. package/dev/components/tooltip.d.ts +3 -2
  183. package/dev/components/tooltip.d.ts.map +1 -1
  184. package/dev/components/tooltip.js +7 -19
  185. package/dev/components/tooltip.js.map +1 -1
  186. package/dev/core/direction.d.ts +27 -0
  187. package/dev/core/direction.d.ts.map +1 -0
  188. package/dev/core/direction.js +56 -0
  189. package/dev/core/direction.js.map +1 -0
  190. package/dev/core/global-style.d.ts +0 -2
  191. package/dev/core/global-style.d.ts.map +1 -1
  192. package/dev/core/global-style.js +3 -7
  193. package/dev/core/global-style.js.map +1 -1
  194. package/dev/core/outline.d.ts +20 -0
  195. package/dev/core/outline.d.ts.map +1 -0
  196. package/dev/core/outline.js +44 -0
  197. package/dev/core/outline.js.map +1 -0
  198. package/dev/core/super-anchor.d.ts +2 -2
  199. package/dev/core/super-anchor.d.ts.map +1 -1
  200. package/dev/core/super-anchor.js +0 -1
  201. package/dev/core/super-anchor.js.map +1 -1
  202. package/dev/core/super-input.d.ts +4 -2
  203. package/dev/core/super-input.d.ts.map +1 -1
  204. package/dev/core/super-input.js +25 -30
  205. package/dev/core/super-input.js.map +1 -1
  206. package/dev/core/super-openable.d.ts +0 -4
  207. package/dev/core/super-openable.d.ts.map +1 -1
  208. package/package.json +3 -3
  209. package/src/components/alert.ts +1 -1
  210. package/src/components/avatar.ts +9 -6
  211. package/src/components/badge.ts +10 -3
  212. package/src/components/breath.ts +5 -17
  213. package/src/components/button.ts +18 -5
  214. package/src/components/card.ts +15 -11
  215. package/src/components/carousel.ts +2 -2
  216. package/src/components/details.ts +3 -3
  217. package/src/components/dialog.ts +66 -65
  218. package/src/components/divider.ts +3 -2
  219. package/src/components/heading.ts +2 -0
  220. package/src/components/input.ts +29 -8
  221. package/src/components/link.ts +2 -2
  222. package/src/components/progress.ts +4 -25
  223. package/src/components/range.ts +64 -26
  224. package/src/components/rotate.ts +6 -4
  225. package/src/components/select.ts +33 -26
  226. package/src/components/split.ts +13 -7
  227. package/src/components/switch.ts +62 -94
  228. package/src/components/time.ts +2 -2
  229. package/src/components/tooltip.ts +8 -20
  230. package/src/core/direction.ts +65 -0
  231. package/src/core/global-style.ts +3 -9
  232. package/src/core/outline.ts +54 -0
  233. package/src/core/super-anchor.ts +3 -2
  234. package/src/core/super-input.ts +31 -33
  235. package/src/core/super-openable.ts +0 -8
  236. package/vscode.html-custom-data.json +1 -1
  237. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"link.js","sources":["../src/components/link.ts"],"sourcesContent":null,"names":["linkTypes","Link","SuperAnchor","constructor","this","type","suppress","replace","state","handleState","history","pushState","href","replaceState","_handleClick","e","pathname","dispatchCustomEvent","observedRecord","startsWith","routers","Router","routerInstances","some","i","search","location","preventDefault","forEach","handlePopstate","__decorate","property","prototype","undefined","Boolean","godown","Link$1"],"mappings":"2LAMA,MAEMA,EACE,OADFA,EAEK,UAFLA,EAGI,SAHJA,EAIE,OAyBR,IAAMC,EAAN,MAAMA,aAAaC,EAAnB,WAAAC,uBASEC,KAAAC,KAAiBL,EAMjBI,KAAQE,UAAG,EAMXF,KAAOG,SAAG,EAKVH,KAAKI,MAAG,CAAE,EA4BVJ,KAAWK,YAAe,KACxB,OAAQL,KAAKC,MACX,KAAKL,EAEL,KAAKA,EACH,IAAKI,KAAKG,QAAS,CAEjBG,QAAQC,UAAUP,KAAKI,MAAO,GAAIJ,KAAKQ,MACvC,MAEJ,KAAKZ,EACHU,QAAQG,aAAaT,KAAKI,MAAO,GAAIJ,KAAKQ,QArCtC,YAAAE,CAAaC,GACrB,MAAMP,MAAEA,EAAKH,KAAEA,EAAIO,KAAEA,EAAII,SAAEA,EAAQV,SAAEA,GAAaF,KAMlD,GALAA,KAAKa,oBAAoB,WAAY,IAChCb,KAAKc,eACRF,WACAR,UAEEI,EAAKO,WAAW,MAAQd,IAASL,EACnC,OAEFI,KAAKK,cACL,MAAMW,EAAU,IAAIC,EAAOC,iBAGxBhB,GACAD,IAASL,IAERoB,EAAQG,MAAMC,GAAMA,EAAEC,OAAOC,SAASV,cAExCD,EAAEY,iBACFN,EAAOC,gBAAgBM,SAASJ,IAC9BA,EAAEK,gBAAgB,OAxCxBC,EAAA,CADCC,KAC8B9B,EAAA+B,UAAA,YAAAC,GAM/BH,EAAA,CADCC,EAAS,CAAE1B,KAAM6B,WACFjC,EAAA+B,UAAA,gBAAAC,GAMhBH,EAAA,CADCC,EAAS,CAAE1B,KAAM6B,WACHjC,EAAA+B,UAAA,eAAAC,GArBXhC,EAAI6B,EAAA,CADTK,EA9BiB,SA+BZlC,GAuEN,IAAAmC,EAAenC"}
1
+ {"version":3,"file":"link.js","sources":["../src/components/link.ts"],"sourcesContent":null,"names":["linkTypes","Link","SuperAnchor","constructor","this","type","suppress","replace","state","handleState","history","pushState","href","replaceState","_handleClick","e","pathname","dispatchCustomEvent","observedRecord","startsWith","routers","Router","routerInstances","some","i","search","location","preventDefault","forEach","handlePopstate","__decorate","property","prototype","undefined","Boolean","godown","Link$1"],"mappings":"0MAMA,MAEMA,EACE,OADFA,EAEK,UAFLA,EAGI,SAHJA,EAIE,OAyBR,IAAMC,EAAN,MAAMA,aAAaC,EAAnB,WAAAC,uBASEC,KAAAC,KAAiBL,EAMjBI,KAAQE,UAAG,EAMXF,KAAOG,SAAG,EAKVH,KAAKI,MAAG,CAAE,EA4BVJ,KAAWK,YAAe,KACxB,OAAQL,KAAKC,MACX,KAAKL,EACL,KAAKA,EACH,IAAKI,KAAKG,QAAS,CAEjBG,QAAQC,UAAUP,KAAKI,MAAO,GAAIJ,KAAKQ,MACvC,MAGJ,KAAKZ,EACHU,QAAQG,aAAaT,KAAKI,MAAO,GAAIJ,KAAKQ,QArCtC,YAAAE,CAAaC,GACrB,MAAMP,MAAEA,EAAKH,KAAEA,EAAIO,KAAEA,EAAII,SAAEA,EAAQV,SAAEA,GAAaF,KAMlD,GALAA,KAAKa,oBAAoB,WAAY,IAChCb,KAAKc,eACRF,WACAR,UAEEI,EAAKO,WAAW,MAAQd,IAASL,EACnC,OAEFI,KAAKK,cACL,MAAMW,EAAU,IAAIC,EAAOC,iBAGxBhB,GACAD,IAASL,IAERoB,EAAQG,MAAMC,GAAMA,EAAEC,OAAOC,SAASV,cAExCD,EAAEY,iBACFN,EAAOC,gBAAgBM,SAASJ,IAC9BA,EAAEK,gBAAgB,OAxCxBC,EAAA,CADCC,KAC8B9B,EAAA+B,UAAA,YAAAC,GAM/BH,EAAA,CADCC,EAAS,CAAE1B,KAAM6B,WACFjC,EAAA+B,UAAA,gBAAAC,GAMhBH,EAAA,CADCC,EAAS,CAAE1B,KAAM6B,WACHjC,EAAA+B,UAAA,eAAAC,GArBXhC,EAAI6B,EAAA,CADTK,EA9BiB,SA+BZlC,GAuEN,IAAAmC,EAAenC"}
@@ -10,13 +10,6 @@ declare class Progress extends GlobalStyle {
10
10
  min: number;
11
11
  value: number;
12
12
  protected render(): TemplateResult<1>;
13
- /**
14
- * Convert s to a percentage without a percent sign.
15
- *
16
- * @param s String or number to convert.
17
- * @returns Percentage without a percent sign.
18
- */
19
- parsePercent(s?: string | number): number;
20
13
  }
21
14
  export default Progress;
22
15
  export { Progress };
@@ -1 +1 @@
1
- {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../src/components/progress.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAGrD,OAAO,EAAE,WAAW,EAAiB,MAAM,yBAAyB,CAAC;AAIrE;;;;GAIG;AACH,cAEM,QAAS,SAAQ,WAAW;IAEhC,GAAG,SAAK;IAGR,GAAG,SAAK;IAGR,KAAK,EAAE,MAAM,CAAC;IAEd,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAerC;;;;;OAKG;IACH,YAAY,CAAC,CAAC,GAAE,MAAM,GAAG,MAAY,GAAG,MAAM;CAW/C;AAED,eAAe,QAAQ,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../src/components/progress.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAGrD,OAAO,EAAE,WAAW,EAAiB,MAAM,yBAAyB,CAAC;AAIrE;;;;GAIG;AACH,cAEM,QAAS,SAAQ,WAAW;IAEhC,GAAG,SAAK;IAGR,GAAG,SAAK;IAGR,KAAK,EAAE,MAAM,CAAC;IAEd,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;CAUtC;AAED,eAAe,QAAQ,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- import{__decorate as t}from"tslib";import{godown as r,styles as e,isNil as o,attr as i}from"@godown/element";import{css as s,html as a}from"lit";import{property as n}from"lit/decorators.js";import{cssGlobalVars as l,GlobalStyle as p}from"../core/global-style.js";let d=class Progress extends p{constructor(){super(...arguments),this.max=1,this.min=0}render(){let t,r=20;return o(this.value)||(r=this.parsePercent(this.value),r>100?r=100:r<0&&(r=0),t="static"),a`<div part="root" ${i(this.observedRecord)} class="${t}"><i part="value" style="width:${r}%;"></i></div>`}parsePercent(t="0"){if((t=String(t)).includes("%"))return parseFloat(t);const r=this.max-this.min;return 0===r?100:parseFloat(t)/r*100}};t([n({type:Number})],d.prototype,"max",void 0),t([n({type:Number})],d.prototype,"min",void 0),t([n({type:Number})],d.prototype,"value",void 0),d=t([r("progress"),e(s`:host{background:var(${l.passive});border-radius:.25em;color:var(${l.active});height:.5em;width:100%}:host,[part=root]{display:block}[part=root]{border-radius:inherit;height:inherit;position:relative;z-index:1}[part=value]{animation:progress 1.8s ease-in-out infinite alternate;background:currentColor;border-radius:inherit;height:100%;left:0;position:absolute;top:0;transition:all .3s;z-index:2}@keyframes progress{0%{left:0}to{left:80%}}.static [part=value]{animation:none}`)],d);var m=d;export{d as Progress,m as default};
1
+ import{__decorate as t}from"tslib";import{godown as r,styles as e,isNil as o,Ranger as i,attr as s}from"@godown/element";import{css as a,html as n}from"lit";import{property as l}from"lit/decorators.js";import{cssGlobalVars as p,GlobalStyle as d}from"../core/global-style.js";let m=class Progress extends d{constructor(){super(...arguments),this.max=1,this.min=0}render(){let t,r=20;if(!o(this.value)){const e=new i(this.min,this.max);r=100*e.restrict(this.value/e.diff),t="static"}return n`<div part="root" ${s(this.observedRecord)} class="${t}"><i part="value" style="width:${r}%;"></i></div>`}};t([l({type:Number})],m.prototype,"max",void 0),t([l({type:Number})],m.prototype,"min",void 0),t([l({type:Number})],m.prototype,"value",void 0),m=t([r("progress"),e(a`:host{background:var(${p.passive});border-radius:.25em;color:var(${p.active});height:.5em;width:100%}:host,[part=root]{display:block}[part=root]{border-radius:inherit;height:inherit;overflow:hidden;position:relative;z-index:1}[part=value]{animation:progress 1.8s ease-in-out infinite alternate;background:currentColor;border-radius:inherit;height:100%;left:0;position:absolute;top:0;transition:all .3s;z-index:2}@keyframes progress{0%{left:0}to{left:80%}}.static [part=value]{animation:none}`)],m);var h=m;export{m as Progress,h as default};
2
2
  //# sourceMappingURL=progress.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"progress.js","sources":["../src/components/progress.ts"],"sourcesContent":null,"names":["Progress","GlobalStyle","constructor","this","max","min","render","className","width","isNil","value","parsePercent","html","attr","observedRecord","s","String","includes","parseFloat","diff","__decorate","property","type","Number","prototype","undefined","godown","styles","css","cssGlobalVars","passive","active","Progress$1"],"mappings":"uQAeA,IAAMA,EAAN,MAAMA,iBAAiBC,EAAvB,WAAAC,uBAEEC,KAAGC,IAAG,EAGND,KAAGE,IAAG,EAKI,MAAAC,GACR,IACIC,EADAC,EAAQ,GAWZ,OATKC,EAAMN,KAAKO,SACdF,EAAQL,KAAKQ,aAAaR,KAAKO,OAC3BF,EAAQ,IACVA,EAAQ,IACCA,EAAQ,IACjBA,EAAQ,GAEVD,EAAY,UAEPK,CAAI,oBAGLC,EAAKV,KAAKW,0BACHP,mCAIQC,kBAYvB,YAAAG,CAAaI,EAAqB,KAEhC,IADAA,EAAIC,OAAOD,IACLE,SAAS,KACb,OAAOC,WAAWH,GAEpB,MAAMI,EAAOhB,KAAKC,IAAMD,KAAKE,IAC7B,OAAa,IAATc,EACK,IAEDD,WAAWH,GAAKI,EAAQ,MAjDlCC,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACXvB,EAAAwB,UAAA,WAAAC,GAGPL,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACXvB,EAAAwB,UAAA,WAAAC,GAGPL,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACLvB,EAAAwB,UAAA,aAAAC,GARTzB,EAAQoB,EAAA,CAFbM,EAPiB,YAQjBC,EAAOC,CAAG,wBAAwBC,EAAcC,0CAA0CD,EAAcE,0ZACnG/B,GAuDN,IAAAgC,EAAehC"}
1
+ {"version":3,"file":"progress.js","sources":["../src/components/progress.ts"],"sourcesContent":null,"names":["Progress","GlobalStyle","constructor","this","max","min","render","className","width","isNil","value","ranger","Ranger","restrict","diff","html","attr","observedRecord","__decorate","property","type","Number","prototype","undefined","godown","styles","css","cssGlobalVars","passive","active","Progress$1"],"mappings":"mRAeA,IAAMA,EAAN,MAAMA,iBAAiBC,EAAvB,WAAAC,uBAEEC,KAAGC,IAAG,EAGND,KAAGE,IAAG,EAKI,MAAAC,GACR,IACIC,EADAC,EAAQ,GAEZ,IAAKC,EAAMN,KAAKO,OAAQ,CACtB,MAAMC,EAAS,IAAIC,EAAOT,KAAKE,IAAKF,KAAKC,KACzCI,EAAoD,IAA5CG,EAAOE,SAASV,KAAKO,MAAQC,EAAOG,MAC5CP,EAAY,SAEd,OAAOQ,CAAI,oBAGLC,EAAKb,KAAKc,0BACHV,mCAIQC,oBAxBvBU,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACXrB,EAAAsB,UAAA,WAAAC,GAGPL,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACXrB,EAAAsB,UAAA,WAAAC,GAGPL,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACLrB,EAAAsB,UAAA,aAAAC,GARTvB,EAAQkB,EAAA,CAFbM,EAPiB,YAQjBC,EAAOC,CAAG,wBAAwBC,EAAcC,0CAA0CD,EAAcE,0aACnG7B,GAiCN,IAAA8B,EAAe9B"}
@@ -1,12 +1,13 @@
1
1
  import { Ranger } from "@godown/element";
2
2
  import { type TemplateResult } from "lit";
3
- import SuperInput from "../core/super-input.js";
3
+ import { SuperInput } from "../core/super-input.js";
4
+ type RangeValue = number | number[];
4
5
  /**
5
6
  * {@linkcode Range} is similar to `<input type="range">`.
6
7
  *
7
8
  * Value accepts number, or array.
8
9
  *
9
- * Number has 1 handle, the array has the number of its elements and the minimum is 2.
10
+ * Number has 1 handle, the array has the number of its elements.
10
11
  *
11
12
  * @fires input - Fires when the input value changes.
12
13
  * @fires change - Fires when the input value changes.
@@ -15,7 +16,7 @@ import SuperInput from "../core/super-input.js";
15
16
  * @fires blur - Fires when the handle is blurred.
16
17
  * @category input
17
18
  */
18
- declare class Range extends SuperInput {
19
+ declare class Range<V extends RangeValue = RangeValue> extends SuperInput<RangeValue> {
19
20
  /**
20
21
  * Minimum value.
21
22
  */
@@ -29,7 +30,7 @@ declare class Range extends SuperInput {
29
30
  */
30
31
  step: number;
31
32
  /**
32
- * Display vertically.
33
+ * Whether to display the range vertically.
33
34
  */
34
35
  vertical: boolean;
35
36
  /**
@@ -37,50 +38,84 @@ declare class Range extends SuperInput {
37
38
  *
38
39
  * Accepts number or array of numbers.
39
40
  */
40
- value: number | number[];
41
+ value: V;
41
42
  /**
42
43
  * The default of `{@linkcode this.value}`.
43
44
  */
44
- default: typeof this.value;
45
+ default: V;
45
46
  protected _root: HTMLElement;
46
47
  protected _handles: NodeListOf<HTMLElement>;
47
48
  lastFocus?: number;
48
49
  protected _ranger: Ranger;
49
50
  private __focusStack;
50
- /**
51
- * If value is array.
52
- */
53
- get range(): boolean;
51
+ get range(): V extends number ? false : true;
54
52
  /**
55
53
  * Return values in the form of an array.
56
54
  */
57
55
  get rangeValue(): number[];
58
56
  /**
59
- * @param len Minimum result length.
60
- * @param value Fill value.
61
- * @returns Array with length of len.
57
+ * Pad the value to the specified length.
62
58
  */
63
59
  padValue(len: number, value?: number): number[];
64
60
  attributeChangedCallback(name: string, _old: string | null, value: string | null): void;
61
+ get observedRecord(): Record<string, any>;
65
62
  protected render(): TemplateResult<1>;
66
63
  protected _renderHandle(index: number): TemplateResult<1>;
67
64
  private __keydownEvent;
65
+ /**
66
+ * Focuses the handle at the given index, updates the focus stack, and dispatches a "focus" event.
67
+ * @param index - The index of the handle to focus.
68
+ */
68
69
  focusHandle(index: number): void;
70
+ /**
71
+ * Removes the focus from the currently focused handle and dispatches a "blur" event.
72
+ */
69
73
  blurHandle(): void;
74
+ /**
75
+ * Creates a keydown event handler that updates the value of the range based on arrow key presses.
76
+ * @param index - The index of the handle to update.
77
+ * @returns A function that handles the keydown event and updates the range value.
78
+ */
70
79
  protected createKeydownEvent(index: number): (e: KeyboardEvent) => void;
80
+ /**
81
+ * Creates a mouse down event handler that focuses the handle at the given index and sets the value of the range.
82
+ * @param index - The index of the handle to focus.
83
+ * @returns A function that handles the mouse down event and updates the range value.
84
+ */
71
85
  protected createMouseDown(index: number): (e: MouseEvent) => void;
86
+ /**
87
+ * Creates a function that sets the value of the range at the given index.
88
+ * @param index - The index of the value to set.
89
+ * @returns A function that sets the value of the range.
90
+ */
72
91
  protected createSetValue(index: number): (value: number) => void;
73
92
  /**
74
93
  * Compute value from event.
94
+ * @returns The value closest to the event client position.
75
95
  */
76
96
  protected _computeValue({ clientX, clientY }: MouseEvent): number;
97
+ /**
98
+ * Handles the mouse down event on the root element of the range component.
99
+ * Computes the closest value to the mouse position, sets the value, and focuses the corresponding handle.
100
+ * @param e - The mouse down event object.
101
+ */
77
102
  protected _handleMousedownRoot(e: MouseEvent): void;
103
+ /**
104
+ * Creates a mouse down event handler that focuses the handle at the given index and sets the value of the range.
105
+ * @param index - The index of the handle to focus.
106
+ * @returns A function that handles the mouse down event and updates the range value.
107
+ */
78
108
  protected createMousedownListener(mouseMoveCallback: (arg0: number) => void): (e: MouseEvent) => void;
109
+ /**
110
+ * Creates a mouse move event handler that updates the range value based on the mouse position.
111
+ * @param callback - A function to call with the new value when the mouse is moved.
112
+ * @returns A function that handles the mouse move event and updates the range value.
113
+ */
79
114
  protected createMousemoveListener(callback: (newValue: number) => void): (e: MouseEvent) => void;
80
115
  protected _connectedInit(): void;
81
116
  reset(): void;
82
- sort(): number | number[];
83
- toSorted(): number | number[];
117
+ sort(): V;
118
+ toSorted(): V;
84
119
  }
85
120
  export default Range;
86
121
  export { Range };
@@ -1 +1 @@
1
- {"version":3,"file":"range.d.ts","sourceRoot":"","sources":["../src/components/range.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC7G,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAIrD,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAKhD;;;;;;;;;;;;;GAaG;AACH,cAMM,KAAM,SAAQ,UAAU;IAC5B;;OAEG;IAEH,GAAG,SAAK;IAER;;OAEG;IAEH,GAAG,SAAO;IAEV;;OAEG;IAEH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;;;OAIG;IAEH,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEzB;;OAEG;IAEH,OAAO,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC;IAG3B,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC;IAG7B,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IAG5C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,YAAY,CAAgB;IAEpC;;OAEG;IACH,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,MAAM,EAAE,CAEzB;IAED;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,SAAI,GAAG,MAAM,EAAE;IAS1C,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAOvF,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAerC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC;IAWzD,OAAO,CAAC,cAAc,CAAqC;IAE3D,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAehC,UAAU,IAAI,IAAI;IAMlB,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,OAK7B,aAAa,KAAG,IAAI;IAYjC,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,OAC1B,UAAU,KAAG,IAAI;IAM9B,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,WACrB,MAAM,KAAG,IAAI;IAY9B;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,UAAU,GAAG,MAAM;IAKjE,SAAS,CAAC,oBAAoB,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAgBnD,SAAS,CAAC,uBAAuB,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,OAC9D,UAAU,KAAG,IAAI;IAa9B,SAAS,CAAC,uBAAuB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,OACzD,UAAU,KAAG,IAAI;IAS9B,SAAS,CAAC,cAAc,IAAI,IAAI;IAahC,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,MAAM,GAAG,MAAM,EAAE;IAIzB,QAAQ,IAAI,MAAM,GAAG,MAAM,EAAE;CAM9B;AAED,eAAe,KAAK,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"range.d.ts","sourceRoot":"","sources":["../src/components/range.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsE,MAAM,EAAQ,MAAM,iBAAiB,CAAC;AACnH,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAIrD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAKpD,KAAK,UAAU,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;AAEpC;;;;;;;;;;;;;GAaG;AACH,cAMM,KAAK,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,CAAE,SAAQ,UAAU,CAAC,UAAU,CAAC;IAC3E;;OAEG;IAEH,GAAG,SAAK;IAER;;OAEG;IAEH,GAAG,SAAO;IAEV;;OAEG;IAEH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;;;OAIG;IAEH,KAAK,EAAE,CAAC,CAAC;IAET;;OAEG;IAEH,OAAO,EAAE,CAAC,CAAC;IAGX,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC;IAG7B,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IAG5C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,YAAY,CAAgB;IAEpC,IAAI,KAAK,IAAI,CAAC,SAAS,MAAM,GAAG,KAAK,GAAG,IAAI,CAE3C;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,MAAM,EAAE,CAEzB;IAED;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,SAAI,GAAG,MAAM,EAAE;IAS1C,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAOvF,IAAI,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAExC;IAED,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAerC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC;IAWzD,OAAO,CAAC,cAAc,CAAqC;IAE3D;;;OAGG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAehC;;OAEG;IACH,UAAU,IAAI,IAAI;IAMlB;;;;OAIG;IACH,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,OAK7B,aAAa,KAAG,IAAI;IAYjC;;;;OAIG;IACH,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,OAC1B,UAAU,KAAG,IAAI;IAM9B;;;;OAIG;IACH,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,WACrB,MAAM,KAAG,IAAI;IAY9B;;;OAGG;IACH,SAAS,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,UAAU,GAAG,MAAM;IAKjE;;;;OAIG;IACH,SAAS,CAAC,oBAAoB,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAenD;;;;OAIG;IACH,SAAS,CAAC,uBAAuB,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,OAC9D,UAAU,KAAG,IAAI;IAa9B;;;;OAIG;IACH,SAAS,CAAC,uBAAuB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,OACzD,UAAU,KAAG,IAAI;IAS9B,SAAS,CAAC,cAAc,IAAI,IAAI;IAahC,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,CAAC;IAIT,QAAQ,IAAI,CAAC;CAMd;AAED,eAAe,KAAK,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- import{__decorate as t}from"tslib";import{part as e,godown as r,styles as a,Ranger as o,attr as s,joinProperties as i,loop as n,tokenList as h,isNil as l}from"@godown/element";import{css as u,html as d}from"lit";import{property as c,queryAll as v,state as p}from"lit/decorators.js";import{scopePrefix as m,cssGlobalVars as f}from"../core/global-style.js";import g from"../core/super-input.js";const w="range",y=m(w);let _=class Range extends g{constructor(){super(...arguments),this.min=0,this.max=100,this.vertical=!1,this.__focusStack=[]}get range(){return Array.isArray(this.value)}get rangeValue(){return this.range?this.value:[this.value]}padValue(t,e=0){const{rangeValue:r}=this,a=t-r.length;return a>0?new Array(a).fill(e).concat(r):r}attributeChangedCallback(t,e,r){super.attributeChangedCallback(t,e,r),"max"!==t&&"min"!==t&&"step"!==t||(this._ranger=new o(this.min,this.max,this.step))}render(){const t=this.padValue(2),e=Math.min(...t),r=Math.max(...t),a=this._ranger.diff;return d`<div part="root" ${s(this.observedRecord)} @mousedown="${this.disabled?null:this._handleMousedownRoot}" style="${i([["--from",(e-this.min)/a*100+"%"],["--to",(r-this.min)/a*100+"%"],...t.map(((t,e)=>[`--handle-${e}`,(t-this.min)/a*100+"%"]))])}"><div part="track"></div>${n(this.rangeValue.length,(t=>this._renderHandle(t)))}</div>`}_renderHandle(t){const{rangeValue:e,disabled:r}=this,a=t===e.length-1;return d`<i tabindex="0" part="handle" class="${h({"last-focus":this.lastFocus===t})}" @mousedown="${r?null:this.createMouseDown(t)}" @focus="${r?null:()=>this.focusHandle(t)}" @blur="${r?null:this.blurHandle}" style="${i({"z-index":this.__focusStack.indexOf(t)+1,"--handle":`var(--${a?"to":`handle-${t}`})`})}"></i>`}focusHandle(t){this.lastFocus=t;const e=this.__focusStack.indexOf(t);-1!==e&&this.__focusStack.splice(e,1),this.__focusStack.push(t);const r=this._handles.item(t);r?.focus(),this.__keydownEvent||(this.__keydownEvent=this.events.add(document,"keydown",this.createKeydownEvent(t))),this.dispatchEvent(new CustomEvent("focus",{detail:t}))}blurHandle(){this.lastFocus=void 0,this.__keydownEvent=this.events.remove(document,"keydown",this.__keydownEvent),this.dispatchEvent(new CustomEvent("blur"))}createKeydownEvent(t){const{rangeValue:e,step:r}=this;return e.length<2&&(t=0),a=>{const o=e[t];"ArrowLeft"===a.key||"ArrowDown"===a.key?(a.preventDefault(),this.createSetValue(t)(o-r)):"ArrowRight"!==a.key&&"ArrowUp"!==a.key||(a.preventDefault(),this.createSetValue(t)(o+r))}}createMouseDown(t){return e=>{this.focusHandle(t),this.createMousedownListener(this.createSetValue(t))(e)}}createSetValue(t){return e=>{const r=this._ranger.normalize(e);let a=r;this.range&&(a=[...this.value],a[t]=r),this.value=a,this.dispatchEvent(new CustomEvent("range",{detail:this.value}))}}_computeValue({clientX:t,clientY:e}){const{top:r,left:a,height:o,width:s}=this._root.getBoundingClientRect();return this._ranger.present(this.vertical?(e-r)/o:(t-a)/s)}_handleMousedownRoot(t){const e=this._computeValue(t),r=this.range?this.rangeValue.reduce(((t,r,a)=>Math.abs(e-r)<Math.abs(e-this.rangeValue[t])?a:t),0):0,a=this.createSetValue(r);a(e),this.createMousedownListener(a)(t),this.focusHandle(r)}createMousedownListener(t){return e=>{e.preventDefault(),e.stopPropagation();const r=this.createMousemoveListener(t);this.events.add(document,"mousemove",r);const a=()=>{this.events.remove(document,"mousemove",r),this.events.remove(document,"mouseup",a)};this.events.add(document,"mouseup",a)}}createMousemoveListener(t){return e=>{const r=this._computeValue(e);r===this._ranger.restrict(r)&&t?.call(this,r)}}_connectedInit(){const t=this._ranger.diff;this.step||=t/100,l(this.value)&&(l(this.default)?this.value=Math.round(t/2/this.step)*this.step:this.value=this.default),this.default??=this.value}reset(){this.value=this.default}sort(){return this.value=this.toSorted()}toSorted(){return this.range?[...this.value].sort(((t,e)=>t-e)):this.value}};t([c({type:Number})],_.prototype,"min",void 0),t([c({type:Number})],_.prototype,"max",void 0),t([c({type:Number})],_.prototype,"step",void 0),t([c({type:Boolean,reflect:!0})],_.prototype,"vertical",void 0),t([c({type:Array})],_.prototype,"value",void 0),t([c({type:Array})],_.prototype,"default",void 0),t([e("root")],_.prototype,"_root",void 0),t([v("[part=handle]")],_.prototype,"_handles",void 0),t([p()],_.prototype,"lastFocus",void 0),_=t([r(w),a(u`:host{${y}--handle-active:var(${f.active});${y}--track-width:.5em;${y}--length:var(${f.input}-width);background:var(${f.input}-background);display:block;width:var(${y}--length)}:host([contents]) [part=root]{width:inherit}:host([vertical]){height:var(${y}--length);width:-moz-fit-content;width:fit-content}:host(:not([disabled])) .last-focus{${y}--handle-scale:1.05;background:var(${y}--handle-active)}[part=root]{position:relative;width:100%;--from:0%;--to:50%;height:var(${y}--track-width)}[part=root],[part=track]{border-radius:inherit;min-height:inherit}[part=track]{background:var(${f.active});height:100%;justify-content:space-between;left:min(var(--from),var(--to));pointer-events:none;width:max(calc(var(--to) - var(--from)),calc(var(--from) - var(--to)))}[part=handle],[part=track]{display:flex;position:absolute}[part=handle]{align-items:center;background:var(${f.active});border:.1em solid;border-color:var(${f.input}-control);border-radius:50%;height:1em;justify-content:center;transform:scale(var(${y}--handle-scale,1)) translate(-50%,-25%);transform-origin:0 25%;-webkit-user-select:none;user-select:none;width:1em}`,u`[vertical]{height:inherit;width:var(${y}--track-width)}[vertical] i{transform:translate(-25%,-50%)}[vertical] [part=track]{height:max(calc(var(--to) - var(--from)),calc(var(--from) - var(--to)));left:0;top:min(var(--from),var(--to));width:100%}`,u`[part=handle]{left:var(--handle);top:0}[vertical] [part=handle]{left:0;top:var(--handle)}`)],_);var b=_;export{_ as Range,b as default};
1
+ import{__decorate as t}from"tslib";import{part as e,godown as r,styles as a,Ranger as s,omit as o,attr as i,joinProperties as n,loop as h,tokenList as l,isNil as d}from"@godown/element";import{css as u,html as c}from"lit";import{property as v,queryAll as p,state as m}from"lit/decorators.js";import{scopePrefix as f,cssGlobalVars as g}from"../core/global-style.js";import{SuperInput as w}from"../core/super-input.js";const y="range",_=f(y);let b=class Range extends w{constructor(){super(...arguments),this.min=0,this.max=100,this.vertical=!1,this.__focusStack=[]}get range(){return Array.isArray(this.value)}get rangeValue(){return this.range?this.value:[this.value]}padValue(t,e=0){const{rangeValue:r}=this,a=t-r.length;return a>0?new Array(a).fill(e).concat(r):r}attributeChangedCallback(t,e,r){super.attributeChangedCallback(t,e,r),"max"!==t&&"min"!==t&&"step"!==t||(this._ranger=new s(this.min,this.max,this.step))}get observedRecord(){return o(super.observedRecord,"outline-type")}render(){const t=this.padValue(2),e=Math.min(...t),r=Math.max(...t),a=this._ranger.diff;return c`<div part="root" ${i(this.observedRecord)} @mousedown="${this.disabled?null:this._handleMousedownRoot}" style="${n([["--from",(e-this.min)/a*100+"%"],["--to",(r-this.min)/a*100+"%"],...t.map(((t,e)=>[`--handle-${e}`,(t-this.min)/a*100+"%"]))])}"><div part="track"></div>${h(this.rangeValue.length,(t=>this._renderHandle(t)))}</div>`}_renderHandle(t){const{disabled:e,range:r,rangeValue:a}=this,s=!r||r&&t===a.length-1&&1===a.length;return c`<i tabindex="0" part="handle" class="${l({"last-focus":this.lastFocus===t})}" @mousedown="${e?null:this.createMouseDown(t)}" @focus="${e?null:()=>this.focusHandle(t)}" @blur="${e?null:this.blurHandle}" style="${n({"z-index":this.__focusStack.indexOf(t)+1,"--handle":`var(--${s?"to":`handle-${t}`})`})}"></i>`}focusHandle(t){this.lastFocus=t;const e=this.__focusStack.indexOf(t);-1!==e&&this.__focusStack.splice(e,1),this.__focusStack.push(t);const r=this._handles.item(t);r?.focus(),this.__keydownEvent||(this.__keydownEvent=this.events.add(document,"keydown",this.createKeydownEvent(t))),this.dispatchEvent(new CustomEvent("focus",{detail:t}))}blurHandle(){this.lastFocus=void 0,this.__keydownEvent=this.events.remove(document,"keydown",this.__keydownEvent),this.dispatchEvent(new CustomEvent("blur"))}createKeydownEvent(t){const{rangeValue:e,step:r}=this;return e.length<2&&(t=0),a=>{const s=e[t];"ArrowLeft"===a.key||"ArrowDown"===a.key?(a.preventDefault(),this.createSetValue(t)(s-r)):"ArrowRight"!==a.key&&"ArrowUp"!==a.key||(a.preventDefault(),this.createSetValue(t)(s+r))}}createMouseDown(t){return e=>{this.focusHandle(t),this.createMousedownListener(this.createSetValue(t))(e)}}createSetValue(t){return e=>{const r=this._ranger.normalize(e);let a=r;this.range&&(a=[...this.value],a[t]=r),this.value=a,this.dispatchEvent(new CustomEvent("range",{detail:this.value}))}}_computeValue({clientX:t,clientY:e}){const{top:r,left:a,height:s,width:o}=this._root.getBoundingClientRect();return this._ranger.present(this.vertical?(e-r)/s:(t-a)/o)}_handleMousedownRoot(t){const e=this._computeValue(t),r=this.range?this.rangeValue.reduce(((t,r,a)=>Math.abs(e-r)<Math.abs(e-this.rangeValue[t])?a:t),0):0,a=this.createSetValue(r);a(e),this.createMousedownListener(a)(t),this.focusHandle(r)}createMousedownListener(t){return e=>{e.preventDefault(),e.stopPropagation();const r=this.createMousemoveListener(t);this.events.add(document,"mousemove",r);const a=()=>{this.events.remove(document,"mousemove",r),this.events.remove(document,"mouseup",a)};this.events.add(document,"mouseup",a)}}createMousemoveListener(t){return e=>{const r=this._computeValue(e);r===this._ranger.restrict(r)&&t?.call(this,r)}}_connectedInit(){const t=this._ranger.diff;this.step||=t/100,d(this.value)&&(d(this.default)?this.value=Math.round(t/2/this.step)*this.step:this.value=this.default),this.default??=this.value}reset(){this.value=this.default}sort(){return this.value=this.toSorted()}toSorted(){return this.range?[...this.value].sort(((t,e)=>t-e)):this.value}};t([v({type:Number})],b.prototype,"min",void 0),t([v({type:Number})],b.prototype,"max",void 0),t([v({type:Number})],b.prototype,"step",void 0),t([v({type:Boolean,reflect:!0})],b.prototype,"vertical",void 0),t([v({type:Array})],b.prototype,"value",void 0),t([v({type:Array})],b.prototype,"default",void 0),t([e("root")],b.prototype,"_root",void 0),t([p("[part=handle]")],b.prototype,"_handles",void 0),t([m()],b.prototype,"lastFocus",void 0),b=t([r(y),a(u`:host{${_}--handle-active:var(${g.active});${_}--track-width:.5em;${_}--length:var(${g.input}-width);background:var(${g.passive});display:block;width:var(${_}--length)}:host([contents]) [part=root]{width:inherit}:host([vertical]){height:var(${_}--length);width:-moz-fit-content;width:fit-content}:host(:not([disabled])) .last-focus{${_}--handle-scale:1.05;background:var(${_}--handle-active)}[part=root]{position:relative;width:100%;--from:0%;--to:50%;height:var(${_}--track-width)}[part=root],[part=track]{border-radius:inherit;min-height:inherit}[part=track]{background:var(${g.active});height:100%;justify-content:space-between;left:min(var(--from),var(--to));pointer-events:none;width:max(calc(var(--to) - var(--from)),calc(var(--from) - var(--to)))}[part=handle],[part=track]{display:flex;position:absolute}[part=handle]{align-items:center;background:var(${g.active});border:.1em solid;border-color:var(${g.input}-control);border-radius:50%;height:1em;justify-content:center;transform:scale(var(${_}--handle-scale,1)) translate(-50%,-25%);transform-origin:0 25%;-webkit-user-select:none;user-select:none;width:1em}`,u`[vertical]{height:inherit;width:var(${_}--track-width)}[vertical] i{transform:translate(-25%,-50%)}[vertical] [part=track]{height:max(calc(var(--to) - var(--from)),calc(var(--from) - var(--to)));left:0;top:min(var(--from),var(--to));width:100%}`,u`[part=handle]{left:var(--handle);top:0}[vertical] [part=handle]{left:0;top:var(--handle)}`)],b);var k=b;export{b as Range,k as default};
2
2
  //# sourceMappingURL=range.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"range.js","sources":["../src/components/range.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Range","SuperInput","constructor","this","min","max","vertical","__focusStack","range","Array","isArray","value","rangeValue","padValue","len","miss","length","fill","concat","attributeChangedCallback","name","_old","super","_ranger","Ranger","step","render","from","Math","to","gap","diff","html","attr","observedRecord","disabled","_handleMousedownRoot","joinProperties","map","index","loop","_renderHandle","end","tokenList","lastFocus","createMouseDown","focusHandle","blurHandle","indexOf","indexOfFocusStack","splice","push","handleItem","_handles","item","focus","__keydownEvent","events","add","document","createKeydownEvent","dispatchEvent","CustomEvent","detail","undefined","remove","e","old","key","preventDefault","createSetValue","createMousedownListener","normalizeValue","normalize","newValue","_computeValue","clientX","clientY","top","left","height","width","_root","getBoundingClientRect","present","reduce","acc","abs","set","mouseMoveCallback","stopPropagation","move","createMousemoveListener","stop","callback","restrict","call","_connectedInit","isNil","default","round","reset","sort","toSorted","a","b","__decorate","property","type","Number","prototype","Boolean","reflect","part","queryAll","state","godown","styles","css","cssGlobalVars","active","input","Range$1"],"mappings":"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"}
1
+ {"version":3,"file":"range.js","sources":["../src/components/range.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Range","SuperInput","constructor","this","min","max","vertical","__focusStack","range","Array","isArray","value","rangeValue","padValue","len","miss","length","fill","concat","attributeChangedCallback","name","_old","super","_ranger","Ranger","step","observedRecord","omit","render","from","Math","to","gap","diff","html","attr","disabled","_handleMousedownRoot","joinProperties","map","index","loop","_renderHandle","end","tokenList","lastFocus","createMouseDown","focusHandle","blurHandle","indexOf","indexOfFocusStack","splice","push","handleItem","_handles","item","focus","__keydownEvent","events","add","document","createKeydownEvent","dispatchEvent","CustomEvent","detail","undefined","remove","e","old","key","preventDefault","createSetValue","createMousedownListener","normalizeValue","normalize","newValue","_computeValue","clientX","clientY","top","left","height","width","_root","getBoundingClientRect","present","reduce","acc","abs","set","mouseMoveCallback","stopPropagation","move","createMousemoveListener","stop","callback","restrict","call","_connectedInit","isNil","default","round","reset","sort","toSorted","a","b","__decorate","property","type","Number","prototype","Boolean","reflect","part","queryAll","state","godown","styles","css","cssGlobalVars","active","input","passive","Range$1"],"mappings":"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"}
@@ -12,11 +12,13 @@ declare class Rotate extends GlobalStyle {
12
12
  protected _handleRotate(e: MouseEvent): void;
13
13
  /**
14
14
  * Compute offset.
15
- * ```
16
- * `rotateX(${rotateX}rad) rotateY(${rotateY}rad)`
17
- * ```
18
- * @param e Mouse move event.
15
+ *
19
16
  * @returns rotateX, rotateY
17
+ * @example
18
+ * ```ts
19
+ * const { rotateX, rotateY } = this._computeOffset(e);
20
+ * `rotateX(${rotateX}rad) rotateY(${rotateY}rad)`;
21
+ * ```
20
22
  */
21
23
  protected _computeOffset(e: MouseEvent): {
22
24
  rotateX: number;
@@ -1 +1 @@
1
- {"version":3,"file":"rotate.d.ts","sourceRoot":"","sources":["../src/components/rotate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAErD,OAAO,EAAE,WAAW,EAAe,MAAM,yBAAyB,CAAC;AAKnE;;;;GAIG;AACH,cAEM,MAAO,SAAQ,WAAW;IAE9B,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC;IAE7B,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAIrC,KAAK,IAAI,IAAI;IAKb,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAM5C;;;;;;;OAOG;IACH,SAAS,CAAC,cAAc,CAAC,CAAC,EAAE,UAAU,GAAG;QACvC,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB;CAUF;AAED,eAAe,MAAM,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"rotate.d.ts","sourceRoot":"","sources":["../src/components/rotate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAErD,OAAO,EAAE,WAAW,EAAe,MAAM,yBAAyB,CAAC;AAKnE;;;;GAIG;AACH,cAEM,MAAO,SAAQ,WAAW;IAE9B,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC;IAE7B,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAIrC,KAAK,IAAI,IAAI;IAKb,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAM5C;;;;;;;;;OASG;IACH,SAAS,CAAC,cAAc,CAAC,CAAC,EAAE,UAAU,GAAG;QACvC,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB;CAUF;AAED,eAAe,MAAM,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rotate.js","sources":["../src/components/rotate.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Rotate","GlobalStyle","render","html","this","_handleRotate","htmlSlot","reset","_root","style","removeProperty","e","rotateX","rotateY","_computeOffset","setProperty","left","top","width","height","getBoundingClientRect","clientX","clientY","__decorate","part","prototype","undefined","godown","styles","css","Rotate$1"],"mappings":"2NAKA,MAAMA,EAAY,SACZC,EAAWC,EAAYF,GAS7B,IAAMG,EAAN,MAAMA,eAAeC,EAIT,MAAAC,GACR,OAAOC,CAAI,iDAISC,KAAKC,kBAEjBC,4BAEcF,KAAKG,oBAK7B,KAAAA,GACEH,KAAKI,MAAMC,MAAMC,eAAe,aAChCN,KAAKI,MAAMC,MAAMC,eAAe,cAGxB,aAAAL,CAAcM,GACtB,MAAMC,QAAEA,EAAOC,QAAEA,GAAYT,KAAKU,eAAeH,GACjDP,KAAKI,MAAMC,MAAMM,YAAY,YAAa,WAAWH,iBAAuBC,SAC5ET,KAAKI,MAAMC,MAAMM,YAAY,aAAc,MAWnC,cAAAD,CAAeH,GAIvB,MAAMK,KAAEA,EAAIC,IAAEA,EAAGC,MAAEA,EAAKC,OAAEA,GAAWf,KAAKI,MAAMY,yBAC1CC,QAAEA,EAAOC,QAAEA,GAAYX,EAM7B,MAAO,CAAEC,UAJOU,EAAUL,EAEEE,EAAS,GAAKA,EAAS,EAEjCN,SALFQ,EAAUL,EAICE,EAAQ,GAAKA,EAAQ,KA7CxCK,EAAA,CADTC,EAAK,SACsBxB,EAAAyB,UAAA,aAAAC,GAFxB1B,EAAMuB,EAAA,CAFXI,EAAO9B,GACP+B,EAAOC,CAAG,+FAA+F/B,oBAA2BA,8IAAqJA,8BAAqCA,yEACzTE,GAoDN,IAAA8B,EAAe9B"}
1
+ {"version":3,"file":"rotate.js","sources":["../src/components/rotate.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Rotate","GlobalStyle","render","html","this","_handleRotate","htmlSlot","reset","_root","style","removeProperty","e","rotateX","rotateY","_computeOffset","setProperty","left","top","width","height","getBoundingClientRect","clientX","clientY","__decorate","part","prototype","undefined","godown","styles","css","Rotate$1"],"mappings":"2NAKA,MAAMA,EAAY,SACZC,EAAWC,EAAYF,GAS7B,IAAMG,EAAN,MAAMA,eAAeC,EAIT,MAAAC,GACR,OAAOC,CAAI,iDAISC,KAAKC,kBAEjBC,4BAEcF,KAAKG,oBAK7B,KAAAA,GACEH,KAAKI,MAAMC,MAAMC,eAAe,aAChCN,KAAKI,MAAMC,MAAMC,eAAe,cAGxB,aAAAL,CAAcM,GACtB,MAAMC,QAAEA,EAAOC,QAAEA,GAAYT,KAAKU,eAAeH,GACjDP,KAAKI,MAAMC,MAAMM,YAAY,YAAa,WAAWH,iBAAuBC,SAC5ET,KAAKI,MAAMC,MAAMM,YAAY,aAAc,MAanC,cAAAD,CAAeH,GAIvB,MAAMK,KAAEA,EAAIC,IAAEA,EAAGC,MAAEA,EAAKC,OAAEA,GAAWf,KAAKI,MAAMY,yBAC1CC,QAAEA,EAAOC,QAAEA,GAAYX,EAM7B,MAAO,CAAEC,UAJOU,EAAUL,EAEEE,EAAS,GAAKA,EAAS,EAEjCN,SALFQ,EAAUL,EAICE,EAAQ,GAAKA,EAAQ,KA/CxCK,EAAA,CADTC,EAAK,SACsBxB,EAAAyB,UAAA,aAAAC,GAFxB1B,EAAMuB,EAAA,CAFXI,EAAO9B,GACP+B,EAAOC,CAAG,+FAA+F/B,oBAA2BA,8IAAqJA,8BAAqCA,yEACzTE,GAsDN,IAAA8B,EAAe9B"}
@@ -1,6 +1,7 @@
1
1
  import { type HandlerEvent } from "@godown/element";
2
2
  import { type TemplateResult } from "lit";
3
3
  import Input from "./input.js";
4
+ import { type DirectionCardinalY } from "../core/direction.js";
4
5
  /**
5
6
  * {@linkcode Select} is similar to `<select>`.
6
7
  *
@@ -25,14 +26,15 @@ declare class Select extends Input {
25
26
  */
26
27
  text: string;
27
28
  protected _content: HTMLElement;
28
- direction: "top" | "bottom" | undefined;
29
+ direction: DirectionCardinalY;
29
30
  multiple: boolean;
30
31
  visible: boolean;
31
- protected autoDirection: "top" | "bottom";
32
+ protected autoDirection: DirectionCardinalY;
32
33
  protected lastChecked: HTMLElement;
33
34
  protected defaultText: string;
34
35
  protected defaultChecked: HTMLElement[];
35
36
  private __store;
37
+ get observedRecord(): Record<string, any>;
36
38
  protected render(): TemplateResult<1>;
37
39
  protected _handleFocus(): void;
38
40
  protected firstUpdated(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../src/components/select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAwC,MAAM,iBAAiB,CAAC;AAE1F,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,KAAK,CAAC;AAG9D,OAAO,KAAK,MAAM,YAAY,CAAC;AAyB/B;;;;;;;;;;;;;;;;GAgBG;AACH,cAEM,MAAO,SAAQ,KAAK;IAExB,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEzB;;OAEG;IAEH,IAAI,EAAE,MAAM,CAAC;IAGb,SAAS,CAAC,QAAQ,EAAE,WAAW,CAAC;IAGhC,SAAS,EAAE,KAAK,GAAG,QAAQ,GAAG,SAAS,CAAC;IAGxC,QAAQ,UAAS;IAGjB,OAAO,UAAS;IAGhB,SAAS,CAAC,aAAa,EAAE,KAAK,GAAG,QAAQ,CAAY;IAErD,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;IACnC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,cAAc,EAAE,WAAW,EAAE,CAAC;IACxC,OAAO,CAAC,OAAO,CAAyC;IAExD,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAYrC,SAAS,CAAC,YAAY,IAAI,IAAI;IAY9B,SAAS,CAAC,YAAY,IAAI,IAAI;IA0B9B,SAAS,CAAC,cAAc,IAAI,IAAI;IAkBhC,KAAK,IAAI,IAAI;IAOb,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;IA4B3C,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAW5B,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIzE,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAW/D,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI;IAKnC,IAAI,IAAI,IAAI;IAMZ,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;CAGzC;AAED,eAAe,MAAM,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../src/components/select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAwC,MAAM,iBAAiB,CAAC;AAE1F,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,KAAK,CAAC;AAG9D,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,OAAO,EAAE,KAAK,kBAAkB,EAAwB,MAAM,sBAAsB,CAAC;AAyBrF;;;;;;;;;;;;;;;;GAgBG;AACH,cAKM,MAAO,SAAQ,KAAK;IAExB,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEzB;;OAEG;IAEH,IAAI,EAAE,MAAM,CAAC;IAGb,SAAS,CAAC,QAAQ,EAAE,WAAW,CAAC;IAGhC,SAAS,EAAE,kBAAkB,CAAC;IAG9B,QAAQ,UAAS;IAGjB,OAAO,UAAS;IAGhB,SAAS,CAAC,aAAa,EAAE,kBAAkB,CAAY;IAEvD,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;IACnC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,cAAc,EAAE,WAAW,EAAE,CAAC;IACxC,OAAO,CAAC,OAAO,CAAyC;IAExD,IAAI,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAKxC;IAED,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IASrC,SAAS,CAAC,YAAY,IAAI,IAAI;IAY9B,SAAS,CAAC,YAAY,IAAI,IAAI;IA0B9B,SAAS,CAAC,cAAc,IAAI,IAAI;IAkBhC,KAAK,IAAI,IAAI;IAOb,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;IA4B3C,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAW5B,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIzE,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAW/D,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI;IAKnC,IAAI,IAAI,IAAI;IAMZ,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;CAGzC;AAED,eAAe,MAAM,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- import{__decorate as t}from"tslib";import{part as e,godown as i,styles as o,attr as s,htmlSlot as n}from"@godown/element";import l from"@godown/f7-icon/icons/chevron-down.js";import{css as h,html as a,nothing as r}from"lit";import{property as c,state as u}from"lit/decorators.js";import p from"./input.js";function d(t,e){return t&&e&&t.toLowerCase().includes(e.toLowerCase())}function f(t,e){if(t){const i="checked";e?t.setAttribute(i,""):t.removeAttribute(i)}}let v=class Select extends p{constructor(){super(...arguments),this.multiple=!1,this.visible=!1,this.autoDirection="bottom",this.__store=[]}render(){return a`<div part="root" ${s({...this.observedRecord,direction:this.direction||this.autoDirection})} class="input-field">${[this._renderPrefix(),a`<input part="input" type="${this.type}" .value="${this.text}" ?autofocus="${this.autofocus}" ?disabled="${this.disabled}" autocapitalize="${this.autocapitalize||r}" autocomplete="${this.autocomplete||r}" placeholder="${this.placeholder||r}" id="${this.makeId}" @focus="${this._handleFocus}" @input="${this._handleInput}">`,a`<label for="${this.makeId}" part="suffix"><i part="icon">${l()}</i></label>`,a`<label for="${this.makeId}" part="content">${n()}</label>`]}</div>`}_handleFocus(){if(!this.direction){const{top:t,bottom:e}=this.getBoundingClientRect();window.innerHeight-e<this._content.clientHeight&&t>this._content.clientHeight?this.autoDirection="top":this.autoDirection="bottom"}this.visible=!0}firstUpdated(){this.events.add(this._content,"click",(t=>{t.preventDefault(),t.stopPropagation();const{target:e}=t,i=this.optionValue(e);if(i){const t=this.select(i,e.textContent);this.multiple||f(this.lastChecked,0),f(e,t),this.lastChecked=e}this._input.focus()})),this.events.add(document,"click",(t=>{t.stopPropagation();const e=t.composedPath()[0];e&&!this.shadowRoot.contains(e)&&this.blur()}))}_connectedInit(){if(!this.value){const t=[...this.querySelectorAll("[checked]")];(this.multiple?t:t.length?[this.lastChecked=t[0]]:[]).forEach((t=>{f(t,this.select(this.optionValue(t),t.textContent))})),this.default=this.value,this.defaultText=this.text,this.defaultChecked=t}this.text||(this.text="")}reset(){this.value=this.default,this.text=this.defaultText,this.querySelectorAll("[checked]").forEach((t=>f(t,0))),this.defaultChecked.forEach((t=>f(t,1)))}select(t,e){e||=t;let i=0;if(this.multiple){const o=this.__store.findIndex((e=>e.value===t));o>-1?this.__store.splice(o,1):(this.__store.push({value:t,text:e}),i=1),this.value=this.__store.map((t=>t.value)),this.text=this.__store.map((t=>t.text)).join(", ")}else this.value===t?(this.value="",this.text=""):(this.value=t,this.text=e,i=1);return this.dispatchEvent(new CustomEvent("select",{detail:this.value,composed:!0})),this.filter(),i}filter(t){t=t?.trim(),[...this.children].forEach((e=>{this.filterCallback(e,!t||d(this.optionValue(e),t)||d(e.textContent,t),t)}))}filterCallback(t,e,i){t.style.display=e?"":"none"}_handleInput(t){if(t.stopPropagation(),this.compositing)return;const e=this._input.value;this.filter(this.multiple?function(t,e,i){const o=e.slice(0,t).lastIndexOf(i)+1||0,s=e.indexOf(i,t)||e.length;return e.slice(o,s)}(this._input.selectionStart,e,","):e),this.dispatchEvent(new CustomEvent("input",{detail:this.value,composed:!0,bubbles:!0})),this.dispatchEvent(new CustomEvent("change",{detail:this.value,composed:!0}))}focus(t){this._input.focus(t),this.visible=!0}blur(){this._input.blur(),this.visible=!1,super.blur()}optionValue(t){return t.value||t.getAttribute("value")||""}};t([c()],v.prototype,"text",void 0),t([e("content")],v.prototype,"_content",void 0),t([c()],v.prototype,"direction",void 0),t([c({type:Boolean})],v.prototype,"multiple",void 0),t([c({type:Boolean})],v.prototype,"visible",void 0),t([u()],v.prototype,"autoDirection",void 0),v=t([i("select"),o(h`[part=input]{text-overflow:ellipsis}[part=content]{position:absolute;visibility:hidden;width:100%}[direction=bottom] [part=content]{top:100%}[direction=top] [part=content]{bottom:100%}[visible] [part=content]{visibility:visible}`)],v);var m=v;export{v as Select,m as default};
1
+ import{__decorate as t}from"tslib";import{part as e,godown as i,styles as o,attr as s,htmlSlot as l}from"@godown/element";import n from"@godown/f7-icon/icons/chevron-down.js";import{css as r,html as h,nothing as a}from"lit";import{property as c,state as u}from"lit/decorators.js";import p from"./input.js";import{cssGlobalVars as d}from"../core/global-style.js";import{directionOutsetPlace as f}from"../core/direction.js";function v(t,e){return t&&e&&t.toLowerCase().includes(e.toLowerCase())}function m(t,e){if(t){const i="checked";e?t.setAttribute(i,""):t.removeAttribute(i)}}let b=class Select extends p{constructor(){super(...arguments),this.multiple=!1,this.visible=!1,this.autoDirection="bottom",this.__store=[]}get observedRecord(){return{...super.observedRecord,direction:this.direction||this.autoDirection}}render(){return h`<div part="root" ${s(this.observedRecord)} class="input-field">${[this._renderPrefix(),h`<input part="input" type="${this.type}" .value="${this.text}" ?autofocus="${this.autofocus}" ?disabled="${this.disabled}" autocapitalize="${this.autocapitalize||a}" autocomplete="${this.autocomplete||a}" placeholder="${this.placeholder||a}" id="${this.makeId}" @focus="${this._handleFocus}" @input="${this._handleInput}">`,h`<label for="${this.makeId}" part="suffix"><i part="icon">${n()}</i></label>`,h`<label for="${this.makeId}" part="content" direction-outset-place>${l()}</label>`]}</div>`}_handleFocus(){if(!this.direction){const{top:t,bottom:e}=this.getBoundingClientRect();window.innerHeight-e<this._content.clientHeight&&t>this._content.clientHeight?this.autoDirection="top":this.autoDirection="bottom"}this.visible=!0}firstUpdated(){this.events.add(this._content,"click",(t=>{t.preventDefault(),t.stopPropagation();const{target:e}=t,i=this.optionValue(e);if(i){const t=this.select(i,e.textContent);this.multiple||m(this.lastChecked,0),m(e,t),this.lastChecked=e}this._input.focus()})),this.events.add(document,"click",(t=>{t.stopPropagation();const e=t.composedPath()[0];e&&!this.shadowRoot.contains(e)&&this.blur()}))}_connectedInit(){if(!this.value){const t=[...this.querySelectorAll("[checked]")];(this.multiple?t:t.length?[this.lastChecked=t[0]]:[]).forEach((t=>{m(t,this.select(this.optionValue(t),t.textContent))})),this.default=this.value,this.defaultText=this.text,this.defaultChecked=t}this.text||(this.text="")}reset(){this.value=this.default,this.text=this.defaultText,this.querySelectorAll("[checked]").forEach((t=>m(t,0))),this.defaultChecked.forEach((t=>m(t,1)))}select(t,e){e||=t;let i=0;if(this.multiple){const o=this.__store.findIndex((e=>e.value===t));o>-1?this.__store.splice(o,1):(this.__store.push({value:t,text:e}),i=1),this.value=this.__store.map((t=>t.value)),this.text=this.__store.map((t=>t.text)).join(", ")}else this.value===t?(this.value="",this.text=""):(this.value=t,this.text=e,i=1);return this.dispatchEvent(new CustomEvent("select",{detail:this.value,composed:!0})),this.filter(),i}filter(t){t=t?.trim(),[...this.children].forEach((e=>{this.filterCallback(e,!t||v(this.optionValue(e),t)||v(e.textContent,t),t)}))}filterCallback(t,e,i){t.style.display=e?"":"none"}_handleInput(t){if(t.stopPropagation(),this.compositing)return;const e=this._input.value;this.filter(this.multiple?function(t,e,i){const o=e.slice(0,t).lastIndexOf(i)+1||0,s=e.indexOf(i,t)||e.length;return e.slice(o,s)}(this._input.selectionStart,e,","):e),this.dispatchEvent(new CustomEvent("input",{detail:this.value,composed:!0,bubbles:!0})),this.dispatchEvent(new CustomEvent("change",{detail:this.value,composed:!0}))}focus(t){this._input.focus(t),this.visible=!0}blur(){this._input.blur(),this.visible=!1,super.blur()}optionValue(t){return t.value||t.getAttribute("value")||""}};t([c()],b.prototype,"text",void 0),t([e("content")],b.prototype,"_content",void 0),t([c()],b.prototype,"direction",void 0),t([c({type:Boolean})],b.prototype,"multiple",void 0),t([c({type:Boolean})],b.prototype,"visible",void 0),t([u()],b.prototype,"autoDirection",void 0),b=t([i("select"),o(f,r`.outline,:host(:focus-within){${d.input}-outline-color:var(${d.active})}[part=input]{text-overflow:ellipsis}[part=content]{position:absolute;visibility:hidden;width:100%}[visible] [part=content]{visibility:visible}`)],b);var _=b;export{b as Select,_ as default};
2
2
  //# sourceMappingURL=select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sources":["../src/components/select.ts"],"sourcesContent":null,"names":["contain","a","b","toLowerCase","includes","updateChecked","element","operation","name","setAttribute","removeAttribute","Select","Input","constructor","this","multiple","visible","autoDirection","__store","render","html","attr","observedRecord","direction","_renderPrefix","type","text","autofocus","disabled","autocapitalize","nothing","autocomplete","placeholder","makeId","_handleFocus","_handleInput","svgCaretDown","htmlSlot","top","bottom","getBoundingClientRect","window","innerHeight","_content","clientHeight","firstUpdated","events","add","e","preventDefault","stopPropagation","target","value","optionValue","select","textContent","lastChecked","_input","focus","document","composed1","composedPath","shadowRoot","contains","blur","_connectedInit","checked","querySelectorAll","length","forEach","default","defaultText","defaultChecked","reset","i","findIndex","s","splice","push","map","join","dispatchEvent","CustomEvent","detail","composed","filter","query","trim","children","filterCallback","match","style","display","compositing","c","start","slice","lastIndexOf","end","indexOf","betweenAt","selectionStart","bubbles","options","super","option","getAttribute","__decorate","property","prototype","undefined","part","Boolean","state","godown","styles","css","Select$1"],"mappings":"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"}
1
+ {"version":3,"file":"select.js","sources":["../src/components/select.ts"],"sourcesContent":null,"names":["contain","a","b","toLowerCase","includes","updateChecked","element","operation","name","setAttribute","removeAttribute","Select","Input","constructor","this","multiple","visible","autoDirection","__store","observedRecord","super","direction","render","html","attr","_renderPrefix","type","text","autofocus","disabled","autocapitalize","nothing","autocomplete","placeholder","makeId","_handleFocus","_handleInput","svgCaretDown","htmlSlot","top","bottom","getBoundingClientRect","window","innerHeight","_content","clientHeight","firstUpdated","events","add","e","preventDefault","stopPropagation","target","value","optionValue","select","textContent","lastChecked","_input","focus","document","composed1","composedPath","shadowRoot","contains","blur","_connectedInit","checked","querySelectorAll","length","forEach","default","defaultText","defaultChecked","reset","i","findIndex","s","splice","push","map","join","dispatchEvent","CustomEvent","detail","composed","filter","query","trim","children","filterCallback","match","style","display","compositing","c","start","slice","lastIndexOf","end","indexOf","betweenAt","selectionStart","bubbles","options","option","getAttribute","__decorate","property","prototype","undefined","part","Boolean","state","godown","styles","directionOutsetPlace","css","cssGlobalVars","input","active","Select$1"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { type HandlerEvent } from "@godown/element";
2
2
  import { type TemplateResult } from "lit";
3
- import SuperInput from "../core/super-input.js";
3
+ import { SuperInput } from "../core/super-input.js";
4
4
  /**
5
5
  * {@linkcode Split} renders multiple input boxes.
6
6
  *
@@ -25,6 +25,7 @@ declare class Split extends SuperInput {
25
25
  index: number;
26
26
  current: number;
27
27
  currentValue: (string | void)[];
28
+ get observedRecord(): Record<string, any>;
28
29
  protected render(): TemplateResult<1>;
29
30
  connectedCallback(): void;
30
31
  protected _handleInput(e: HandlerEvent<HTMLInputElement, InputEvent>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../src/components/split.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAyC,MAAM,iBAAiB,CAAC;AAC3F,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAIrD,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAKhD;;;;;;;;;;;;GAYG;AACH,cAEM,KAAM,SAAQ,UAAU;IAC5B;;OAEG;IAEH,GAAG,SAAK;IAER;;OAEG;IAEH,KAAK,SAAM;IAGX,OAAO,SAAM;IAGb,YAAY,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAM;IAErC,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAUrC,iBAAiB,IAAI,IAAI;IAKzB,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC,gBAAgB,EAAE,UAAU,CAAC,GAAG,IAAI;IAY3E;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IA2C9C,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAMxB,IAAI,IAAI,IAAI;IAOZ,KAAK,IAAI,IAAI;CAQd;AAED,eAAe,KAAK,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../src/components/split.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAA+C,MAAM,iBAAiB,CAAC;AACjG,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAIrD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAKpD;;;;;;;;;;;;GAYG;AACH,cAEM,KAAM,SAAQ,UAAU;IAC5B;;OAEG;IAEH,GAAG,SAAK;IAER;;OAEG;IAEH,KAAK,SAAM;IAGX,OAAO,SAAM;IAGb,YAAY,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAM;IAErC,IAAI,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAExC;IAED,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAUrC,iBAAiB,IAAI,IAAI;IAKzB,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC,gBAAgB,EAAE,UAAU,CAAC,GAAG,IAAI;IAY3E;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IA2C9C,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAMxB,IAAI,IAAI,IAAI;IAOZ,KAAK,IAAI,IAAI;CAQd;AAED,eAAe,KAAK,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- import{__decorate as t}from"tslib";import{godown as e,styles as i,attr as r,loop as s,tokenList as n}from"@godown/element";import{css as u,html as o}from"lit";import{property as l,state as c}from"lit/decorators.js";import{scopePrefix as a,cssGlobalVars as h}from"../core/global-style.js";import p from"../core/super-input.js";const d="split",b=a(d);let f=class Split extends p{constructor(){super(...arguments),this.len=6,this.index=-1,this.current=-1,this.currentValue=[]}render(){return o`<div part="root" ${r(this.observedRecord)}>${s(this.len,(t=>o`<span part="input-box" class="${n({focus:this.current===t})}" @click="${this.disabled?null:()=>this.focusAt(t)}">${this.currentValue[t]}</span>`))} <input part="input" id="${this.makeId}" @blur="${this.blur}" @input="${this._handleInput}" .value="${this.value.padStart(this.len," ")}"></div>`}connectedCallback(){super.connectedCallback(),this.reset()}_handleInput(t){t.stopPropagation(),this.compositing||(this.fillInput(t.data),this.value=this.currentValue.join(""),this.dispatchEvent(new CustomEvent("input",{detail:this.value,composed:!0,bubbles:!0})))}fillInput(t){if(null===t){if(null!==this.currentValue[this.current])this.currentValue[this.current]=null;else{this.currentValue[this.current-1]=null;const t=this.currentValue.findLastIndex((t=>null!==t));this.current=this.current-1<0?t<0?0:t:this.current-1}return}const e=t.length>1;if(this.currentValue[this.current]=t[0],this.current+1>=this.len?(this.current=this.currentValue.indexOf(null),-1===this.current&&this.blur()):this.current+=1,e){const e=t.slice(1);e&&this.fillInput(e)}}focus(){this.focusAt(this.current),super.focus()}focusAt(t){this.current=t,this._input.focus(),this.dispatchEvent(new CustomEvent("focus",{detail:t,bubbles:!0,composed:!0}))}blur(){this._input.blur(),this.current=-1,super.blur(),this.dispatchEvent(new CustomEvent("blur",{bubbles:!0,composed:!0}))}reset(){this.current=-1,this.value=this.default,this.currentValue=this.value.split("").concat(Array(this.len-this.value.length).fill(null)),this.index>-1&&(this.current=this.index)}};t([l({type:Number})],f.prototype,"len",void 0),t([l({type:Number})],f.prototype,"index",void 0),t([c()],f.prototype,"current",void 0),t([c()],f.prototype,"currentValue",void 0),f=t([e(d),i(u`:host{border-radius:1px;color:var(${h.foreground});display:block;width:-moz-fit-content;width:fit-content;${b}--size:1.45em;${b}--gap:.25em}:host([contents]) [part=root]{width:-moz-fit-content;width:fit-content}[part=root]{display:flex;gap:var(${b}--gap);justify-content:space-between;position:relative;width:100%}[part=input-box],[part=root]{border-radius:inherit;vertical-align:top}[part=input-box]{background-color:var(${h.input}-background);height:var(${b}--size);text-align:center;width:var(${b}--size)}[part=input]{background:none;height:100%;opacity:0;position:absolute;width:100%;z-index:-1}.focus{box-shadow:var(${h.input}-box-shadow)}`)],f);var v=f;export{f as Split,v as default};
1
+ import{__decorate as t}from"tslib";import{godown as e,styles as i,omit as r,attr as s,loop as n,tokenList as u}from"@godown/element";import{css as o,html as l}from"lit";import{property as c,state as a}from"lit/decorators.js";import{scopePrefix as h,cssGlobalVars as p}from"../core/global-style.js";import{SuperInput as d}from"../core/super-input.js";const b="split",f=h(b);let v=class Split extends d{constructor(){super(...arguments),this.len=6,this.index=-1,this.current=-1,this.currentValue=[]}get observedRecord(){return r(super.observedRecord,"outline-type")}render(){return l`<div part="root" ${s(this.observedRecord)}>${n(this.len,(t=>l`<span part="input-box" outline-type="${this.outlineType}" class="${u({focus:this.current===t})}" @click="${this.disabled?null:()=>this.focusAt(t)}">${this.currentValue[t]}</span>`))} <input part="input" id="${this.makeId}" @blur="${this.blur}" @input="${this._handleInput}" .value="${this.value.padStart(this.len," ")}"></div>`}connectedCallback(){super.connectedCallback(),this.reset()}_handleInput(t){t.stopPropagation(),this.compositing||(this.fillInput(t.data),this.value=this.currentValue.join(""),this.dispatchEvent(new CustomEvent("input",{detail:this.value,composed:!0,bubbles:!0})))}fillInput(t){if(null===t){if(null!==this.currentValue[this.current])this.currentValue[this.current]=null;else{this.currentValue[this.current-1]=null;const t=this.currentValue.findLastIndex((t=>null!==t));this.current=this.current-1<0?t<0?0:t:this.current-1}return}const e=t.length>1;if(this.currentValue[this.current]=t[0],this.current+1>=this.len?(this.current=this.currentValue.indexOf(null),-1===this.current&&this.blur()):this.current+=1,e){const e=t.slice(1);e&&this.fillInput(e)}}focus(){this.focusAt(this.current),super.focus()}focusAt(t){this.current=t,this._input.focus(),this.dispatchEvent(new CustomEvent("focus",{detail:t,bubbles:!0,composed:!0}))}blur(){this._input.blur(),this.current=-1,super.blur(),this.dispatchEvent(new CustomEvent("blur",{bubbles:!0,composed:!0}))}reset(){this.current=-1,this.value=this.default,this.currentValue=this.value.split("").concat(Array(this.len-this.value.length).fill(null)),this.index>-1&&(this.current=this.index)}};t([c({type:Number})],v.prototype,"len",void 0),t([c({type:Number})],v.prototype,"index",void 0),t([a()],v.prototype,"current",void 0),t([a()],v.prototype,"currentValue",void 0),v=t([e(b),i(o`:host{border-radius:1px;display:block;width:-moz-fit-content;width:fit-content;${f}--size:1.45em;${f}--gap:.25em}:host([contents]) [part=root]{width:-moz-fit-content;width:fit-content}[part=root]{display:flex;gap:var(${f}--gap);justify-content:space-between;position:relative;width:100%}[part=input-box],[part=root]{border-radius:inherit;vertical-align:top}[part=input-box]{align-items:center;display:inline-flex;height:var(${f}--size);justify-content:center;width:var(${f}--size)}[part=input]{background:none;height:100%;opacity:0;position:absolute;width:100%;z-index:-1}.focus,[part=input-box]:active{${p.input}-outline-color:var(${p.active})}`)],v);var m=v;export{v as Split,m as default};
2
2
  //# sourceMappingURL=split.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"split.js","sources":["../src/components/split.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Split","SuperInput","constructor","this","len","index","current","currentValue","render","html","attr","observedRecord","loop","tokenList","focus","disabled","focusAt","makeId","blur","_handleInput","value","padStart","connectedCallback","super","reset","e","stopPropagation","compositing","fillInput","data","join","dispatchEvent","CustomEvent","detail","composed","bubbles","lastNotNull","findLastIndex","a","multiple","length","indexOf","after","slice","i","_input","default","split","concat","Array","fill","__decorate","property","type","Number","prototype","undefined","state","godown","styles","css","cssGlobalVars","foreground","input","Split$1"],"mappings":"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"}
1
+ {"version":3,"file":"split.js","sources":["../src/components/split.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Split","SuperInput","constructor","this","len","index","current","currentValue","observedRecord","omit","super","render","html","attr","loop","outlineType","tokenList","focus","disabled","focusAt","makeId","blur","_handleInput","value","padStart","connectedCallback","reset","e","stopPropagation","compositing","fillInput","data","join","dispatchEvent","CustomEvent","detail","composed","bubbles","lastNotNull","findLastIndex","a","multiple","length","indexOf","after","slice","i","_input","default","split","concat","Array","fill","__decorate","property","type","Number","prototype","undefined","state","godown","styles","css","cssGlobalVars","input","active","Split$1"],"mappings":"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"}
@@ -1,41 +1,31 @@
1
1
  import { type TemplateResult } from "lit";
2
- import SuperInput from "../core/super-input.js";
2
+ import { SuperInput } from "../core/super-input.js";
3
3
  /**
4
4
  * {@linkcode Switch} renders a switch.
5
5
  *
6
- * The switch is rectangular by default,
7
- * set the round property to rounded switch.
8
- *
9
6
  * @fires change - Fires when the switch is switched.
10
7
  * @category input
11
8
  */
12
- declare class Switch extends SuperInput {
9
+ declare class Switch extends SuperInput<boolean> {
13
10
  /**
14
- * Display rounded.
11
+ * @deprecated
15
12
  */
16
13
  round: boolean;
17
- /**
18
- * Whether this element is selected or not.
19
- */
20
- checked: boolean;
21
- /**
22
- * Disable this element.
23
- */
24
- disabled: boolean;
14
+ set checked(v: boolean);
15
+ get checked(): boolean;
25
16
  /**
26
17
  * Default checked state.
27
18
  */
28
- default: string;
19
+ default: boolean;
29
20
  /**
30
- * Input value.
21
+ * The current value of the switch component. Reflects the "checked" attribute.
31
22
  */
32
- value: string;
33
- protected _input: HTMLInputElement;
23
+ value: boolean;
24
+ get observedRecord(): Record<string, any>;
34
25
  protected render(): TemplateResult<1>;
35
26
  reset(): void;
36
- connectedCallback(): void;
27
+ protected _connectedInit(): void;
37
28
  protected _handleChange(): void;
38
- namevalue(): [string, boolean];
39
29
  }
40
30
  export default Switch;
41
31
  export { Switch };
@@ -1 +1 @@
1
- {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../src/components/switch.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAIrD,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAKhD;;;;;;;;GAQG;AACH,cAEM,MAAO,SAAQ,UAAU;IAC7B;;OAEG;IAEH,KAAK,UAAS;IAEd;;OAEG;IAEH,OAAO,UAAS;IAEhB;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,OAAO,SAAW;IAElB;;OAEG;IAEH,KAAK,SAAQ;IAGb,SAAS,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAEnC,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAIrC,KAAK,IAAI,IAAI;IAKb,iBAAiB,IAAI,IAAI;IAUzB,SAAS,CAAC,aAAa,IAAI,IAAI;IAK/B,SAAS,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;CAG/B;AAED,eAAe,MAAM,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../src/components/switch.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAIrD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAKpD;;;;;GAKG;AACH,cAEM,MAAO,SAAQ,UAAU,CAAC,OAAO,CAAC;IACtC;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf,IAAI,OAAO,CAAC,CAAC,EAAE,OAAO,EAErB;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IAEH,OAAO,UAAS;IAEhB;;OAEG;IAEH,KAAK,UAAS;IAEd,IAAI,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAExC;IAED,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAIrC,KAAK,IAAI,IAAI;IAKb,SAAS,CAAC,cAAc,IAAI,IAAI;IAWhC,SAAS,CAAC,aAAa,IAAI,IAAI;CAKhC;AAED,eAAe,MAAM,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- import{__decorate as e}from"tslib";import{godown as t,styles as i,attr as r}from"@godown/element";import{css as a,html as o}from"lit";import{property as n,query as d}from"lit/decorators.js";import{scopePrefix as s,cssGlobalVars as h}from"../core/global-style.js";import c from"../core/super-input.js";const p="switch",l=s(p);let u=class Switch extends c{constructor(){super(...arguments),this.round=!1,this.checked=!1,this.disabled=!1,this.default="false",this.value="on"}render(){return o`<div part="root" ${r(this.observedRecord)} class="${this.round?"round":"rect"}"><input part="input" type="checkbox" ?disabled="${this.disabled}" ?checked="${this.checked}" name="${this.name}" id="${this.makeId}" @change="${this._handleChange}"> <span part="handle" class="${this.checked}"></span></div>`}reset(){this.checked="true"===this.default,this._input.checked=this.checked}connectedCallback(){super.connectedCallback(),this.checked&&(this.default="true"),"true"===this.default&&(this.checked=!0)}_handleChange(){this.checked=this._input.checked,this.dispatchEvent(new CustomEvent("change",{detail:this.checked,composed:!0}))}namevalue(){return[this.name,this.checked]}};e([n({type:Boolean,reflect:!0})],u.prototype,"round",void 0),e([n({type:Boolean,reflect:!0})],u.prototype,"checked",void 0),e([n({type:Boolean,reflect:!0})],u.prototype,"disabled",void 0),e([n()],u.prototype,"default",void 0),e([n()],u.prototype,"value",void 0),e([d("input")],u.prototype,"_input",void 0),u=e([t(p),i(a`:host,:host([contents]) [part=root]{display:inline-block;height:var(${l}-height);width:var(${l}-width)}:host{${l}-width:3em;${l}-height:calc(var(${l}-width)/2);${l}-handle-size:1.25em;${l}-handle-space:.125em;${l}-transition:.2s ease-in-out;background:var(${h.input}-background);border-radius:0;vertical-align:bottom}[part=handle],[part=root]{transition:var(${l}-transition)}[part=root]{border-radius:inherit;height:inherit;position:relative}[part=input]{-webkit-appearance:none;appearance:none;height:100%;opacity:0;width:100%}[part=handle]{align-items:center;border-radius:inherit;display:inline-flex;height:100%;justify-content:center;left:0;pointer-events:none;position:absolute;width:50%}:host([round]){background:var(${h.passive});border-radius:calc(var(${l}-height)/2)}:host([checked]) [part=handle]{left:50%}.rect .true{background:var(${h.active})}.rect .false{background:var(${h.passive})}.round [part=handle]{--size:var(${l}-handle-size);background:var(--godown--input-control);border-radius:100%;height:var(--size);margin:var(${l}-handle-space);width:var(--size)}:host([checked]) .round{background:var(${h.active})}`)],u);var v=u;export{u as Switch,v as default};
1
+ import{__decorate as t}from"tslib";import{godown as e,styles as i,omit as a,attr as r}from"@godown/element";import{css as s,html as o}from"lit";import{property as h}from"lit/decorators.js";import{scopePrefix as n,cssGlobalVars as d}from"../core/global-style.js";import{SuperInput as l}from"../core/super-input.js";const c="switch",p=n(c);let u=class Switch extends l{constructor(){super(...arguments),this.default=!1,this.value=!1}set checked(t){this.value=t}get checked(){return this.value}get observedRecord(){return a(super.observedRecord,"outline-type")}render(){return o`<div part="root" ${r(this.observedRecord)} class="round"><input part="input" type="checkbox" ?disabled="${this.disabled}" ?checked="${this.value}" id="${this.makeId}" @change="${this._handleChange}"> <span part="handle"></span></div>`}reset(){this.value=this.default,this._input.checked=this.value}_connectedInit(){this.default?this.value=!0:this.value&&(this.value=!0,this.default=!0)}_handleChange(){const{checked:t}=this._input;this.value=t,this.dispatchCustomEvent("change",this.value)}};t([h({type:Boolean})],u.prototype,"default",void 0),t([h({type:Boolean,attribute:"checked",reflect:!0})],u.prototype,"value",void 0),u=t([e(c),i(s`:host,:host([contents]) [part=root]{display:inline-block;height:var(${p}-height);width:var(${p}-width)}:host{${p}-width:3em;${p}-height:calc(var(${p}-width)/2);${p}-handle-size:1.25em;${p}-handle-space:calc(var(${p}-width)/4 - var(${p}-handle-size)/2);${p}-transition:.2s ease-in-out;background:var(${d.passive});border-radius:calc(var(${p}-height)/2);transition:.2s ease-in-out;transition-property:background,left;vertical-align:bottom}:host([checked]){background:var(${d.active})}[part=root]{height:inherit;position:relative}[part=handle],[part=root]{align-items:center;display:flex;transition:inherit}[part=handle]{background:currentColor;border-radius:100%;justify-content:center;left:0;pointer-events:none;position:absolute;top:50%;--size:var(${p}-handle-size);height:var(--size);transform:translateY(-50%) translateX(var(${p}-handle-space));width:var(--size)}:host([checked]) [part=handle]{left:50%}[part=input]{height:100%;opacity:0;width:100%}`)],u);var v=u;export{u as Switch,v as default};
2
2
  //# sourceMappingURL=switch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"switch.js","sources":["../src/components/switch.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Switch","SuperInput","constructor","this","round","checked","disabled","default","value","render","html","attr","observedRecord","name","makeId","_handleChange","reset","_input","connectedCallback","super","dispatchEvent","CustomEvent","detail","composed","namevalue","__decorate","property","type","Boolean","reflect","prototype","undefined","query","godown","styles","css","cssGlobalVars","input","passive","active","Switch$1"],"mappings":"6SAOA,MAAMA,EAAY,SACZC,EAAWC,EAAYF,GAa7B,IAAMG,EAAN,MAAMA,eAAeC,EAArB,WAAAC,uBAKEC,KAAKC,OAAG,EAMRD,KAAOE,SAAG,EAMVF,KAAQG,UAAG,EAMXH,KAAOI,QAAG,QAMVJ,KAAKK,MAAG,KAKE,MAAAC,GACR,OAAOC,CAAI,oBAGLC,EAAKR,KAAKS,0BACHT,KAAKC,MAAQ,QAAU,0DAKjBD,KAAKG,uBACNH,KAAKE,kBACTF,KAAKU,aACPV,KAAKW,oBACAX,KAAKY,8CAIPZ,KAAKE,yBAMtB,KAAAW,GACEb,KAAKE,QAA2B,SAAjBF,KAAKI,QACpBJ,KAAKc,OAAOZ,QAAUF,KAAKE,QAG7B,iBAAAa,GACEC,MAAMD,oBACFf,KAAKE,UACPF,KAAKI,QAAU,QAEI,SAAjBJ,KAAKI,UACPJ,KAAKE,SAAU,GAIT,aAAAU,GACRZ,KAAKE,QAAUF,KAAKc,OAAOZ,QAC3BF,KAAKiB,cAAc,IAAIC,YAAY,SAAU,CAAEC,OAAQnB,KAAKE,QAASkB,UAAU,KAGjF,SAAAC,GACE,MAAO,CAACrB,KAAKU,KAAMV,KAAKE,WA1E1BoB,EAAA,CADCC,EAAS,CAAEC,KAAMC,QAASC,SAAS,KACvB7B,EAAA8B,UAAA,aAAAC,GAMbN,EAAA,CADCC,EAAS,CAAEC,KAAMC,QAASC,SAAS,KACrB7B,EAAA8B,UAAA,eAAAC,GAMfN,EAAA,CADCC,EAAS,CAAEC,KAAMC,QAASC,SAAS,KACpB7B,EAAA8B,UAAA,gBAAAC,GAMhBN,EAAA,CADCC,KACgB1B,EAAA8B,UAAA,eAAAC,GAMjBN,EAAA,CADCC,KACW1B,EAAA8B,UAAA,aAAAC,GAGFN,EAAA,CADTO,EAAM,UAC2BhC,EAAA8B,UAAA,cAAAC,GAhC9B/B,EAAMyB,EAAA,CAFXQ,EAAOpC,GACPqC,EAAOC,CAAG,uEAAuErC,uBAA8BA,kBAAyBA,eAAsBA,qBAA4BA,eAAsBA,wBAA+BA,yBAAgCA,+CAAsDsC,EAAcC,oGAAoGvC,6WAAoXsC,EAAcE,mCAAmCxC,mFAA0FsC,EAAcG,uCAAuCH,EAAcE,4CAA4CxC,2GAAkHA,4EAAmFsC,EAAcG,aACnvCvC,GAmFN,IAAAwC,EAAexC"}
1
+ {"version":3,"file":"switch.js","sources":["../src/components/switch.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Switch","SuperInput","constructor","this","default","value","checked","v","observedRecord","omit","super","render","html","attr","disabled","makeId","_handleChange","reset","_input","_connectedInit","dispatchCustomEvent","__decorate","property","type","Boolean","prototype","undefined","attribute","reflect","godown","styles","css","cssGlobalVars","passive","active","Switch$1"],"mappings":"0TAOA,MAAMA,EAAY,SACZC,EAAWC,EAAYF,GAU7B,IAAMG,EAAN,MAAMA,eAAeC,EAArB,WAAAC,uBAkBEC,KAAOC,SAAG,EAMVD,KAAKE,OAAG,EAlBR,WAAIC,CAAQC,GACVJ,KAAKE,MAAQE,EAGf,WAAID,GACF,OAAOH,KAAKE,MAed,kBAAIG,GACF,OAAOC,EAAKC,MAAMF,eAAgB,gBAG1B,MAAAG,GACR,OAAOC,CAAI,oBAGLC,EAAKV,KAAKK,gFAMGL,KAAKW,uBACNX,KAAKE,cACXF,KAAKY,oBACAZ,KAAKa,oDAOxB,KAAAC,GACEd,KAAKE,MAAQF,KAAKC,QAClBD,KAAKe,OAAOZ,QAAUH,KAAKE,MAGnB,cAAAc,GACJhB,KAAKC,QACPD,KAAKE,OAAQ,EAETF,KAAKE,QACPF,KAAKE,OAAQ,EACbF,KAAKC,SAAU,GAKX,aAAAY,GACR,MAAMV,QAAEA,GAAYH,KAAKe,OACzBf,KAAKE,MAAQC,EACbH,KAAKiB,oBAAoB,SAAUjB,KAAKE,SAnD1CgB,EAAA,CADCC,EAAS,CAAEC,KAAMC,WACHxB,EAAAyB,UAAA,eAAAC,GAMfL,EAAA,CADCC,EAAS,CAAEC,KAAMC,QAASG,UAAW,UAAWC,SAAS,KAC7C5B,EAAAyB,UAAA,aAAAC,GAxBT1B,EAAMqB,EAAA,CAFXQ,EAAOhC,GACPiC,EAAOC,CAAG,uEAAuEjC,uBAA8BA,kBAAyBA,eAAsBA,qBAA4BA,eAAsBA,wBAA+BA,2BAAkCA,oBAA2BA,qBAA4BA,+CAAsDkC,EAAcC,mCAAmCnC,qIAA4IkC,EAAcE,qRAAqRpC,+EAAsFA,8HAC/6BE,GAyEN,IAAAmC,EAAenC"}