@mhmo91/schmancy 0.2.38 → 0.2.39

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 (248) hide show
  1. package/dist/{animated-text-Daeoe5sn.cjs → animated-text-B3UYCBgB.cjs} +2 -2
  2. package/dist/{animated-text-Daeoe5sn.cjs.map → animated-text-B3UYCBgB.cjs.map} +1 -1
  3. package/dist/{animated-text-BVwxMOPR.js → animated-text-D6s-YOrx.js} +3 -3
  4. package/dist/{animated-text-BVwxMOPR.js.map → animated-text-D6s-YOrx.js.map} +1 -1
  5. package/dist/animated-text.cjs +1 -1
  6. package/dist/animated-text.js +1 -1
  7. package/dist/area.cjs +1 -1
  8. package/dist/{area.component-xmbcsTJK.cjs → area.component-CNHbzqRX.cjs} +2 -2
  9. package/dist/{area.component-xmbcsTJK.cjs.map → area.component-CNHbzqRX.cjs.map} +1 -1
  10. package/dist/{area.component-ByLp5c79.js → area.component-xeDLv_CE.js} +3 -3
  11. package/dist/{area.component-ByLp5c79.js.map → area.component-xeDLv_CE.js.map} +1 -1
  12. package/dist/area.js +1 -1
  13. package/dist/autocomplete-Cz4oZQBB.js +225 -0
  14. package/dist/autocomplete-Cz4oZQBB.js.map +1 -0
  15. package/dist/autocomplete-D71XBwSj.cjs +48 -0
  16. package/dist/autocomplete-D71XBwSj.cjs.map +1 -0
  17. package/dist/autocomplete.cjs +1 -1
  18. package/dist/autocomplete.js +1 -1
  19. package/dist/busy.cjs +1 -1
  20. package/dist/busy.js +1 -1
  21. package/dist/button.cjs +1 -1
  22. package/dist/button.js +1 -1
  23. package/dist/card.cjs +1 -1
  24. package/dist/card.js +1 -1
  25. package/dist/{checkbox-D9vaaSjw.cjs → checkbox-CQvBkjyb.cjs} +2 -2
  26. package/dist/{checkbox-D9vaaSjw.cjs.map → checkbox-CQvBkjyb.cjs.map} +1 -1
  27. package/dist/{checkbox-DkJYbF64.js → checkbox-DCRZj150.js} +2 -2
  28. package/dist/{checkbox-DkJYbF64.js.map → checkbox-DCRZj150.js.map} +1 -1
  29. package/dist/checkbox.cjs +1 -1
  30. package/dist/checkbox.js +1 -1
  31. package/dist/{chips-UBgldDF5.cjs → chips-BUDT0jpL.cjs} +12 -12
  32. package/dist/{chips-UBgldDF5.cjs.map → chips-BUDT0jpL.cjs.map} +1 -1
  33. package/dist/{chips-Cy9spfrp.js → chips-DStbVgUo.js} +36 -36
  34. package/dist/{chips-Cy9spfrp.js.map → chips-DStbVgUo.js.map} +1 -1
  35. package/dist/chips.cjs +1 -1
  36. package/dist/chips.js +1 -1
  37. package/dist/components.cjs +1 -1
  38. package/dist/components.js +1 -1
  39. package/dist/content-drawer.cjs +1 -1
  40. package/dist/content-drawer.js +1 -1
  41. package/dist/date-range-BjIt4Ocb.cjs +72 -0
  42. package/dist/date-range-BjIt4Ocb.cjs.map +1 -0
  43. package/dist/date-range-D_zg5C9O.js +148 -0
  44. package/dist/date-range-D_zg5C9O.js.map +1 -0
  45. package/dist/date-range.cjs +1 -1
  46. package/dist/date-range.js +1 -1
  47. package/dist/{delay-C0n9lJNW.cjs → delay-D8wCtScV.cjs} +2 -2
  48. package/dist/{delay-C0n9lJNW.cjs.map → delay-D8wCtScV.cjs.map} +1 -1
  49. package/dist/{delay-CpK5RGux.js → delay-LxXCSBHq.js} +2 -2
  50. package/dist/{delay-CpK5RGux.js.map → delay-LxXCSBHq.js.map} +1 -1
  51. package/dist/delay.cjs +1 -1
  52. package/dist/delay.js +1 -1
  53. package/dist/{divider-D85c35Sw.js → divider-BSEoJ09J.js} +3 -3
  54. package/dist/{divider-D85c35Sw.js.map → divider-BSEoJ09J.js.map} +1 -1
  55. package/dist/{divider-C4xBD1JH.cjs → divider-lCnFIhkp.cjs} +2 -2
  56. package/dist/{divider-C4xBD1JH.cjs.map → divider-lCnFIhkp.cjs.map} +1 -1
  57. package/dist/divider.cjs +1 -1
  58. package/dist/divider.js +1 -1
  59. package/dist/{form-B_0fvoO0.cjs → form-Bf2BlAqE.cjs} +2 -2
  60. package/dist/{form-B_0fvoO0.cjs.map → form-Bf2BlAqE.cjs.map} +1 -1
  61. package/dist/{form-Bau_XA_e.js → form-C-1W3Aqc.js} +2 -2
  62. package/dist/{form-Bau_XA_e.js.map → form-C-1W3Aqc.js.map} +1 -1
  63. package/dist/form.cjs +1 -1
  64. package/dist/form.js +1 -1
  65. package/dist/{icon-B-QZ23xF.js → icon-CXD3W__G.js} +3 -3
  66. package/dist/{icon-B-QZ23xF.js.map → icon-CXD3W__G.js.map} +1 -1
  67. package/dist/{icon-Bit7fi8d.cjs → icon-Wj9hmgVr.cjs} +2 -2
  68. package/dist/{icon-Bit7fi8d.cjs.map → icon-Wj9hmgVr.cjs.map} +1 -1
  69. package/dist/{icon-button-Dh6iR7gO.cjs → icon-button-C0bTDyZI.cjs} +2 -2
  70. package/dist/{icon-button-Dh6iR7gO.cjs.map → icon-button-C0bTDyZI.cjs.map} +1 -1
  71. package/dist/{icon-button-CEGE-KQJ.js → icon-button-CRWWdZ-S.js} +3 -3
  72. package/dist/{icon-button-CEGE-KQJ.js.map → icon-button-CRWWdZ-S.js.map} +1 -1
  73. package/dist/icons.cjs +1 -1
  74. package/dist/icons.js +1 -1
  75. package/dist/index.cjs +1 -1
  76. package/dist/index.js +98 -97
  77. package/dist/input-BQtGX-Fg.js +137 -0
  78. package/dist/input-BQtGX-Fg.js.map +1 -0
  79. package/dist/input-DRhsCSxi.cjs +53 -0
  80. package/dist/input-DRhsCSxi.cjs.map +1 -0
  81. package/dist/input.cjs +1 -1
  82. package/dist/input.js +1 -1
  83. package/dist/layout.cjs +1 -1
  84. package/dist/layout.js +1 -1
  85. package/dist/{list-ClV9Qdme.js → list-CUpWM7R0.js} +2 -2
  86. package/dist/{list-ClV9Qdme.js.map → list-CUpWM7R0.js.map} +1 -1
  87. package/dist/{list-CRW6i-kf.cjs → list-bbSGS1sE.cjs} +2 -2
  88. package/dist/{list-CRW6i-kf.cjs.map → list-bbSGS1sE.cjs.map} +1 -1
  89. package/dist/list.cjs +1 -1
  90. package/dist/list.js +1 -1
  91. package/dist/{litElement.mixin-d9rhslEw.cjs → litElement.mixin-CYwiYZyZ.cjs} +2 -2
  92. package/dist/{litElement.mixin-d9rhslEw.cjs.map → litElement.mixin-CYwiYZyZ.cjs.map} +1 -1
  93. package/dist/{litElement.mixin-COSnyAru.js → litElement.mixin-DoKCdkhO.js} +2 -2
  94. package/dist/{litElement.mixin-COSnyAru.js.map → litElement.mixin-DoKCdkhO.js.map} +1 -1
  95. package/dist/menu-CXDFSHgu.cjs +29 -0
  96. package/dist/menu-CXDFSHgu.cjs.map +1 -0
  97. package/dist/{menu-n_bI-TFp.js → menu-DGFcpetb.js} +29 -27
  98. package/dist/menu-DGFcpetb.js.map +1 -0
  99. package/dist/menu.cjs +1 -1
  100. package/dist/menu.js +1 -1
  101. package/dist/nav-drawer.cjs +1 -1
  102. package/dist/nav-drawer.js +1 -1
  103. package/dist/notification.cjs +1 -1
  104. package/dist/notification.js +1 -1
  105. package/dist/option-BKHQU-_I.cjs +18 -0
  106. package/dist/option-BKHQU-_I.cjs.map +1 -0
  107. package/dist/option-Cr7OiYc5.js +45 -0
  108. package/dist/option-Cr7OiYc5.js.map +1 -0
  109. package/dist/option.cjs +1 -1
  110. package/dist/option.js +1 -1
  111. package/dist/{outlet-hu2yX7iS.cjs → outlet-BZSpbcNh.cjs} +2 -2
  112. package/dist/{outlet-hu2yX7iS.cjs.map → outlet-BZSpbcNh.cjs.map} +1 -1
  113. package/dist/{outlet-DuFKgg_g.js → outlet-D39IYQgF.js} +2 -2
  114. package/dist/{outlet-DuFKgg_g.js.map → outlet-D39IYQgF.js.map} +1 -1
  115. package/dist/{payment-card-form-D6chLUG-.js → payment-card-form-MU2rWtCN.js} +3 -3
  116. package/dist/{payment-card-form-D6chLUG-.js.map → payment-card-form-MU2rWtCN.js.map} +1 -1
  117. package/dist/{payment-card-form-Bpa9jVym.cjs → payment-card-form-jktK4YkR.cjs} +2 -2
  118. package/dist/{payment-card-form-Bpa9jVym.cjs.map → payment-card-form-jktK4YkR.cjs.map} +1 -1
  119. package/dist/{radio-group-9wWEjibY.js → radio-group-Cbcn7M8H.js} +2 -2
  120. package/dist/{radio-group-9wWEjibY.js.map → radio-group-Cbcn7M8H.js.map} +1 -1
  121. package/dist/{radio-group-CekbhNf-.cjs → radio-group-DnpFVpBo.cjs} +2 -2
  122. package/dist/{radio-group-CekbhNf-.cjs.map → radio-group-DnpFVpBo.cjs.map} +1 -1
  123. package/dist/radio-group.cjs +1 -1
  124. package/dist/radio-group.js +1 -1
  125. package/dist/scroll-DNj5rrzc.cjs +33 -0
  126. package/dist/scroll-DNj5rrzc.cjs.map +1 -0
  127. package/dist/{scroll-B-tqDDOP.js → scroll-moSwU3Ry.js} +29 -29
  128. package/dist/scroll-moSwU3Ry.js.map +1 -0
  129. package/dist/select-DEOnUayG.cjs +52 -0
  130. package/dist/select-DEOnUayG.cjs.map +1 -0
  131. package/dist/select-Dmhiq26e.js +156 -0
  132. package/dist/select-Dmhiq26e.js.map +1 -0
  133. package/dist/select.cjs +1 -1
  134. package/dist/select.js +4 -1
  135. package/dist/{sheet-yFj2S1UP.js → sheet-BDPiwpWN.js} +3 -3
  136. package/dist/{sheet-yFj2S1UP.js.map → sheet-BDPiwpWN.js.map} +1 -1
  137. package/dist/{sheet-DeE5_yNQ.cjs → sheet-CgaQ6pVJ.cjs} +2 -2
  138. package/dist/{sheet-DeE5_yNQ.cjs.map → sheet-CgaQ6pVJ.cjs.map} +1 -1
  139. package/dist/sheet.cjs +1 -1
  140. package/dist/sheet.js +1 -1
  141. package/dist/{slider-PwJTXAJc.js → slider-D-cIdjqg.js} +3 -3
  142. package/dist/{slider-PwJTXAJc.js.map → slider-D-cIdjqg.js.map} +1 -1
  143. package/dist/{slider-BN-GC2a_.cjs → slider-Dbz2ehmj.cjs} +2 -2
  144. package/dist/{slider-BN-GC2a_.cjs.map → slider-Dbz2ehmj.cjs.map} +1 -1
  145. package/dist/slider.cjs +1 -1
  146. package/dist/slider.js +1 -1
  147. package/dist/{spinner-Calk9CE7.cjs → spinner-COoBI2kA.cjs} +2 -2
  148. package/dist/{spinner-Calk9CE7.cjs.map → spinner-COoBI2kA.cjs.map} +1 -1
  149. package/dist/{spinner-CA6KEbfu.js → spinner-qHgA76_k.js} +3 -3
  150. package/dist/{spinner-CA6KEbfu.js.map → spinner-qHgA76_k.js.map} +1 -1
  151. package/dist/{surface-VBotYgOg.js → surface-BALOUsnP.js} +2 -2
  152. package/dist/{surface-VBotYgOg.js.map → surface-BALOUsnP.js.map} +1 -1
  153. package/dist/{surface-QvhZSMt5.cjs → surface-DI4R4vjx.cjs} +2 -2
  154. package/dist/{surface-QvhZSMt5.cjs.map → surface-DI4R4vjx.cjs.map} +1 -1
  155. package/dist/surface.cjs +1 -1
  156. package/dist/surface.js +1 -1
  157. package/dist/{table-Da6LJPGK.js → table-C3YCvbyA.js} +2 -2
  158. package/dist/{table-Da6LJPGK.js.map → table-C3YCvbyA.js.map} +1 -1
  159. package/dist/{table-n4ftE_xg.cjs → table-DVqYwon7.cjs} +2 -2
  160. package/dist/{table-n4ftE_xg.cjs.map → table-DVqYwon7.cjs.map} +1 -1
  161. package/dist/table.cjs +1 -1
  162. package/dist/table.js +1 -1
  163. package/dist/{tabs-group-DThZAKqa.cjs → tabs-group-CM9Hd80d.cjs} +2 -2
  164. package/dist/{tabs-group-DThZAKqa.cjs.map → tabs-group-CM9Hd80d.cjs.map} +1 -1
  165. package/dist/{tabs-group-BK5fJqpY.js → tabs-group-DtvVC_nM.js} +2 -2
  166. package/dist/{tabs-group-BK5fJqpY.js.map → tabs-group-DtvVC_nM.js.map} +1 -1
  167. package/dist/tabs.cjs +1 -1
  168. package/dist/tabs.js +1 -1
  169. package/dist/{tailwind.mixin-DYx3IacW.cjs → tailwind.mixin-BmIP1Qzo.cjs} +2 -2
  170. package/dist/{tailwind.mixin-DYx3IacW.cjs.map → tailwind.mixin-BmIP1Qzo.cjs.map} +1 -1
  171. package/dist/{tailwind.mixin-DNlFmovi.js → tailwind.mixin-CHPxMV8E.js} +14 -14
  172. package/dist/{tailwind.mixin-DNlFmovi.js.map → tailwind.mixin-CHPxMV8E.js.map} +1 -1
  173. package/dist/teleport.cjs +1 -1
  174. package/dist/{teleport.component-Dose4RDi.js → teleport.component-BQTFUlsF.js} +35 -35
  175. package/dist/{teleport.component-Dose4RDi.js.map → teleport.component-BQTFUlsF.js.map} +1 -1
  176. package/dist/{teleport.component-D5v1j4mw.cjs → teleport.component-hBN2zB0w.cjs} +2 -2
  177. package/dist/{teleport.component-D5v1j4mw.cjs.map → teleport.component-hBN2zB0w.cjs.map} +1 -1
  178. package/dist/teleport.js +1 -1
  179. package/dist/{textarea-DHrkcyt8.cjs → textarea-C8bsVuSe.cjs} +2 -2
  180. package/dist/{textarea-DHrkcyt8.cjs.map → textarea-C8bsVuSe.cjs.map} +1 -1
  181. package/dist/{textarea-JWBhOVdN.js → textarea-D7ZLtbVj.js} +2 -2
  182. package/dist/{textarea-JWBhOVdN.js.map → textarea-D7ZLtbVj.js.map} +1 -1
  183. package/dist/textarea.cjs +1 -1
  184. package/dist/textarea.js +1 -1
  185. package/dist/{theme-button-BL3unPDt.js → theme-button-CcHxfORU.js} +2 -2
  186. package/dist/{theme-button-BL3unPDt.js.map → theme-button-CcHxfORU.js.map} +1 -1
  187. package/dist/{theme-button-DBPnjBHL.cjs → theme-button-fUwuhdHz.cjs} +2 -2
  188. package/dist/{theme-button-DBPnjBHL.cjs.map → theme-button-fUwuhdHz.cjs.map} +1 -1
  189. package/dist/theme-button.cjs +1 -1
  190. package/dist/theme-button.js +1 -1
  191. package/dist/theme.cjs +1 -1
  192. package/dist/{theme.component-BNRB5zlE.cjs → theme.component-ByOov4NR.cjs} +2 -2
  193. package/dist/{theme.component-BNRB5zlE.cjs.map → theme.component-ByOov4NR.cjs.map} +1 -1
  194. package/dist/{theme.component-iZ2Ty0WM.js → theme.component-D4gPoycY.js} +2 -2
  195. package/dist/{theme.component-iZ2Ty0WM.js.map → theme.component-D4gPoycY.js.map} +1 -1
  196. package/dist/theme.js +1 -1
  197. package/dist/{tree-BU8SHE74.cjs → tree-DJQKaG-K.cjs} +2 -2
  198. package/dist/{tree-BU8SHE74.cjs.map → tree-DJQKaG-K.cjs.map} +1 -1
  199. package/dist/{tree-DK6ii57L.js → tree-DW_S-LL9.js} +2 -2
  200. package/dist/{tree-DK6ii57L.js.map → tree-DW_S-LL9.js.map} +1 -1
  201. package/dist/tree.cjs +1 -1
  202. package/dist/tree.js +1 -1
  203. package/dist/{typewriter-BUNcKCUM.js → typewriter-_3w-aV-9.js} +4 -4
  204. package/dist/{typewriter-BUNcKCUM.js.map → typewriter-_3w-aV-9.js.map} +1 -1
  205. package/dist/{typewriter-BcUBG7Dc.cjs → typewriter-jDCMhixI.cjs} +2 -2
  206. package/dist/{typewriter-BcUBG7Dc.cjs.map → typewriter-jDCMhixI.cjs.map} +1 -1
  207. package/dist/typewriter.cjs +1 -1
  208. package/dist/typewriter.js +1 -1
  209. package/dist/{typography-CLlDUD5O.cjs → typography-BhqtMVYz.cjs} +2 -2
  210. package/dist/{typography-CLlDUD5O.cjs.map → typography-BhqtMVYz.cjs.map} +1 -1
  211. package/dist/{typography-CasDFLVv.js → typography-GzUb3OWl.js} +2 -2
  212. package/dist/{typography-CasDFLVv.js.map → typography-GzUb3OWl.js.map} +1 -1
  213. package/dist/typography.cjs +1 -1
  214. package/dist/typography.js +1 -1
  215. package/package.json +2 -2
  216. package/types/src/autocomplete/autocomplete.d.ts +16 -93
  217. package/types/src/chips/chip.d.ts +0 -2
  218. package/types/src/date-range/date-range.d.ts +14 -15
  219. package/types/src/input/input.d.ts +60 -80
  220. package/types/src/layout/flex/flex.d.ts +24 -1
  221. package/types/src/option/option.d.ts +2 -2
  222. package/types/src/select/select.d.ts +37 -15
  223. package/dist/autocomplete-8-xYgb2e.js +0 -212
  224. package/dist/autocomplete-8-xYgb2e.js.map +0 -1
  225. package/dist/autocomplete-CtUz_AlC.cjs +0 -43
  226. package/dist/autocomplete-CtUz_AlC.cjs.map +0 -1
  227. package/dist/date-range-Cvdpxn2J.js +0 -130
  228. package/dist/date-range-Cvdpxn2J.js.map +0 -1
  229. package/dist/date-range-DTUXT0Lf.cjs +0 -58
  230. package/dist/date-range-DTUXT0Lf.cjs.map +0 -1
  231. package/dist/input-6NTzj_Bn.js +0 -124
  232. package/dist/input-6NTzj_Bn.js.map +0 -1
  233. package/dist/input-CnvK8HG2.cjs +0 -43
  234. package/dist/input-CnvK8HG2.cjs.map +0 -1
  235. package/dist/menu-C4mb1XXA.cjs +0 -31
  236. package/dist/menu-C4mb1XXA.cjs.map +0 -1
  237. package/dist/menu-n_bI-TFp.js.map +0 -1
  238. package/dist/option-CxhioQ_d.js +0 -40
  239. package/dist/option-CxhioQ_d.js.map +0 -1
  240. package/dist/option-lA0IV4VJ.cjs +0 -14
  241. package/dist/option-lA0IV4VJ.cjs.map +0 -1
  242. package/dist/scroll-B-tqDDOP.js.map +0 -1
  243. package/dist/scroll-B7q9TYhV.cjs +0 -33
  244. package/dist/scroll-B7q9TYhV.cjs.map +0 -1
  245. package/dist/select-DAQdBUSl.cjs +0 -46
  246. package/dist/select-DAQdBUSl.cjs.map +0 -1
  247. package/dist/select-DUctHAIZ.js +0 -99
  248. package/dist/select-DUctHAIZ.js.map +0 -1
@@ -0,0 +1,72 @@
1
+ "use strict";require("rxjs"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const u=require("./litElement.mixin-CYwiYZyZ.cjs");require("./tailwind.mixin-BmIP1Qzo.cjs");const m=require("lit"),o=require("lit/decorators.js"),h=require("lit/directives/if-defined.js"),a=require("moment");var p=Object.defineProperty,y=Object.getOwnPropertyDescriptor,i=(t,e,s,n)=>{for(var c,d=n>1?void 0:n?y(e,s):e,l=t.length-1;l>=0;l--)(c=t[l])&&(d=(n?c(e,s,d):c(d))||d);return n&&d&&p(e,s,d),d};let r=class extends u.$LitElement(){constructor(){super(...arguments),this.type="date",this.selectedDateRange="Today"}connectedCallback(){super.connectedCallback(),this.initPresetRanges(),this.updateSelectedDateRange()}updated(t){t.has("type")&&(this.initPresetRanges(),this.updateSelectedDateRange())}getDateFormat(){return this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm"}getDisplayFormat(){return this.type==="date"?"MMM DD, YYYY":"MMM DD, YYYY hh:mm A"}initPresetRanges(){const t=this.getDateFormat();this.presetRanges=[{label:"Yesterday",range:{dateFrom:a().subtract(1,"days").startOf("day").format(t),dateTo:a().subtract(1,"days").endOf("day").format(t)},step:"day"},{label:"Today",range:{dateFrom:a().startOf("day").format(t),dateTo:a().endOf("day").format(t)},step:"day"},{label:"Tomorrow",range:{dateFrom:a().add(1,"days").startOf("day").format(t),dateTo:a().add(1,"days").endOf("day").format(t)},step:"day"},{label:"This Week",range:{dateFrom:a().startOf("isoWeek").format(t),dateTo:a().endOf("isoWeek").format(t)},step:"week"},{label:"Last Week",range:{dateFrom:a().subtract(1,"weeks").startOf("isoWeek").format(t),dateTo:a().subtract(1,"weeks").endOf("isoWeek").format(t)},step:"week"},{label:"This Month",range:{dateFrom:a().startOf("month").format(t),dateTo:a().endOf("month").format(t)},step:"month"}]}updateSelectedDateRange(){const t=this.presetRanges.find(e=>e.range.dateFrom===this.dateFrom.value&&e.range.dateTo===this.dateTo.value);if(t)this.selectedDateRange=t.label;else{const e=a(this.dateFrom.value).format(this.getDisplayFormat()),s=a(this.dateTo.value).format(this.getDisplayFormat());this.selectedDateRange=`${e} - ${s}`}}setDateRange(t,e){this.dateFrom.value=t,this.dateTo.value=e,this.dispatchEvent(new CustomEvent("change",{detail:{dateFrom:t,dateTo:e},bubbles:!0,composed:!0})),this.requestUpdate()}handlePresetChange(t){const e=this.presetRanges.find(c=>c.label===t);if(!e)return;const{dateFrom:s,dateTo:n}=e.range;this.setDateRange(s,n),this.selectedDateRange=t,this.schmancyMenu.open=!1}handleDateRangeChange(){this.setDateRange(this.dateFrom.value,this.dateTo.value),this.updateSelectedDateRange(),this.schmancyMenu.open=!1}shiftDateRange(t){const e=this.getDateFormat(),s=a(this.dateTo.value).diff(a(this.dateFrom.value),"days")||1,n=a(this.dateFrom.value).add(t*s,"days").format(e),c=a(this.dateTo.value).add(t*s,"days").format(e);this.setDateRange(n,c),this.updateSelectedDateRange()}render(){var t;return m.html`
2
+ <!-- schmancy-menu typically provides a slot="button" for the trigger,
3
+ and then projects the menu items inside. -->
4
+ <schmancy-menu class="z-100 w-max" role="menu" aria-label="Date range presets and custom input">
5
+ <!-- The toggle/trigger slot -->
6
+ <schmancy-grid slot="button" align="center" cols="auto 1fr auto">
7
+ <schmancy-icon-button
8
+ type="button"
9
+ aria-label="Shift date range backward"
10
+ @click=${e=>{e.preventDefault(),this.shiftDateRange(-1)}}
11
+ >
12
+ arrow_left
13
+ </schmancy-icon-button>
14
+
15
+ <schmancy-button
16
+ class="w-max"
17
+ variant="outlined"
18
+ type="button"
19
+ aria-haspopup="menu"
20
+ .ariaExpanded=${String(((t=this.schmancyMenu)==null?void 0:t.open)||!1)}
21
+ >
22
+ ${this.selectedDateRange||"Date range"}
23
+ </schmancy-button>
24
+
25
+ <schmancy-icon-button
26
+ type="button"
27
+ aria-label="Shift date range forward"
28
+ @click=${e=>{e.preventDefault(),this.shiftDateRange(1)}}
29
+ >
30
+ arrow_right
31
+ </schmancy-icon-button>
32
+ </schmancy-grid>
33
+
34
+ <!-- The menu surface: presets + manual date selection -->
35
+ ${this.presetRanges.map(e=>m.html`
36
+ <schmancy-menu-item role="menuitem" class="w-full" @click=${()=>this.handlePresetChange(e.label)}>
37
+ <schmancy-grid class="w-full" align="center" cols="auto 1fr auto"> ${e.label} </schmancy-grid>
38
+ </schmancy-menu-item>
39
+ `)}
40
+
41
+ <!-- Manual date range inputs + "Apply" button -->
42
+ <schmancy-grid gap="sm" flow="row" class="p-4">
43
+ <schmancy-input
44
+ id="checkin"
45
+ .type=${this.type}
46
+ .label=${this.dateFrom.label}
47
+ .value=${this.dateFrom.value}
48
+ min=${h.ifDefined(this.minDate)}
49
+ @change=${e=>{e.preventDefault(),e.stopPropagation();const s=this.getDateFormat(),n=a(e.detail.value,s).format(s);this.dateFrom.value=n,this.checkOutInput.setAttribute("min",n)}}
50
+ ></schmancy-input>
51
+
52
+ <schmancy-input
53
+ id="checkout"
54
+ .type=${this.type}
55
+ .label=${this.dateTo.label}
56
+ .value=${this.dateTo.value}
57
+ min=${h.ifDefined(this.dateFrom.value)}
58
+ max=${h.ifDefined(this.maxDate)}
59
+ @change=${e=>{e.preventDefault(),e.stopPropagation();const s=this.getDateFormat(),n=a(e.detail.value,s).format(s);this.dateTo.value=n}}
60
+ ></schmancy-input>
61
+
62
+ <schmancy-button
63
+ type="button"
64
+ variant="outlined"
65
+ @click=${e=>{e.preventDefault(),e.stopPropagation(),this.handleDateRangeChange()}}
66
+ >
67
+ Apply
68
+ </schmancy-button>
69
+ </schmancy-grid>
70
+ </schmancy-menu>
71
+ `}};i([o.property({type:String})],r.prototype,"type",2),i([o.property({type:Object})],r.prototype,"dateFrom",2),i([o.property({type:Object})],r.prototype,"dateTo",2),i([o.property({type:String})],r.prototype,"minDate",2),i([o.property({type:String})],r.prototype,"maxDate",2),i([o.query("#checkin")],r.prototype,"checkInInput",2),i([o.query("#checkout")],r.prototype,"checkOutInput",2),i([o.query("schmancy-menu")],r.prototype,"schmancyMenu",2),i([o.state()],r.prototype,"selectedDateRange",2),r=i([o.customElement("schmancy-date-range")],r);
72
+ //# sourceMappingURL=date-range-BjIt4Ocb.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-range-BjIt4Ocb.cjs","sources":["../src/date-range/date-range.ts"],"sourcesContent":["import { $LitElement } from '@mixins/index'\nimport { SchmancyInputChangeEvent } from '@schmancy/input'\nimport SchmancyMenu from '@schmancy/menu/menu'\nimport { html } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { ifDefined } from 'lit/directives/if-defined.js'\nimport moment from 'moment'\n\n/**\n * A date range selector that supports presets and manual date input.\n */\n@customElement('schmancy-date-range')\nexport default class SchmancyDateRange extends $LitElement() {\n\t// Either \"date\" or \"datetime-local\"\n\t@property({ type: String }) type: 'date' | 'datetime-local' = 'date'\n\n\t@property({ type: Object }) dateFrom!: { label: string; value: string }\n\t@property({ type: Object }) dateTo!: { label: string; value: string }\n\n\t// Optional min/max constraints\n\t@property({ type: String }) minDate?: string\n\t@property({ type: String }) maxDate?: string\n\n\t@query('#checkin') checkInInput!: HTMLInputElement\n\t@query('#checkout') checkOutInput!: HTMLInputElement\n\n\t// The <schmancy-menu> that displays presets + manual date inputs\n\t@query('schmancy-menu') schmancyMenu!: SchmancyMenu\n\n\t// Display text in the trigger button\n\t@state() selectedDateRange: string = 'Today'\n\n\t// Preset date range definitions\n\tpresetRanges!: Array<{\n\t\tlabel: string\n\t\trange: { dateFrom: string; dateTo: string }\n\t\tstep: moment.unitOfTime.DurationConstructor\n\t}>\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tthis.initPresetRanges()\n\t\tthis.updateSelectedDateRange()\n\t}\n\n\tupdated(changedProps: Map<string, unknown>) {\n\t\tif (changedProps.has('type')) {\n\t\t\t// Re-init presets if \"type\" changes from date -> datetime\n\t\t\tthis.initPresetRanges()\n\t\t\tthis.updateSelectedDateRange()\n\t\t}\n\t}\n\n\t/**\n\t * Format strings for the internal <input> and for display text.\n\t */\n\tprivate getDateFormat(): string {\n\t\treturn this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'\n\t}\n\tprivate getDisplayFormat(): string {\n\t\treturn this.type === 'date' ? 'MMM DD, YYYY' : 'MMM DD, YYYY hh:mm A'\n\t}\n\n\t/**\n\t * Build up a list of preset ranges (yesterday, today, etc.).\n\t */\n\tprivate initPresetRanges() {\n\t\tconst format = this.getDateFormat()\n\t\tthis.presetRanges = [\n\t\t\t{\n\t\t\t\tlabel: 'Yesterday',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().subtract(1, 'days').startOf('day').format(format),\n\t\t\t\t\tdateTo: moment().subtract(1, 'days').endOf('day').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'day',\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'Today',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().startOf('day').format(format),\n\t\t\t\t\tdateTo: moment().endOf('day').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'day',\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'Tomorrow',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().add(1, 'days').startOf('day').format(format),\n\t\t\t\t\tdateTo: moment().add(1, 'days').endOf('day').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'day',\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'This Week',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().startOf('isoWeek').format(format),\n\t\t\t\t\tdateTo: moment().endOf('isoWeek').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'week',\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'Last Week',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().subtract(1, 'weeks').startOf('isoWeek').format(format),\n\t\t\t\t\tdateTo: moment().subtract(1, 'weeks').endOf('isoWeek').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'week',\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'This Month',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().startOf('month').format(format),\n\t\t\t\t\tdateTo: moment().endOf('month').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'month',\n\t\t\t},\n\t\t\t// Add more if desired (e.g. \"Last Month,\" \"Custom,\" etc.)\n\t\t]\n\t}\n\n\t/**\n\t * Based on the current dateFrom/dateTo, see if it matches a preset.\n\t * Otherwise display a \"Custom\" range: \"Jan 01, 2023 - Jan 07, 2023\".\n\t */\n\tprivate updateSelectedDateRange() {\n\t\tconst preset = this.presetRanges.find(\n\t\t\tp => p.range.dateFrom === this.dateFrom.value && p.range.dateTo === this.dateTo.value,\n\t\t)\n\t\tif (preset) {\n\t\t\tthis.selectedDateRange = preset.label\n\t\t} else {\n\t\t\t// Construct a custom label\n\t\t\tconst fromStr = moment(this.dateFrom.value).format(this.getDisplayFormat())\n\t\t\tconst toStr = moment(this.dateTo.value).format(this.getDisplayFormat())\n\t\t\tthis.selectedDateRange = `${fromStr} - ${toStr}`\n\t\t}\n\t}\n\n\t/**\n\t * Update the internal date range and fire a 'change' event to notify external code.\n\t */\n\tprivate setDateRange(fromDate: string, toDate: string) {\n\t\tthis.dateFrom.value = fromDate\n\t\tthis.dateTo.value = toDate\n\n\t\tthis.dispatchEvent(\n\t\t\tnew CustomEvent<TSchmancDateRangePayload>('change', {\n\t\t\t\tdetail: { dateFrom: fromDate, dateTo: toDate },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true, // If you want it to pass shadow boundaries\n\t\t\t}),\n\t\t)\n\t\tthis.requestUpdate()\n\t}\n\n\t/**\n\t * Called when user selects a preset from the list.\n\t * Updates date range and closes the menu.\n\t */\n\tprivate handlePresetChange(label: string) {\n\t\tconst preset = this.presetRanges.find(range => range.label === label)\n\t\tif (!preset) return\n\t\tconst { dateFrom, dateTo } = preset.range\n\t\tthis.setDateRange(dateFrom, dateTo)\n\t\tthis.selectedDateRange = label\n\t\tthis.schmancyMenu.open = false\n\t}\n\n\t/**\n\t * Applies the date range from the inputs.\n\t * Closes the menu when done.\n\t */\n\tprivate handleDateRangeChange() {\n\t\tthis.setDateRange(this.dateFrom.value, this.dateTo.value)\n\t\tthis.updateSelectedDateRange()\n\t\tthis.schmancyMenu.open = false\n\t}\n\n\t/**\n\t * Shift the current date range forward or backward by the same number of days.\n\t * If the range is 7 days wide, shift 7 days, etc.\n\t */\n\tprivate shiftDateRange(factor: number) {\n\t\tconst format = this.getDateFormat()\n\t\tconst currentDiff = moment(this.dateTo.value).diff(moment(this.dateFrom.value), 'days') || 1\n\t\tconst newDateFrom = moment(this.dateFrom.value)\n\t\t\t.add(factor * currentDiff, 'days')\n\t\t\t.format(format)\n\t\tconst newDateTo = moment(this.dateTo.value)\n\t\t\t.add(factor * currentDiff, 'days')\n\t\t\t.format(format)\n\n\t\tthis.setDateRange(newDateFrom, newDateTo)\n\t\tthis.updateSelectedDateRange()\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<!-- schmancy-menu typically provides a slot=\"button\" for the trigger, \n and then projects the menu items inside. -->\n\t\t\t<schmancy-menu class=\"z-100 w-max\" role=\"menu\" aria-label=\"Date range presets and custom input\">\n\t\t\t\t<!-- The toggle/trigger slot -->\n\t\t\t\t<schmancy-grid slot=\"button\" align=\"center\" cols=\"auto 1fr auto\">\n\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\taria-label=\"Shift date range backward\"\n\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\tthis.shiftDateRange(-1)\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tarrow_left\n\t\t\t\t\t</schmancy-icon-button>\n\n\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\tclass=\"w-max\"\n\t\t\t\t\t\tvariant=\"outlined\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\taria-haspopup=\"menu\"\n\t\t\t\t\t\t.ariaExpanded=${String(this.schmancyMenu?.open || false)}\n\t\t\t\t\t>\n\t\t\t\t\t\t${this.selectedDateRange || 'Date range'}\n\t\t\t\t\t</schmancy-button>\n\n\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\taria-label=\"Shift date range forward\"\n\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\tthis.shiftDateRange(1)\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tarrow_right\n\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t</schmancy-grid>\n\n\t\t\t\t<!-- The menu surface: presets + manual date selection -->\n\t\t\t\t${this.presetRanges.map(\n\t\t\t\t\tpreset => html`\n\t\t\t\t\t\t<schmancy-menu-item role=\"menuitem\" class=\"w-full\" @click=${() => this.handlePresetChange(preset.label)}>\n\t\t\t\t\t\t\t<schmancy-grid class=\"w-full\" align=\"center\" cols=\"auto 1fr auto\"> ${preset.label} </schmancy-grid>\n\t\t\t\t\t\t</schmancy-menu-item>\n\t\t\t\t\t`,\n\t\t\t\t)}\n\n\t\t\t\t<!-- Manual date range inputs + \"Apply\" button -->\n\t\t\t\t<schmancy-grid gap=\"sm\" flow=\"row\" class=\"p-4\">\n\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\tid=\"checkin\"\n\t\t\t\t\t\t.type=${this.type}\n\t\t\t\t\t\t.label=${this.dateFrom.label}\n\t\t\t\t\t\t.value=${this.dateFrom.value}\n\t\t\t\t\t\tmin=${ifDefined(this.minDate)}\n\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\tconst fmt = this.getDateFormat()\n\t\t\t\t\t\t\tconst selectedDate = moment(event.detail.value, fmt).format(fmt)\n\t\t\t\t\t\t\tthis.dateFrom.value = selectedDate\n\t\t\t\t\t\t\t// Update the checkout input's min attribute:\n\t\t\t\t\t\t\tthis.checkOutInput.setAttribute('min', selectedDate)\n\t\t\t\t\t\t}}\n\t\t\t\t\t></schmancy-input>\n\n\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\tid=\"checkout\"\n\t\t\t\t\t\t.type=${this.type}\n\t\t\t\t\t\t.label=${this.dateTo.label}\n\t\t\t\t\t\t.value=${this.dateTo.value}\n\t\t\t\t\t\tmin=${ifDefined(this.dateFrom.value)}\n\t\t\t\t\t\tmax=${ifDefined(this.maxDate)}\n\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\tconst fmt = this.getDateFormat()\n\t\t\t\t\t\t\tconst selectedDate = moment(event.detail.value, fmt).format(fmt)\n\t\t\t\t\t\t\tthis.dateTo.value = selectedDate\n\t\t\t\t\t\t}}\n\t\t\t\t\t></schmancy-input>\n\n\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tvariant=\"outlined\"\n\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tApply\n\t\t\t\t\t</schmancy-button>\n\t\t\t\t</schmancy-grid>\n\t\t\t</schmancy-menu>\n\t\t`\n\t}\n}\n\n/**\n * The payload for a date range change event.\n */\nexport type TSchmancDateRangePayload = {\n\tdateFrom?: string\n\tdateTo?: string\n}\n\n/**\n * A custom event fired when the date range is updated.\n */\nexport type SchmancyDateRangeChangeEvent = CustomEvent<TSchmancDateRangePayload>\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-date-range': SchmancyDateRange\n\t}\n}\n"],"names":["SchmancyDateRange","$LitElement","super","arguments","this","type","selectedDateRange","connectedCallback","initPresetRanges","updateSelectedDateRange","changedProps","has","getDateFormat","getDisplayFormat","format","presetRanges","label","range","dateFrom","moment","subtract","startOf","dateTo","endOf","step","add","preset","find","p","value","fromStr","toStr","fromDate","toDate","dispatchEvent","CustomEvent","detail","bubbles","composed","requestUpdate","setDateRange","schmancyMenu","open","factor","currentDiff","diff","newDateFrom","newDateTo","render","html","e","preventDefault","shiftDateRange","String","map","handlePresetChange","ifDefined","minDate","event","stopPropagation","fmt","selectedDate","checkOutInput","setAttribute","maxDate","handleDateRangeChange","__decorateClass","property","prototype","Object","query","state","customElement"],"mappings":"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"}
@@ -0,0 +1,148 @@
1
+ import "rxjs";
2
+ import "lit/directives/class-map.js";
3
+ import "lit/directives/style-map.js";
4
+ import { $ as u } from "./litElement.mixin-DoKCdkhO.js";
5
+ import "./tailwind.mixin-CHPxMV8E.js";
6
+ import { html as p } from "lit";
7
+ import { property as d, query as h, state as y, customElement as g } from "lit/decorators.js";
8
+ import { ifDefined as l } from "lit/directives/if-defined.js";
9
+ import a from "moment";
10
+ var f = Object.defineProperty, D = Object.getOwnPropertyDescriptor, r = (t, e, s, n) => {
11
+ for (var i, c = n > 1 ? void 0 : n ? D(e, s) : e, m = t.length - 1; m >= 0; m--) (i = t[m]) && (c = (n ? i(e, s, c) : i(c)) || c);
12
+ return n && c && f(e, s, c), c;
13
+ };
14
+ let o = class extends u() {
15
+ constructor() {
16
+ super(...arguments), this.type = "date", this.selectedDateRange = "Today";
17
+ }
18
+ connectedCallback() {
19
+ super.connectedCallback(), this.initPresetRanges(), this.updateSelectedDateRange();
20
+ }
21
+ updated(t) {
22
+ t.has("type") && (this.initPresetRanges(), this.updateSelectedDateRange());
23
+ }
24
+ getDateFormat() {
25
+ return this.type === "date" ? "YYYY-MM-DD" : "YYYY-MM-DDTHH:mm";
26
+ }
27
+ getDisplayFormat() {
28
+ return this.type === "date" ? "MMM DD, YYYY" : "MMM DD, YYYY hh:mm A";
29
+ }
30
+ initPresetRanges() {
31
+ const t = this.getDateFormat();
32
+ this.presetRanges = [{ label: "Yesterday", range: { dateFrom: a().subtract(1, "days").startOf("day").format(t), dateTo: a().subtract(1, "days").endOf("day").format(t) }, step: "day" }, { label: "Today", range: { dateFrom: a().startOf("day").format(t), dateTo: a().endOf("day").format(t) }, step: "day" }, { label: "Tomorrow", range: { dateFrom: a().add(1, "days").startOf("day").format(t), dateTo: a().add(1, "days").endOf("day").format(t) }, step: "day" }, { label: "This Week", range: { dateFrom: a().startOf("isoWeek").format(t), dateTo: a().endOf("isoWeek").format(t) }, step: "week" }, { label: "Last Week", range: { dateFrom: a().subtract(1, "weeks").startOf("isoWeek").format(t), dateTo: a().subtract(1, "weeks").endOf("isoWeek").format(t) }, step: "week" }, { label: "This Month", range: { dateFrom: a().startOf("month").format(t), dateTo: a().endOf("month").format(t) }, step: "month" }];
33
+ }
34
+ updateSelectedDateRange() {
35
+ const t = this.presetRanges.find((e) => e.range.dateFrom === this.dateFrom.value && e.range.dateTo === this.dateTo.value);
36
+ if (t) this.selectedDateRange = t.label;
37
+ else {
38
+ const e = a(this.dateFrom.value).format(this.getDisplayFormat()), s = a(this.dateTo.value).format(this.getDisplayFormat());
39
+ this.selectedDateRange = `${e} - ${s}`;
40
+ }
41
+ }
42
+ setDateRange(t, e) {
43
+ this.dateFrom.value = t, this.dateTo.value = e, this.dispatchEvent(new CustomEvent("change", { detail: { dateFrom: t, dateTo: e }, bubbles: !0, composed: !0 })), this.requestUpdate();
44
+ }
45
+ handlePresetChange(t) {
46
+ const e = this.presetRanges.find((i) => i.label === t);
47
+ if (!e) return;
48
+ const { dateFrom: s, dateTo: n } = e.range;
49
+ this.setDateRange(s, n), this.selectedDateRange = t, this.schmancyMenu.open = !1;
50
+ }
51
+ handleDateRangeChange() {
52
+ this.setDateRange(this.dateFrom.value, this.dateTo.value), this.updateSelectedDateRange(), this.schmancyMenu.open = !1;
53
+ }
54
+ shiftDateRange(t) {
55
+ const e = this.getDateFormat(), s = a(this.dateTo.value).diff(a(this.dateFrom.value), "days") || 1, n = a(this.dateFrom.value).add(t * s, "days").format(e), i = a(this.dateTo.value).add(t * s, "days").format(e);
56
+ this.setDateRange(n, i), this.updateSelectedDateRange();
57
+ }
58
+ render() {
59
+ var t;
60
+ return p`
61
+ <!-- schmancy-menu typically provides a slot="button" for the trigger,
62
+ and then projects the menu items inside. -->
63
+ <schmancy-menu class="z-100 w-max" role="menu" aria-label="Date range presets and custom input">
64
+ <!-- The toggle/trigger slot -->
65
+ <schmancy-grid slot="button" align="center" cols="auto 1fr auto">
66
+ <schmancy-icon-button
67
+ type="button"
68
+ aria-label="Shift date range backward"
69
+ @click=${(e) => {
70
+ e.preventDefault(), this.shiftDateRange(-1);
71
+ }}
72
+ >
73
+ arrow_left
74
+ </schmancy-icon-button>
75
+
76
+ <schmancy-button
77
+ class="w-max"
78
+ variant="outlined"
79
+ type="button"
80
+ aria-haspopup="menu"
81
+ .ariaExpanded=${String(((t = this.schmancyMenu) == null ? void 0 : t.open) || !1)}
82
+ >
83
+ ${this.selectedDateRange || "Date range"}
84
+ </schmancy-button>
85
+
86
+ <schmancy-icon-button
87
+ type="button"
88
+ aria-label="Shift date range forward"
89
+ @click=${(e) => {
90
+ e.preventDefault(), this.shiftDateRange(1);
91
+ }}
92
+ >
93
+ arrow_right
94
+ </schmancy-icon-button>
95
+ </schmancy-grid>
96
+
97
+ <!-- The menu surface: presets + manual date selection -->
98
+ ${this.presetRanges.map((e) => p`
99
+ <schmancy-menu-item role="menuitem" class="w-full" @click=${() => this.handlePresetChange(e.label)}>
100
+ <schmancy-grid class="w-full" align="center" cols="auto 1fr auto"> ${e.label} </schmancy-grid>
101
+ </schmancy-menu-item>
102
+ `)}
103
+
104
+ <!-- Manual date range inputs + "Apply" button -->
105
+ <schmancy-grid gap="sm" flow="row" class="p-4">
106
+ <schmancy-input
107
+ id="checkin"
108
+ .type=${this.type}
109
+ .label=${this.dateFrom.label}
110
+ .value=${this.dateFrom.value}
111
+ min=${l(this.minDate)}
112
+ @change=${(e) => {
113
+ e.preventDefault(), e.stopPropagation();
114
+ const s = this.getDateFormat(), n = a(e.detail.value, s).format(s);
115
+ this.dateFrom.value = n, this.checkOutInput.setAttribute("min", n);
116
+ }}
117
+ ></schmancy-input>
118
+
119
+ <schmancy-input
120
+ id="checkout"
121
+ .type=${this.type}
122
+ .label=${this.dateTo.label}
123
+ .value=${this.dateTo.value}
124
+ min=${l(this.dateFrom.value)}
125
+ max=${l(this.maxDate)}
126
+ @change=${(e) => {
127
+ e.preventDefault(), e.stopPropagation();
128
+ const s = this.getDateFormat(), n = a(e.detail.value, s).format(s);
129
+ this.dateTo.value = n;
130
+ }}
131
+ ></schmancy-input>
132
+
133
+ <schmancy-button
134
+ type="button"
135
+ variant="outlined"
136
+ @click=${(e) => {
137
+ e.preventDefault(), e.stopPropagation(), this.handleDateRangeChange();
138
+ }}
139
+ >
140
+ Apply
141
+ </schmancy-button>
142
+ </schmancy-grid>
143
+ </schmancy-menu>
144
+ `;
145
+ }
146
+ };
147
+ r([d({ type: String })], o.prototype, "type", 2), r([d({ type: Object })], o.prototype, "dateFrom", 2), r([d({ type: Object })], o.prototype, "dateTo", 2), r([d({ type: String })], o.prototype, "minDate", 2), r([d({ type: String })], o.prototype, "maxDate", 2), r([h("#checkin")], o.prototype, "checkInInput", 2), r([h("#checkout")], o.prototype, "checkOutInput", 2), r([h("schmancy-menu")], o.prototype, "schmancyMenu", 2), r([y()], o.prototype, "selectedDateRange", 2), o = r([g("schmancy-date-range")], o);
148
+ //# sourceMappingURL=date-range-D_zg5C9O.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-range-D_zg5C9O.js","sources":["../src/date-range/date-range.ts"],"sourcesContent":["import { $LitElement } from '@mixins/index'\nimport { SchmancyInputChangeEvent } from '@schmancy/input'\nimport SchmancyMenu from '@schmancy/menu/menu'\nimport { html } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { ifDefined } from 'lit/directives/if-defined.js'\nimport moment from 'moment'\n\n/**\n * A date range selector that supports presets and manual date input.\n */\n@customElement('schmancy-date-range')\nexport default class SchmancyDateRange extends $LitElement() {\n\t// Either \"date\" or \"datetime-local\"\n\t@property({ type: String }) type: 'date' | 'datetime-local' = 'date'\n\n\t@property({ type: Object }) dateFrom!: { label: string; value: string }\n\t@property({ type: Object }) dateTo!: { label: string; value: string }\n\n\t// Optional min/max constraints\n\t@property({ type: String }) minDate?: string\n\t@property({ type: String }) maxDate?: string\n\n\t@query('#checkin') checkInInput!: HTMLInputElement\n\t@query('#checkout') checkOutInput!: HTMLInputElement\n\n\t// The <schmancy-menu> that displays presets + manual date inputs\n\t@query('schmancy-menu') schmancyMenu!: SchmancyMenu\n\n\t// Display text in the trigger button\n\t@state() selectedDateRange: string = 'Today'\n\n\t// Preset date range definitions\n\tpresetRanges!: Array<{\n\t\tlabel: string\n\t\trange: { dateFrom: string; dateTo: string }\n\t\tstep: moment.unitOfTime.DurationConstructor\n\t}>\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tthis.initPresetRanges()\n\t\tthis.updateSelectedDateRange()\n\t}\n\n\tupdated(changedProps: Map<string, unknown>) {\n\t\tif (changedProps.has('type')) {\n\t\t\t// Re-init presets if \"type\" changes from date -> datetime\n\t\t\tthis.initPresetRanges()\n\t\t\tthis.updateSelectedDateRange()\n\t\t}\n\t}\n\n\t/**\n\t * Format strings for the internal <input> and for display text.\n\t */\n\tprivate getDateFormat(): string {\n\t\treturn this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'\n\t}\n\tprivate getDisplayFormat(): string {\n\t\treturn this.type === 'date' ? 'MMM DD, YYYY' : 'MMM DD, YYYY hh:mm A'\n\t}\n\n\t/**\n\t * Build up a list of preset ranges (yesterday, today, etc.).\n\t */\n\tprivate initPresetRanges() {\n\t\tconst format = this.getDateFormat()\n\t\tthis.presetRanges = [\n\t\t\t{\n\t\t\t\tlabel: 'Yesterday',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().subtract(1, 'days').startOf('day').format(format),\n\t\t\t\t\tdateTo: moment().subtract(1, 'days').endOf('day').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'day',\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'Today',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().startOf('day').format(format),\n\t\t\t\t\tdateTo: moment().endOf('day').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'day',\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'Tomorrow',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().add(1, 'days').startOf('day').format(format),\n\t\t\t\t\tdateTo: moment().add(1, 'days').endOf('day').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'day',\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'This Week',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().startOf('isoWeek').format(format),\n\t\t\t\t\tdateTo: moment().endOf('isoWeek').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'week',\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'Last Week',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().subtract(1, 'weeks').startOf('isoWeek').format(format),\n\t\t\t\t\tdateTo: moment().subtract(1, 'weeks').endOf('isoWeek').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'week',\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: 'This Month',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment().startOf('month').format(format),\n\t\t\t\t\tdateTo: moment().endOf('month').format(format),\n\t\t\t\t},\n\t\t\t\tstep: 'month',\n\t\t\t},\n\t\t\t// Add more if desired (e.g. \"Last Month,\" \"Custom,\" etc.)\n\t\t]\n\t}\n\n\t/**\n\t * Based on the current dateFrom/dateTo, see if it matches a preset.\n\t * Otherwise display a \"Custom\" range: \"Jan 01, 2023 - Jan 07, 2023\".\n\t */\n\tprivate updateSelectedDateRange() {\n\t\tconst preset = this.presetRanges.find(\n\t\t\tp => p.range.dateFrom === this.dateFrom.value && p.range.dateTo === this.dateTo.value,\n\t\t)\n\t\tif (preset) {\n\t\t\tthis.selectedDateRange = preset.label\n\t\t} else {\n\t\t\t// Construct a custom label\n\t\t\tconst fromStr = moment(this.dateFrom.value).format(this.getDisplayFormat())\n\t\t\tconst toStr = moment(this.dateTo.value).format(this.getDisplayFormat())\n\t\t\tthis.selectedDateRange = `${fromStr} - ${toStr}`\n\t\t}\n\t}\n\n\t/**\n\t * Update the internal date range and fire a 'change' event to notify external code.\n\t */\n\tprivate setDateRange(fromDate: string, toDate: string) {\n\t\tthis.dateFrom.value = fromDate\n\t\tthis.dateTo.value = toDate\n\n\t\tthis.dispatchEvent(\n\t\t\tnew CustomEvent<TSchmancDateRangePayload>('change', {\n\t\t\t\tdetail: { dateFrom: fromDate, dateTo: toDate },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true, // If you want it to pass shadow boundaries\n\t\t\t}),\n\t\t)\n\t\tthis.requestUpdate()\n\t}\n\n\t/**\n\t * Called when user selects a preset from the list.\n\t * Updates date range and closes the menu.\n\t */\n\tprivate handlePresetChange(label: string) {\n\t\tconst preset = this.presetRanges.find(range => range.label === label)\n\t\tif (!preset) return\n\t\tconst { dateFrom, dateTo } = preset.range\n\t\tthis.setDateRange(dateFrom, dateTo)\n\t\tthis.selectedDateRange = label\n\t\tthis.schmancyMenu.open = false\n\t}\n\n\t/**\n\t * Applies the date range from the inputs.\n\t * Closes the menu when done.\n\t */\n\tprivate handleDateRangeChange() {\n\t\tthis.setDateRange(this.dateFrom.value, this.dateTo.value)\n\t\tthis.updateSelectedDateRange()\n\t\tthis.schmancyMenu.open = false\n\t}\n\n\t/**\n\t * Shift the current date range forward or backward by the same number of days.\n\t * If the range is 7 days wide, shift 7 days, etc.\n\t */\n\tprivate shiftDateRange(factor: number) {\n\t\tconst format = this.getDateFormat()\n\t\tconst currentDiff = moment(this.dateTo.value).diff(moment(this.dateFrom.value), 'days') || 1\n\t\tconst newDateFrom = moment(this.dateFrom.value)\n\t\t\t.add(factor * currentDiff, 'days')\n\t\t\t.format(format)\n\t\tconst newDateTo = moment(this.dateTo.value)\n\t\t\t.add(factor * currentDiff, 'days')\n\t\t\t.format(format)\n\n\t\tthis.setDateRange(newDateFrom, newDateTo)\n\t\tthis.updateSelectedDateRange()\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<!-- schmancy-menu typically provides a slot=\"button\" for the trigger, \n and then projects the menu items inside. -->\n\t\t\t<schmancy-menu class=\"z-100 w-max\" role=\"menu\" aria-label=\"Date range presets and custom input\">\n\t\t\t\t<!-- The toggle/trigger slot -->\n\t\t\t\t<schmancy-grid slot=\"button\" align=\"center\" cols=\"auto 1fr auto\">\n\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\taria-label=\"Shift date range backward\"\n\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\tthis.shiftDateRange(-1)\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tarrow_left\n\t\t\t\t\t</schmancy-icon-button>\n\n\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\tclass=\"w-max\"\n\t\t\t\t\t\tvariant=\"outlined\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\taria-haspopup=\"menu\"\n\t\t\t\t\t\t.ariaExpanded=${String(this.schmancyMenu?.open || false)}\n\t\t\t\t\t>\n\t\t\t\t\t\t${this.selectedDateRange || 'Date range'}\n\t\t\t\t\t</schmancy-button>\n\n\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\taria-label=\"Shift date range forward\"\n\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\tthis.shiftDateRange(1)\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tarrow_right\n\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t</schmancy-grid>\n\n\t\t\t\t<!-- The menu surface: presets + manual date selection -->\n\t\t\t\t${this.presetRanges.map(\n\t\t\t\t\tpreset => html`\n\t\t\t\t\t\t<schmancy-menu-item role=\"menuitem\" class=\"w-full\" @click=${() => this.handlePresetChange(preset.label)}>\n\t\t\t\t\t\t\t<schmancy-grid class=\"w-full\" align=\"center\" cols=\"auto 1fr auto\"> ${preset.label} </schmancy-grid>\n\t\t\t\t\t\t</schmancy-menu-item>\n\t\t\t\t\t`,\n\t\t\t\t)}\n\n\t\t\t\t<!-- Manual date range inputs + \"Apply\" button -->\n\t\t\t\t<schmancy-grid gap=\"sm\" flow=\"row\" class=\"p-4\">\n\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\tid=\"checkin\"\n\t\t\t\t\t\t.type=${this.type}\n\t\t\t\t\t\t.label=${this.dateFrom.label}\n\t\t\t\t\t\t.value=${this.dateFrom.value}\n\t\t\t\t\t\tmin=${ifDefined(this.minDate)}\n\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\tconst fmt = this.getDateFormat()\n\t\t\t\t\t\t\tconst selectedDate = moment(event.detail.value, fmt).format(fmt)\n\t\t\t\t\t\t\tthis.dateFrom.value = selectedDate\n\t\t\t\t\t\t\t// Update the checkout input's min attribute:\n\t\t\t\t\t\t\tthis.checkOutInput.setAttribute('min', selectedDate)\n\t\t\t\t\t\t}}\n\t\t\t\t\t></schmancy-input>\n\n\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\tid=\"checkout\"\n\t\t\t\t\t\t.type=${this.type}\n\t\t\t\t\t\t.label=${this.dateTo.label}\n\t\t\t\t\t\t.value=${this.dateTo.value}\n\t\t\t\t\t\tmin=${ifDefined(this.dateFrom.value)}\n\t\t\t\t\t\tmax=${ifDefined(this.maxDate)}\n\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\tconst fmt = this.getDateFormat()\n\t\t\t\t\t\t\tconst selectedDate = moment(event.detail.value, fmt).format(fmt)\n\t\t\t\t\t\t\tthis.dateTo.value = selectedDate\n\t\t\t\t\t\t}}\n\t\t\t\t\t></schmancy-input>\n\n\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tvariant=\"outlined\"\n\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tApply\n\t\t\t\t\t</schmancy-button>\n\t\t\t\t</schmancy-grid>\n\t\t\t</schmancy-menu>\n\t\t`\n\t}\n}\n\n/**\n * The payload for a date range change event.\n */\nexport type TSchmancDateRangePayload = {\n\tdateFrom?: string\n\tdateTo?: string\n}\n\n/**\n * A custom event fired when the date range is updated.\n */\nexport type SchmancyDateRangeChangeEvent = CustomEvent<TSchmancDateRangePayload>\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-date-range': SchmancyDateRange\n\t}\n}\n"],"names":["SchmancyDateRange","$LitElement","constructor","super","arguments","this","type","selectedDateRange","connectedCallback","initPresetRanges","updateSelectedDateRange","changedProps","has","format","getDateFormat","presetRanges","label","range","dateFrom","moment","subtract","startOf","dateTo","endOf","step","add","preset","find","p","value","fromStr","getDisplayFormat","toStr","fromDate","toDate","dispatchEvent","CustomEvent","detail","bubbles","composed","requestUpdate","setDateRange","schmancyMenu","open","handleDateRangeChange","factor","currentDiff","diff","newDateFrom","newDateTo","html","e","preventDefault","shiftDateRange","String","map","handlePresetChange","ifDefined","minDate","event","stopPropagation","fmt","selectedDate","checkOutInput","setAttribute","maxDate","__decorateClass","property","prototype","Object","query","state","customElement"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";require("./date-range-DTUXT0Lf.cjs");
1
+ "use strict";require("./date-range-BjIt4Ocb.cjs");
2
2
  //# sourceMappingURL=date-range.cjs.map
@@ -1,2 +1,2 @@
1
- import "./date-range-Cvdpxn2J.js";
1
+ import "./date-range-D_zg5C9O.js";
2
2
  //# sourceMappingURL=date-range.js.map
@@ -1,4 +1,4 @@
1
- "use strict";const E=require("lit/html.js"),m=require("lit/directive.js"),N=require("lit/async-directive.js"),k=require("./provide-_VUNOf1R.cjs"),x=require("./consume-Di0U0iBU.cjs"),q=require("./litElement.mixin-d9rhslEw.cjs"),v=require("lit"),c=require("lit/decorators.js"),P=require("lit/directives/cache.js"),K=require("rxjs"),$=require("rxjs/operators"),j=new WeakMap;let b=0;const y=new Map,S=new WeakSet,A=()=>new Promise(n=>requestAnimationFrame(n)),L=[{transform:"translateY(100%) scale(0)",opacity:0}],T=[{transform:"translateY(-100%) scale(0)",opacity:0}],M=[{opacity:0},{opacity:1}],C=(n,t)=>{const e=n-t;return e===0?void 0:e},w=(n,t)=>{const e=n/t;return e===1?void 0:e},f={left:(n,t)=>{const e=C(n,t);return{value:e,transform:e==null||isNaN(e)?void 0:`translateX(${e}px)`}},top:(n,t)=>{const e=C(n,t);return{value:e,transform:e==null||isNaN(e)?void 0:`translateY(${e}px)`}},width:(n,t)=>{let e;t===0&&(t=1,e={width:"1px"});const i=w(n,t);return{value:i,overrideFrom:e,transform:i==null||isNaN(i)?void 0:`scaleX(${i})`}},height:(n,t)=>{let e;t===0&&(t=1,e={height:"1px"});const i=w(n,t);return{value:i,overrideFrom:e,transform:i==null||isNaN(i)?void 0:`scaleY(${i})`}}},R={duration:333,easing:"ease-in-out"},B=["left","top","width","height","opacity","color","background"],D=new WeakMap;class I extends N.AsyncDirective{constructor(t){if(super(t),this.t=!1,this.i=null,this.o=null,this.h=!0,this.shouldLog=!1,t.type===m.PartType.CHILD)throw Error("The `animate` directive must be used in attribute position.");this.createFinished()}createFinished(){var t;(t=this.resolveFinished)==null||t.call(this),this.finished=new Promise(e=>{this.l=e})}async resolveFinished(){var t;(t=this.l)==null||t.call(this),this.l=void 0}render(t){return E.nothing}getController(){return j.get(this.u)}isDisabled(){var t;return this.options.disabled||((t=this.getController())==null?void 0:t.disabled)}update(t,[e]){var s;const i=this.u===void 0;return i&&(this.u=(s=t.options)==null?void 0:s.host,this.u.addController(this),this.u.updateComplete.then(o=>this.t=!0),this.element=t.element,D.set(this.element,this)),this.optionsOrCallback=e,(i||typeof e!="function")&&this.p(e),this.render(e)}p(t){t=t??{};const e=this.getController();e!==void 0&&((t={...e.defaultOptions,...t}).keyframeOptions={...e.defaultOptions.keyframeOptions,...t.keyframeOptions}),t.properties??(t.properties=B),this.options=t}m(){const t={},e=this.element.getBoundingClientRect(),i=getComputedStyle(this.element);return this.options.properties.forEach(s=>{const o=e[s]??(f[s]?void 0:i[s]),r=Number(o);t[s]=isNaN(r)?o+"":r}),t}v(){let t,e=!0;return this.options.guard&&(t=this.options.guard(),e=((i,s)=>{if(Array.isArray(i)){if(Array.isArray(s)&&s.length===i.length&&i.every((o,r)=>o===s[r]))return!1}else if(s===i)return!1;return!0})(t,this._)),this.h=this.t&&!this.isDisabled()&&!this.isAnimating()&&e&&this.element.isConnected,this.h&&(this._=Array.isArray(t)?Array.from(t):t),this.h}hostUpdate(){typeof this.optionsOrCallback=="function"&&this.p(this.optionsOrCallback()),this.v()&&(this.A=this.m(),this.i=this.i??this.element.parentNode,this.o=this.element.nextSibling)}async hostUpdated(){if(!this.h||!this.element.isConnected||this.options.skipInitial&&!this.isHostRendered)return;let t;this.prepare(),await A;const e=this.O(),i=this.j(this.options.keyframeOptions,e),s=this.m();if(this.A!==void 0){const{from:o,to:r}=this.N(this.A,s,e);this.log("measured",[this.A,s,o,r]),t=this.calculateKeyframes(o,r)}else{const o=y.get(this.options.inId);if(o){y.delete(this.options.inId);const{from:r,to:h}=this.N(o,s,e);t=this.calculateKeyframes(r,h),t=this.options.in?[{...this.options.in[0],...t[0]},...this.options.in.slice(1),t[1]]:t,b++,t.forEach(a=>a.zIndex=b)}else this.options.in&&(t=[...this.options.in,{}])}this.animate(t,i)}resetStyles(){this.P!==void 0&&(this.element.setAttribute("style",this.P??""),this.P=void 0)}commitStyles(){var t,e;this.P=this.element.getAttribute("style"),(t=this.webAnimation)==null||t.commitStyles(),(e=this.webAnimation)==null||e.cancel()}reconnected(){}async disconnected(){var e;if(!this.h||(this.options.id!==void 0&&y.set(this.options.id,this.A),this.options.out===void 0))return;if(this.prepare(),await A(),(e=this.i)==null?void 0:e.isConnected){const i=this.o&&this.o.parentNode===this.i?this.o:null;if(this.i.insertBefore(this.element,i),this.options.stabilizeOut){const s=this.m();this.log("stabilizing out");const o=this.A.left-s.left,r=this.A.top-s.top;getComputedStyle(this.element).position!=="static"||o===0&&r===0||(this.element.style.position="relative"),o!==0&&(this.element.style.left=o+"px"),r!==0&&(this.element.style.top=r+"px")}}const t=this.j(this.options.keyframeOptions);await this.animate(this.options.out,t),this.element.remove()}prepare(){this.createFinished()}start(){var t,e;(e=(t=this.options).onStart)==null||e.call(t,this)}didFinish(t){var e,i;t&&((i=(e=this.options).onComplete)==null||i.call(e,this)),this.A=void 0,this.animatingProperties=void 0,this.frames=void 0,this.resolveFinished()}O(){const t=[];for(let e=this.element.parentNode;e;e=e==null?void 0:e.parentNode){const i=D.get(e);i&&!i.isDisabled()&&i&&t.push(i)}return t}get isHostRendered(){const t=S.has(this.u);return t||this.u.updateComplete.then(()=>{S.add(this.u)}),t}j(t,e=this.O()){const i={...R};return e.forEach(s=>Object.assign(i,s.options.keyframeOptions)),Object.assign(i,t),i}N(t,e,i){t={...t},e={...e};const s=i.map(h=>h.animatingProperties).filter(h=>h!==void 0);let o=1,r=1;return s.length>0&&(s.forEach(h=>{h.width&&(o/=h.width),h.height&&(r/=h.height)}),t.left!==void 0&&e.left!==void 0&&(t.left=o*t.left,e.left=o*e.left),t.top!==void 0&&e.top!==void 0&&(t.top=r*t.top,e.top=r*e.top)),{from:t,to:e}}calculateKeyframes(t,e,i=!1){const s={},o={};let r=!1;const h={};for(const a in e){const d=t[a],p=e[a];if(a in f){const F=f[a];if(d===void 0||p===void 0)continue;const u=F(d,p);u.transform!==void 0&&(h[a]=u.value,r=!0,s.transform=`${s.transform??""} ${u.transform}`,u.overrideFrom!==void 0&&Object.assign(s,u.overrideFrom))}else d!==p&&d!==void 0&&p!==void 0&&(r=!0,s[a]=d,o[a]=p)}return s.transformOrigin=o.transformOrigin=i?"center center":"top left",this.animatingProperties=h,r?[s,o]:void 0}async animate(t,e=this.options.keyframeOptions){this.start(),this.frames=t;let i=!1;if(!this.isAnimating()&&!this.isDisabled()&&(this.options.onFrames&&(this.frames=t=this.options.onFrames(this),this.log("modified frames",t)),t!==void 0)){this.log("animate",[t,e]),i=!0,this.webAnimation=this.element.animate(t,e);const s=this.getController();s==null||s.add(this);try{await this.webAnimation.finished}catch{}s==null||s.remove(this)}return this.didFinish(i),i}isAnimating(){var t,e;return((t=this.webAnimation)==null?void 0:t.playState)==="running"||((e=this.webAnimation)==null?void 0:e.pending)}log(t,e){this.shouldLog&&this.isDisabled()}}const H=m.directive(I),U=["top","right","bottom","left"];class Y extends N.AsyncDirective{constructor(t){if(super(t),t.type!==m.PartType.ELEMENT)throw Error("The `position` directive must be used in attribute position.")}render(t,e){return E.nothing}update(t,[e,i]){var s;return this.u===void 0&&(this.u=(s=t.options)==null?void 0:s.host,this.u.addController(this)),this.S=t.element,this.C=e,this.F=i??["left","top","width","height"],this.render(e,i)}hostUpdated(){this.$()}$(){var o,r;const t=typeof this.C=="function"?this.C():(o=this.C)==null?void 0:o.value,e=t.offsetParent;if(t===void 0||!e)return;const i=t.getBoundingClientRect(),s=e.getBoundingClientRect();(r=this.F)==null||r.forEach(h=>{const a=U.includes(h)?i[h]-s[h]:i[h];this.S.style[h]=a+"px"})}}function O(n){let t=2166136261;for(let e=0;e<n.length;e++)t^=n.charCodeAt(e),t=16777619*t>>>0;return t.toString(16)}m.directive(Y);var z=Object.defineProperty,W=Object.getOwnPropertyDescriptor,l=(n,t,e,i)=>{for(var s,o=i>1?void 0:i?W(t,e):t,r=n.length-1;r>=0;r--)(s=n[r])&&(o=(i?s(t,e,o):s(o))||o);return i&&o&&z(t,e,o),o};const g=k.n("delay-context");exports.SchmancyDelay=class extends q.$LitElement(){constructor(){super(...arguments),this.delay=0,this.motion="flyBelow",this.rendered=!1,this.parentDelay=0,this.effectiveDelay=0,this.once=!0,this.sessionKey=""}firstUpdated(){this.observeSlotChanges(),this.updateRenderState()}disconnectedCallback(){var n;super.disconnectedCallback(),(n=this.mutationObserver)==null||n.disconnect()}observeSlotChanges(){var t;const n=(t=this.shadowRoot)==null?void 0:t.querySelector("slot");n&&(this.mutationObserver=new MutationObserver(()=>{this.sessionKey=this.generateSessionKey()}),this.mutationObserver.observe(n,{childList:!0,subtree:!0}))}getTotalSiblingDelay(n){if(!(n&&n instanceof HTMLElement))return 0;let t=0,e=n.previousElementSibling;for(;e;)e instanceof exports.SchmancyDelay&&(t+=e.delay),e=e.previousElementSibling;return n.parentElement&&(t+=this.getTotalSiblingDelay(n.parentElement)),t}updateRenderState(){if(this.sessionKey=this.generateSessionKey(),this.once&&sessionStorage.getItem(this.sessionKey)==="true")return void(this.rendered=!0);const n=this.getTotalSiblingDelay(this);this.effectiveDelay=this.delay+this.parentDelay+n,K.timer(this.effectiveDelay).pipe($.takeUntil(this.disconnecting)).subscribe(()=>{if(this.rendered=!0,this.once)try{sessionStorage.setItem(this.sessionKey,"true")}catch{}})}generateSessionKey(){const n=this.assignedElements.map(t=>t.outerHTML).join("");return this.once?O(n):""}get motionLit(){return this.motion==="flyBelow"?L:this.motion==="flyAbove"?T:M}render(){return P.cache(this.rendered?v.html`<div
1
+ "use strict";const E=require("lit/html.js"),m=require("lit/directive.js"),N=require("lit/async-directive.js"),k=require("./provide-_VUNOf1R.cjs"),x=require("./consume-Di0U0iBU.cjs"),q=require("./litElement.mixin-CYwiYZyZ.cjs"),v=require("lit"),c=require("lit/decorators.js"),P=require("lit/directives/cache.js"),K=require("rxjs"),$=require("rxjs/operators"),j=new WeakMap;let b=0;const y=new Map,S=new WeakSet,A=()=>new Promise(n=>requestAnimationFrame(n)),L=[{transform:"translateY(100%) scale(0)",opacity:0}],T=[{transform:"translateY(-100%) scale(0)",opacity:0}],M=[{opacity:0},{opacity:1}],C=(n,t)=>{const e=n-t;return e===0?void 0:e},w=(n,t)=>{const e=n/t;return e===1?void 0:e},f={left:(n,t)=>{const e=C(n,t);return{value:e,transform:e==null||isNaN(e)?void 0:`translateX(${e}px)`}},top:(n,t)=>{const e=C(n,t);return{value:e,transform:e==null||isNaN(e)?void 0:`translateY(${e}px)`}},width:(n,t)=>{let e;t===0&&(t=1,e={width:"1px"});const i=w(n,t);return{value:i,overrideFrom:e,transform:i==null||isNaN(i)?void 0:`scaleX(${i})`}},height:(n,t)=>{let e;t===0&&(t=1,e={height:"1px"});const i=w(n,t);return{value:i,overrideFrom:e,transform:i==null||isNaN(i)?void 0:`scaleY(${i})`}}},R={duration:333,easing:"ease-in-out"},B=["left","top","width","height","opacity","color","background"],D=new WeakMap;class I extends N.AsyncDirective{constructor(t){if(super(t),this.t=!1,this.i=null,this.o=null,this.h=!0,this.shouldLog=!1,t.type===m.PartType.CHILD)throw Error("The `animate` directive must be used in attribute position.");this.createFinished()}createFinished(){var t;(t=this.resolveFinished)==null||t.call(this),this.finished=new Promise(e=>{this.l=e})}async resolveFinished(){var t;(t=this.l)==null||t.call(this),this.l=void 0}render(t){return E.nothing}getController(){return j.get(this.u)}isDisabled(){var t;return this.options.disabled||((t=this.getController())==null?void 0:t.disabled)}update(t,[e]){var s;const i=this.u===void 0;return i&&(this.u=(s=t.options)==null?void 0:s.host,this.u.addController(this),this.u.updateComplete.then(o=>this.t=!0),this.element=t.element,D.set(this.element,this)),this.optionsOrCallback=e,(i||typeof e!="function")&&this.p(e),this.render(e)}p(t){t=t??{};const e=this.getController();e!==void 0&&((t={...e.defaultOptions,...t}).keyframeOptions={...e.defaultOptions.keyframeOptions,...t.keyframeOptions}),t.properties??(t.properties=B),this.options=t}m(){const t={},e=this.element.getBoundingClientRect(),i=getComputedStyle(this.element);return this.options.properties.forEach(s=>{const o=e[s]??(f[s]?void 0:i[s]),r=Number(o);t[s]=isNaN(r)?o+"":r}),t}v(){let t,e=!0;return this.options.guard&&(t=this.options.guard(),e=((i,s)=>{if(Array.isArray(i)){if(Array.isArray(s)&&s.length===i.length&&i.every((o,r)=>o===s[r]))return!1}else if(s===i)return!1;return!0})(t,this._)),this.h=this.t&&!this.isDisabled()&&!this.isAnimating()&&e&&this.element.isConnected,this.h&&(this._=Array.isArray(t)?Array.from(t):t),this.h}hostUpdate(){typeof this.optionsOrCallback=="function"&&this.p(this.optionsOrCallback()),this.v()&&(this.A=this.m(),this.i=this.i??this.element.parentNode,this.o=this.element.nextSibling)}async hostUpdated(){if(!this.h||!this.element.isConnected||this.options.skipInitial&&!this.isHostRendered)return;let t;this.prepare(),await A;const e=this.O(),i=this.j(this.options.keyframeOptions,e),s=this.m();if(this.A!==void 0){const{from:o,to:r}=this.N(this.A,s,e);this.log("measured",[this.A,s,o,r]),t=this.calculateKeyframes(o,r)}else{const o=y.get(this.options.inId);if(o){y.delete(this.options.inId);const{from:r,to:h}=this.N(o,s,e);t=this.calculateKeyframes(r,h),t=this.options.in?[{...this.options.in[0],...t[0]},...this.options.in.slice(1),t[1]]:t,b++,t.forEach(a=>a.zIndex=b)}else this.options.in&&(t=[...this.options.in,{}])}this.animate(t,i)}resetStyles(){this.P!==void 0&&(this.element.setAttribute("style",this.P??""),this.P=void 0)}commitStyles(){var t,e;this.P=this.element.getAttribute("style"),(t=this.webAnimation)==null||t.commitStyles(),(e=this.webAnimation)==null||e.cancel()}reconnected(){}async disconnected(){var e;if(!this.h||(this.options.id!==void 0&&y.set(this.options.id,this.A),this.options.out===void 0))return;if(this.prepare(),await A(),(e=this.i)==null?void 0:e.isConnected){const i=this.o&&this.o.parentNode===this.i?this.o:null;if(this.i.insertBefore(this.element,i),this.options.stabilizeOut){const s=this.m();this.log("stabilizing out");const o=this.A.left-s.left,r=this.A.top-s.top;getComputedStyle(this.element).position!=="static"||o===0&&r===0||(this.element.style.position="relative"),o!==0&&(this.element.style.left=o+"px"),r!==0&&(this.element.style.top=r+"px")}}const t=this.j(this.options.keyframeOptions);await this.animate(this.options.out,t),this.element.remove()}prepare(){this.createFinished()}start(){var t,e;(e=(t=this.options).onStart)==null||e.call(t,this)}didFinish(t){var e,i;t&&((i=(e=this.options).onComplete)==null||i.call(e,this)),this.A=void 0,this.animatingProperties=void 0,this.frames=void 0,this.resolveFinished()}O(){const t=[];for(let e=this.element.parentNode;e;e=e==null?void 0:e.parentNode){const i=D.get(e);i&&!i.isDisabled()&&i&&t.push(i)}return t}get isHostRendered(){const t=S.has(this.u);return t||this.u.updateComplete.then(()=>{S.add(this.u)}),t}j(t,e=this.O()){const i={...R};return e.forEach(s=>Object.assign(i,s.options.keyframeOptions)),Object.assign(i,t),i}N(t,e,i){t={...t},e={...e};const s=i.map(h=>h.animatingProperties).filter(h=>h!==void 0);let o=1,r=1;return s.length>0&&(s.forEach(h=>{h.width&&(o/=h.width),h.height&&(r/=h.height)}),t.left!==void 0&&e.left!==void 0&&(t.left=o*t.left,e.left=o*e.left),t.top!==void 0&&e.top!==void 0&&(t.top=r*t.top,e.top=r*e.top)),{from:t,to:e}}calculateKeyframes(t,e,i=!1){const s={},o={};let r=!1;const h={};for(const a in e){const d=t[a],p=e[a];if(a in f){const F=f[a];if(d===void 0||p===void 0)continue;const u=F(d,p);u.transform!==void 0&&(h[a]=u.value,r=!0,s.transform=`${s.transform??""} ${u.transform}`,u.overrideFrom!==void 0&&Object.assign(s,u.overrideFrom))}else d!==p&&d!==void 0&&p!==void 0&&(r=!0,s[a]=d,o[a]=p)}return s.transformOrigin=o.transformOrigin=i?"center center":"top left",this.animatingProperties=h,r?[s,o]:void 0}async animate(t,e=this.options.keyframeOptions){this.start(),this.frames=t;let i=!1;if(!this.isAnimating()&&!this.isDisabled()&&(this.options.onFrames&&(this.frames=t=this.options.onFrames(this),this.log("modified frames",t)),t!==void 0)){this.log("animate",[t,e]),i=!0,this.webAnimation=this.element.animate(t,e);const s=this.getController();s==null||s.add(this);try{await this.webAnimation.finished}catch{}s==null||s.remove(this)}return this.didFinish(i),i}isAnimating(){var t,e;return((t=this.webAnimation)==null?void 0:t.playState)==="running"||((e=this.webAnimation)==null?void 0:e.pending)}log(t,e){this.shouldLog&&this.isDisabled()}}const H=m.directive(I),U=["top","right","bottom","left"];class Y extends N.AsyncDirective{constructor(t){if(super(t),t.type!==m.PartType.ELEMENT)throw Error("The `position` directive must be used in attribute position.")}render(t,e){return E.nothing}update(t,[e,i]){var s;return this.u===void 0&&(this.u=(s=t.options)==null?void 0:s.host,this.u.addController(this)),this.S=t.element,this.C=e,this.F=i??["left","top","width","height"],this.render(e,i)}hostUpdated(){this.$()}$(){var o,r;const t=typeof this.C=="function"?this.C():(o=this.C)==null?void 0:o.value,e=t.offsetParent;if(t===void 0||!e)return;const i=t.getBoundingClientRect(),s=e.getBoundingClientRect();(r=this.F)==null||r.forEach(h=>{const a=U.includes(h)?i[h]-s[h]:i[h];this.S.style[h]=a+"px"})}}function O(n){let t=2166136261;for(let e=0;e<n.length;e++)t^=n.charCodeAt(e),t=16777619*t>>>0;return t.toString(16)}m.directive(Y);var z=Object.defineProperty,W=Object.getOwnPropertyDescriptor,l=(n,t,e,i)=>{for(var s,o=i>1?void 0:i?W(t,e):t,r=n.length-1;r>=0;r--)(s=n[r])&&(o=(i?s(t,e,o):s(o))||o);return i&&o&&z(t,e,o),o};const g=k.n("delay-context");exports.SchmancyDelay=class extends q.$LitElement(){constructor(){super(...arguments),this.delay=0,this.motion="flyBelow",this.rendered=!1,this.parentDelay=0,this.effectiveDelay=0,this.once=!0,this.sessionKey=""}firstUpdated(){this.observeSlotChanges(),this.updateRenderState()}disconnectedCallback(){var n;super.disconnectedCallback(),(n=this.mutationObserver)==null||n.disconnect()}observeSlotChanges(){var t;const n=(t=this.shadowRoot)==null?void 0:t.querySelector("slot");n&&(this.mutationObserver=new MutationObserver(()=>{this.sessionKey=this.generateSessionKey()}),this.mutationObserver.observe(n,{childList:!0,subtree:!0}))}getTotalSiblingDelay(n){if(!(n&&n instanceof HTMLElement))return 0;let t=0,e=n.previousElementSibling;for(;e;)e instanceof exports.SchmancyDelay&&(t+=e.delay),e=e.previousElementSibling;return n.parentElement&&(t+=this.getTotalSiblingDelay(n.parentElement)),t}updateRenderState(){if(this.sessionKey=this.generateSessionKey(),this.once&&sessionStorage.getItem(this.sessionKey)==="true")return void(this.rendered=!0);const n=this.getTotalSiblingDelay(this);this.effectiveDelay=this.delay+this.parentDelay+n,K.timer(this.effectiveDelay).pipe($.takeUntil(this.disconnecting)).subscribe(()=>{if(this.rendered=!0,this.once)try{sessionStorage.setItem(this.sessionKey,"true")}catch{}})}generateSessionKey(){const n=this.assignedElements.map(t=>t.outerHTML).join("");return this.once?O(n):""}get motionLit(){return this.motion==="flyBelow"?L:this.motion==="flyAbove"?T:M}render(){return P.cache(this.rendered?v.html`<div
2
2
  ${H({in:this.motionLit,keyframeOptions:{duration:300,easing:"ease-out"}})}
3
3
  >
4
4
  <slot></slot>
@@ -7,4 +7,4 @@
7
7
  <slot></slot>
8
8
  </section>
9
9
  `)}},l([c.property({type:Number,reflect:!0})],exports.SchmancyDelay.prototype,"delay",2),l([c.property({type:String})],exports.SchmancyDelay.prototype,"motion",2),l([c.state()],exports.SchmancyDelay.prototype,"rendered",2),l([x.c({context:g,subscribe:!0})],exports.SchmancyDelay.prototype,"parentDelay",2),l([k.e({context:g})],exports.SchmancyDelay.prototype,"effectiveDelay",2),l([c.property({type:Boolean})],exports.SchmancyDelay.prototype,"once",2),l([c.queryAssignedElements({flatten:!0})],exports.SchmancyDelay.prototype,"assignedElements",2),exports.SchmancyDelay=l([c.customElement("schmancy-delay")],exports.SchmancyDelay),exports.delayContext=g,exports.hashContent=O;
10
- //# sourceMappingURL=delay-C0n9lJNW.cjs.map
10
+ //# sourceMappingURL=delay-D8wCtScV.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"delay-C0n9lJNW.cjs","sources":["../node_modules/@lit-labs/motion/animate-controller.js","../node_modules/@lit-labs/motion/animate.js","../node_modules/@lit-labs/motion/position.js","../src/utils/hashContent.ts","../src/delay/delay.ts"],"sourcesContent":["const i=new WeakMap;class t{constructor(t,s){this.startPaused=!1,this.disabled=!1,this.clients=new Set,this.pendingComplete=!1,this.host=t,this.defaultOptions=s.defaultOptions||{},this.startPaused=!!s.startPaused,this.disabled=!!s.disabled,this.onComplete=s.onComplete,i.set(this.host,this)}async add(i){this.clients.add(i),this.startPaused&&i.webAnimation?.pause(),this.pendingComplete=!0,await i.finished,this.pendingComplete&&!this.isAnimating&&(this.pendingComplete=!1,this.onComplete?.())}remove(i){this.clients.delete(i)}pause(){this.clients.forEach((i=>i.webAnimation?.pause()))}play(){this.clients.forEach((i=>i.webAnimation?.play()))}cancel(){this.clients.forEach((i=>i.webAnimation?.cancel())),this.clients.clear()}finish(){this.clients.forEach((i=>i.webAnimation?.finish())),this.clients.clear()}togglePlay(){this.isPlaying?this.pause():this.play()}get isAnimating(){return this.clients.size>0}get isPlaying(){return Array.from(this.clients).some((i=>\"running\"===i.webAnimation?.playState))}async finished(){await Promise.all(Array.from(this.clients).map((i=>i.finished)))}}export{t as AnimateController,i as controllerMap};\n//# sourceMappingURL=animate-controller.js.map\n","import{nothing as t}from\"lit/html.js\";import{directive as i,PartType as s}from\"lit/directive.js\";import{AsyncDirective as e}from\"lit/async-directive.js\";import{controllerMap as h}from\"./animate-controller.js\";export{AnimateController}from\"./animate-controller.js\";let o=0;const r=new Map,n=new WeakSet,a=()=>new Promise((t=>requestAnimationFrame(t))),c=[{transform:\"translateY(100%) scale(0)\",opacity:0}],l=[{transform:\"translateY(-100%) scale(0)\",opacity:0}],d=[{transform:\"translateX(-100%) scale(0)\",opacity:0}],u=[{transform:\"translateX(100%) scale(0)\",opacity:0}],m=[{}],f=[{opacity:0}],p=f,v=[{opacity:0},{opacity:1}],y=[{opacity:0},{opacity:.25,offset:.75},{opacity:1}],g=(t,i)=>{const s=t-i;return 0===s?void 0:s},w=(t,i)=>{const s=t/i;return 1===s?void 0:s},N={left:(t,i)=>{const s=g(t,i);return{value:s,transform:null==s||isNaN(s)?void 0:`translateX(${s}px)`}},top:(t,i)=>{const s=g(t,i);return{value:s,transform:null==s||isNaN(s)?void 0:`translateY(${s}px)`}},width:(t,i)=>{let s;0===i&&(i=1,s={width:\"1px\"});const e=w(t,i);return{value:e,overrideFrom:s,transform:null==e||isNaN(e)?void 0:`scaleX(${e})`}},height:(t,i)=>{let s;0===i&&(i=1,s={height:\"1px\"});const e=w(t,i);return{value:e,overrideFrom:s,transform:null==e||isNaN(e)?void 0:`scaleY(${e})`}}},A={duration:333,easing:\"ease-in-out\"},b=[\"left\",\"top\",\"width\",\"height\",\"opacity\",\"color\",\"background\"],j=new WeakMap;class x extends e{constructor(t){if(super(t),this.t=!1,this.i=null,this.o=null,this.h=!0,this.shouldLog=!1,t.type===s.CHILD)throw Error(\"The `animate` directive must be used in attribute position.\");this.createFinished()}createFinished(){this.resolveFinished?.(),this.finished=new Promise((t=>{this.l=t}))}async resolveFinished(){this.l?.(),this.l=void 0}render(i){return t}getController(){return h.get(this.u)}isDisabled(){return this.options.disabled||this.getController()?.disabled}update(t,[i]){const s=void 0===this.u;return s&&(this.u=t.options?.host,this.u.addController(this),this.u.updateComplete.then((t=>this.t=!0)),this.element=t.element,j.set(this.element,this)),this.optionsOrCallback=i,(s||\"function\"!=typeof i)&&this.p(i),this.render(i)}p(t){t=t??{};const i=this.getController();void 0!==i&&((t={...i.defaultOptions,...t}).keyframeOptions={...i.defaultOptions.keyframeOptions,...t.keyframeOptions}),t.properties??=b,this.options=t}m(){const t={},i=this.element.getBoundingClientRect(),s=getComputedStyle(this.element);return this.options.properties.forEach((e=>{const h=i[e]??(N[e]?void 0:s[e]),o=Number(h);t[e]=isNaN(o)?h+\"\":o})),t}v(){let t,i=!0;return this.options.guard&&(t=this.options.guard(),i=((t,i)=>{if(Array.isArray(t)){if(Array.isArray(i)&&i.length===t.length&&t.every(((t,s)=>t===i[s])))return!1}else if(i===t)return!1;return!0})(t,this._)),this.h=this.t&&!this.isDisabled()&&!this.isAnimating()&&i&&this.element.isConnected,this.h&&(this._=Array.isArray(t)?Array.from(t):t),this.h}hostUpdate(){\"function\"==typeof this.optionsOrCallback&&this.p(this.optionsOrCallback()),this.v()&&(this.A=this.m(),this.i=this.i??this.element.parentNode,this.o=this.element.nextSibling)}async hostUpdated(){if(!this.h||!this.element.isConnected||this.options.skipInitial&&!this.isHostRendered)return;let t;this.prepare(),await a;const i=this.O(),s=this.j(this.options.keyframeOptions,i),e=this.m();if(void 0!==this.A){const{from:s,to:h}=this.N(this.A,e,i);this.log(\"measured\",[this.A,e,s,h]),t=this.calculateKeyframes(s,h)}else{const s=r.get(this.options.inId);if(s){r.delete(this.options.inId);const{from:h,to:n}=this.N(s,e,i);t=this.calculateKeyframes(h,n),t=this.options.in?[{...this.options.in[0],...t[0]},...this.options.in.slice(1),t[1]]:t,o++,t.forEach((t=>t.zIndex=o))}else this.options.in&&(t=[...this.options.in,{}])}this.animate(t,s)}resetStyles(){void 0!==this.P&&(this.element.setAttribute(\"style\",this.P??\"\"),this.P=void 0)}commitStyles(){this.P=this.element.getAttribute(\"style\"),this.webAnimation?.commitStyles(),this.webAnimation?.cancel()}reconnected(){}async disconnected(){if(!this.h)return;if(void 0!==this.options.id&&r.set(this.options.id,this.A),void 0===this.options.out)return;if(this.prepare(),await a(),this.i?.isConnected){const t=this.o&&this.o.parentNode===this.i?this.o:null;if(this.i.insertBefore(this.element,t),this.options.stabilizeOut){const t=this.m();this.log(\"stabilizing out\");const i=this.A.left-t.left,s=this.A.top-t.top;!(\"static\"===getComputedStyle(this.element).position)||0===i&&0===s||(this.element.style.position=\"relative\"),0!==i&&(this.element.style.left=i+\"px\"),0!==s&&(this.element.style.top=s+\"px\")}}const t=this.j(this.options.keyframeOptions);await this.animate(this.options.out,t),this.element.remove()}prepare(){this.createFinished()}start(){this.options.onStart?.(this)}didFinish(t){t&&this.options.onComplete?.(this),this.A=void 0,this.animatingProperties=void 0,this.frames=void 0,this.resolveFinished()}O(){const t=[];for(let i=this.element.parentNode;i;i=i?.parentNode){const s=j.get(i);s&&!s.isDisabled()&&s&&t.push(s)}return t}get isHostRendered(){const t=n.has(this.u);return t||this.u.updateComplete.then((()=>{n.add(this.u)})),t}j(t,i=this.O()){const s={...A};return i.forEach((t=>Object.assign(s,t.options.keyframeOptions))),Object.assign(s,t),s}N(t,i,s){t={...t},i={...i};const e=s.map((t=>t.animatingProperties)).filter((t=>void 0!==t));let h=1,o=1;return e.length>0&&(e.forEach((t=>{t.width&&(h/=t.width),t.height&&(o/=t.height)})),void 0!==t.left&&void 0!==i.left&&(t.left=h*t.left,i.left=h*i.left),void 0!==t.top&&void 0!==i.top&&(t.top=o*t.top,i.top=o*i.top)),{from:t,to:i}}calculateKeyframes(t,i,s=!1){const e={},h={};let o=!1;const r={};for(const s in i){const n=t[s],a=i[s];if(s in N){const t=N[s];if(void 0===n||void 0===a)continue;const i=t(n,a);void 0!==i.transform&&(r[s]=i.value,o=!0,e.transform=`${e.transform??\"\"} ${i.transform}`,void 0!==i.overrideFrom&&Object.assign(e,i.overrideFrom))}else n!==a&&void 0!==n&&void 0!==a&&(o=!0,e[s]=n,h[s]=a)}return e.transformOrigin=h.transformOrigin=s?\"center center\":\"top left\",this.animatingProperties=r,o?[e,h]:void 0}async animate(t,i=this.options.keyframeOptions){this.start(),this.frames=t;let s=!1;if(!this.isAnimating()&&!this.isDisabled()&&(this.options.onFrames&&(this.frames=t=this.options.onFrames(this),this.log(\"modified frames\",t)),void 0!==t)){this.log(\"animate\",[t,i]),s=!0,this.webAnimation=this.element.animate(t,i);const e=this.getController();e?.add(this);try{await this.webAnimation.finished}catch(t){}e?.remove(this)}return this.didFinish(s),s}isAnimating(){return\"running\"===this.webAnimation?.playState||this.webAnimation?.pending}log(t,i){this.shouldLog&&!this.isDisabled()&&console.log(t,this.options.id,i)}}const F=i(x);export{x as Animate,F as animate,a as animationFrame,b as defaultCssProperties,A as defaultKeyframeOptions,p as fade,v as fadeIn,y as fadeInSlow,f as fadeOut,l as flyAbove,c as flyBelow,d as flyLeft,u as flyRight,m as none,N as transformProps};\n//# sourceMappingURL=animate.js.map\n","import{nothing as t}from\"lit/html.js\";import{directive as i,PartType as s}from\"lit/directive.js\";import{AsyncDirective as o}from\"lit/async-directive.js\";const r=[\"top\",\"right\",\"bottom\",\"left\"];class e extends o{constructor(t){if(super(t),t.type!==s.ELEMENT)throw Error(\"The `position` directive must be used in attribute position.\")}render(i,s){return t}update(t,[i,s]){return void 0===this.u&&(this.u=t.options?.host,this.u.addController(this)),this.S=t.element,this.C=i,this.F=s??[\"left\",\"top\",\"width\",\"height\"],this.render(i,s)}hostUpdated(){this.$()}$(){const t=\"function\"==typeof this.C?this.C():this.C?.value,i=t.offsetParent;if(void 0===t||!i)return;const s=t.getBoundingClientRect(),o=i.getBoundingClientRect();this.F?.forEach((t=>{const i=r.includes(t)?s[t]-o[t]:s[t];this.S.style[t]=i+\"px\"}))}}const h=i(e);export{e as Position,h as position};\n//# sourceMappingURL=position.js.map\n","export default function (content: string): string {\n\tconst fnvOffsetBasis = 0x811c9dc5\n\tconst fnvPrime = 0x01000193\n\tlet hash = fnvOffsetBasis\n\n\tfor (let i = 0; i < content.length; i++) {\n\t\thash ^= content.charCodeAt(i)\n\t\thash = (hash * fnvPrime) >>> 0 // Ensure unsigned 32-bit integer\n\t}\n\n\treturn hash.toString(16) // Convert to hexadecimal string for compactness\n}\n","import { animate, fadeIn, flyAbove, flyBelow } from '@lit-labs/motion'\nimport { consume, createContext, provide } from '@lit/context'\nimport { $LitElement } from '@mixins/litElement.mixin'\nimport hashContent from '@schmancy/utils/hashContent'\nimport { html } from 'lit'\nimport { customElement, property, queryAssignedElements, state } from 'lit/decorators.js'\nimport { cache } from 'lit/directives/cache.js'\nimport { timer } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nexport const delayContext = createContext<number>('delay-context')\n\n@customElement('schmancy-delay')\nexport class SchmancyDelay extends $LitElement() {\n\t@property({ type: Number, reflect: true }) delay = 0 // Delay in milliseconds\n\t@property({ type: String }) motion = 'flyBelow' // Motion type (default: flyBelow)\n\t@state() private rendered = false // Tracks if the content is rendered\n\t@consume({ context: delayContext, subscribe: true }) parentDelay = 0 // Consumes the parent's delay value\n\t@provide({ context: delayContext }) effectiveDelay = 0 // Provides the effective delay to children\n\n\t@property({ type: Boolean }) once? = true // Only render once per session\n\n\tprivate sessionKey = '' // Unique session key\n\tprivate mutationObserver?: MutationObserver\n\n\t@queryAssignedElements({\n\t\tflatten: true,\n\t})\n\tassignedElements: HTMLElement[]\n\tfirstUpdated() {\n\t\tthis.observeSlotChanges()\n\t\tthis.updateRenderState()\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\tthis.mutationObserver?.disconnect() // Clean up the observer\n\t}\n\n\tprivate observeSlotChanges() {\n\t\tconst slot = this.shadowRoot?.querySelector('slot')\n\t\tif (!slot) return\n\n\t\tthis.mutationObserver = new MutationObserver(() => {\n\t\t\t// Update session key when children change\n\t\t\tthis.sessionKey = this.generateSessionKey()\n\t\t})\n\n\t\tthis.mutationObserver.observe(slot, { childList: true, subtree: true })\n\t}\n\n\tprivate getTotalSiblingDelay(element: HTMLElement | null): number {\n\t\tif (!element || !(element instanceof HTMLElement)) return 0\n\n\t\tlet totalDelay = 0\n\t\tlet sibling = element.previousElementSibling // Start with the previous sibling\n\n\t\twhile (sibling) {\n\t\t\t// Check if the sibling is a `schmancy-delay` and add its delay\n\t\t\tif (sibling instanceof SchmancyDelay) {\n\t\t\t\ttotalDelay += sibling.delay\n\t\t\t}\n\t\t\t// Move to the previous sibling\n\t\t\tsibling = sibling.previousElementSibling\n\t\t}\n\n\t\t// Traverse up the tree and repeat for the parent node\n\t\tif (element.parentElement) {\n\t\t\ttotalDelay += this.getTotalSiblingDelay(element.parentElement)\n\t\t}\n\n\t\treturn totalDelay\n\t}\n\n\tprivate updateRenderState() {\n\t\tthis.sessionKey = this.generateSessionKey()\n\n\t\tif (this.once && sessionStorage.getItem(this.sessionKey) === 'true') {\n\t\t\t// Skip delay and render immediately if once is set and already rendered\n\t\t\tthis.rendered = true\n\t\t\treturn\n\t\t}\n\n\t\t// Calculate the effective delay (parent + self + all preceding siblings)\n\t\tconst siblingDelay = this.getTotalSiblingDelay(this)\n\t\tthis.effectiveDelay = this.delay + this.parentDelay + siblingDelay\n\n\t\t// Start the delay timer\n\t\ttimer(this.effectiveDelay)\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(() => {\n\t\t\t\tthis.rendered = true // Render content after delay\n\t\t\t\tif (this.once) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tsessionStorage.setItem(this.sessionKey, 'true')\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tconsole.error('Error saving to session storage:', error)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t}\n\n\tprivate generateSessionKey(): string {\n\t\tconst slotContent = this.assignedElements.map(el => el.outerHTML).join('')\n\t\tconsole.log(slotContent)\n\t\treturn this.once ? hashContent(slotContent) : ''\n\t}\n\n\tprivate get motionLit(): any {\n\t\treturn this.motion === 'flyBelow' ? flyBelow : this.motion === 'flyAbove' ? flyAbove : fadeIn\n\t}\n\n\trender() {\n\t\treturn cache(\n\t\t\tthis.rendered\n\t\t\t\t? html`<div\n\t\t\t\t\t\t${animate({\n\t\t\t\t\t\t\tin: this.motionLit, // Use the provided motion type\n\t\t\t\t\t\t\tkeyframeOptions: { duration: 300, easing: 'ease-out' },\n\t\t\t\t\t\t})}\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</div>`\n\t\t\t\t: html`\n\t\t\t\t\t\t<section style=\"display: none;\">\n\t\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t\t</section>\n\t\t\t\t\t`,\n\t\t)\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-delay': SchmancyDelay\n\t}\n}\n"],"names":["i","WeakMap","o","r","Map","n","WeakSet","a","Promise","t","requestAnimationFrame","c","transform","opacity","l","v","g","s","w","N","left","value","isNaN","top","width","e","overrideFrom","height","undefined","A","duration","easing","b","j","x","AsyncDirective","super","this","h","shouldLog","type","CHILD","Error","createFinished","resolveFinished","finished","getController","get","u","options","disabled","host","addController","updateComplete","then","element","set","optionsOrCallback","p","render","defaultOptions","keyframeOptions","properties","m","getBoundingClientRect","getComputedStyle","forEach","Number","guard","Array","isArray","length","every","_","isDisabled","isAnimating","isConnected","from","hostUpdate","parentNode","nextSibling","skipInitial","isHostRendered","prepare","O","to","log","calculateKeyframes","inId","delete","in","slice","zIndex","animate","P","setAttribute","commitStyles","getAttribute","webAnimation","cancel","disconnected","id","out","insertBefore","stabilizeOut","position","style","remove","onStart","onComplete","animatingProperties","frames","push","has","add","Object","assign","map","filter","transformOrigin","start","onFrames","didFinish","playState","pending","F","directive","ELEMENT","S","C","$","offsetParent","includes","hashContent","content","hash","charCodeAt","toString","delayContext","createContext","SchmancyDelay","$LitElement","arguments","delay","motion","rendered","parentDelay","effectiveDelay","once","sessionKey","observeSlotChanges","updateRenderState","disconnectedCallback","mutationObserver","disconnect","slot","shadowRoot","querySelector","MutationObserver","generateSessionKey","observe","childList","subtree","HTMLElement","totalDelay","sibling","previousElementSibling","parentElement","getTotalSiblingDelay","sessionStorage","getItem","siblingDelay","timer","pipe","takeUntil","disconnecting","subscribe","setItem","slotContent","assignedElements","el","outerHTML","join","motionLit","flyBelow","flyAbove","fadeIn","cache","html","__decorateClass","property","reflect","prototype","String","state","consume","context","provide","Boolean","queryAssignedElements","flatten","customElement"],"mappings":"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","x_google_ignoreList":[0,1,2]}
1
+ {"version":3,"file":"delay-D8wCtScV.cjs","sources":["../node_modules/@lit-labs/motion/animate-controller.js","../node_modules/@lit-labs/motion/animate.js","../node_modules/@lit-labs/motion/position.js","../src/utils/hashContent.ts","../src/delay/delay.ts"],"sourcesContent":["const i=new WeakMap;class t{constructor(t,s){this.startPaused=!1,this.disabled=!1,this.clients=new Set,this.pendingComplete=!1,this.host=t,this.defaultOptions=s.defaultOptions||{},this.startPaused=!!s.startPaused,this.disabled=!!s.disabled,this.onComplete=s.onComplete,i.set(this.host,this)}async add(i){this.clients.add(i),this.startPaused&&i.webAnimation?.pause(),this.pendingComplete=!0,await i.finished,this.pendingComplete&&!this.isAnimating&&(this.pendingComplete=!1,this.onComplete?.())}remove(i){this.clients.delete(i)}pause(){this.clients.forEach((i=>i.webAnimation?.pause()))}play(){this.clients.forEach((i=>i.webAnimation?.play()))}cancel(){this.clients.forEach((i=>i.webAnimation?.cancel())),this.clients.clear()}finish(){this.clients.forEach((i=>i.webAnimation?.finish())),this.clients.clear()}togglePlay(){this.isPlaying?this.pause():this.play()}get isAnimating(){return this.clients.size>0}get isPlaying(){return Array.from(this.clients).some((i=>\"running\"===i.webAnimation?.playState))}async finished(){await Promise.all(Array.from(this.clients).map((i=>i.finished)))}}export{t as AnimateController,i as controllerMap};\n//# sourceMappingURL=animate-controller.js.map\n","import{nothing as t}from\"lit/html.js\";import{directive as i,PartType as s}from\"lit/directive.js\";import{AsyncDirective as e}from\"lit/async-directive.js\";import{controllerMap as h}from\"./animate-controller.js\";export{AnimateController}from\"./animate-controller.js\";let o=0;const r=new Map,n=new WeakSet,a=()=>new Promise((t=>requestAnimationFrame(t))),c=[{transform:\"translateY(100%) scale(0)\",opacity:0}],l=[{transform:\"translateY(-100%) scale(0)\",opacity:0}],d=[{transform:\"translateX(-100%) scale(0)\",opacity:0}],u=[{transform:\"translateX(100%) scale(0)\",opacity:0}],m=[{}],f=[{opacity:0}],p=f,v=[{opacity:0},{opacity:1}],y=[{opacity:0},{opacity:.25,offset:.75},{opacity:1}],g=(t,i)=>{const s=t-i;return 0===s?void 0:s},w=(t,i)=>{const s=t/i;return 1===s?void 0:s},N={left:(t,i)=>{const s=g(t,i);return{value:s,transform:null==s||isNaN(s)?void 0:`translateX(${s}px)`}},top:(t,i)=>{const s=g(t,i);return{value:s,transform:null==s||isNaN(s)?void 0:`translateY(${s}px)`}},width:(t,i)=>{let s;0===i&&(i=1,s={width:\"1px\"});const e=w(t,i);return{value:e,overrideFrom:s,transform:null==e||isNaN(e)?void 0:`scaleX(${e})`}},height:(t,i)=>{let s;0===i&&(i=1,s={height:\"1px\"});const e=w(t,i);return{value:e,overrideFrom:s,transform:null==e||isNaN(e)?void 0:`scaleY(${e})`}}},A={duration:333,easing:\"ease-in-out\"},b=[\"left\",\"top\",\"width\",\"height\",\"opacity\",\"color\",\"background\"],j=new WeakMap;class x extends e{constructor(t){if(super(t),this.t=!1,this.i=null,this.o=null,this.h=!0,this.shouldLog=!1,t.type===s.CHILD)throw Error(\"The `animate` directive must be used in attribute position.\");this.createFinished()}createFinished(){this.resolveFinished?.(),this.finished=new Promise((t=>{this.l=t}))}async resolveFinished(){this.l?.(),this.l=void 0}render(i){return t}getController(){return h.get(this.u)}isDisabled(){return this.options.disabled||this.getController()?.disabled}update(t,[i]){const s=void 0===this.u;return s&&(this.u=t.options?.host,this.u.addController(this),this.u.updateComplete.then((t=>this.t=!0)),this.element=t.element,j.set(this.element,this)),this.optionsOrCallback=i,(s||\"function\"!=typeof i)&&this.p(i),this.render(i)}p(t){t=t??{};const i=this.getController();void 0!==i&&((t={...i.defaultOptions,...t}).keyframeOptions={...i.defaultOptions.keyframeOptions,...t.keyframeOptions}),t.properties??=b,this.options=t}m(){const t={},i=this.element.getBoundingClientRect(),s=getComputedStyle(this.element);return this.options.properties.forEach((e=>{const h=i[e]??(N[e]?void 0:s[e]),o=Number(h);t[e]=isNaN(o)?h+\"\":o})),t}v(){let t,i=!0;return this.options.guard&&(t=this.options.guard(),i=((t,i)=>{if(Array.isArray(t)){if(Array.isArray(i)&&i.length===t.length&&t.every(((t,s)=>t===i[s])))return!1}else if(i===t)return!1;return!0})(t,this._)),this.h=this.t&&!this.isDisabled()&&!this.isAnimating()&&i&&this.element.isConnected,this.h&&(this._=Array.isArray(t)?Array.from(t):t),this.h}hostUpdate(){\"function\"==typeof this.optionsOrCallback&&this.p(this.optionsOrCallback()),this.v()&&(this.A=this.m(),this.i=this.i??this.element.parentNode,this.o=this.element.nextSibling)}async hostUpdated(){if(!this.h||!this.element.isConnected||this.options.skipInitial&&!this.isHostRendered)return;let t;this.prepare(),await a;const i=this.O(),s=this.j(this.options.keyframeOptions,i),e=this.m();if(void 0!==this.A){const{from:s,to:h}=this.N(this.A,e,i);this.log(\"measured\",[this.A,e,s,h]),t=this.calculateKeyframes(s,h)}else{const s=r.get(this.options.inId);if(s){r.delete(this.options.inId);const{from:h,to:n}=this.N(s,e,i);t=this.calculateKeyframes(h,n),t=this.options.in?[{...this.options.in[0],...t[0]},...this.options.in.slice(1),t[1]]:t,o++,t.forEach((t=>t.zIndex=o))}else this.options.in&&(t=[...this.options.in,{}])}this.animate(t,s)}resetStyles(){void 0!==this.P&&(this.element.setAttribute(\"style\",this.P??\"\"),this.P=void 0)}commitStyles(){this.P=this.element.getAttribute(\"style\"),this.webAnimation?.commitStyles(),this.webAnimation?.cancel()}reconnected(){}async disconnected(){if(!this.h)return;if(void 0!==this.options.id&&r.set(this.options.id,this.A),void 0===this.options.out)return;if(this.prepare(),await a(),this.i?.isConnected){const t=this.o&&this.o.parentNode===this.i?this.o:null;if(this.i.insertBefore(this.element,t),this.options.stabilizeOut){const t=this.m();this.log(\"stabilizing out\");const i=this.A.left-t.left,s=this.A.top-t.top;!(\"static\"===getComputedStyle(this.element).position)||0===i&&0===s||(this.element.style.position=\"relative\"),0!==i&&(this.element.style.left=i+\"px\"),0!==s&&(this.element.style.top=s+\"px\")}}const t=this.j(this.options.keyframeOptions);await this.animate(this.options.out,t),this.element.remove()}prepare(){this.createFinished()}start(){this.options.onStart?.(this)}didFinish(t){t&&this.options.onComplete?.(this),this.A=void 0,this.animatingProperties=void 0,this.frames=void 0,this.resolveFinished()}O(){const t=[];for(let i=this.element.parentNode;i;i=i?.parentNode){const s=j.get(i);s&&!s.isDisabled()&&s&&t.push(s)}return t}get isHostRendered(){const t=n.has(this.u);return t||this.u.updateComplete.then((()=>{n.add(this.u)})),t}j(t,i=this.O()){const s={...A};return i.forEach((t=>Object.assign(s,t.options.keyframeOptions))),Object.assign(s,t),s}N(t,i,s){t={...t},i={...i};const e=s.map((t=>t.animatingProperties)).filter((t=>void 0!==t));let h=1,o=1;return e.length>0&&(e.forEach((t=>{t.width&&(h/=t.width),t.height&&(o/=t.height)})),void 0!==t.left&&void 0!==i.left&&(t.left=h*t.left,i.left=h*i.left),void 0!==t.top&&void 0!==i.top&&(t.top=o*t.top,i.top=o*i.top)),{from:t,to:i}}calculateKeyframes(t,i,s=!1){const e={},h={};let o=!1;const r={};for(const s in i){const n=t[s],a=i[s];if(s in N){const t=N[s];if(void 0===n||void 0===a)continue;const i=t(n,a);void 0!==i.transform&&(r[s]=i.value,o=!0,e.transform=`${e.transform??\"\"} ${i.transform}`,void 0!==i.overrideFrom&&Object.assign(e,i.overrideFrom))}else n!==a&&void 0!==n&&void 0!==a&&(o=!0,e[s]=n,h[s]=a)}return e.transformOrigin=h.transformOrigin=s?\"center center\":\"top left\",this.animatingProperties=r,o?[e,h]:void 0}async animate(t,i=this.options.keyframeOptions){this.start(),this.frames=t;let s=!1;if(!this.isAnimating()&&!this.isDisabled()&&(this.options.onFrames&&(this.frames=t=this.options.onFrames(this),this.log(\"modified frames\",t)),void 0!==t)){this.log(\"animate\",[t,i]),s=!0,this.webAnimation=this.element.animate(t,i);const e=this.getController();e?.add(this);try{await this.webAnimation.finished}catch(t){}e?.remove(this)}return this.didFinish(s),s}isAnimating(){return\"running\"===this.webAnimation?.playState||this.webAnimation?.pending}log(t,i){this.shouldLog&&!this.isDisabled()&&console.log(t,this.options.id,i)}}const F=i(x);export{x as Animate,F as animate,a as animationFrame,b as defaultCssProperties,A as defaultKeyframeOptions,p as fade,v as fadeIn,y as fadeInSlow,f as fadeOut,l as flyAbove,c as flyBelow,d as flyLeft,u as flyRight,m as none,N as transformProps};\n//# sourceMappingURL=animate.js.map\n","import{nothing as t}from\"lit/html.js\";import{directive as i,PartType as s}from\"lit/directive.js\";import{AsyncDirective as o}from\"lit/async-directive.js\";const r=[\"top\",\"right\",\"bottom\",\"left\"];class e extends o{constructor(t){if(super(t),t.type!==s.ELEMENT)throw Error(\"The `position` directive must be used in attribute position.\")}render(i,s){return t}update(t,[i,s]){return void 0===this.u&&(this.u=t.options?.host,this.u.addController(this)),this.S=t.element,this.C=i,this.F=s??[\"left\",\"top\",\"width\",\"height\"],this.render(i,s)}hostUpdated(){this.$()}$(){const t=\"function\"==typeof this.C?this.C():this.C?.value,i=t.offsetParent;if(void 0===t||!i)return;const s=t.getBoundingClientRect(),o=i.getBoundingClientRect();this.F?.forEach((t=>{const i=r.includes(t)?s[t]-o[t]:s[t];this.S.style[t]=i+\"px\"}))}}const h=i(e);export{e as Position,h as position};\n//# sourceMappingURL=position.js.map\n","export default function (content: string): string {\n\tconst fnvOffsetBasis = 0x811c9dc5\n\tconst fnvPrime = 0x01000193\n\tlet hash = fnvOffsetBasis\n\n\tfor (let i = 0; i < content.length; i++) {\n\t\thash ^= content.charCodeAt(i)\n\t\thash = (hash * fnvPrime) >>> 0 // Ensure unsigned 32-bit integer\n\t}\n\n\treturn hash.toString(16) // Convert to hexadecimal string for compactness\n}\n","import { animate, fadeIn, flyAbove, flyBelow } from '@lit-labs/motion'\nimport { consume, createContext, provide } from '@lit/context'\nimport { $LitElement } from '@mixins/litElement.mixin'\nimport hashContent from '@schmancy/utils/hashContent'\nimport { html } from 'lit'\nimport { customElement, property, queryAssignedElements, state } from 'lit/decorators.js'\nimport { cache } from 'lit/directives/cache.js'\nimport { timer } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nexport const delayContext = createContext<number>('delay-context')\n\n@customElement('schmancy-delay')\nexport class SchmancyDelay extends $LitElement() {\n\t@property({ type: Number, reflect: true }) delay = 0 // Delay in milliseconds\n\t@property({ type: String }) motion = 'flyBelow' // Motion type (default: flyBelow)\n\t@state() private rendered = false // Tracks if the content is rendered\n\t@consume({ context: delayContext, subscribe: true }) parentDelay = 0 // Consumes the parent's delay value\n\t@provide({ context: delayContext }) effectiveDelay = 0 // Provides the effective delay to children\n\n\t@property({ type: Boolean }) once? = true // Only render once per session\n\n\tprivate sessionKey = '' // Unique session key\n\tprivate mutationObserver?: MutationObserver\n\n\t@queryAssignedElements({\n\t\tflatten: true,\n\t})\n\tassignedElements: HTMLElement[]\n\tfirstUpdated() {\n\t\tthis.observeSlotChanges()\n\t\tthis.updateRenderState()\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\tthis.mutationObserver?.disconnect() // Clean up the observer\n\t}\n\n\tprivate observeSlotChanges() {\n\t\tconst slot = this.shadowRoot?.querySelector('slot')\n\t\tif (!slot) return\n\n\t\tthis.mutationObserver = new MutationObserver(() => {\n\t\t\t// Update session key when children change\n\t\t\tthis.sessionKey = this.generateSessionKey()\n\t\t})\n\n\t\tthis.mutationObserver.observe(slot, { childList: true, subtree: true })\n\t}\n\n\tprivate getTotalSiblingDelay(element: HTMLElement | null): number {\n\t\tif (!element || !(element instanceof HTMLElement)) return 0\n\n\t\tlet totalDelay = 0\n\t\tlet sibling = element.previousElementSibling // Start with the previous sibling\n\n\t\twhile (sibling) {\n\t\t\t// Check if the sibling is a `schmancy-delay` and add its delay\n\t\t\tif (sibling instanceof SchmancyDelay) {\n\t\t\t\ttotalDelay += sibling.delay\n\t\t\t}\n\t\t\t// Move to the previous sibling\n\t\t\tsibling = sibling.previousElementSibling\n\t\t}\n\n\t\t// Traverse up the tree and repeat for the parent node\n\t\tif (element.parentElement) {\n\t\t\ttotalDelay += this.getTotalSiblingDelay(element.parentElement)\n\t\t}\n\n\t\treturn totalDelay\n\t}\n\n\tprivate updateRenderState() {\n\t\tthis.sessionKey = this.generateSessionKey()\n\n\t\tif (this.once && sessionStorage.getItem(this.sessionKey) === 'true') {\n\t\t\t// Skip delay and render immediately if once is set and already rendered\n\t\t\tthis.rendered = true\n\t\t\treturn\n\t\t}\n\n\t\t// Calculate the effective delay (parent + self + all preceding siblings)\n\t\tconst siblingDelay = this.getTotalSiblingDelay(this)\n\t\tthis.effectiveDelay = this.delay + this.parentDelay + siblingDelay\n\n\t\t// Start the delay timer\n\t\ttimer(this.effectiveDelay)\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(() => {\n\t\t\t\tthis.rendered = true // Render content after delay\n\t\t\t\tif (this.once) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tsessionStorage.setItem(this.sessionKey, 'true')\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tconsole.error('Error saving to session storage:', error)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t}\n\n\tprivate generateSessionKey(): string {\n\t\tconst slotContent = this.assignedElements.map(el => el.outerHTML).join('')\n\t\tconsole.log(slotContent)\n\t\treturn this.once ? hashContent(slotContent) : ''\n\t}\n\n\tprivate get motionLit(): any {\n\t\treturn this.motion === 'flyBelow' ? flyBelow : this.motion === 'flyAbove' ? flyAbove : fadeIn\n\t}\n\n\trender() {\n\t\treturn cache(\n\t\t\tthis.rendered\n\t\t\t\t? html`<div\n\t\t\t\t\t\t${animate({\n\t\t\t\t\t\t\tin: this.motionLit, // Use the provided motion type\n\t\t\t\t\t\t\tkeyframeOptions: { duration: 300, easing: 'ease-out' },\n\t\t\t\t\t\t})}\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</div>`\n\t\t\t\t: html`\n\t\t\t\t\t\t<section style=\"display: none;\">\n\t\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t\t</section>\n\t\t\t\t\t`,\n\t\t)\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-delay': SchmancyDelay\n\t}\n}\n"],"names":["i","WeakMap","o","r","Map","n","WeakSet","a","Promise","t","requestAnimationFrame","c","transform","opacity","l","v","g","s","w","N","left","value","isNaN","top","width","e","overrideFrom","height","undefined","A","duration","easing","b","j","x","AsyncDirective","super","this","h","shouldLog","type","CHILD","Error","createFinished","resolveFinished","finished","getController","get","u","options","disabled","host","addController","updateComplete","then","element","set","optionsOrCallback","p","render","defaultOptions","keyframeOptions","properties","m","getBoundingClientRect","getComputedStyle","forEach","Number","guard","Array","isArray","length","every","_","isDisabled","isAnimating","isConnected","from","hostUpdate","parentNode","nextSibling","skipInitial","isHostRendered","prepare","O","to","log","calculateKeyframes","inId","delete","in","slice","zIndex","animate","P","setAttribute","commitStyles","getAttribute","webAnimation","cancel","disconnected","id","out","insertBefore","stabilizeOut","position","style","remove","onStart","onComplete","animatingProperties","frames","push","has","add","Object","assign","map","filter","transformOrigin","start","onFrames","didFinish","playState","pending","F","directive","ELEMENT","S","C","$","offsetParent","includes","hashContent","content","hash","charCodeAt","toString","delayContext","createContext","SchmancyDelay","$LitElement","arguments","delay","motion","rendered","parentDelay","effectiveDelay","once","sessionKey","observeSlotChanges","updateRenderState","disconnectedCallback","mutationObserver","disconnect","slot","shadowRoot","querySelector","MutationObserver","generateSessionKey","observe","childList","subtree","HTMLElement","totalDelay","sibling","previousElementSibling","parentElement","getTotalSiblingDelay","sessionStorage","getItem","siblingDelay","timer","pipe","takeUntil","disconnecting","subscribe","setItem","slotContent","assignedElements","el","outerHTML","join","motionLit","flyBelow","flyAbove","fadeIn","cache","html","__decorateClass","property","reflect","prototype","String","state","consume","context","provide","Boolean","queryAssignedElements","flatten","customElement"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -3,7 +3,7 @@ import { directive as N, PartType as k } from "lit/directive.js";
3
3
  import { AsyncDirective as E } from "lit/async-directive.js";
4
4
  import { e as F, n as x } from "./provide-kj6-udep.js";
5
5
  import { c as P } from "./consume-DSKPc5vj.js";
6
- import { $ as K } from "./litElement.mixin-COSnyAru.js";
6
+ import { $ as K } from "./litElement.mixin-DoKCdkhO.js";
7
7
  import { html as y } from "lit";
8
8
  import { property as m, state as $, queryAssignedElements as j, customElement as T } from "lit/decorators.js";
9
9
  import { cache as L } from "lit/directives/cache.js";
@@ -298,4 +298,4 @@ export {
298
298
  O as d,
299
299
  X as h
300
300
  };
301
- //# sourceMappingURL=delay-CpK5RGux.js.map
301
+ //# sourceMappingURL=delay-LxXCSBHq.js.map