@mhmo91/schmancy 0.0.290 → 0.0.291

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 (202) hide show
  1. package/dist/{animated-text-CkVT5xh6.cjs → animated-text-BYy49xv3.cjs} +2 -2
  2. package/dist/{animated-text-CkVT5xh6.cjs.map → animated-text-BYy49xv3.cjs.map} +1 -1
  3. package/dist/{animated-text-DnmcLtp6.js → animated-text-BelKfCRb.js} +3 -3
  4. package/dist/{animated-text-DnmcLtp6.js.map → animated-text-BelKfCRb.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-2El6gVUr.cjs → area.component-BAx9ljt5.cjs} +2 -2
  9. package/dist/{area.component-2El6gVUr.cjs.map → area.component-BAx9ljt5.cjs.map} +1 -1
  10. package/dist/{area.component-i4jPVHUa.js → area.component-BIircYdd.js} +3 -3
  11. package/dist/{area.component-i4jPVHUa.js.map → area.component-BIircYdd.js.map} +1 -1
  12. package/dist/area.js +1 -1
  13. package/dist/{autocomplete-CJ5BBR5q.js → autocomplete-C-u4ICfa.js} +3 -3
  14. package/dist/{autocomplete-CJ5BBR5q.js.map → autocomplete-C-u4ICfa.js.map} +1 -1
  15. package/dist/{autocomplete-Bcb_ZSV9.cjs → autocomplete-ecQ92UGe.cjs} +2 -2
  16. package/dist/{autocomplete-Bcb_ZSV9.cjs.map → autocomplete-ecQ92UGe.cjs.map} +1 -1
  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-CJjtMba9.js → checkbox-BUrYs8Dg.js} +2 -2
  26. package/dist/{checkbox-CJjtMba9.js.map → checkbox-BUrYs8Dg.js.map} +1 -1
  27. package/dist/{checkbox-56Umlzh3.cjs → checkbox-DeVnlyJb.cjs} +2 -2
  28. package/dist/{checkbox-56Umlzh3.cjs.map → checkbox-DeVnlyJb.cjs.map} +1 -1
  29. package/dist/checkbox.cjs +1 -1
  30. package/dist/checkbox.js +1 -1
  31. package/dist/{chips-B71IFtJB.js → chips-BkjDE2Cx.js} +3 -3
  32. package/dist/{chips-B71IFtJB.js.map → chips-BkjDE2Cx.js.map} +1 -1
  33. package/dist/{chips-DO738Kv9.cjs → chips-DjiRqUBT.cjs} +2 -2
  34. package/dist/{chips-DO738Kv9.cjs.map → chips-DjiRqUBT.cjs.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-Dbj5qwzm.js → date-range-BIdEZhGK.js} +3 -3
  42. package/dist/{date-range-Dbj5qwzm.js.map → date-range-BIdEZhGK.js.map} +1 -1
  43. package/dist/{date-range-BFRnIgQ6.cjs → date-range-BirYELq7.cjs} +2 -2
  44. package/dist/{date-range-BFRnIgQ6.cjs.map → date-range-BirYELq7.cjs.map} +1 -1
  45. package/dist/date-range.cjs +1 -1
  46. package/dist/date-range.js +1 -1
  47. package/dist/divider-DcEj-C2P.cjs +83 -0
  48. package/dist/divider-DcEj-C2P.cjs.map +1 -0
  49. package/dist/divider-DzwD07xW.js +103 -0
  50. package/dist/divider-DzwD07xW.js.map +1 -0
  51. package/dist/divider.cjs +1 -1
  52. package/dist/divider.js +1 -1
  53. package/dist/{form-CAYrAoRv.js → form-DG0Kj--R.js} +2 -2
  54. package/dist/{form-CAYrAoRv.js.map → form-DG0Kj--R.js.map} +1 -1
  55. package/dist/{form-plr-eJPP.cjs → form-DpOSrAUQ.cjs} +2 -2
  56. package/dist/{form-plr-eJPP.cjs.map → form-DpOSrAUQ.cjs.map} +1 -1
  57. package/dist/form.cjs +1 -1
  58. package/dist/form.js +1 -1
  59. package/dist/{icon-PqOCyozA.js → icon-B9PnKxEE.js} +3 -3
  60. package/dist/{icon-PqOCyozA.js.map → icon-B9PnKxEE.js.map} +1 -1
  61. package/dist/{icon-BzX7n6-d.cjs → icon-alyJW9vl.cjs} +2 -2
  62. package/dist/{icon-BzX7n6-d.cjs.map → icon-alyJW9vl.cjs.map} +1 -1
  63. package/dist/{icon-button-Cw5m-xoA.js → icon-button-CJwbffPV.js} +3 -3
  64. package/dist/{icon-button-Cw5m-xoA.js.map → icon-button-CJwbffPV.js.map} +1 -1
  65. package/dist/{icon-button-DEmmjVam.cjs → icon-button-D__Gnjzi.cjs} +2 -2
  66. package/dist/{icon-button-DEmmjVam.cjs.map → icon-button-D__Gnjzi.cjs.map} +1 -1
  67. package/dist/icons.cjs +1 -1
  68. package/dist/icons.js +1 -1
  69. package/dist/index.cjs +1 -1
  70. package/dist/index.js +29 -29
  71. package/dist/{input-CziCM1iP.cjs → input-BgnA2aM_.cjs} +2 -2
  72. package/dist/{input-CziCM1iP.cjs.map → input-BgnA2aM_.cjs.map} +1 -1
  73. package/dist/{input-suNgHap8.js → input-C50UsaQY.js} +2 -2
  74. package/dist/{input-suNgHap8.js.map → input-C50UsaQY.js.map} +1 -1
  75. package/dist/input.cjs +1 -1
  76. package/dist/input.js +1 -1
  77. package/dist/layout.cjs +1 -1
  78. package/dist/layout.js +1 -1
  79. package/dist/list.cjs +1 -1
  80. package/dist/list.js +1 -1
  81. package/dist/{litElement.mixin-B6SmKh9a.cjs → litElement.mixin-dosTHO0i.cjs} +2 -2
  82. package/dist/{litElement.mixin-B6SmKh9a.cjs.map → litElement.mixin-dosTHO0i.cjs.map} +1 -1
  83. package/dist/{litElement.mixin-Bl038NZS.js → litElement.mixin-kW4tqV-x.js} +2 -2
  84. package/dist/{litElement.mixin-Bl038NZS.js.map → litElement.mixin-kW4tqV-x.js.map} +1 -1
  85. package/dist/{menu-Cysa0uSH.js → menu-BPkKjcYr.js} +3 -3
  86. package/dist/{menu-Cysa0uSH.js.map → menu-BPkKjcYr.js.map} +1 -1
  87. package/dist/{menu-BuPKQu4A.cjs → menu-CjJdA5e1.cjs} +2 -2
  88. package/dist/{menu-BuPKQu4A.cjs.map → menu-CjJdA5e1.cjs.map} +1 -1
  89. package/dist/menu.cjs +1 -1
  90. package/dist/menu.js +1 -1
  91. package/dist/nav-drawer.cjs +1 -1
  92. package/dist/nav-drawer.js +1 -1
  93. package/dist/notification.cjs +1 -1
  94. package/dist/notification.js +1 -1
  95. package/dist/{option-BPPuRGqZ.js → option-Cf4MQSvl.js} +2 -2
  96. package/dist/{option-BPPuRGqZ.js.map → option-Cf4MQSvl.js.map} +1 -1
  97. package/dist/{option-BgkpZebg.cjs → option-DKovQczU.cjs} +2 -2
  98. package/dist/{option-BgkpZebg.cjs.map → option-DKovQczU.cjs.map} +1 -1
  99. package/dist/option.cjs +1 -1
  100. package/dist/option.js +1 -1
  101. package/dist/{outlet-BwnJ-qSb.cjs → outlet-Dajn35eu.cjs} +2 -2
  102. package/dist/{outlet-BwnJ-qSb.cjs.map → outlet-Dajn35eu.cjs.map} +1 -1
  103. package/dist/{outlet-DOGHb9XN.js → outlet-LHeYRUMN.js} +2 -2
  104. package/dist/{outlet-DOGHb9XN.js.map → outlet-LHeYRUMN.js.map} +1 -1
  105. package/dist/{payment-card-form-CLPTnEZc.js → payment-card-form-BwoSr0gi.js} +3 -3
  106. package/dist/{payment-card-form-CLPTnEZc.js.map → payment-card-form-BwoSr0gi.js.map} +1 -1
  107. package/dist/{payment-card-form-CxPeik8X.cjs → payment-card-form-LKu9PsnX.cjs} +2 -2
  108. package/dist/{payment-card-form-CxPeik8X.cjs.map → payment-card-form-LKu9PsnX.cjs.map} +1 -1
  109. package/dist/{radio-group-BQ9pnKtl.js → radio-group-Czi9ftHc.js} +2 -2
  110. package/dist/{radio-group-BQ9pnKtl.js.map → radio-group-Czi9ftHc.js.map} +1 -1
  111. package/dist/{radio-group-BoYOkPtY.cjs → radio-group-DyYcHKuk.cjs} +2 -2
  112. package/dist/{radio-group-BoYOkPtY.cjs.map → radio-group-DyYcHKuk.cjs.map} +1 -1
  113. package/dist/radio-group.cjs +1 -1
  114. package/dist/radio-group.js +1 -1
  115. package/dist/{scroll-BPSgAOxA.cjs → scroll-2nVgiEne.cjs} +2 -2
  116. package/dist/{scroll-BPSgAOxA.cjs.map → scroll-2nVgiEne.cjs.map} +1 -1
  117. package/dist/{scroll-CAn_o-0U.js → scroll-Kw278kXe.js} +2 -2
  118. package/dist/{scroll-CAn_o-0U.js.map → scroll-Kw278kXe.js.map} +1 -1
  119. package/dist/{select-CoU9pdWP.js → select-Bo8t1cUG.js} +3 -3
  120. package/dist/{select-CoU9pdWP.js.map → select-Bo8t1cUG.js.map} +1 -1
  121. package/dist/{select-CGt7bHnh.cjs → select-Brg9GSgM.cjs} +2 -2
  122. package/dist/{select-CGt7bHnh.cjs.map → select-Brg9GSgM.cjs.map} +1 -1
  123. package/dist/select.cjs +1 -1
  124. package/dist/select.js +1 -1
  125. package/dist/{sheet-DUJN3380.cjs → sheet-Cn9oyd09.cjs} +2 -2
  126. package/dist/{sheet-DUJN3380.cjs.map → sheet-Cn9oyd09.cjs.map} +1 -1
  127. package/dist/{sheet-BlzQ1N1K.js → sheet-m3ssA8RK.js} +3 -3
  128. package/dist/{sheet-BlzQ1N1K.js.map → sheet-m3ssA8RK.js.map} +1 -1
  129. package/dist/sheet.cjs +1 -1
  130. package/dist/sheet.js +1 -1
  131. package/dist/{slider-BknvMw5c.cjs → slider-C3u39UVs.cjs} +2 -2
  132. package/dist/{slider-BknvMw5c.cjs.map → slider-C3u39UVs.cjs.map} +1 -1
  133. package/dist/{slider-CII4GjxO.js → slider-DiOhZu0e.js} +3 -3
  134. package/dist/{slider-CII4GjxO.js.map → slider-DiOhZu0e.js.map} +1 -1
  135. package/dist/slider.cjs +1 -1
  136. package/dist/slider.js +1 -1
  137. package/dist/{spinner-CyrVjD7v.cjs → spinner-CB8tYfyA.cjs} +2 -2
  138. package/dist/{spinner-CyrVjD7v.cjs.map → spinner-CB8tYfyA.cjs.map} +1 -1
  139. package/dist/{spinner-MLhIt_0Y.js → spinner-DVKR6oPO.js} +2 -2
  140. package/dist/{spinner-MLhIt_0Y.js.map → spinner-DVKR6oPO.js.map} +1 -1
  141. package/dist/{surface-D0z5a4By.cjs → surface-COQfLMIb.cjs} +2 -2
  142. package/dist/{surface-D0z5a4By.cjs.map → surface-COQfLMIb.cjs.map} +1 -1
  143. package/dist/{surface-C392eVps.js → surface-_g6PVKz9.js} +2 -2
  144. package/dist/{surface-C392eVps.js.map → surface-_g6PVKz9.js.map} +1 -1
  145. package/dist/surface.cjs +1 -1
  146. package/dist/surface.js +1 -1
  147. package/dist/{table-Bt69Tb74.js → table-CA_AEMW3.js} +2 -2
  148. package/dist/{table-Bt69Tb74.js.map → table-CA_AEMW3.js.map} +1 -1
  149. package/dist/{table-DIgzwejX.cjs → table-XZOjesmO.cjs} +2 -2
  150. package/dist/{table-DIgzwejX.cjs.map → table-XZOjesmO.cjs.map} +1 -1
  151. package/dist/table.cjs +1 -1
  152. package/dist/table.js +1 -1
  153. package/dist/{tabs-group-CNVQ79vr.cjs → tabs-group-BtUOhq-i.cjs} +2 -2
  154. package/dist/{tabs-group-CNVQ79vr.cjs.map → tabs-group-BtUOhq-i.cjs.map} +1 -1
  155. package/dist/{tabs-group-MuRUioRb.js → tabs-group-D-TEYc2v.js} +2 -2
  156. package/dist/{tabs-group-MuRUioRb.js.map → tabs-group-D-TEYc2v.js.map} +1 -1
  157. package/dist/tabs.cjs +1 -1
  158. package/dist/tabs.js +1 -1
  159. package/dist/tailwind.mixin-D6m-sJmB.js +43 -0
  160. package/dist/{tailwind.mixin-CP8BNFiT.js.map → tailwind.mixin-D6m-sJmB.js.map} +1 -1
  161. package/dist/tailwind.mixin-Dts5Uk3L.cjs +2 -0
  162. package/dist/{tailwind.mixin-698watWc.cjs.map → tailwind.mixin-Dts5Uk3L.cjs.map} +1 -1
  163. package/dist/teleport.cjs +1 -1
  164. package/dist/teleport.js +1 -1
  165. package/dist/{textarea-DtJZWSOR.js → textarea-BppTG7vC.js} +2 -2
  166. package/dist/{textarea-DtJZWSOR.js.map → textarea-BppTG7vC.js.map} +1 -1
  167. package/dist/{textarea-vpqfN_nJ.cjs → textarea-DRm-XQyj.cjs} +2 -2
  168. package/dist/{textarea-vpqfN_nJ.cjs.map → textarea-DRm-XQyj.cjs.map} +1 -1
  169. package/dist/textarea.cjs +1 -1
  170. package/dist/textarea.js +1 -1
  171. package/dist/{theme-button-BMLzTEhF.js → theme-button-DzFDka_m.js} +31 -31
  172. package/dist/{theme-button-BMLzTEhF.js.map → theme-button-DzFDka_m.js.map} +1 -1
  173. package/dist/{theme-button-BAN6lRyQ.cjs → theme-button-puqIJC3M.cjs} +2 -2
  174. package/dist/{theme-button-BAN6lRyQ.cjs.map → theme-button-puqIJC3M.cjs.map} +1 -1
  175. package/dist/theme-button.cjs +1 -1
  176. package/dist/theme-button.js +1 -1
  177. package/dist/{tree-BL9F_EMi.cjs → tree-BxpWT4HG.cjs} +2 -2
  178. package/dist/{tree-BL9F_EMi.cjs.map → tree-BxpWT4HG.cjs.map} +1 -1
  179. package/dist/{tree-CLsU6ZKr.js → tree-F8M_QD0f.js} +2 -2
  180. package/dist/{tree-CLsU6ZKr.js.map → tree-F8M_QD0f.js.map} +1 -1
  181. package/dist/tree.cjs +1 -1
  182. package/dist/tree.js +1 -1
  183. package/dist/{typewriter-D-1_zpWl.js → typewriter-CM8Islpn.js} +3 -3
  184. package/dist/{typewriter-D-1_zpWl.js.map → typewriter-CM8Islpn.js.map} +1 -1
  185. package/dist/{typewriter-Co1pVwUH.cjs → typewriter-D0yYoTg6.cjs} +2 -2
  186. package/dist/{typewriter-Co1pVwUH.cjs.map → typewriter-D0yYoTg6.cjs.map} +1 -1
  187. package/dist/typewriter.cjs +1 -1
  188. package/dist/typewriter.js +1 -1
  189. package/dist/{typography-Bgl5OsmY.js → typography-DFnAG6mR.js} +2 -2
  190. package/dist/{typography-Bgl5OsmY.js.map → typography-DFnAG6mR.js.map} +1 -1
  191. package/dist/{typography-CnXlSOz8.cjs → typography-Depf5xNK.cjs} +2 -2
  192. package/dist/{typography-CnXlSOz8.cjs.map → typography-Depf5xNK.cjs.map} +1 -1
  193. package/dist/typography.cjs +1 -1
  194. package/dist/typography.js +1 -1
  195. package/package.json +1 -1
  196. package/types/src/divider/divider.d.ts +2 -1
  197. package/dist/divider-DxinuVg5.js +0 -34
  198. package/dist/divider-DxinuVg5.js.map +0 -1
  199. package/dist/divider-xYxX2ecE.cjs +0 -14
  200. package/dist/divider-xYxX2ecE.cjs.map +0 -1
  201. package/dist/tailwind.mixin-698watWc.cjs +0 -2
  202. package/dist/tailwind.mixin-CP8BNFiT.js +0 -43
package/dist/chips.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";require("./chips-DO738Kv9.cjs");
1
+ "use strict";require("./chips-DjiRqUBT.cjs");
2
2
  //# sourceMappingURL=chips.cjs.map
package/dist/chips.js CHANGED
@@ -1,2 +1,2 @@
1
- import "./chips-B71IFtJB.js";
1
+ import "./chips-BkjDE2Cx.js";
2
2
  //# sourceMappingURL=chips.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./payment-card-form-CxPeik8X.cjs");Object.defineProperty(exports,"SchmancyPaymentCardForm",{enumerable:!0,get:()=>e.SchmancyPaymentCardForm});
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./payment-card-form-LKu9PsnX.cjs");Object.defineProperty(exports,"SchmancyPaymentCardForm",{enumerable:!0,get:()=>e.SchmancyPaymentCardForm});
2
2
  //# sourceMappingURL=components.cjs.map
@@ -1,4 +1,4 @@
1
- import { S as r } from "./payment-card-form-CLPTnEZc.js";
1
+ import { S as r } from "./payment-card-form-BwoSr0gi.js";
2
2
  export {
3
3
  r as SchmancyPaymentCardForm
4
4
  };
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./theme-button-BAN6lRyQ.cjs");Object.defineProperty(exports,"SchmancyContentDrawer",{enumerable:!0,get:()=>e.SchmancyContentDrawer}),exports.SchmancyContentDrawerID=e.SchmancyContentDrawerID,Object.defineProperty(exports,"SchmancyContentDrawerMain",{enumerable:!0,get:()=>e.SchmancyContentDrawerMain}),exports.SchmancyContentDrawerMaxHeight=e.SchmancyContentDrawerMaxHeight,exports.SchmancyContentDrawerMinWidth=e.SchmancyContentDrawerMinWidth,Object.defineProperty(exports,"SchmancyContentDrawerSheet",{enumerable:!0,get:()=>e.SchmancyContentDrawerSheet}),exports.SchmancyContentDrawerSheetMode=e.SchmancyContentDrawerSheetMode,exports.SchmancyContentDrawerSheetState=e.SchmancyContentDrawerSheetState,exports.schmancyContentDrawer=e.schmancyContentDrawer;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./theme-button-puqIJC3M.cjs");Object.defineProperty(exports,"SchmancyContentDrawer",{enumerable:!0,get:()=>e.SchmancyContentDrawer}),exports.SchmancyContentDrawerID=e.SchmancyContentDrawerID,Object.defineProperty(exports,"SchmancyContentDrawerMain",{enumerable:!0,get:()=>e.SchmancyContentDrawerMain}),exports.SchmancyContentDrawerMaxHeight=e.SchmancyContentDrawerMaxHeight,exports.SchmancyContentDrawerMinWidth=e.SchmancyContentDrawerMinWidth,Object.defineProperty(exports,"SchmancyContentDrawerSheet",{enumerable:!0,get:()=>e.SchmancyContentDrawerSheet}),exports.SchmancyContentDrawerSheetMode=e.SchmancyContentDrawerSheetMode,exports.SchmancyContentDrawerSheetState=e.SchmancyContentDrawerSheetState,exports.schmancyContentDrawer=e.schmancyContentDrawer;
2
2
  //# sourceMappingURL=content-drawer.cjs.map
@@ -1,4 +1,4 @@
1
- import { e as n, b as t, f as r, c, d as h, g as S, S as o, a as s, s as m } from "./theme-button-BMLzTEhF.js";
1
+ import { e as n, b as t, f as r, c, d as h, g as S, S as o, a as s, s as m } from "./theme-button-DzFDka_m.js";
2
2
  export {
3
3
  n as SchmancyContentDrawer,
4
4
  t as SchmancyContentDrawerID,
@@ -1,8 +1,8 @@
1
1
  import "rxjs";
2
2
  import "lit/directives/class-map.js";
3
3
  import "lit/directives/style-map.js";
4
- import { $ as l } from "./litElement.mixin-Bl038NZS.js";
5
- import "./tailwind.mixin-CP8BNFiT.js";
4
+ import { $ as l } from "./litElement.mixin-kW4tqV-x.js";
5
+ import "./tailwind.mixin-D6m-sJmB.js";
6
6
  import { html as h } from "lit";
7
7
  import { property as m, query as c, state as D, customElement as p } from "lit/decorators.js";
8
8
  import { ifDefined as u } from "lit/directives/if-defined.js";
@@ -109,4 +109,4 @@ let s = class extends l() {
109
109
  }
110
110
  };
111
111
  o([m({ type: String })], s.prototype, "type", 2), o([m({ type: Object })], s.prototype, "dateFrom", 2), o([m({ type: Object })], s.prototype, "dateTo", 2), o([c("#checkin")], s.prototype, "checkInInput", 2), o([c("#checkout")], s.prototype, "checkOutInput", 2), o([m({ type: String })], s.prototype, "minDate", 2), o([m({ type: String })], s.prototype, "maxDate", 2), o([c("schmancy-menu")], s.prototype, "schmancyMenu", 2), o([D()], s.prototype, "selectedDateRange", 2), s = o([p("schmancy-date-range")], s);
112
- //# sourceMappingURL=date-range-Dbj5qwzm.js.map
112
+ //# sourceMappingURL=date-range-BIdEZhGK.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-range-Dbj5qwzm.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@customElement('schmancy-date-range')\nexport default class SwiftHRAdminDateRange extends $LitElement() {\n\t@property({ type: String }) type: 'date' | 'datetime' = 'date'\n\t@property({ type: Object }) dateFrom!: {\n\t\tlabel: string\n\t\tvalue: string\n\t}\n\t@property({ type: Object }) dateTo!: {\n\t\tlabel: string\n\t\tvalue: string\n\t}\n\n\t@query('#checkin') checkInInput!: HTMLInputElement\n\t@query('#checkout') checkOutInput!: HTMLInputElement\n\n\t@property({ type: String }) minDate: string | undefined\n\t@property({ type: String }) maxDate!: string | undefined\n\t@query('schmancy-menu') schmancyMenu!: SchmancyMenu\n\n\t@state() selectedDateRange: string = 'Today'\n\n\tpresetRanges!: Array<{\n\t\tlabel: string\n\t\trange: {\n\t\t\tdateFrom: string\n\t\t\tdateTo: string\n\t\t}\n\t\tstep: moment.unitOfTime.DurationConstructor | moment.unitOfTime._isoWeek\n\t\tselected?: boolean\n\t}>\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\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()\n\t\t\t\t\t\t.subtract(1, 'days')\n\t\t\t\t\t\t.startOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.subtract(1, 'days')\n\t\t\t\t\t\t.endOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\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()\n\t\t\t\t\t\t.startOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\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()\n\t\t\t\t\t\t.startOf('week')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('week')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'weeks',\n\t\t\t},\n\t\t\t// last week\n\t\t\t{\n\t\t\t\tlabel: 'Last Week',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment()\n\t\t\t\t\t\t.subtract(1, 'weeks')\n\t\t\t\t\t\t.startOf('isoWeek')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.subtract(1, 'weeks')\n\t\t\t\t\t\t.endOf('isoWeek')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'weeks',\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()\n\t\t\t\t\t\t.startOf('month')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('month')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'month',\n\t\t\t},\n\t\t\t// { label: \"Custom\", range: () => this.setCustomRange() },\n\t\t]\n\t\t// set the state selectedDateRange based on the dateFrom and dateTo values\n\t\tconst preset = this.presetRanges.find(\n\t\t\trange => range.range.dateFrom === this.dateFrom.value && range.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\tthis.selectedDateRange = moment(this.dateFrom.value)\n\t\t\t\t.format('MMM DD, YYYY')\n\t\t\t\t.concat(' To ', moment(this.dateTo.value).format('MMM DD, YYYY'))\n\t\t}\n\t}\n\n\tsetDateRange(fromDate: string, toDate: string) {\n\t\tthis.dateFrom.value = fromDate\n\t\tthis.dateTo.value = toDate\n\t\tthis.dispatchEvent(\n\t\t\tnew CustomEvent<TSchmancDateRangePayload>('change', {\n\t\t\t\tdetail: {\n\t\t\t\t\tdateFrom: this.dateFrom.value,\n\t\t\t\t\tdateTo: this.dateTo.value,\n\t\t\t\t},\n\t\t\t}),\n\t\t)\n\t\tthis.requestUpdate()\n\t}\n\n\thandlePresetChange(presetLabel: string) {\n\t\tconst preset = this.presetRanges.find(range => range.label === presetLabel)\n\t\tif (preset) {\n\t\t\tconst { dateFrom, dateTo } = preset.range\n\t\t\tthis.setDateRange(dateFrom, dateTo)\n\t\t\tthis.selectedDateRange = presetLabel\n\t\t}\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<div class=\"date-range-selector relative\">\n\t\t\t\t<schmancy-menu class=\"z-100 w-max\">\n\t\t\t\t\t<schmancy-grid slot=\"button\" align=\"center\" cols=\"auto 1fr auto\">\n\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t// Calculate the difference between dateFrom and dateTo in days\n\t\t\t\t\t\t\t\tconst dateDiff = moment(this.dateTo.value).diff(moment(this.dateFrom.value), 'days') || 1\n\n\t\t\t\t\t\t\t\t// Subtract the date difference from both dateFrom and dateTo\n\t\t\t\t\t\t\t\tthis.dateFrom.value = moment(this.dateFrom.value)\n\t\t\t\t\t\t\t\t\t.subtract(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\tthis.dateTo.value = moment(this.dateTo.value)\n\t\t\t\t\t\t\t\t\t.subtract(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\t// Call the function to handle the date range change\n\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tarrow_left\n\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t<schmancy-button class=\"w-max\" variant=\"outlined\" type=\"button\"\n\t\t\t\t\t\t\t>${this.selectedDateRange || 'Date range'}\n\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t// Calculate the difference between dateFrom and dateTo in days\n\t\t\t\t\t\t\t\tconst dateDiff = moment(this.dateTo.value).diff(moment(this.dateFrom.value), 'days') || 1\n\n\t\t\t\t\t\t\t\t// Add the date difference to both dateFrom and dateTo\n\t\t\t\t\t\t\t\tthis.dateFrom.value = moment(this.dateFrom.value)\n\t\t\t\t\t\t\t\t\t.add(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\tthis.dateTo.value = moment(this.dateTo.value)\n\t\t\t\t\t\t\t\t\t.add(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\t// Call the function to handle the date range change\n\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>arrow_right</schmancy-icon-button\n\t\t\t\t\t\t>\n\t\t\t\t\t</schmancy-grid>\n\n\t\t\t\t\t<schmancy-surface elevation=\"2\">\n\t\t\t\t\t\t${this.presetRanges.map(\n\t\t\t\t\t\t\tpreset => html`\n\t\t\t\t\t\t\t\t<schmancy-menu-item class=\"w-full\" @click=${() => this.handlePresetChange(preset.label)}>\n\t\t\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\t\t</schmancy-menu-item>\n\t\t\t\t\t\t\t`,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<schmancy-grid gap=\"sm\" flow=\"row\" class=\"p-4\">\n\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\tid=\"checkin\"\n\t\t\t\t\t\t\t\tmin=${ifDefined(this.minDate)}\n\t\t\t\t\t\t\t\ttype=${this.type}\n\t\t\t\t\t\t\t\tlabel=\"${this.dateFrom.label}\"\n\t\t\t\t\t\t\t\t.value=${this.dateFrom.value}\n\t\t\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\t\t\tconst selectedDate = moment(\n\t\t\t\t\t\t\t\t\t\tevent.detail.value,\n\t\t\t\t\t\t\t\t\t\tthis.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm',\n\t\t\t\t\t\t\t\t\t).format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\t\t\t\t\t\t\t\t\tthis.dateFrom.value = selectedDate\n\t\t\t\t\t\t\t\t\tconst minDateStr = selectedDate\n\t\t\t\t\t\t\t\t\tthis.checkOutInput.setAttribute('min', minDateStr)\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t></schmancy-input>\n\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\tid=\"checkout\"\n\t\t\t\t\t\t\t\ttype=${this.type}\n\t\t\t\t\t\t\t\tlabel=\"${this.dateTo.label}\"\n\t\t\t\t\t\t\t\t.value=${this.dateTo.value}\n\t\t\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\t\t\tthis.dateTo.value = moment(\n\t\t\t\t\t\t\t\t\t\tevent.detail.value,\n\t\t\t\t\t\t\t\t\t\tthis.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm',\n\t\t\t\t\t\t\t\t\t).format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t></schmancy-input>\n\n\t\t\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\t\t\tvariant=\"outlined\"\n\t\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tApply\n\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t</schmancy-grid>\n\t\t\t\t\t</schmancy-surface>\n\t\t\t\t</schmancy-menu>\n\t\t\t</div>\n\t\t`\n\t}\n\n\thandleDateRangeChange() {\n\t\tthis.setDateRange(this.dateFrom.value, this.dateTo.value)\n\t\t// check if the selected date range is a preset\n\t\tconst preset = this.presetRanges.find(\n\t\t\trange => range.range.dateFrom === this.dateFrom.value && range.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\tthis.selectedDateRange = moment(this.dateFrom.value)\n\t\t\t\t.format(this.type === 'date' ? 'MMM DD, YYYY' : 'MMM DD, YYYY hh:mm A')\n\t\t\t\t.concat(' - ', moment(this.dateTo.value).format(this.type === 'date' ? 'MMM DD, YYYY' : 'MMM DD, YYYY hh:mm A'))\n\t\t\tthis.schmancyMenu.open = false\n\t\t}\n\t}\n}\n\nexport type SchmancyDateRangeChangeEvent = CustomEvent<TSchmancDateRangePayload>\ntype TSchmancDateRangePayload = {\n\tdateFrom?: string\n\tdateTo?: string\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-date-range': SwiftHRAdminDateRange\n\t}\n}\n"],"names":["SwiftHRAdminDateRange","$LitElement","constructor","super","arguments","this","type","selectedDateRange","connectedCallback","presetRanges","label","range","dateFrom","moment","subtract","startOf","format","dateTo","endOf","step","preset","find","value","concat","fromDate","toDate","dispatchEvent","CustomEvent","detail","requestUpdate","presetLabel","setDateRange","render","html","e","preventDefault","stopPropagation","dateDiff","diff","handleDateRangeChange","add","map","handlePresetChange","ifDefined","minDate","event","selectedDate","minDateStr","checkOutInput","setAttribute","schmancyMenu","open","__decorateClass","property","String","prototype","Object","query","state","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"date-range-BIdEZhGK.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@customElement('schmancy-date-range')\nexport default class SwiftHRAdminDateRange extends $LitElement() {\n\t@property({ type: String }) type: 'date' | 'datetime' = 'date'\n\t@property({ type: Object }) dateFrom!: {\n\t\tlabel: string\n\t\tvalue: string\n\t}\n\t@property({ type: Object }) dateTo!: {\n\t\tlabel: string\n\t\tvalue: string\n\t}\n\n\t@query('#checkin') checkInInput!: HTMLInputElement\n\t@query('#checkout') checkOutInput!: HTMLInputElement\n\n\t@property({ type: String }) minDate: string | undefined\n\t@property({ type: String }) maxDate!: string | undefined\n\t@query('schmancy-menu') schmancyMenu!: SchmancyMenu\n\n\t@state() selectedDateRange: string = 'Today'\n\n\tpresetRanges!: Array<{\n\t\tlabel: string\n\t\trange: {\n\t\t\tdateFrom: string\n\t\t\tdateTo: string\n\t\t}\n\t\tstep: moment.unitOfTime.DurationConstructor | moment.unitOfTime._isoWeek\n\t\tselected?: boolean\n\t}>\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\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()\n\t\t\t\t\t\t.subtract(1, 'days')\n\t\t\t\t\t\t.startOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.subtract(1, 'days')\n\t\t\t\t\t\t.endOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\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()\n\t\t\t\t\t\t.startOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\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()\n\t\t\t\t\t\t.startOf('week')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('week')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'weeks',\n\t\t\t},\n\t\t\t// last week\n\t\t\t{\n\t\t\t\tlabel: 'Last Week',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment()\n\t\t\t\t\t\t.subtract(1, 'weeks')\n\t\t\t\t\t\t.startOf('isoWeek')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.subtract(1, 'weeks')\n\t\t\t\t\t\t.endOf('isoWeek')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'weeks',\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()\n\t\t\t\t\t\t.startOf('month')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('month')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'month',\n\t\t\t},\n\t\t\t// { label: \"Custom\", range: () => this.setCustomRange() },\n\t\t]\n\t\t// set the state selectedDateRange based on the dateFrom and dateTo values\n\t\tconst preset = this.presetRanges.find(\n\t\t\trange => range.range.dateFrom === this.dateFrom.value && range.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\tthis.selectedDateRange = moment(this.dateFrom.value)\n\t\t\t\t.format('MMM DD, YYYY')\n\t\t\t\t.concat(' To ', moment(this.dateTo.value).format('MMM DD, YYYY'))\n\t\t}\n\t}\n\n\tsetDateRange(fromDate: string, toDate: string) {\n\t\tthis.dateFrom.value = fromDate\n\t\tthis.dateTo.value = toDate\n\t\tthis.dispatchEvent(\n\t\t\tnew CustomEvent<TSchmancDateRangePayload>('change', {\n\t\t\t\tdetail: {\n\t\t\t\t\tdateFrom: this.dateFrom.value,\n\t\t\t\t\tdateTo: this.dateTo.value,\n\t\t\t\t},\n\t\t\t}),\n\t\t)\n\t\tthis.requestUpdate()\n\t}\n\n\thandlePresetChange(presetLabel: string) {\n\t\tconst preset = this.presetRanges.find(range => range.label === presetLabel)\n\t\tif (preset) {\n\t\t\tconst { dateFrom, dateTo } = preset.range\n\t\t\tthis.setDateRange(dateFrom, dateTo)\n\t\t\tthis.selectedDateRange = presetLabel\n\t\t}\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<div class=\"date-range-selector relative\">\n\t\t\t\t<schmancy-menu class=\"z-100 w-max\">\n\t\t\t\t\t<schmancy-grid slot=\"button\" align=\"center\" cols=\"auto 1fr auto\">\n\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t// Calculate the difference between dateFrom and dateTo in days\n\t\t\t\t\t\t\t\tconst dateDiff = moment(this.dateTo.value).diff(moment(this.dateFrom.value), 'days') || 1\n\n\t\t\t\t\t\t\t\t// Subtract the date difference from both dateFrom and dateTo\n\t\t\t\t\t\t\t\tthis.dateFrom.value = moment(this.dateFrom.value)\n\t\t\t\t\t\t\t\t\t.subtract(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\tthis.dateTo.value = moment(this.dateTo.value)\n\t\t\t\t\t\t\t\t\t.subtract(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\t// Call the function to handle the date range change\n\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tarrow_left\n\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t<schmancy-button class=\"w-max\" variant=\"outlined\" type=\"button\"\n\t\t\t\t\t\t\t>${this.selectedDateRange || 'Date range'}\n\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t// Calculate the difference between dateFrom and dateTo in days\n\t\t\t\t\t\t\t\tconst dateDiff = moment(this.dateTo.value).diff(moment(this.dateFrom.value), 'days') || 1\n\n\t\t\t\t\t\t\t\t// Add the date difference to both dateFrom and dateTo\n\t\t\t\t\t\t\t\tthis.dateFrom.value = moment(this.dateFrom.value)\n\t\t\t\t\t\t\t\t\t.add(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\tthis.dateTo.value = moment(this.dateTo.value)\n\t\t\t\t\t\t\t\t\t.add(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\t// Call the function to handle the date range change\n\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>arrow_right</schmancy-icon-button\n\t\t\t\t\t\t>\n\t\t\t\t\t</schmancy-grid>\n\n\t\t\t\t\t<schmancy-surface elevation=\"2\">\n\t\t\t\t\t\t${this.presetRanges.map(\n\t\t\t\t\t\t\tpreset => html`\n\t\t\t\t\t\t\t\t<schmancy-menu-item class=\"w-full\" @click=${() => this.handlePresetChange(preset.label)}>\n\t\t\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\t\t</schmancy-menu-item>\n\t\t\t\t\t\t\t`,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<schmancy-grid gap=\"sm\" flow=\"row\" class=\"p-4\">\n\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\tid=\"checkin\"\n\t\t\t\t\t\t\t\tmin=${ifDefined(this.minDate)}\n\t\t\t\t\t\t\t\ttype=${this.type}\n\t\t\t\t\t\t\t\tlabel=\"${this.dateFrom.label}\"\n\t\t\t\t\t\t\t\t.value=${this.dateFrom.value}\n\t\t\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\t\t\tconst selectedDate = moment(\n\t\t\t\t\t\t\t\t\t\tevent.detail.value,\n\t\t\t\t\t\t\t\t\t\tthis.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm',\n\t\t\t\t\t\t\t\t\t).format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\t\t\t\t\t\t\t\t\tthis.dateFrom.value = selectedDate\n\t\t\t\t\t\t\t\t\tconst minDateStr = selectedDate\n\t\t\t\t\t\t\t\t\tthis.checkOutInput.setAttribute('min', minDateStr)\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t></schmancy-input>\n\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\tid=\"checkout\"\n\t\t\t\t\t\t\t\ttype=${this.type}\n\t\t\t\t\t\t\t\tlabel=\"${this.dateTo.label}\"\n\t\t\t\t\t\t\t\t.value=${this.dateTo.value}\n\t\t\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\t\t\tthis.dateTo.value = moment(\n\t\t\t\t\t\t\t\t\t\tevent.detail.value,\n\t\t\t\t\t\t\t\t\t\tthis.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm',\n\t\t\t\t\t\t\t\t\t).format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t></schmancy-input>\n\n\t\t\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\t\t\tvariant=\"outlined\"\n\t\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tApply\n\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t</schmancy-grid>\n\t\t\t\t\t</schmancy-surface>\n\t\t\t\t</schmancy-menu>\n\t\t\t</div>\n\t\t`\n\t}\n\n\thandleDateRangeChange() {\n\t\tthis.setDateRange(this.dateFrom.value, this.dateTo.value)\n\t\t// check if the selected date range is a preset\n\t\tconst preset = this.presetRanges.find(\n\t\t\trange => range.range.dateFrom === this.dateFrom.value && range.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\tthis.selectedDateRange = moment(this.dateFrom.value)\n\t\t\t\t.format(this.type === 'date' ? 'MMM DD, YYYY' : 'MMM DD, YYYY hh:mm A')\n\t\t\t\t.concat(' - ', moment(this.dateTo.value).format(this.type === 'date' ? 'MMM DD, YYYY' : 'MMM DD, YYYY hh:mm A'))\n\t\t\tthis.schmancyMenu.open = false\n\t\t}\n\t}\n}\n\nexport type SchmancyDateRangeChangeEvent = CustomEvent<TSchmancDateRangePayload>\ntype TSchmancDateRangePayload = {\n\tdateFrom?: string\n\tdateTo?: string\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-date-range': SwiftHRAdminDateRange\n\t}\n}\n"],"names":["SwiftHRAdminDateRange","$LitElement","constructor","super","arguments","this","type","selectedDateRange","connectedCallback","presetRanges","label","range","dateFrom","moment","subtract","startOf","format","dateTo","endOf","step","preset","find","value","concat","fromDate","toDate","dispatchEvent","CustomEvent","detail","requestUpdate","presetLabel","setDateRange","render","html","e","preventDefault","stopPropagation","dateDiff","diff","handleDateRangeChange","add","map","handlePresetChange","ifDefined","minDate","event","selectedDate","minDateStr","checkOutInput","setAttribute","schmancyMenu","open","__decorateClass","property","String","prototype","Object","query","state","customElement"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- "use strict";require("rxjs"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const c=require("./litElement.mixin-B6SmKh9a.cjs");require("./tailwind.mixin-698watWc.cjs");const m=require("lit"),r=require("lit/decorators.js"),l=require("lit/directives/if-defined.js"),a=require("moment");var D=Object.defineProperty,u=Object.getOwnPropertyDescriptor,n=(e,t,o,i)=>{for(var d,Y=i>1?void 0:i?u(t,o):t,h=e.length-1;h>=0;h--)(d=e[h])&&(Y=(i?d(t,o,Y):d(Y))||Y);return i&&Y&&D(t,o,Y),Y};let s=class extends c.$LitElement(){constructor(){super(...arguments),this.type="date",this.selectedDateRange="Today"}connectedCallback(){super.connectedCallback(),this.presetRanges=[{label:"Yesterday",range:{dateFrom:a().subtract(1,"days").startOf("day").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm"),dateTo:a().subtract(1,"days").endOf("day").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm")},step:"day"},{label:"Today",range:{dateFrom:a().startOf("day").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm"),dateTo:a().endOf("day").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm")},step:"day"},{label:"This Week",range:{dateFrom:a().startOf("week").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm"),dateTo:a().endOf("week").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm")},step:"weeks"},{label:"Last Week",range:{dateFrom:a().subtract(1,"weeks").startOf("isoWeek").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm"),dateTo:a().subtract(1,"weeks").endOf("isoWeek").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm")},step:"weeks"},{label:"This Month",range:{dateFrom:a().startOf("month").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm"),dateTo:a().endOf("month").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm")},step:"month"}];const e=this.presetRanges.find(t=>t.range.dateFrom===this.dateFrom.value&&t.range.dateTo===this.dateTo.value);this.selectedDateRange=e?e.label:a(this.dateFrom.value).format("MMM DD, YYYY").concat(" To ",a(this.dateTo.value).format("MMM DD, YYYY"))}setDateRange(e,t){this.dateFrom.value=e,this.dateTo.value=t,this.dispatchEvent(new CustomEvent("change",{detail:{dateFrom:this.dateFrom.value,dateTo:this.dateTo.value}})),this.requestUpdate()}handlePresetChange(e){const t=this.presetRanges.find(o=>o.label===e);if(t){const{dateFrom:o,dateTo:i}=t.range;this.setDateRange(o,i),this.selectedDateRange=e}}render(){return m.html`
1
+ "use strict";require("rxjs"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const c=require("./litElement.mixin-dosTHO0i.cjs");require("./tailwind.mixin-Dts5Uk3L.cjs");const m=require("lit"),r=require("lit/decorators.js"),l=require("lit/directives/if-defined.js"),a=require("moment");var D=Object.defineProperty,u=Object.getOwnPropertyDescriptor,n=(e,t,o,i)=>{for(var d,Y=i>1?void 0:i?u(t,o):t,h=e.length-1;h>=0;h--)(d=e[h])&&(Y=(i?d(t,o,Y):d(Y))||Y);return i&&Y&&D(t,o,Y),Y};let s=class extends c.$LitElement(){constructor(){super(...arguments),this.type="date",this.selectedDateRange="Today"}connectedCallback(){super.connectedCallback(),this.presetRanges=[{label:"Yesterday",range:{dateFrom:a().subtract(1,"days").startOf("day").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm"),dateTo:a().subtract(1,"days").endOf("day").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm")},step:"day"},{label:"Today",range:{dateFrom:a().startOf("day").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm"),dateTo:a().endOf("day").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm")},step:"day"},{label:"This Week",range:{dateFrom:a().startOf("week").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm"),dateTo:a().endOf("week").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm")},step:"weeks"},{label:"Last Week",range:{dateFrom:a().subtract(1,"weeks").startOf("isoWeek").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm"),dateTo:a().subtract(1,"weeks").endOf("isoWeek").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm")},step:"weeks"},{label:"This Month",range:{dateFrom:a().startOf("month").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm"),dateTo:a().endOf("month").format(this.type==="date"?"YYYY-MM-DD":"YYYY-MM-DDTHH:mm")},step:"month"}];const e=this.presetRanges.find(t=>t.range.dateFrom===this.dateFrom.value&&t.range.dateTo===this.dateTo.value);this.selectedDateRange=e?e.label:a(this.dateFrom.value).format("MMM DD, YYYY").concat(" To ",a(this.dateTo.value).format("MMM DD, YYYY"))}setDateRange(e,t){this.dateFrom.value=e,this.dateTo.value=t,this.dispatchEvent(new CustomEvent("change",{detail:{dateFrom:this.dateFrom.value,dateTo:this.dateTo.value}})),this.requestUpdate()}handlePresetChange(e){const t=this.presetRanges.find(o=>o.label===e);if(t){const{dateFrom:o,dateTo:i}=t.range;this.setDateRange(o,i),this.selectedDateRange=e}}render(){return m.html`
2
2
  <div class="date-range-selector relative">
3
3
  <schmancy-menu class="z-100 w-max">
4
4
  <schmancy-grid slot="button" align="center" cols="auto 1fr auto">
@@ -50,4 +50,4 @@
50
50
  </schmancy-menu>
51
51
  </div>
52
52
  `}handleDateRangeChange(){this.setDateRange(this.dateFrom.value,this.dateTo.value);const e=this.presetRanges.find(t=>t.range.dateFrom===this.dateFrom.value&&t.range.dateTo===this.dateTo.value);e?this.selectedDateRange=e.label:(this.selectedDateRange=a(this.dateFrom.value).format(this.type==="date"?"MMM DD, YYYY":"MMM DD, YYYY hh:mm A").concat(" - ",a(this.dateTo.value).format(this.type==="date"?"MMM DD, YYYY":"MMM DD, YYYY hh:mm A")),this.schmancyMenu.open=!1)}};n([r.property({type:String})],s.prototype,"type",2),n([r.property({type:Object})],s.prototype,"dateFrom",2),n([r.property({type:Object})],s.prototype,"dateTo",2),n([r.query("#checkin")],s.prototype,"checkInInput",2),n([r.query("#checkout")],s.prototype,"checkOutInput",2),n([r.property({type:String})],s.prototype,"minDate",2),n([r.property({type:String})],s.prototype,"maxDate",2),n([r.query("schmancy-menu")],s.prototype,"schmancyMenu",2),n([r.state()],s.prototype,"selectedDateRange",2),s=n([r.customElement("schmancy-date-range")],s);
53
- //# sourceMappingURL=date-range-BFRnIgQ6.cjs.map
53
+ //# sourceMappingURL=date-range-BirYELq7.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-range-BFRnIgQ6.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@customElement('schmancy-date-range')\nexport default class SwiftHRAdminDateRange extends $LitElement() {\n\t@property({ type: String }) type: 'date' | 'datetime' = 'date'\n\t@property({ type: Object }) dateFrom!: {\n\t\tlabel: string\n\t\tvalue: string\n\t}\n\t@property({ type: Object }) dateTo!: {\n\t\tlabel: string\n\t\tvalue: string\n\t}\n\n\t@query('#checkin') checkInInput!: HTMLInputElement\n\t@query('#checkout') checkOutInput!: HTMLInputElement\n\n\t@property({ type: String }) minDate: string | undefined\n\t@property({ type: String }) maxDate!: string | undefined\n\t@query('schmancy-menu') schmancyMenu!: SchmancyMenu\n\n\t@state() selectedDateRange: string = 'Today'\n\n\tpresetRanges!: Array<{\n\t\tlabel: string\n\t\trange: {\n\t\t\tdateFrom: string\n\t\t\tdateTo: string\n\t\t}\n\t\tstep: moment.unitOfTime.DurationConstructor | moment.unitOfTime._isoWeek\n\t\tselected?: boolean\n\t}>\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\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()\n\t\t\t\t\t\t.subtract(1, 'days')\n\t\t\t\t\t\t.startOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.subtract(1, 'days')\n\t\t\t\t\t\t.endOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\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()\n\t\t\t\t\t\t.startOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\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()\n\t\t\t\t\t\t.startOf('week')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('week')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'weeks',\n\t\t\t},\n\t\t\t// last week\n\t\t\t{\n\t\t\t\tlabel: 'Last Week',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment()\n\t\t\t\t\t\t.subtract(1, 'weeks')\n\t\t\t\t\t\t.startOf('isoWeek')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.subtract(1, 'weeks')\n\t\t\t\t\t\t.endOf('isoWeek')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'weeks',\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()\n\t\t\t\t\t\t.startOf('month')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('month')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'month',\n\t\t\t},\n\t\t\t// { label: \"Custom\", range: () => this.setCustomRange() },\n\t\t]\n\t\t// set the state selectedDateRange based on the dateFrom and dateTo values\n\t\tconst preset = this.presetRanges.find(\n\t\t\trange => range.range.dateFrom === this.dateFrom.value && range.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\tthis.selectedDateRange = moment(this.dateFrom.value)\n\t\t\t\t.format('MMM DD, YYYY')\n\t\t\t\t.concat(' To ', moment(this.dateTo.value).format('MMM DD, YYYY'))\n\t\t}\n\t}\n\n\tsetDateRange(fromDate: string, toDate: string) {\n\t\tthis.dateFrom.value = fromDate\n\t\tthis.dateTo.value = toDate\n\t\tthis.dispatchEvent(\n\t\t\tnew CustomEvent<TSchmancDateRangePayload>('change', {\n\t\t\t\tdetail: {\n\t\t\t\t\tdateFrom: this.dateFrom.value,\n\t\t\t\t\tdateTo: this.dateTo.value,\n\t\t\t\t},\n\t\t\t}),\n\t\t)\n\t\tthis.requestUpdate()\n\t}\n\n\thandlePresetChange(presetLabel: string) {\n\t\tconst preset = this.presetRanges.find(range => range.label === presetLabel)\n\t\tif (preset) {\n\t\t\tconst { dateFrom, dateTo } = preset.range\n\t\t\tthis.setDateRange(dateFrom, dateTo)\n\t\t\tthis.selectedDateRange = presetLabel\n\t\t}\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<div class=\"date-range-selector relative\">\n\t\t\t\t<schmancy-menu class=\"z-100 w-max\">\n\t\t\t\t\t<schmancy-grid slot=\"button\" align=\"center\" cols=\"auto 1fr auto\">\n\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t// Calculate the difference between dateFrom and dateTo in days\n\t\t\t\t\t\t\t\tconst dateDiff = moment(this.dateTo.value).diff(moment(this.dateFrom.value), 'days') || 1\n\n\t\t\t\t\t\t\t\t// Subtract the date difference from both dateFrom and dateTo\n\t\t\t\t\t\t\t\tthis.dateFrom.value = moment(this.dateFrom.value)\n\t\t\t\t\t\t\t\t\t.subtract(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\tthis.dateTo.value = moment(this.dateTo.value)\n\t\t\t\t\t\t\t\t\t.subtract(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\t// Call the function to handle the date range change\n\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tarrow_left\n\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t<schmancy-button class=\"w-max\" variant=\"outlined\" type=\"button\"\n\t\t\t\t\t\t\t>${this.selectedDateRange || 'Date range'}\n\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t// Calculate the difference between dateFrom and dateTo in days\n\t\t\t\t\t\t\t\tconst dateDiff = moment(this.dateTo.value).diff(moment(this.dateFrom.value), 'days') || 1\n\n\t\t\t\t\t\t\t\t// Add the date difference to both dateFrom and dateTo\n\t\t\t\t\t\t\t\tthis.dateFrom.value = moment(this.dateFrom.value)\n\t\t\t\t\t\t\t\t\t.add(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\tthis.dateTo.value = moment(this.dateTo.value)\n\t\t\t\t\t\t\t\t\t.add(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\t// Call the function to handle the date range change\n\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>arrow_right</schmancy-icon-button\n\t\t\t\t\t\t>\n\t\t\t\t\t</schmancy-grid>\n\n\t\t\t\t\t<schmancy-surface elevation=\"2\">\n\t\t\t\t\t\t${this.presetRanges.map(\n\t\t\t\t\t\t\tpreset => html`\n\t\t\t\t\t\t\t\t<schmancy-menu-item class=\"w-full\" @click=${() => this.handlePresetChange(preset.label)}>\n\t\t\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\t\t</schmancy-menu-item>\n\t\t\t\t\t\t\t`,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<schmancy-grid gap=\"sm\" flow=\"row\" class=\"p-4\">\n\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\tid=\"checkin\"\n\t\t\t\t\t\t\t\tmin=${ifDefined(this.minDate)}\n\t\t\t\t\t\t\t\ttype=${this.type}\n\t\t\t\t\t\t\t\tlabel=\"${this.dateFrom.label}\"\n\t\t\t\t\t\t\t\t.value=${this.dateFrom.value}\n\t\t\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\t\t\tconst selectedDate = moment(\n\t\t\t\t\t\t\t\t\t\tevent.detail.value,\n\t\t\t\t\t\t\t\t\t\tthis.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm',\n\t\t\t\t\t\t\t\t\t).format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\t\t\t\t\t\t\t\t\tthis.dateFrom.value = selectedDate\n\t\t\t\t\t\t\t\t\tconst minDateStr = selectedDate\n\t\t\t\t\t\t\t\t\tthis.checkOutInput.setAttribute('min', minDateStr)\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t></schmancy-input>\n\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\tid=\"checkout\"\n\t\t\t\t\t\t\t\ttype=${this.type}\n\t\t\t\t\t\t\t\tlabel=\"${this.dateTo.label}\"\n\t\t\t\t\t\t\t\t.value=${this.dateTo.value}\n\t\t\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\t\t\tthis.dateTo.value = moment(\n\t\t\t\t\t\t\t\t\t\tevent.detail.value,\n\t\t\t\t\t\t\t\t\t\tthis.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm',\n\t\t\t\t\t\t\t\t\t).format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t></schmancy-input>\n\n\t\t\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\t\t\tvariant=\"outlined\"\n\t\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tApply\n\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t</schmancy-grid>\n\t\t\t\t\t</schmancy-surface>\n\t\t\t\t</schmancy-menu>\n\t\t\t</div>\n\t\t`\n\t}\n\n\thandleDateRangeChange() {\n\t\tthis.setDateRange(this.dateFrom.value, this.dateTo.value)\n\t\t// check if the selected date range is a preset\n\t\tconst preset = this.presetRanges.find(\n\t\t\trange => range.range.dateFrom === this.dateFrom.value && range.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\tthis.selectedDateRange = moment(this.dateFrom.value)\n\t\t\t\t.format(this.type === 'date' ? 'MMM DD, YYYY' : 'MMM DD, YYYY hh:mm A')\n\t\t\t\t.concat(' - ', moment(this.dateTo.value).format(this.type === 'date' ? 'MMM DD, YYYY' : 'MMM DD, YYYY hh:mm A'))\n\t\t\tthis.schmancyMenu.open = false\n\t\t}\n\t}\n}\n\nexport type SchmancyDateRangeChangeEvent = CustomEvent<TSchmancDateRangePayload>\ntype TSchmancDateRangePayload = {\n\tdateFrom?: string\n\tdateTo?: string\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-date-range': SwiftHRAdminDateRange\n\t}\n}\n"],"names":["SwiftHRAdminDateRange","$LitElement","super","arguments","this","type","selectedDateRange","connectedCallback","presetRanges","label","range","dateFrom","moment","subtract","startOf","format","dateTo","endOf","step","preset","find","value","concat","fromDate","toDate","dispatchEvent","CustomEvent","detail","requestUpdate","presetLabel","setDateRange","html","e","preventDefault","stopPropagation","dateDiff","diff","handleDateRangeChange","add","map","handlePresetChange","ifDefined","minDate","event","selectedDate","minDateStr","checkOutInput","setAttribute","schmancyMenu","open","__decorateClass","property","String","prototype","Object","query","state","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"date-range-BirYELq7.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@customElement('schmancy-date-range')\nexport default class SwiftHRAdminDateRange extends $LitElement() {\n\t@property({ type: String }) type: 'date' | 'datetime' = 'date'\n\t@property({ type: Object }) dateFrom!: {\n\t\tlabel: string\n\t\tvalue: string\n\t}\n\t@property({ type: Object }) dateTo!: {\n\t\tlabel: string\n\t\tvalue: string\n\t}\n\n\t@query('#checkin') checkInInput!: HTMLInputElement\n\t@query('#checkout') checkOutInput!: HTMLInputElement\n\n\t@property({ type: String }) minDate: string | undefined\n\t@property({ type: String }) maxDate!: string | undefined\n\t@query('schmancy-menu') schmancyMenu!: SchmancyMenu\n\n\t@state() selectedDateRange: string = 'Today'\n\n\tpresetRanges!: Array<{\n\t\tlabel: string\n\t\trange: {\n\t\t\tdateFrom: string\n\t\t\tdateTo: string\n\t\t}\n\t\tstep: moment.unitOfTime.DurationConstructor | moment.unitOfTime._isoWeek\n\t\tselected?: boolean\n\t}>\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\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()\n\t\t\t\t\t\t.subtract(1, 'days')\n\t\t\t\t\t\t.startOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.subtract(1, 'days')\n\t\t\t\t\t\t.endOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\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()\n\t\t\t\t\t\t.startOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('day')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\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()\n\t\t\t\t\t\t.startOf('week')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('week')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'weeks',\n\t\t\t},\n\t\t\t// last week\n\t\t\t{\n\t\t\t\tlabel: 'Last Week',\n\t\t\t\trange: {\n\t\t\t\t\tdateFrom: moment()\n\t\t\t\t\t\t.subtract(1, 'weeks')\n\t\t\t\t\t\t.startOf('isoWeek')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.subtract(1, 'weeks')\n\t\t\t\t\t\t.endOf('isoWeek')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'weeks',\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()\n\t\t\t\t\t\t.startOf('month')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t\tdateTo: moment()\n\t\t\t\t\t\t.endOf('month')\n\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm'),\n\t\t\t\t},\n\t\t\t\tstep: 'month',\n\t\t\t},\n\t\t\t// { label: \"Custom\", range: () => this.setCustomRange() },\n\t\t]\n\t\t// set the state selectedDateRange based on the dateFrom and dateTo values\n\t\tconst preset = this.presetRanges.find(\n\t\t\trange => range.range.dateFrom === this.dateFrom.value && range.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\tthis.selectedDateRange = moment(this.dateFrom.value)\n\t\t\t\t.format('MMM DD, YYYY')\n\t\t\t\t.concat(' To ', moment(this.dateTo.value).format('MMM DD, YYYY'))\n\t\t}\n\t}\n\n\tsetDateRange(fromDate: string, toDate: string) {\n\t\tthis.dateFrom.value = fromDate\n\t\tthis.dateTo.value = toDate\n\t\tthis.dispatchEvent(\n\t\t\tnew CustomEvent<TSchmancDateRangePayload>('change', {\n\t\t\t\tdetail: {\n\t\t\t\t\tdateFrom: this.dateFrom.value,\n\t\t\t\t\tdateTo: this.dateTo.value,\n\t\t\t\t},\n\t\t\t}),\n\t\t)\n\t\tthis.requestUpdate()\n\t}\n\n\thandlePresetChange(presetLabel: string) {\n\t\tconst preset = this.presetRanges.find(range => range.label === presetLabel)\n\t\tif (preset) {\n\t\t\tconst { dateFrom, dateTo } = preset.range\n\t\t\tthis.setDateRange(dateFrom, dateTo)\n\t\t\tthis.selectedDateRange = presetLabel\n\t\t}\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<div class=\"date-range-selector relative\">\n\t\t\t\t<schmancy-menu class=\"z-100 w-max\">\n\t\t\t\t\t<schmancy-grid slot=\"button\" align=\"center\" cols=\"auto 1fr auto\">\n\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t// Calculate the difference between dateFrom and dateTo in days\n\t\t\t\t\t\t\t\tconst dateDiff = moment(this.dateTo.value).diff(moment(this.dateFrom.value), 'days') || 1\n\n\t\t\t\t\t\t\t\t// Subtract the date difference from both dateFrom and dateTo\n\t\t\t\t\t\t\t\tthis.dateFrom.value = moment(this.dateFrom.value)\n\t\t\t\t\t\t\t\t\t.subtract(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\tthis.dateTo.value = moment(this.dateTo.value)\n\t\t\t\t\t\t\t\t\t.subtract(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\t// Call the function to handle the date range change\n\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tarrow_left\n\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t<schmancy-button class=\"w-max\" variant=\"outlined\" type=\"button\"\n\t\t\t\t\t\t\t>${this.selectedDateRange || 'Date range'}\n\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t// Calculate the difference between dateFrom and dateTo in days\n\t\t\t\t\t\t\t\tconst dateDiff = moment(this.dateTo.value).diff(moment(this.dateFrom.value), 'days') || 1\n\n\t\t\t\t\t\t\t\t// Add the date difference to both dateFrom and dateTo\n\t\t\t\t\t\t\t\tthis.dateFrom.value = moment(this.dateFrom.value)\n\t\t\t\t\t\t\t\t\t.add(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\tthis.dateTo.value = moment(this.dateTo.value)\n\t\t\t\t\t\t\t\t\t.add(dateDiff, 'days')\n\t\t\t\t\t\t\t\t\t.format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\n\t\t\t\t\t\t\t\t// Call the function to handle the date range change\n\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>arrow_right</schmancy-icon-button\n\t\t\t\t\t\t>\n\t\t\t\t\t</schmancy-grid>\n\n\t\t\t\t\t<schmancy-surface elevation=\"2\">\n\t\t\t\t\t\t${this.presetRanges.map(\n\t\t\t\t\t\t\tpreset => html`\n\t\t\t\t\t\t\t\t<schmancy-menu-item class=\"w-full\" @click=${() => this.handlePresetChange(preset.label)}>\n\t\t\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\t\t</schmancy-menu-item>\n\t\t\t\t\t\t\t`,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<schmancy-grid gap=\"sm\" flow=\"row\" class=\"p-4\">\n\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\tid=\"checkin\"\n\t\t\t\t\t\t\t\tmin=${ifDefined(this.minDate)}\n\t\t\t\t\t\t\t\ttype=${this.type}\n\t\t\t\t\t\t\t\tlabel=\"${this.dateFrom.label}\"\n\t\t\t\t\t\t\t\t.value=${this.dateFrom.value}\n\t\t\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\t\t\tconst selectedDate = moment(\n\t\t\t\t\t\t\t\t\t\tevent.detail.value,\n\t\t\t\t\t\t\t\t\t\tthis.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm',\n\t\t\t\t\t\t\t\t\t).format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\t\t\t\t\t\t\t\t\tthis.dateFrom.value = selectedDate\n\t\t\t\t\t\t\t\t\tconst minDateStr = selectedDate\n\t\t\t\t\t\t\t\t\tthis.checkOutInput.setAttribute('min', minDateStr)\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t></schmancy-input>\n\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\tid=\"checkout\"\n\t\t\t\t\t\t\t\ttype=${this.type}\n\t\t\t\t\t\t\t\tlabel=\"${this.dateTo.label}\"\n\t\t\t\t\t\t\t\t.value=${this.dateTo.value}\n\t\t\t\t\t\t\t\t@change=${(event: SchmancyInputChangeEvent) => {\n\t\t\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\t\t\t\tthis.dateTo.value = moment(\n\t\t\t\t\t\t\t\t\t\tevent.detail.value,\n\t\t\t\t\t\t\t\t\t\tthis.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm',\n\t\t\t\t\t\t\t\t\t).format(this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t></schmancy-input>\n\n\t\t\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\t\t\tvariant=\"outlined\"\n\t\t\t\t\t\t\t\t@click=${(e: Event) => {\n\t\t\t\t\t\t\t\t\te.preventDefault()\n\t\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t\tthis.handleDateRangeChange()\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tApply\n\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t</schmancy-grid>\n\t\t\t\t\t</schmancy-surface>\n\t\t\t\t</schmancy-menu>\n\t\t\t</div>\n\t\t`\n\t}\n\n\thandleDateRangeChange() {\n\t\tthis.setDateRange(this.dateFrom.value, this.dateTo.value)\n\t\t// check if the selected date range is a preset\n\t\tconst preset = this.presetRanges.find(\n\t\t\trange => range.range.dateFrom === this.dateFrom.value && range.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\tthis.selectedDateRange = moment(this.dateFrom.value)\n\t\t\t\t.format(this.type === 'date' ? 'MMM DD, YYYY' : 'MMM DD, YYYY hh:mm A')\n\t\t\t\t.concat(' - ', moment(this.dateTo.value).format(this.type === 'date' ? 'MMM DD, YYYY' : 'MMM DD, YYYY hh:mm A'))\n\t\t\tthis.schmancyMenu.open = false\n\t\t}\n\t}\n}\n\nexport type SchmancyDateRangeChangeEvent = CustomEvent<TSchmancDateRangePayload>\ntype TSchmancDateRangePayload = {\n\tdateFrom?: string\n\tdateTo?: string\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-date-range': SwiftHRAdminDateRange\n\t}\n}\n"],"names":["SwiftHRAdminDateRange","$LitElement","super","arguments","this","type","selectedDateRange","connectedCallback","presetRanges","label","range","dateFrom","moment","subtract","startOf","format","dateTo","endOf","step","preset","find","value","concat","fromDate","toDate","dispatchEvent","CustomEvent","detail","requestUpdate","presetLabel","setDateRange","html","e","preventDefault","stopPropagation","dateDiff","diff","handleDateRangeChange","add","map","handlePresetChange","ifDefined","minDate","event","selectedDate","minDateStr","checkOutInput","setAttribute","schmancyMenu","open","__decorateClass","property","String","prototype","Object","query","state","customElement"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";require("./date-range-BFRnIgQ6.cjs");
1
+ "use strict";require("./date-range-BirYELq7.cjs");
2
2
  //# sourceMappingURL=date-range.cjs.map
@@ -1,2 +1,2 @@
1
- import "./date-range-Dbj5qwzm.js";
1
+ import "./date-range-BIdEZhGK.js";
2
2
  //# sourceMappingURL=date-range.js.map
@@ -0,0 +1,83 @@
1
+ "use strict";require("rxjs");const u=require("lit/directives/class-map.js");require("lit/directives/style-map.js");const m=require("./litElement.mixin-dosTHO0i.cjs");require("./tailwind.mixin-Dts5Uk3L.cjs");const c=require("lit"),n=require("lit/decorators.js");var h=Object.defineProperty,v=Object.getOwnPropertyDescriptor,e=(t,i,s,a)=>{for(var l,r=a>1?void 0:a?v(i,s):i,d=t.length-1;d>=0;d--)(l=t[d])&&(r=(a?l(i,s,r):l(r))||r);return a&&r&&h(i,s,r),r};let o=class extends m.$LitElement(c.css`
2
+ :host {
3
+ display: block;
4
+ overflow: hidden; /* Ensure the animation is clipped */
5
+ }
6
+ .divider {
7
+ /* Maintain existing border-based color logic */
8
+ border-color: var(--divider-color, currentColor);
9
+ }
10
+ /* Horizontal Divider */
11
+ .horizontal {
12
+ width: 100%;
13
+ height: 1px;
14
+ border-top: 1px solid;
15
+ transform: scaleX(0);
16
+ transform-origin: var(--transform-origin, left);
17
+ animation: drawHorizontal var(--animation-duration, 1s) forwards;
18
+ }
19
+ /* Vertical Divider */
20
+ .vertical {
21
+ width: 1px;
22
+ height: 100%;
23
+ border-left: 1px solid;
24
+ transform: scaleY(0);
25
+ transform-origin: var(--transform-origin, top);
26
+ animation: drawVertical var(--animation-duration, 1s) forwards;
27
+ }
28
+ /* Outline Variants */
29
+ .border-outlineVariant {
30
+ /* Utilize existing outline variant styles */
31
+ border-color: var(--outline-variant-color, #555);
32
+ }
33
+ .border-outline {
34
+ /* Utilize existing default outline styles */
35
+ border-color: var(--outline-color, #000);
36
+ }
37
+ /* RTL Support for Horizontal Dividers */
38
+ :host([dir='rtl']) .horizontal.grow-start {
39
+ --transform-origin: right;
40
+ }
41
+ :host([dir='rtl']) .horizontal.grow-end {
42
+ --transform-origin: left;
43
+ }
44
+ /* Center Growth for Horizontal and Vertical Dividers */
45
+ .horizontal.grow-both {
46
+ --transform-origin: center;
47
+ }
48
+ .vertical.grow-both {
49
+ --transform-origin: center;
50
+ }
51
+ /* Define Keyframes */
52
+ @keyframes drawHorizontal {
53
+ to {
54
+ transform: scaleX(1);
55
+ }
56
+ }
57
+ @keyframes drawVertical {
58
+ to {
59
+ transform: scaleY(1);
60
+ }
61
+ }
62
+ /* Assign Animations Based on Grow Direction */
63
+ .horizontal.grow-start {
64
+ animation: drawHorizontal var(--animation-duration, 1s) forwards;
65
+ }
66
+ .horizontal.grow-end {
67
+ animation: drawHorizontal var(--animation-duration, 1s) forwards;
68
+ }
69
+ .horizontal.grow-both {
70
+ animation: drawHorizontal var(--animation-duration, 1s) forwards;
71
+ }
72
+
73
+ .vertical.grow-start {
74
+ animation: drawVertical var(--animation-duration, 1s) forwards;
75
+ }
76
+ .vertical.grow-end {
77
+ animation: drawVertical var(--animation-duration, 1s) forwards;
78
+ }
79
+ .vertical.grow-both {
80
+ animation: drawVertical var(--animation-duration, 1s) forwards;
81
+ }
82
+ `){constructor(){super(...arguments),this.outline="variant",this.orientation="horizontal",this.grow="start"}render(){const t={divider:!0,horizontal:this.orientation==="horizontal",vertical:this.orientation==="vertical","border-outlineVariant":this.outline==="variant","border-outline":this.outline==="default",[`grow-${this.grow}`]:!0};return c.html`<div class="${u.classMap(t)}"></div>`}};e([n.property({type:String})],o.prototype,"outline",2),e([n.property({reflect:!0,type:String})],o.prototype,"orientation",2),e([n.property({type:String})],o.prototype,"grow",2),o=e([n.customElement("schmancy-divider")],o);
83
+ //# sourceMappingURL=divider-DcEj-C2P.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divider-DcEj-C2P.cjs","sources":["../src/divider/divider.ts"],"sourcesContent":["// divider.ts\nimport { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { classMap } from 'lit/directives/class-map.js'\n\n@customElement('schmancy-divider')\nexport default class SchmancyDivider extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\toverflow: hidden; /* Ensure the animation is clipped */\n\t}\n\t.divider {\n\t\t/* Maintain existing border-based color logic */\n\t\tborder-color: var(--divider-color, currentColor);\n\t}\n\t/* Horizontal Divider */\n\t.horizontal {\n\t\twidth: 100%;\n\t\theight: 1px;\n\t\tborder-top: 1px solid;\n\t\ttransform: scaleX(0);\n\t\ttransform-origin: var(--transform-origin, left);\n\t\tanimation: drawHorizontal var(--animation-duration, 1s) forwards;\n\t}\n\t/* Vertical Divider */\n\t.vertical {\n\t\twidth: 1px;\n\t\theight: 100%;\n\t\tborder-left: 1px solid;\n\t\ttransform: scaleY(0);\n\t\ttransform-origin: var(--transform-origin, top);\n\t\tanimation: drawVertical var(--animation-duration, 1s) forwards;\n\t}\n\t/* Outline Variants */\n\t.border-outlineVariant {\n\t\t/* Utilize existing outline variant styles */\n\t\tborder-color: var(--outline-variant-color, #555);\n\t}\n\t.border-outline {\n\t\t/* Utilize existing default outline styles */\n\t\tborder-color: var(--outline-color, #000);\n\t}\n\t/* RTL Support for Horizontal Dividers */\n\t:host([dir='rtl']) .horizontal.grow-start {\n\t\t--transform-origin: right;\n\t}\n\t:host([dir='rtl']) .horizontal.grow-end {\n\t\t--transform-origin: left;\n\t}\n\t/* Center Growth for Horizontal and Vertical Dividers */\n\t.horizontal.grow-both {\n\t\t--transform-origin: center;\n\t}\n\t.vertical.grow-both {\n\t\t--transform-origin: center;\n\t}\n\t/* Define Keyframes */\n\t@keyframes drawHorizontal {\n\t\tto {\n\t\t\ttransform: scaleX(1);\n\t\t}\n\t}\n\t@keyframes drawVertical {\n\t\tto {\n\t\t\ttransform: scaleY(1);\n\t\t}\n\t}\n\t/* Assign Animations Based on Grow Direction */\n\t.horizontal.grow-start {\n\t\tanimation: drawHorizontal var(--animation-duration, 1s) forwards;\n\t}\n\t.horizontal.grow-end {\n\t\tanimation: drawHorizontal var(--animation-duration, 1s) forwards;\n\t}\n\t.horizontal.grow-both {\n\t\tanimation: drawHorizontal var(--animation-duration, 1s) forwards;\n\t}\n\n\t.vertical.grow-start {\n\t\tanimation: drawVertical var(--animation-duration, 1s) forwards;\n\t}\n\t.vertical.grow-end {\n\t\tanimation: drawVertical var(--animation-duration, 1s) forwards;\n\t}\n\t.vertical.grow-both {\n\t\tanimation: drawVertical var(--animation-duration, 1s) forwards;\n\t}\n`) {\n\t@property({ type: String }) outline: 'default' | 'variant' = 'variant'\n\t@property({ reflect: true, type: String }) orientation: 'horizontal' | 'vertical' = 'horizontal'\n\t@property({ type: String }) grow: 'start' | 'end' | 'both' = 'start'\n\n\tprotected render() {\n\t\tconst classes = {\n\t\t\tdivider: true,\n\t\t\thorizontal: this.orientation === 'horizontal',\n\t\t\tvertical: this.orientation === 'vertical',\n\t\t\t'border-outlineVariant': this.outline === 'variant',\n\t\t\t'border-outline': this.outline === 'default',\n\t\t\t[`grow-${this.grow}`]: true, // e.g., grow-start, grow-end, grow-both\n\t\t}\n\t\treturn html`<div class=\"${classMap(classes)}\"></div>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-divider': SchmancyDivider\n\t}\n}\n"],"names":["SchmancyDivider","$LitElement","css","super","arguments","this","outline","orientation","grow","render","classes","divider","horizontal","vertical","html","classMap","__decorateClass","property","type","String","prototype","reflect","customElement"],"mappings":"qcAOA,IAAqBA,EAArB,cAA6CC,EAAAA,YAAYC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAAzD,CAAA,CAAA,cAAAC,MAAAC,GAAAA,SAAAA,EAkF8DC,KAAAC,QAAA,UACuBD,KAAAE,YAAA,aACvBF,KAAAG,KAAA,OAAA,CAEnD,QAAAC,CACT,MAAMC,EAAU,CACfC,WACAC,WAAYP,KAAKE,cAAgB,aACjCM,SAAUR,KAAKE,cAAgB,WAC/B,wBAAyBF,KAAKC,UAAY,UAC1C,iBAAkBD,KAAKC,UAAY,UACnC,CAAC,QAAQD,KAAKG,IAAS,EAAA,EAAA,EAAA,EAEjB,OAAAM,EAAAA,mBAAmBC,EAASA,SAAAL,CAAQ,CAAA,UAAA,CAAA,EAbhBM,EAAA,CAA3BC,WAAS,CAAEC,KAAMC,UAlFEnB,EAkFQoB,UAAA,UAAA,CACeJ,EAAAA,EAAA,CAA1CC,EAAAA,SAAS,CAAEI,QAAS,GAAMH,KAAMC,MAnFbnB,CAAAA,CAAAA,EAAAA,EAmFuBoB,UAAA,cAAA,CAAA,EACfJ,EAAA,CAA3BC,WAAS,CAAEC,KAAMC,UApFEnB,EAoFQoB,UAAA,OAAA,CApFRpB,EAAAA,EAArBgB,EAAA,CADCM,EAAAA,cAAc,kBACMtB,CAAAA,EAAAA,CAAAA"}
@@ -0,0 +1,103 @@
1
+ import "rxjs";
2
+ import { classMap as m } from "lit/directives/class-map.js";
3
+ import "lit/directives/style-map.js";
4
+ import { $ as c } from "./litElement.mixin-kW4tqV-x.js";
5
+ import "./tailwind.mixin-D6m-sJmB.js";
6
+ import { css as f, html as h } from "lit";
7
+ import { property as d, customElement as v } from "lit/decorators.js";
8
+ var w = Object.defineProperty, g = Object.getOwnPropertyDescriptor, n = (t, i, e, a) => {
9
+ for (var s, r = a > 1 ? void 0 : a ? g(i, e) : i, l = t.length - 1; l >= 0; l--) (s = t[l]) && (r = (a ? s(i, e, r) : s(r)) || r);
10
+ return a && r && w(i, e, r), r;
11
+ };
12
+ let o = class extends c(f`
13
+ :host {
14
+ display: block;
15
+ overflow: hidden; /* Ensure the animation is clipped */
16
+ }
17
+ .divider {
18
+ /* Maintain existing border-based color logic */
19
+ border-color: var(--divider-color, currentColor);
20
+ }
21
+ /* Horizontal Divider */
22
+ .horizontal {
23
+ width: 100%;
24
+ height: 1px;
25
+ border-top: 1px solid;
26
+ transform: scaleX(0);
27
+ transform-origin: var(--transform-origin, left);
28
+ animation: drawHorizontal var(--animation-duration, 1s) forwards;
29
+ }
30
+ /* Vertical Divider */
31
+ .vertical {
32
+ width: 1px;
33
+ height: 100%;
34
+ border-left: 1px solid;
35
+ transform: scaleY(0);
36
+ transform-origin: var(--transform-origin, top);
37
+ animation: drawVertical var(--animation-duration, 1s) forwards;
38
+ }
39
+ /* Outline Variants */
40
+ .border-outlineVariant {
41
+ /* Utilize existing outline variant styles */
42
+ border-color: var(--outline-variant-color, #555);
43
+ }
44
+ .border-outline {
45
+ /* Utilize existing default outline styles */
46
+ border-color: var(--outline-color, #000);
47
+ }
48
+ /* RTL Support for Horizontal Dividers */
49
+ :host([dir='rtl']) .horizontal.grow-start {
50
+ --transform-origin: right;
51
+ }
52
+ :host([dir='rtl']) .horizontal.grow-end {
53
+ --transform-origin: left;
54
+ }
55
+ /* Center Growth for Horizontal and Vertical Dividers */
56
+ .horizontal.grow-both {
57
+ --transform-origin: center;
58
+ }
59
+ .vertical.grow-both {
60
+ --transform-origin: center;
61
+ }
62
+ /* Define Keyframes */
63
+ @keyframes drawHorizontal {
64
+ to {
65
+ transform: scaleX(1);
66
+ }
67
+ }
68
+ @keyframes drawVertical {
69
+ to {
70
+ transform: scaleY(1);
71
+ }
72
+ }
73
+ /* Assign Animations Based on Grow Direction */
74
+ .horizontal.grow-start {
75
+ animation: drawHorizontal var(--animation-duration, 1s) forwards;
76
+ }
77
+ .horizontal.grow-end {
78
+ animation: drawHorizontal var(--animation-duration, 1s) forwards;
79
+ }
80
+ .horizontal.grow-both {
81
+ animation: drawHorizontal var(--animation-duration, 1s) forwards;
82
+ }
83
+
84
+ .vertical.grow-start {
85
+ animation: drawVertical var(--animation-duration, 1s) forwards;
86
+ }
87
+ .vertical.grow-end {
88
+ animation: drawVertical var(--animation-duration, 1s) forwards;
89
+ }
90
+ .vertical.grow-both {
91
+ animation: drawVertical var(--animation-duration, 1s) forwards;
92
+ }
93
+ `) {
94
+ constructor() {
95
+ super(...arguments), this.outline = "variant", this.orientation = "horizontal", this.grow = "start";
96
+ }
97
+ render() {
98
+ const t = { divider: !0, horizontal: this.orientation === "horizontal", vertical: this.orientation === "vertical", "border-outlineVariant": this.outline === "variant", "border-outline": this.outline === "default", [`grow-${this.grow}`]: !0 };
99
+ return h`<div class="${m(t)}"></div>`;
100
+ }
101
+ };
102
+ n([d({ type: String })], o.prototype, "outline", 2), n([d({ reflect: !0, type: String })], o.prototype, "orientation", 2), n([d({ type: String })], o.prototype, "grow", 2), o = n([v("schmancy-divider")], o);
103
+ //# sourceMappingURL=divider-DzwD07xW.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divider-DzwD07xW.js","sources":["../src/divider/divider.ts"],"sourcesContent":["// divider.ts\nimport { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { classMap } from 'lit/directives/class-map.js'\n\n@customElement('schmancy-divider')\nexport default class SchmancyDivider extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\toverflow: hidden; /* Ensure the animation is clipped */\n\t}\n\t.divider {\n\t\t/* Maintain existing border-based color logic */\n\t\tborder-color: var(--divider-color, currentColor);\n\t}\n\t/* Horizontal Divider */\n\t.horizontal {\n\t\twidth: 100%;\n\t\theight: 1px;\n\t\tborder-top: 1px solid;\n\t\ttransform: scaleX(0);\n\t\ttransform-origin: var(--transform-origin, left);\n\t\tanimation: drawHorizontal var(--animation-duration, 1s) forwards;\n\t}\n\t/* Vertical Divider */\n\t.vertical {\n\t\twidth: 1px;\n\t\theight: 100%;\n\t\tborder-left: 1px solid;\n\t\ttransform: scaleY(0);\n\t\ttransform-origin: var(--transform-origin, top);\n\t\tanimation: drawVertical var(--animation-duration, 1s) forwards;\n\t}\n\t/* Outline Variants */\n\t.border-outlineVariant {\n\t\t/* Utilize existing outline variant styles */\n\t\tborder-color: var(--outline-variant-color, #555);\n\t}\n\t.border-outline {\n\t\t/* Utilize existing default outline styles */\n\t\tborder-color: var(--outline-color, #000);\n\t}\n\t/* RTL Support for Horizontal Dividers */\n\t:host([dir='rtl']) .horizontal.grow-start {\n\t\t--transform-origin: right;\n\t}\n\t:host([dir='rtl']) .horizontal.grow-end {\n\t\t--transform-origin: left;\n\t}\n\t/* Center Growth for Horizontal and Vertical Dividers */\n\t.horizontal.grow-both {\n\t\t--transform-origin: center;\n\t}\n\t.vertical.grow-both {\n\t\t--transform-origin: center;\n\t}\n\t/* Define Keyframes */\n\t@keyframes drawHorizontal {\n\t\tto {\n\t\t\ttransform: scaleX(1);\n\t\t}\n\t}\n\t@keyframes drawVertical {\n\t\tto {\n\t\t\ttransform: scaleY(1);\n\t\t}\n\t}\n\t/* Assign Animations Based on Grow Direction */\n\t.horizontal.grow-start {\n\t\tanimation: drawHorizontal var(--animation-duration, 1s) forwards;\n\t}\n\t.horizontal.grow-end {\n\t\tanimation: drawHorizontal var(--animation-duration, 1s) forwards;\n\t}\n\t.horizontal.grow-both {\n\t\tanimation: drawHorizontal var(--animation-duration, 1s) forwards;\n\t}\n\n\t.vertical.grow-start {\n\t\tanimation: drawVertical var(--animation-duration, 1s) forwards;\n\t}\n\t.vertical.grow-end {\n\t\tanimation: drawVertical var(--animation-duration, 1s) forwards;\n\t}\n\t.vertical.grow-both {\n\t\tanimation: drawVertical var(--animation-duration, 1s) forwards;\n\t}\n`) {\n\t@property({ type: String }) outline: 'default' | 'variant' = 'variant'\n\t@property({ reflect: true, type: String }) orientation: 'horizontal' | 'vertical' = 'horizontal'\n\t@property({ type: String }) grow: 'start' | 'end' | 'both' = 'start'\n\n\tprotected render() {\n\t\tconst classes = {\n\t\t\tdivider: true,\n\t\t\thorizontal: this.orientation === 'horizontal',\n\t\t\tvertical: this.orientation === 'vertical',\n\t\t\t'border-outlineVariant': this.outline === 'variant',\n\t\t\t'border-outline': this.outline === 'default',\n\t\t\t[`grow-${this.grow}`]: true, // e.g., grow-start, grow-end, grow-both\n\t\t}\n\t\treturn html`<div class=\"${classMap(classes)}\"></div>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-divider': SchmancyDivider\n\t}\n}\n"],"names":["SchmancyDivider","$LitElement","css","super","arguments","this","outline","orientation","grow","classes","divider","horizontal","vertical","html","classMap","__decorateClass","property","type","String","prototype","reflect","customElement"],"mappings":";;;;;;;;;;;AAOA,IAAqBA,IAArB,cAA6CC,EAAYC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAAzD,EAAA;AAAA,EAAA;AAAAC,UAAAC,GAAAA,SAAAA,GAkF8DC,KAAAC,UAAA,WACuBD,KAAAE,cAAA,cACvBF,KAAAG,OAAA;AAAA,EAAA;AAAA,EAEnD,SACT;AAAA,UAAMC,IAAU,EACfC,SAAAA,IACAC,YAAYN,KAAKE,gBAAgB,cACjCK,UAAUP,KAAKE,gBAAgB,YAC/B,yBAAyBF,KAAKC,YAAY,WAC1C,kBAAkBD,KAAKC,YAAY,WACnC,CAAC,QAAQD,KAAKG,IAAS,EAAA,GAAA,GAAA;AAEjB,WAAAK,gBAAmBC,EAASL,CAAAA,CAAAA;AAAAA,EAAQ;;AAbhBM,EAAA,CAA3BC,EAAS,EAAEC,MAAMC,OAlFElB,CAAAA,CAAAA,GAAAA,EAkFQmB,WAAA,WAAA,CAAA,GACeJ,EAAA,CAA1CC,EAAS,EAAEI,SAAS,IAAMH,MAAMC,OAAAA,CAAAA,CAAAA,GAnFblB,EAmFuBmB,WAAA,eAAA,IACfJ,EAAA,CAA3BC,EAAS,EAAEC,MAAMC,OApFElB,CAAAA,CAAAA,GAAAA,EAoFQmB,WAAA,QAAA,CAAA,GApFRnB,IAArBe,EAAA,CADCM,EAAc,kBACMrB,CAAAA,GAAAA,CAAAA;"}
package/dist/divider.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";require("./divider-xYxX2ecE.cjs");
1
+ "use strict";require("./divider-DcEj-C2P.cjs");
2
2
  //# sourceMappingURL=divider.cjs.map
package/dist/divider.js CHANGED
@@ -1,2 +1,2 @@
1
- import "./divider-DxinuVg5.js";
1
+ import "./divider-DzwD07xW.js";
2
2
  //# sourceMappingURL=divider.js.map
@@ -1,7 +1,7 @@
1
1
  import { Subject as l, merge as u, fromEvent as r, tap as h, takeUntil as p } from "rxjs";
2
2
  import "lit/directives/class-map.js";
3
3
  import "lit/directives/style-map.js";
4
- import { T as d } from "./tailwind.mixin-CP8BNFiT.js";
4
+ import { T as d } from "./tailwind.mixin-D6m-sJmB.js";
5
5
  import { html as y, LitElement as b, css as g } from "lit";
6
6
  import { property as f, customElement as E } from "lit/decorators.js";
7
7
  var v = Object.defineProperty, k = Object.getOwnPropertyDescriptor, m = (t, e, s, o) => {
@@ -70,4 +70,4 @@ i.tagName = "schmancy-form", i.shadowRootOptions = { ...b.shadowRootOptions, mod
70
70
  display: block;
71
71
  }
72
72
  `, m([f({ type: Boolean, reflect: !0 })], i.prototype, "novalidate", 2), i = m([E("schmancy-form")], i);
73
- //# sourceMappingURL=form-CAYrAoRv.js.map
73
+ //# sourceMappingURL=form-DG0Kj--R.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-CAYrAoRv.js","sources":["../src/form/form.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { LitElement, css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { fromEvent, merge, Subject, takeUntil, tap } from 'rxjs'\n\nexport interface FormEventMap {\n\tsubmit: CustomEvent<FormData>\n\treset: CustomEvent\n}\n\n/**\n * The form is a component used to collect user input from\n * interactive controls.\n *\n * @element schmancy-form\n *\n * @slot - Default slot for the form.\n *\n * @fires submit - Emitted when the form is submitted.\n * @fires reset - Emitted when the form is reset.\n */\n@customElement('schmancy-form')\nexport default class SchmancyForm extends TailwindElement() {\n\tprivate $disconnecting = new Subject()\n\tpublic static readonly tagName = 'schmancy-form'\n\ttabIndex = 0\n\tprotected static shadowRootOptions = {\n\t\t...LitElement.shadowRootOptions,\n\t\tmode: 'open',\n\t\tdelegatesFocus: false,\n\t}\n\tpublic static styles = css`\n\t\t:host {\n\t\t\theight: 100%;\n\t\t\twidth: 100%;\n\t\t\tdisplay: block;\n\t\t}\n\t`\n\n\tprivate _controlsWithChecked = [\n\t\t'input',\n\t\t'radio',\n\t\t'schmancy-radio',\n\t\t'schmancy-switch',\n\t\t'schmancy-checkbox',\n\t\t'schmancy-radio-group',\n\t\t'schmancy-autocomplete',\n\t]\n\tprivate _controlsWithValue = [\n\t\t'input',\n\t\t'schmancy-input',\n\t\t'schmancy-mask-input',\n\t\t'textarea',\n\t\t'schmancy-rating',\n\t\t'schmancy-select',\n\t\t'schmancy-combo',\n\t\t'schmancy-date-time-input',\n\t\t'schmancy-autocomplete',\n\t]\n\tprivate _controlsThatSubmit = ['button', 'schmancy-input', 'schmancy-button', 'schmancy-icon-button']\n\n\t/** Specifies if form data validation should be skipped on submit.\n\t * @attr novalidate\n\t * @type {boolean}\n\t * @public\n\t */\n\t@property({ type: Boolean, reflect: true }) public novalidate = false\n\n\tconstructor() {\n\t\tsuper()\n\t\tmerge(\n\t\t\tfromEvent<MouseEvent>(this, 'click').pipe(\n\t\t\t\ttap(e => {\n\t\t\t\t\tif ((e.target as HTMLButtonElement).type?.toLowerCase() === 'submit') this.handleSubmitRequest(e)\n\t\t\t\t}),\n\t\t\t),\n\t\t\tfromEvent<KeyboardEvent>(this, 'keydown').pipe(\n\t\t\t\ttap(e => {\n\t\t\t\t\tif (e.code === 'Enter' || e.key === 'Enter') {\n\t\t\t\t\t\tthis.handleSubmitRequest(e)\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\t\t\t.pipe(takeUntil(this.$disconnecting))\n\t\t\t.subscribe()\n\t}\n\n\t/** Submits the form. */\n\tpublic submit(): boolean {\n\t\tconst formData = this.getFormData()\n\t\tif (!this.novalidate && !this.reportValidity()) {\n\t\t\treturn false\n\t\t}\n\t\tthis.dispatchEvent(new CustomEvent('submit', { detail: formData }))\n\t\treturn true\n\t}\n\n\t/** Resets the form. */\n\tpublic reset() {\n\t\tconst formElements = this.getFormElements()\n\t\tformElements.forEach(element => {\n\t\t\tconst tagName = element.tagName.toLowerCase()\n\t\t\tif (tagName === 'select') {\n\t\t\t\tfor (let i = 0; i < element.options.length; i++) {\n\t\t\t\t\tconst option = element.options[i]\n\t\t\t\t\toption.selected = option.defaultSelected\n\t\t\t\t}\n\t\t\t} else if (\n\t\t\t\t(tagName === 'input' && (element.type === 'checkbox' || element.type == 'radio')) ||\n\t\t\t\t(tagName !== 'input' && this._controlsWithChecked.includes(tagName))\n\t\t\t) {\n\t\t\t\telement.checked = element.hasAttribute('checked')\n\t\t\t} else if (\n\t\t\t\ttagName === 'schmancy-input' ||\n\t\t\t\ttagName === 'schmancy-rating' ||\n\t\t\t\ttagName === 'schmancy-mask-input' ||\n\t\t\t\ttagName === 'schmancy-date-time-input'\n\t\t\t) {\n\t\t\t\telement.value = element.getAttribute('value')\n\t\t\t} else if (this._controlsWithValue.includes(tagName)) {\n\t\t\t\telement.value = element.defaultValue\n\t\t\t}\n\t\t})\n\t\tthis.dispatchEvent(new CustomEvent('reset'))\n\t}\n\n\tprivate getFormElements(): any[] {\n\t\tconst slot = this.shadowRoot?.querySelector('slot')\n\t\tconst assignedElements = slot?.assignedElements({ flatten: true })\n\t\tconst formElements: any[] = []\n\t\tassignedElements?.forEach((element: any) => {\n\t\t\tif (!element.disabled) {\n\t\t\t\tformElements.push(element)\n\t\t\t}\n\t\t\tconst children = Array.from(element.getElementsByTagName('*')).filter((element: any) => !element.disabled)\n\t\t\tformElements.push(...children)\n\t\t})\n\n\t\treturn formElements\n\t}\n\n\tpublic getFormData() {\n\t\tconst formData = new FormData()\n\n\t\tconst formElements = this.getFormElements()\n\t\tformElements.forEach(element => {\n\t\t\tconst tagName = element.tagName.toLowerCase()\n\t\t\tif (tagName === 'select') {\n\t\t\t\tfor (let i = 0; i < element.options.length; i++) {\n\t\t\t\t\tconst option = element.options[i]\n\t\t\t\t\tif (option.selected) {\n\t\t\t\t\t\tformData.append(element.name, option.value)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (this._controlsWithChecked.includes(tagName) && element.checked) {\n\t\t\t\tformData.append(element.name, element.value || 'on')\n\t\t\t} else if (\n\t\t\t\tthis._controlsWithValue.includes(tagName) &&\n\t\t\t\telement.type !== 'checkbox' &&\n\t\t\t\telement.type !== 'radio' &&\n\t\t\t\telement.type !== 'submit'\n\t\t\t) {\n\t\t\t\tformData.append(element.name, element.value)\n\t\t\t}\n\t\t})\n\n\t\treturn formData\n\t}\n\n\t/** Checks for validity of the form. */\n\tpublic reportValidity(): boolean {\n\t\tconst formElements = this.getFormElements()\n\t\treturn !formElements.some(\n\t\t\telement => typeof element.reportValidity === 'function' && element.reportValidity() === false,\n\t\t)\n\t}\n\n\tprivate handleSubmitRequest(event: MouseEvent | KeyboardEvent) {\n\t\tconst targetElement: any = event.target as HTMLElement\n\t\tif (this._controlsThatSubmit.includes(targetElement.tagName.toLowerCase())) {\n\t\t\tthis.submit()\n\t\t} else if (targetElement.type?.toLowerCase() === 'reset') {\n\t\t\tthis.reset()\n\t\t}\n\n\t\treturn true\n\t}\n\n\tprotected override render() {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-form': SchmancyForm\n\t}\n}\n"],"names":["SchmancyForm","TailwindElement","constructor","super","this","$disconnecting","Subject","tabIndex","_controlsWithChecked","_controlsWithValue","_controlsThatSubmit","novalidate","merge","fromEvent","pipe","tap","e","target","type","toLowerCase","handleSubmitRequest","code","key","takeUntil","subscribe","formData","getFormData","reportValidity","dispatchEvent","CustomEvent","detail","getFormElements","forEach","element","tagName","i","options","length","option","selected","defaultSelected","includes","checked","hasAttribute","value","getAttribute","defaultValue","slot","shadowRoot","querySelector","assignedElements","flatten","formElements","disabled","push","children","Array","from","getElementsByTagName","filter","FormData","append","name","some","event","targetElement","submit","reset","html","shadowRootOptions","LitElement","mode","delegatesFocus","styles","css","__decorateClass","property","Boolean","reflect","prototype","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"form-DG0Kj--R.js","sources":["../src/form/form.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { LitElement, css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { fromEvent, merge, Subject, takeUntil, tap } from 'rxjs'\n\nexport interface FormEventMap {\n\tsubmit: CustomEvent<FormData>\n\treset: CustomEvent\n}\n\n/**\n * The form is a component used to collect user input from\n * interactive controls.\n *\n * @element schmancy-form\n *\n * @slot - Default slot for the form.\n *\n * @fires submit - Emitted when the form is submitted.\n * @fires reset - Emitted when the form is reset.\n */\n@customElement('schmancy-form')\nexport default class SchmancyForm extends TailwindElement() {\n\tprivate $disconnecting = new Subject()\n\tpublic static readonly tagName = 'schmancy-form'\n\ttabIndex = 0\n\tprotected static shadowRootOptions = {\n\t\t...LitElement.shadowRootOptions,\n\t\tmode: 'open',\n\t\tdelegatesFocus: false,\n\t}\n\tpublic static styles = css`\n\t\t:host {\n\t\t\theight: 100%;\n\t\t\twidth: 100%;\n\t\t\tdisplay: block;\n\t\t}\n\t`\n\n\tprivate _controlsWithChecked = [\n\t\t'input',\n\t\t'radio',\n\t\t'schmancy-radio',\n\t\t'schmancy-switch',\n\t\t'schmancy-checkbox',\n\t\t'schmancy-radio-group',\n\t\t'schmancy-autocomplete',\n\t]\n\tprivate _controlsWithValue = [\n\t\t'input',\n\t\t'schmancy-input',\n\t\t'schmancy-mask-input',\n\t\t'textarea',\n\t\t'schmancy-rating',\n\t\t'schmancy-select',\n\t\t'schmancy-combo',\n\t\t'schmancy-date-time-input',\n\t\t'schmancy-autocomplete',\n\t]\n\tprivate _controlsThatSubmit = ['button', 'schmancy-input', 'schmancy-button', 'schmancy-icon-button']\n\n\t/** Specifies if form data validation should be skipped on submit.\n\t * @attr novalidate\n\t * @type {boolean}\n\t * @public\n\t */\n\t@property({ type: Boolean, reflect: true }) public novalidate = false\n\n\tconstructor() {\n\t\tsuper()\n\t\tmerge(\n\t\t\tfromEvent<MouseEvent>(this, 'click').pipe(\n\t\t\t\ttap(e => {\n\t\t\t\t\tif ((e.target as HTMLButtonElement).type?.toLowerCase() === 'submit') this.handleSubmitRequest(e)\n\t\t\t\t}),\n\t\t\t),\n\t\t\tfromEvent<KeyboardEvent>(this, 'keydown').pipe(\n\t\t\t\ttap(e => {\n\t\t\t\t\tif (e.code === 'Enter' || e.key === 'Enter') {\n\t\t\t\t\t\tthis.handleSubmitRequest(e)\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\t\t\t.pipe(takeUntil(this.$disconnecting))\n\t\t\t.subscribe()\n\t}\n\n\t/** Submits the form. */\n\tpublic submit(): boolean {\n\t\tconst formData = this.getFormData()\n\t\tif (!this.novalidate && !this.reportValidity()) {\n\t\t\treturn false\n\t\t}\n\t\tthis.dispatchEvent(new CustomEvent('submit', { detail: formData }))\n\t\treturn true\n\t}\n\n\t/** Resets the form. */\n\tpublic reset() {\n\t\tconst formElements = this.getFormElements()\n\t\tformElements.forEach(element => {\n\t\t\tconst tagName = element.tagName.toLowerCase()\n\t\t\tif (tagName === 'select') {\n\t\t\t\tfor (let i = 0; i < element.options.length; i++) {\n\t\t\t\t\tconst option = element.options[i]\n\t\t\t\t\toption.selected = option.defaultSelected\n\t\t\t\t}\n\t\t\t} else if (\n\t\t\t\t(tagName === 'input' && (element.type === 'checkbox' || element.type == 'radio')) ||\n\t\t\t\t(tagName !== 'input' && this._controlsWithChecked.includes(tagName))\n\t\t\t) {\n\t\t\t\telement.checked = element.hasAttribute('checked')\n\t\t\t} else if (\n\t\t\t\ttagName === 'schmancy-input' ||\n\t\t\t\ttagName === 'schmancy-rating' ||\n\t\t\t\ttagName === 'schmancy-mask-input' ||\n\t\t\t\ttagName === 'schmancy-date-time-input'\n\t\t\t) {\n\t\t\t\telement.value = element.getAttribute('value')\n\t\t\t} else if (this._controlsWithValue.includes(tagName)) {\n\t\t\t\telement.value = element.defaultValue\n\t\t\t}\n\t\t})\n\t\tthis.dispatchEvent(new CustomEvent('reset'))\n\t}\n\n\tprivate getFormElements(): any[] {\n\t\tconst slot = this.shadowRoot?.querySelector('slot')\n\t\tconst assignedElements = slot?.assignedElements({ flatten: true })\n\t\tconst formElements: any[] = []\n\t\tassignedElements?.forEach((element: any) => {\n\t\t\tif (!element.disabled) {\n\t\t\t\tformElements.push(element)\n\t\t\t}\n\t\t\tconst children = Array.from(element.getElementsByTagName('*')).filter((element: any) => !element.disabled)\n\t\t\tformElements.push(...children)\n\t\t})\n\n\t\treturn formElements\n\t}\n\n\tpublic getFormData() {\n\t\tconst formData = new FormData()\n\n\t\tconst formElements = this.getFormElements()\n\t\tformElements.forEach(element => {\n\t\t\tconst tagName = element.tagName.toLowerCase()\n\t\t\tif (tagName === 'select') {\n\t\t\t\tfor (let i = 0; i < element.options.length; i++) {\n\t\t\t\t\tconst option = element.options[i]\n\t\t\t\t\tif (option.selected) {\n\t\t\t\t\t\tformData.append(element.name, option.value)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (this._controlsWithChecked.includes(tagName) && element.checked) {\n\t\t\t\tformData.append(element.name, element.value || 'on')\n\t\t\t} else if (\n\t\t\t\tthis._controlsWithValue.includes(tagName) &&\n\t\t\t\telement.type !== 'checkbox' &&\n\t\t\t\telement.type !== 'radio' &&\n\t\t\t\telement.type !== 'submit'\n\t\t\t) {\n\t\t\t\tformData.append(element.name, element.value)\n\t\t\t}\n\t\t})\n\n\t\treturn formData\n\t}\n\n\t/** Checks for validity of the form. */\n\tpublic reportValidity(): boolean {\n\t\tconst formElements = this.getFormElements()\n\t\treturn !formElements.some(\n\t\t\telement => typeof element.reportValidity === 'function' && element.reportValidity() === false,\n\t\t)\n\t}\n\n\tprivate handleSubmitRequest(event: MouseEvent | KeyboardEvent) {\n\t\tconst targetElement: any = event.target as HTMLElement\n\t\tif (this._controlsThatSubmit.includes(targetElement.tagName.toLowerCase())) {\n\t\t\tthis.submit()\n\t\t} else if (targetElement.type?.toLowerCase() === 'reset') {\n\t\t\tthis.reset()\n\t\t}\n\n\t\treturn true\n\t}\n\n\tprotected override render() {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-form': SchmancyForm\n\t}\n}\n"],"names":["SchmancyForm","TailwindElement","constructor","super","this","$disconnecting","Subject","tabIndex","_controlsWithChecked","_controlsWithValue","_controlsThatSubmit","novalidate","merge","fromEvent","pipe","tap","e","target","type","toLowerCase","handleSubmitRequest","code","key","takeUntil","subscribe","formData","getFormData","reportValidity","dispatchEvent","CustomEvent","detail","getFormElements","forEach","element","tagName","i","options","length","option","selected","defaultSelected","includes","checked","hasAttribute","value","getAttribute","defaultValue","slot","shadowRoot","querySelector","assignedElements","flatten","formElements","disabled","push","children","Array","from","getElementsByTagName","filter","FormData","append","name","some","event","targetElement","submit","reset","html","shadowRootOptions","LitElement","mode","delegatesFocus","styles","css","__decorateClass","property","Boolean","reflect","prototype","customElement"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- "use strict";const c=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const m=require("./tailwind.mixin-698watWc.cjs"),h=require("lit"),l=require("lit/decorators.js");var d=Object.defineProperty,p=Object.getOwnPropertyDescriptor,u=(e,t,s,n)=>{for(var i,o=n>1?void 0:n?p(t,s):t,r=e.length-1;r>=0;r--)(i=e[r])&&(o=(n?i(t,s,o):i(o))||o);return n&&o&&d(t,s,o),o};let a=class extends m.TailwindElement(){constructor(){super(),this.$disconnecting=new c.Subject,this.tabIndex=0,this._controlsWithChecked=["input","radio","schmancy-radio","schmancy-switch","schmancy-checkbox","schmancy-radio-group","schmancy-autocomplete"],this._controlsWithValue=["input","schmancy-input","schmancy-mask-input","textarea","schmancy-rating","schmancy-select","schmancy-combo","schmancy-date-time-input","schmancy-autocomplete"],this._controlsThatSubmit=["button","schmancy-input","schmancy-button","schmancy-icon-button"],this.novalidate=!1,c.merge(c.fromEvent(this,"click").pipe(c.tap(e=>{var t;((t=e.target.type)==null?void 0:t.toLowerCase())==="submit"&&this.handleSubmitRequest(e)})),c.fromEvent(this,"keydown").pipe(c.tap(e=>{e.code!=="Enter"&&e.key!=="Enter"||this.handleSubmitRequest(e)}))).pipe(c.takeUntil(this.$disconnecting)).subscribe()}submit(){const e=this.getFormData();return!(!this.novalidate&&!this.reportValidity())&&(this.dispatchEvent(new CustomEvent("submit",{detail:e})),!0)}reset(){this.getFormElements().forEach(e=>{const t=e.tagName.toLowerCase();if(t==="select")for(let s=0;s<e.options.length;s++){const n=e.options[s];n.selected=n.defaultSelected}else t==="input"&&(e.type==="checkbox"||e.type=="radio")||t!=="input"&&this._controlsWithChecked.includes(t)?e.checked=e.hasAttribute("checked"):t==="schmancy-input"||t==="schmancy-rating"||t==="schmancy-mask-input"||t==="schmancy-date-time-input"?e.value=e.getAttribute("value"):this._controlsWithValue.includes(t)&&(e.value=e.defaultValue)}),this.dispatchEvent(new CustomEvent("reset"))}getFormElements(){var n;const e=(n=this.shadowRoot)==null?void 0:n.querySelector("slot"),t=e==null?void 0:e.assignedElements({flatten:!0}),s=[];return t==null||t.forEach(i=>{i.disabled||s.push(i);const o=Array.from(i.getElementsByTagName("*")).filter(r=>!r.disabled);s.push(...o)}),s}getFormData(){const e=new FormData;return this.getFormElements().forEach(t=>{const s=t.tagName.toLowerCase();if(s==="select")for(let n=0;n<t.options.length;n++){const i=t.options[n];i.selected&&e.append(t.name,i.value)}else this._controlsWithChecked.includes(s)&&t.checked?e.append(t.name,t.value||"on"):this._controlsWithValue.includes(s)&&t.type!=="checkbox"&&t.type!=="radio"&&t.type!=="submit"&&e.append(t.name,t.value)}),e}reportValidity(){return!this.getFormElements().some(e=>typeof e.reportValidity=="function"&&e.reportValidity()===!1)}handleSubmitRequest(e){var s;const t=e.target;return this._controlsThatSubmit.includes(t.tagName.toLowerCase())?this.submit():((s=t.type)==null?void 0:s.toLowerCase())==="reset"&&this.reset(),!0}render(){return h.html`<slot></slot>`}};a.tagName="schmancy-form",a.shadowRootOptions={...h.LitElement.shadowRootOptions,mode:"open",delegatesFocus:!1},a.styles=h.css`
1
+ "use strict";const c=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const m=require("./tailwind.mixin-Dts5Uk3L.cjs"),h=require("lit"),l=require("lit/decorators.js");var d=Object.defineProperty,p=Object.getOwnPropertyDescriptor,u=(e,t,s,n)=>{for(var i,o=n>1?void 0:n?p(t,s):t,r=e.length-1;r>=0;r--)(i=e[r])&&(o=(n?i(t,s,o):i(o))||o);return n&&o&&d(t,s,o),o};let a=class extends m.TailwindElement(){constructor(){super(),this.$disconnecting=new c.Subject,this.tabIndex=0,this._controlsWithChecked=["input","radio","schmancy-radio","schmancy-switch","schmancy-checkbox","schmancy-radio-group","schmancy-autocomplete"],this._controlsWithValue=["input","schmancy-input","schmancy-mask-input","textarea","schmancy-rating","schmancy-select","schmancy-combo","schmancy-date-time-input","schmancy-autocomplete"],this._controlsThatSubmit=["button","schmancy-input","schmancy-button","schmancy-icon-button"],this.novalidate=!1,c.merge(c.fromEvent(this,"click").pipe(c.tap(e=>{var t;((t=e.target.type)==null?void 0:t.toLowerCase())==="submit"&&this.handleSubmitRequest(e)})),c.fromEvent(this,"keydown").pipe(c.tap(e=>{e.code!=="Enter"&&e.key!=="Enter"||this.handleSubmitRequest(e)}))).pipe(c.takeUntil(this.$disconnecting)).subscribe()}submit(){const e=this.getFormData();return!(!this.novalidate&&!this.reportValidity())&&(this.dispatchEvent(new CustomEvent("submit",{detail:e})),!0)}reset(){this.getFormElements().forEach(e=>{const t=e.tagName.toLowerCase();if(t==="select")for(let s=0;s<e.options.length;s++){const n=e.options[s];n.selected=n.defaultSelected}else t==="input"&&(e.type==="checkbox"||e.type=="radio")||t!=="input"&&this._controlsWithChecked.includes(t)?e.checked=e.hasAttribute("checked"):t==="schmancy-input"||t==="schmancy-rating"||t==="schmancy-mask-input"||t==="schmancy-date-time-input"?e.value=e.getAttribute("value"):this._controlsWithValue.includes(t)&&(e.value=e.defaultValue)}),this.dispatchEvent(new CustomEvent("reset"))}getFormElements(){var n;const e=(n=this.shadowRoot)==null?void 0:n.querySelector("slot"),t=e==null?void 0:e.assignedElements({flatten:!0}),s=[];return t==null||t.forEach(i=>{i.disabled||s.push(i);const o=Array.from(i.getElementsByTagName("*")).filter(r=>!r.disabled);s.push(...o)}),s}getFormData(){const e=new FormData;return this.getFormElements().forEach(t=>{const s=t.tagName.toLowerCase();if(s==="select")for(let n=0;n<t.options.length;n++){const i=t.options[n];i.selected&&e.append(t.name,i.value)}else this._controlsWithChecked.includes(s)&&t.checked?e.append(t.name,t.value||"on"):this._controlsWithValue.includes(s)&&t.type!=="checkbox"&&t.type!=="radio"&&t.type!=="submit"&&e.append(t.name,t.value)}),e}reportValidity(){return!this.getFormElements().some(e=>typeof e.reportValidity=="function"&&e.reportValidity()===!1)}handleSubmitRequest(e){var s;const t=e.target;return this._controlsThatSubmit.includes(t.tagName.toLowerCase())?this.submit():((s=t.type)==null?void 0:s.toLowerCase())==="reset"&&this.reset(),!0}render(){return h.html`<slot></slot>`}};a.tagName="schmancy-form",a.shadowRootOptions={...h.LitElement.shadowRootOptions,mode:"open",delegatesFocus:!1},a.styles=h.css`
2
2
  :host {
3
3
  height: 100%;
4
4
  width: 100%;
5
5
  display: block;
6
6
  }
7
7
  `,u([l.property({type:Boolean,reflect:!0})],a.prototype,"novalidate",2),a=u([l.customElement("schmancy-form")],a);
8
- //# sourceMappingURL=form-plr-eJPP.cjs.map
8
+ //# sourceMappingURL=form-DpOSrAUQ.cjs.map