@mhmo91/schmancy 0.4.34 → 0.4.36

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 (305) hide show
  1. package/ai/badge.md +70 -62
  2. package/ai/form.md +10 -10
  3. package/ai/input.md +4 -4
  4. package/dist/ai/badge.md +70 -62
  5. package/dist/ai/form.md +10 -10
  6. package/dist/ai/input.md +4 -4
  7. package/dist/{animated-text-CYmUxmlv.cjs → animated-text-BDl61lcE.cjs} +2 -2
  8. package/dist/{animated-text-CYmUxmlv.cjs.map → animated-text-BDl61lcE.cjs.map} +1 -1
  9. package/dist/{animated-text-AbNgT7ie.js → animated-text-BtDJWgrr.js} +3 -3
  10. package/dist/{animated-text-AbNgT7ie.js.map → animated-text-BtDJWgrr.js.map} +1 -1
  11. package/dist/animated-text.cjs +1 -1
  12. package/dist/animated-text.js +1 -1
  13. package/dist/area.cjs +1 -1
  14. package/dist/{area.component-BxrgxiLv.js → area.component-CYttliWA.js} +3 -3
  15. package/dist/{area.component-BxrgxiLv.js.map → area.component-CYttliWA.js.map} +1 -1
  16. package/dist/{area.component-B1Lmmsuk.cjs → area.component-Dy1q15W1.cjs} +2 -2
  17. package/dist/{area.component-B1Lmmsuk.cjs.map → area.component-Dy1q15W1.cjs.map} +1 -1
  18. package/dist/area.js +1 -1
  19. package/dist/autocomplete-BPnLYwJ4.cjs +74 -0
  20. package/dist/autocomplete-BPnLYwJ4.cjs.map +1 -0
  21. package/dist/autocomplete-Cb6hDFh1.js +332 -0
  22. package/dist/autocomplete-Cb6hDFh1.js.map +1 -0
  23. package/dist/autocomplete.cjs +1 -1
  24. package/dist/autocomplete.js +1 -1
  25. package/dist/{avatar-aYgD4qxk.js → avatar-CaLFYyIO.js} +160 -156
  26. package/dist/avatar-CaLFYyIO.js.map +1 -0
  27. package/dist/{avatar-Ytu5d0n6.cjs → avatar-Dky6l3b2.cjs} +14 -14
  28. package/dist/avatar-Dky6l3b2.cjs.map +1 -0
  29. package/dist/badge.cjs +1 -1
  30. package/dist/badge.js +3 -2
  31. package/dist/{boat--6fKaS1r.cjs → boat-BhprqJbv.cjs} +2 -2
  32. package/dist/{boat--6fKaS1r.cjs.map → boat-BhprqJbv.cjs.map} +1 -1
  33. package/dist/{boat-vVWqUMYt.js → boat-DcHe-GAJ.js} +2 -2
  34. package/dist/{boat-vVWqUMYt.js.map → boat-DcHe-GAJ.js.map} +1 -1
  35. package/dist/boat.cjs +1 -1
  36. package/dist/boat.js +1 -1
  37. package/dist/busy.cjs +1 -1
  38. package/dist/busy.js +1 -1
  39. package/dist/button.cjs +1 -1
  40. package/dist/button.js +1 -1
  41. package/dist/card.cjs +1 -1
  42. package/dist/card.js +1 -1
  43. package/dist/{checkbox-91xSd_El.js → checkbox-CCgs10Lm.js} +2 -2
  44. package/dist/{checkbox-91xSd_El.js.map → checkbox-CCgs10Lm.js.map} +1 -1
  45. package/dist/{checkbox-CcKQi7Hq.cjs → checkbox-CxSo6sJl.cjs} +2 -2
  46. package/dist/{checkbox-CcKQi7Hq.cjs.map → checkbox-CxSo6sJl.cjs.map} +1 -1
  47. package/dist/checkbox.cjs +1 -1
  48. package/dist/checkbox.js +1 -1
  49. package/dist/{chips-D26R6u7T.js → chips-CJj0gvT6.js} +3 -3
  50. package/dist/{chips-D26R6u7T.js.map → chips-CJj0gvT6.js.map} +1 -1
  51. package/dist/{chips-Duj_48dP.cjs → chips-CS_nQ5EF.cjs} +2 -2
  52. package/dist/{chips-Duj_48dP.cjs.map → chips-CS_nQ5EF.cjs.map} +1 -1
  53. package/dist/chips.cjs +1 -1
  54. package/dist/chips.js +1 -1
  55. package/dist/{circular-progress-CeiF8CYP.cjs → circular-progress-2PqoqeDz.cjs} +2 -2
  56. package/dist/{circular-progress-CeiF8CYP.cjs.map → circular-progress-2PqoqeDz.cjs.map} +1 -1
  57. package/dist/{circular-progress-BAzvWUr0.js → circular-progress-BHbqdobG.js} +3 -3
  58. package/dist/{circular-progress-BAzvWUr0.js.map → circular-progress-BHbqdobG.js.map} +1 -1
  59. package/dist/circular-progress.cjs +1 -1
  60. package/dist/circular-progress.js +1 -1
  61. package/dist/code-highlight.cjs +1 -1
  62. package/dist/code-highlight.js +1 -1
  63. package/dist/{code-preview-kNXSixdo.js → code-preview-BEpOOC-T.js} +2 -2
  64. package/dist/{code-preview-kNXSixdo.js.map → code-preview-BEpOOC-T.js.map} +1 -1
  65. package/dist/{code-preview-BCUSwkuU.cjs → code-preview-CnhG4p16.cjs} +2 -2
  66. package/dist/{code-preview-BCUSwkuU.cjs.map → code-preview-CnhG4p16.cjs.map} +1 -1
  67. package/dist/components.cjs +1 -1
  68. package/dist/components.js +1 -1
  69. package/dist/content-drawer.cjs +1 -1
  70. package/dist/content-drawer.js +1 -1
  71. package/dist/{date-range-gp2cu49l.js → date-range-BmcLAVvA.js} +3 -3
  72. package/dist/{date-range-gp2cu49l.js.map → date-range-BmcLAVvA.js.map} +1 -1
  73. package/dist/{date-range-CBrZ7Pm6.cjs → date-range-C5ZM-uus.cjs} +2 -2
  74. package/dist/{date-range-CBrZ7Pm6.cjs.map → date-range-C5ZM-uus.cjs.map} +1 -1
  75. package/dist/{date-range-inline-ZPM9dCG1.cjs → date-range-inline-Ckz0_B9K.cjs} +2 -2
  76. package/dist/{date-range-inline-ZPM9dCG1.cjs.map → date-range-inline-Ckz0_B9K.cjs.map} +1 -1
  77. package/dist/{date-range-inline-DZwtgeXX.js → date-range-inline-DBYE6ies.js} +3 -3
  78. package/dist/{date-range-inline-DZwtgeXX.js.map → date-range-inline-DBYE6ies.js.map} +1 -1
  79. package/dist/date-range-inline.cjs +1 -1
  80. package/dist/date-range-inline.js +1 -1
  81. package/dist/date-range.cjs +1 -1
  82. package/dist/date-range.js +1 -1
  83. package/dist/{delay-CUpeZtD8.cjs → delay-1Kpt99k6.cjs} +2 -2
  84. package/dist/{delay-CUpeZtD8.cjs.map → delay-1Kpt99k6.cjs.map} +1 -1
  85. package/dist/{delay-CYxt2x_w.js → delay-DpYwuaNT.js} +2 -2
  86. package/dist/{delay-CYxt2x_w.js.map → delay-DpYwuaNT.js.map} +1 -1
  87. package/dist/delay.cjs +1 -1
  88. package/dist/delay.js +1 -1
  89. package/dist/{dialog-content-Cz2MP3fS.cjs → dialog-content-DhsbfRJw.cjs} +2 -2
  90. package/dist/{dialog-content-Cz2MP3fS.cjs.map → dialog-content-DhsbfRJw.cjs.map} +1 -1
  91. package/dist/{dialog-content-DmUr4jZM.js → dialog-content-DwLiPKn6.js} +3 -3
  92. package/dist/{dialog-content-DmUr4jZM.js.map → dialog-content-DwLiPKn6.js.map} +1 -1
  93. package/dist/dialog.cjs +1 -1
  94. package/dist/dialog.js +1 -1
  95. package/dist/{divider-BreFKYh2.js → divider-C4SSlqD4.js} +3 -3
  96. package/dist/{divider-BreFKYh2.js.map → divider-C4SSlqD4.js.map} +1 -1
  97. package/dist/{divider-Cd5pOeZr.cjs → divider-Do9cv9Fw.cjs} +2 -2
  98. package/dist/{divider-Cd5pOeZr.cjs.map → divider-Do9cv9Fw.cjs.map} +1 -1
  99. package/dist/divider.cjs +1 -1
  100. package/dist/divider.js +1 -1
  101. package/dist/{dropdown-content-DjIvlBvq.js → dropdown-content-Clz8-Sau.js} +3 -3
  102. package/dist/{dropdown-content-DjIvlBvq.js.map → dropdown-content-Clz8-Sau.js.map} +1 -1
  103. package/dist/{dropdown-content-zLE8scWl.cjs → dropdown-content-anzsFIOv.cjs} +2 -2
  104. package/dist/{dropdown-content-zLE8scWl.cjs.map → dropdown-content-anzsFIOv.cjs.map} +1 -1
  105. package/dist/dropdown.cjs +1 -1
  106. package/dist/dropdown.js +1 -1
  107. package/dist/extra.cjs +1 -1
  108. package/dist/extra.js +1 -1
  109. package/dist/{flex-DRvBt9P0.js → flex-BVFtWBNT.js} +2 -2
  110. package/dist/{flex-DRvBt9P0.js.map → flex-BVFtWBNT.js.map} +1 -1
  111. package/dist/{flex-CEq4v4cK.cjs → flex-pHmogfUY.cjs} +2 -2
  112. package/dist/{flex-CEq4v4cK.cjs.map → flex-pHmogfUY.cjs.map} +1 -1
  113. package/dist/{form-BKqz7W6V.js → form-BknmFXcv.js} +2 -2
  114. package/dist/{form-BKqz7W6V.js.map → form-BknmFXcv.js.map} +1 -1
  115. package/dist/{form-B5CAbB2i.cjs → form-vwNceguM.cjs} +2 -2
  116. package/dist/{form-B5CAbB2i.cjs.map → form-vwNceguM.cjs.map} +1 -1
  117. package/dist/form.cjs +1 -1
  118. package/dist/form.js +1 -1
  119. package/dist/{formField.mixin-DCPfsyya.js → formField.mixin-Btf8vfYy.js} +2 -2
  120. package/dist/{formField.mixin-DCPfsyya.js.map → formField.mixin-Btf8vfYy.js.map} +1 -1
  121. package/dist/{formField.mixin-BuKEbib1.cjs → formField.mixin-pbMiCLQh.cjs} +2 -2
  122. package/dist/{formField.mixin-BuKEbib1.cjs.map → formField.mixin-pbMiCLQh.cjs.map} +1 -1
  123. package/dist/{icon-B0_pMF_-.cjs → icon-B0GtIpVT.cjs} +2 -2
  124. package/dist/{icon-B0_pMF_-.cjs.map → icon-B0GtIpVT.cjs.map} +1 -1
  125. package/dist/{icon-DA0eDV8w.js → icon-DjtkMY5q.js} +2 -2
  126. package/dist/{icon-DA0eDV8w.js.map → icon-DjtkMY5q.js.map} +1 -1
  127. package/dist/{icon-button-CEnel9Yg.js → icon-button-Cr7K-05m.js} +3 -3
  128. package/dist/{icon-button-CEnel9Yg.js.map → icon-button-Cr7K-05m.js.map} +1 -1
  129. package/dist/{icon-button-DFVuusoz.cjs → icon-button-D4GixH37.cjs} +2 -2
  130. package/dist/{icon-button-DFVuusoz.cjs.map → icon-button-D4GixH37.cjs.map} +1 -1
  131. package/dist/icons.cjs +1 -1
  132. package/dist/icons.js +1 -1
  133. package/dist/index.cjs +1 -1
  134. package/dist/index.js +186 -185
  135. package/dist/input-1jW0v1Pm.js +236 -0
  136. package/dist/input-1jW0v1Pm.js.map +1 -0
  137. package/dist/input-Brm4X9R4.cjs +51 -0
  138. package/dist/input-Brm4X9R4.cjs.map +1 -0
  139. package/dist/input.cjs +1 -1
  140. package/dist/input.js +3 -3
  141. package/dist/layout.cjs +1 -1
  142. package/dist/layout.js +1 -1
  143. package/dist/{list-BTm67LuV.js → list-BpV-YDKH.js} +2 -2
  144. package/dist/{list-BTm67LuV.js.map → list-BpV-YDKH.js.map} +1 -1
  145. package/dist/{list-Bos26fD3.cjs → list-CqTIfJLV.cjs} +2 -2
  146. package/dist/{list-Bos26fD3.cjs.map → list-CqTIfJLV.cjs.map} +1 -1
  147. package/dist/list.cjs +1 -1
  148. package/dist/list.js +1 -1
  149. package/dist/{litElement.mixin-Cs3zx2X6.cjs → litElement.mixin-Bnma23ZU.cjs} +2 -2
  150. package/dist/{litElement.mixin-Cs3zx2X6.cjs.map → litElement.mixin-Bnma23ZU.cjs.map} +1 -1
  151. package/dist/{litElement.mixin-Cn8IAazz.js → litElement.mixin-C2BM-yMx.js} +2 -2
  152. package/dist/{litElement.mixin-Cn8IAazz.js.map → litElement.mixin-C2BM-yMx.js.map} +1 -1
  153. package/dist/{media-YhMV6ELC.cjs → media-C8hYeSXn.cjs} +2 -2
  154. package/dist/{media-YhMV6ELC.cjs.map → media-C8hYeSXn.cjs.map} +1 -1
  155. package/dist/{media-DPQecp4W.js → media-CMFuSVaN.js} +2 -2
  156. package/dist/{media-DPQecp4W.js.map → media-CMFuSVaN.js.map} +1 -1
  157. package/dist/{menu-BfNE5Pz2.cjs → menu-CAkg3Ucm.cjs} +2 -2
  158. package/dist/{menu-BfNE5Pz2.cjs.map → menu-CAkg3Ucm.cjs.map} +1 -1
  159. package/dist/{menu-C5KQk1CK.js → menu-Cy55kr4r.js} +3 -3
  160. package/dist/{menu-C5KQk1CK.js.map → menu-Cy55kr4r.js.map} +1 -1
  161. package/dist/menu.cjs +1 -1
  162. package/dist/menu.js +1 -1
  163. package/dist/nav-drawer.cjs +1 -1
  164. package/dist/nav-drawer.js +4 -4
  165. package/dist/{notification-service-Bq_d-qqB.cjs → notification-service-D8akDWVC.cjs} +2 -2
  166. package/dist/{notification-service-Bq_d-qqB.cjs.map → notification-service-D8akDWVC.cjs.map} +1 -1
  167. package/dist/{notification-service-unFpqUQn.js → notification-service-DCOCdZOc.js} +3 -3
  168. package/dist/{notification-service-unFpqUQn.js.map → notification-service-DCOCdZOc.js.map} +1 -1
  169. package/dist/notification.cjs +1 -1
  170. package/dist/notification.js +1 -1
  171. package/dist/{option-Cy-nYxTs.js → option-Bo8xZrW9.js} +2 -2
  172. package/dist/{option-Cy-nYxTs.js.map → option-Bo8xZrW9.js.map} +1 -1
  173. package/dist/{option-B9LbtNdk.cjs → option-uYfF0ThT.cjs} +2 -2
  174. package/dist/{option-B9LbtNdk.cjs.map → option-uYfF0ThT.cjs.map} +1 -1
  175. package/dist/option.cjs +1 -1
  176. package/dist/option.js +1 -1
  177. package/dist/{payment-card-form-D45IjHFN.cjs → payment-card-form-BQ_ODHty.cjs} +2 -2
  178. package/dist/{payment-card-form-D45IjHFN.cjs.map → payment-card-form-BQ_ODHty.cjs.map} +1 -1
  179. package/dist/{payment-card-form-ctWIc4vM.js → payment-card-form-Bt7jTtGs.js} +3 -3
  180. package/dist/{payment-card-form-ctWIc4vM.js.map → payment-card-form-Bt7jTtGs.js.map} +1 -1
  181. package/dist/{progress-QXnS6DIm.cjs → progress-CAlVHURe.cjs} +2 -2
  182. package/dist/{progress-QXnS6DIm.cjs.map → progress-CAlVHURe.cjs.map} +1 -1
  183. package/dist/{progress-4Ef6bw05.js → progress-DAwEZ_pK.js} +2 -2
  184. package/dist/{progress-4Ef6bw05.js.map → progress-DAwEZ_pK.js.map} +1 -1
  185. package/dist/progress.cjs +1 -1
  186. package/dist/progress.js +1 -1
  187. package/dist/{radio-button-CEp1kd-P.js → radio-button-BfTz8dzJ.js} +3 -3
  188. package/dist/{radio-button-CEp1kd-P.js.map → radio-button-BfTz8dzJ.js.map} +1 -1
  189. package/dist/{radio-button-CUzdKTtW.cjs → radio-button-CaRWSk-y.cjs} +2 -2
  190. package/dist/{radio-button-CUzdKTtW.cjs.map → radio-button-CaRWSk-y.cjs.map} +1 -1
  191. package/dist/radio-group.cjs +1 -1
  192. package/dist/radio-group.js +1 -1
  193. package/dist/{schmancy-steps-container-D3m07gLT.cjs → schmancy-steps-container-BYPHyOLL.cjs} +2 -2
  194. package/dist/{schmancy-steps-container-D3m07gLT.cjs.map → schmancy-steps-container-BYPHyOLL.cjs.map} +1 -1
  195. package/dist/{schmancy-steps-container-KI2azXpv.js → schmancy-steps-container-x6jRkemp.js} +2 -2
  196. package/dist/{schmancy-steps-container-KI2azXpv.js.map → schmancy-steps-container-x6jRkemp.js.map} +1 -1
  197. package/dist/{select-Bw4QilHf.cjs → select-B0JOM-_t.cjs} +2 -2
  198. package/dist/{select-Bw4QilHf.cjs.map → select-B0JOM-_t.cjs.map} +1 -1
  199. package/dist/{select-g77JoEFx.js → select-BJaDcPZl.js} +3 -3
  200. package/dist/{select-g77JoEFx.js.map → select-BJaDcPZl.js.map} +1 -1
  201. package/dist/select.cjs +1 -1
  202. package/dist/select.js +1 -1
  203. package/dist/{sheet-rcWGv1EZ.js → sheet-D4A-XwtC.js} +4 -4
  204. package/dist/{sheet-rcWGv1EZ.js.map → sheet-D4A-XwtC.js.map} +1 -1
  205. package/dist/{sheet-C-bFq5IG.cjs → sheet-D_FOiCy4.cjs} +2 -2
  206. package/dist/{sheet-C-bFq5IG.cjs.map → sheet-D_FOiCy4.cjs.map} +1 -1
  207. package/dist/sheet.cjs +1 -1
  208. package/dist/sheet.js +2 -2
  209. package/dist/{sheet.service-ihtgUWRM.cjs → sheet.service-C0yEu73g.cjs} +2 -2
  210. package/dist/{sheet.service-ihtgUWRM.cjs.map → sheet.service-C0yEu73g.cjs.map} +1 -1
  211. package/dist/{sheet.service-BKQ7n7nz.js → sheet.service-Cs6x0-dj.js} +2 -2
  212. package/dist/{sheet.service-BKQ7n7nz.js.map → sheet.service-Cs6x0-dj.js.map} +1 -1
  213. package/dist/{slider-DMIOW38W.cjs → slider-DWkftwBc.cjs} +2 -2
  214. package/dist/{slider-DMIOW38W.cjs.map → slider-DWkftwBc.cjs.map} +1 -1
  215. package/dist/{slider-BJQE9wHL.js → slider-R8CZdtHO.js} +3 -3
  216. package/dist/{slider-BJQE9wHL.js.map → slider-R8CZdtHO.js.map} +1 -1
  217. package/dist/slider.cjs +1 -1
  218. package/dist/slider.js +1 -1
  219. package/dist/{spinner-NFkGJJz1.js → spinner-4FisLDbU.js} +34 -36
  220. package/dist/spinner-4FisLDbU.js.map +1 -0
  221. package/dist/{spinner-ByMXQNV3.cjs → spinner-Dl222o48.cjs} +21 -23
  222. package/dist/spinner-Dl222o48.cjs.map +1 -0
  223. package/dist/steps.cjs +1 -1
  224. package/dist/steps.js +1 -1
  225. package/dist/{surface-BhCe8hp8.cjs → surface-BBtm2OI1.cjs} +2 -2
  226. package/dist/{surface-BhCe8hp8.cjs.map → surface-BBtm2OI1.cjs.map} +1 -1
  227. package/dist/{surface-C7jJaxVu.js → surface-DF75Qk2N.js} +2 -2
  228. package/dist/{surface-C7jJaxVu.js.map → surface-DF75Qk2N.js.map} +1 -1
  229. package/dist/surface.cjs +1 -1
  230. package/dist/surface.js +1 -1
  231. package/dist/{table-BlwkABmS.cjs → table--JptotNr.cjs} +2 -2
  232. package/dist/{table-BlwkABmS.cjs.map → table--JptotNr.cjs.map} +1 -1
  233. package/dist/{table-CmwIcTR5.js → table-1SVYVJmx.js} +2 -2
  234. package/dist/{table-CmwIcTR5.js.map → table-1SVYVJmx.js.map} +1 -1
  235. package/dist/table.cjs +1 -1
  236. package/dist/table.js +1 -1
  237. package/dist/{tabs-compatibility-BdKslPOu.js → tabs-compatibility-A6VeNdH6.js} +2 -2
  238. package/dist/{tabs-compatibility-BdKslPOu.js.map → tabs-compatibility-A6VeNdH6.js.map} +1 -1
  239. package/dist/{tabs-compatibility-v0k0K0ID.cjs → tabs-compatibility-BIXJqJ6U.cjs} +2 -2
  240. package/dist/{tabs-compatibility-v0k0K0ID.cjs.map → tabs-compatibility-BIXJqJ6U.cjs.map} +1 -1
  241. package/dist/tabs.cjs +1 -1
  242. package/dist/tabs.js +1 -1
  243. package/dist/tailwind.mixin-CWA7D8Ym.js +43 -0
  244. package/dist/{tailwind.mixin-BHLwDiBj.js.map → tailwind.mixin-CWA7D8Ym.js.map} +1 -1
  245. package/dist/tailwind.mixin-Cb7MPMz5.cjs +2 -0
  246. package/dist/{tailwind.mixin-1kcW0BGm.cjs.map → tailwind.mixin-Cb7MPMz5.cjs.map} +1 -1
  247. package/dist/teleport.cjs +1 -1
  248. package/dist/teleport.js +2 -2
  249. package/dist/{textarea-CfLyPiqF.js → textarea-Br2AU0Nv.js} +2 -2
  250. package/dist/{textarea-CfLyPiqF.js.map → textarea-Br2AU0Nv.js.map} +1 -1
  251. package/dist/{textarea-CL3oExE7.cjs → textarea-DTTc9Q9v.cjs} +2 -2
  252. package/dist/{textarea-CL3oExE7.cjs.map → textarea-DTTc9Q9v.cjs.map} +1 -1
  253. package/dist/textarea.cjs +1 -1
  254. package/dist/textarea.js +1 -1
  255. package/dist/{theme-button-D9DpgXlC.cjs → theme-button-B_qS6ur-.cjs} +2 -2
  256. package/dist/{theme-button-D9DpgXlC.cjs.map → theme-button-B_qS6ur-.cjs.map} +1 -1
  257. package/dist/{theme-button-tekBpoTr.js → theme-button-Dw6gnMP7.js} +2 -2
  258. package/dist/{theme-button-tekBpoTr.js.map → theme-button-Dw6gnMP7.js.map} +1 -1
  259. package/dist/theme-button.cjs +1 -1
  260. package/dist/theme-button.js +1 -1
  261. package/dist/theme.cjs +1 -1
  262. package/dist/theme.js +1 -1
  263. package/dist/{timezone-rpn_HlNW.js → timezone-Dtjp82BY.js} +3 -3
  264. package/dist/{timezone-rpn_HlNW.js.map → timezone-Dtjp82BY.js.map} +1 -1
  265. package/dist/{timezone-DIYE4qo4.cjs → timezone-XFFQCQxI.cjs} +2 -2
  266. package/dist/{timezone-DIYE4qo4.cjs.map → timezone-XFFQCQxI.cjs.map} +1 -1
  267. package/dist/{tooltip-apPpbYRb.cjs → tooltip-B2vaA2HE.cjs} +2 -2
  268. package/dist/{tooltip-apPpbYRb.cjs.map → tooltip-B2vaA2HE.cjs.map} +1 -1
  269. package/dist/{tooltip-C5DJ3omV.js → tooltip-CbspXmfO.js} +2 -2
  270. package/dist/{tooltip-C5DJ3omV.js.map → tooltip-CbspXmfO.js.map} +1 -1
  271. package/dist/tooltip.cjs +1 -1
  272. package/dist/tooltip.js +1 -1
  273. package/dist/{tree-DYOX-2CI.cjs → tree-BWiLuVqB.cjs} +2 -2
  274. package/dist/{tree-DYOX-2CI.cjs.map → tree-BWiLuVqB.cjs.map} +1 -1
  275. package/dist/{tree-B38B9Zts.js → tree-Cld52SH0.js} +2 -2
  276. package/dist/{tree-B38B9Zts.js.map → tree-Cld52SH0.js.map} +1 -1
  277. package/dist/tree.cjs +1 -1
  278. package/dist/tree.js +1 -1
  279. package/dist/{typewriter-Cf1Bl0lI.js → typewriter-BVgRBrud.js} +4 -4
  280. package/dist/{typewriter-Cf1Bl0lI.js.map → typewriter-BVgRBrud.js.map} +1 -1
  281. package/dist/{typewriter-D5sC3i_h.cjs → typewriter-CCUnhz7q.cjs} +2 -2
  282. package/dist/{typewriter-D5sC3i_h.cjs.map → typewriter-CCUnhz7q.cjs.map} +1 -1
  283. package/dist/typewriter.cjs +1 -1
  284. package/dist/typewriter.js +1 -1
  285. package/dist/{typography-sm5Ne22S.js → typography-BEhOBun8.js} +2 -2
  286. package/dist/{typography-sm5Ne22S.js.map → typography-BEhOBun8.js.map} +1 -1
  287. package/dist/{typography-VDYy4xDQ.cjs → typography-C_8cRYiU.cjs} +2 -2
  288. package/dist/{typography-VDYy4xDQ.cjs.map → typography-C_8cRYiU.cjs.map} +1 -1
  289. package/dist/typography.cjs +1 -1
  290. package/dist/typography.js +1 -1
  291. package/package.json +1 -1
  292. package/dist/autocomplete-Bx1vWN32.js +0 -315
  293. package/dist/autocomplete-Bx1vWN32.js.map +0 -1
  294. package/dist/autocomplete-ClTDM1cy.cjs +0 -73
  295. package/dist/autocomplete-ClTDM1cy.cjs.map +0 -1
  296. package/dist/avatar-Ytu5d0n6.cjs.map +0 -1
  297. package/dist/avatar-aYgD4qxk.js.map +0 -1
  298. package/dist/input-B7Q3RRwE.js +0 -473
  299. package/dist/input-B7Q3RRwE.js.map +0 -1
  300. package/dist/input-C4tYxk-t.cjs +0 -111
  301. package/dist/input-C4tYxk-t.cjs.map +0 -1
  302. package/dist/spinner-ByMXQNV3.cjs.map +0 -1
  303. package/dist/spinner-NFkGJJz1.js.map +0 -1
  304. package/dist/tailwind.mixin-1kcW0BGm.cjs +0 -2
  305. package/dist/tailwind.mixin-BHLwDiBj.js +0 -43
@@ -1,4 +1,4 @@
1
- "use strict";const u=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const p=require("./litElement.mixin-Cs3zx2X6.cjs");require("./tailwind.mixin-1kcW0BGm.cjs");const o=require("lit/decorators.js"),d=require("lit"),m=require("lit/directives/cache.js"),S=require("rxjs/operators");var f=Object.defineProperty,v=Object.getOwnPropertyDescriptor,c=(t,s,i,l)=>{for(var r,e=l>1?void 0:l?v(s,i):s,n=t.length-1;n>=0;n--)(r=t[n])&&(e=(l?r(s,i,e):r(e))||e);return l&&e&&f(s,i,e),e};exports.SchmancySlide=class extends p.$LitElement(d.css`
1
+ "use strict";const u=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const p=require("./litElement.mixin-Bnma23ZU.cjs");require("./tailwind.mixin-Cb7MPMz5.cjs");const o=require("lit/decorators.js"),d=require("lit"),m=require("lit/directives/cache.js"),S=require("rxjs/operators");var f=Object.defineProperty,v=Object.getOwnPropertyDescriptor,c=(t,s,i,l)=>{for(var r,e=l>1?void 0:l?v(s,i):s,n=t.length-1;n>=0;n--)(r=t[n])&&(e=(l?r(s,i,e):r(e))||e);return l&&e&&f(s,i,e),e};exports.SchmancySlide=class extends p.$LitElement(d.css`
2
2
  :host {
3
3
  display: block;
4
4
  scroll-snap-align: center; /* If your slider uses scroll-snap */
@@ -80,4 +80,4 @@
80
80
  </div>
81
81
  </div>
82
82
  `}},a([o.state()],exports.SchmancySlider.prototype,"selectedIndex",2),a([o.property({type:Boolean})],exports.SchmancySlider.prototype,"showArrows",2),a([o.query("#slider")],exports.SchmancySlider.prototype,"slider",2),a([o.query("slot")],exports.SchmancySlider.prototype,"defaultSlot",2),exports.SchmancySlider=a([o.customElement("schmancy-slider")],exports.SchmancySlider);
83
- //# sourceMappingURL=slider-DMIOW38W.cjs.map
83
+ //# sourceMappingURL=slider-DWkftwBc.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"slider-DMIOW38W.cjs","sources":["../src/slider/slide.ts","../src/slider/slider.ts"],"sourcesContent":["import { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { cache } from 'lit/directives/cache.js'\n\n/**\n * Supported slide \"types.\"\n * - 'image': Renders an <img>\n * - 'video': Renders a <video>\n * - 'content': Renders a <slot> (the default)\n */\ntype SlideType = 'image' | 'video' | 'content'\n\n/**\n * Allowed values for the 'fit' property,\n * which maps to CSS object-fit.\n */\ntype ObjectFit = 'cover' | 'contain' | 'fill' | 'scale-down' | 'none'\n\n@customElement('schmancy-slide')\nexport class SchmancySlide extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tscroll-snap-align: center; /* If your slider uses scroll-snap */\n\t}\n\n\t.slide {\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tobject-fit: var(--object-fit, cover);\n\t}\n`) {\n\t/**\n\t * Determines how this slide should be rendered.\n\t * Defaults to 'content' if not provided.\n\t */\n\t@property({ type: String }) type: SlideType = 'content'\n\n\t/**\n\t * Source for images or videos (if `type` is 'image' or 'video').\n\t */\n\t@property({ type: String }) src: string = ''\n\n\t/**\n\t * Alternate text for images.\n\t */\n\t@property({ type: String }) alt: string = ''\n\n\t/**\n\t * Whether to show default video controls (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) controls = true\n\n\t/**\n\t * Whether the video should autoplay (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) autoplay = false\n\n\t/**\n\t * Whether the video should loop (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) loop = false\n\n\t/**\n\t * Whether the video is muted (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) muted = false\n\n\t/**\n\t * CSS `object-fit` property, applied to images/videos.\n\t */\n\t@property({ type: String }) fit: ObjectFit = 'cover'\n\n\trender() {\n\t\treturn html` <div style=\"--object-fit: ${this.fit}\">${cache(this.renderSlide())}</div> `\n\t}\n\n\tprivate renderSlide() {\n\t\tswitch (this.type) {\n\t\t\tcase 'image':\n\t\t\t\treturn html` <img class=\"slide\" src=\"${this.src}\" alt=\"${this.alt}\" loading=\"lazy\" /> `\n\t\t\tcase 'video':\n\t\t\t\treturn html`\n\t\t\t\t\t<video\n\t\t\t\t\t\tclass=\"slide\"\n\t\t\t\t\t\tsrc=\"${this.src}\"\n\t\t\t\t\t\t?controls=\"${this.controls}\"\n\t\t\t\t\t\t?autoplay=\"${this.autoplay}\"\n\t\t\t\t\t\t?loop=\"${this.loop}\"\n\t\t\t\t\t\t?muted=\"${this.muted}\"\n\t\t\t\t\t>\n\t\t\t\t\t\tYour browser does not support HTML video.\n\t\t\t\t\t</video>\n\t\t\t\t`\n\t\t\tcase 'content':\n\t\t\tdefault:\n\t\t\t\treturn html`<slot></slot>`\n\t\t}\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-slide': SchmancySlide\n\t}\n}\n","import { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { fromEvent } from 'rxjs'\nimport { throttleTime } from 'rxjs/operators'\n\n@customElement('schmancy-slider')\nexport class SchmancySlider extends $LitElement(css`\n\t.slider {\n\t\t/* Lay out slides horizontally, one after another */\n\t\tdisplay: flex;\n\t\toverflow-x: auto;\n\n\t\t/* Optional: scroll snapping */\n\t\tscroll-snap-type: x mandatory;\n\n\t\t/* Hide scrollbars */\n\t\t-ms-overflow-style: none; /* IE and Edge */\n\t\tscrollbar-width: none; /* Firefox */\n\t}\n\t.slider::-webkit-scrollbar {\n\t\tdisplay: none; /* Chrome, Safari, Opera */\n\t}\n\n\t/* \n Ensure each slide takes up the full slider width.\n \"schmancy-slide\" is the child custom element.\n */\n\t::slotted(schmancy-slide) {\n\t\tflex: 0 0 100%;\n\t\tbox-sizing: border-box;\n\t}\n`) {\n\t/**\n\t * Currently centered slide index\n\t */\n\t@state() private selectedIndex: number = 0\n\n\t/**\n\t * If true, renders next/prev buttons\n\t */\n\t@property({ type: Boolean }) showArrows: boolean = true\n\n\t@query('#slider') private slider!: HTMLDivElement\n\t@query('slot') private defaultSlot!: HTMLSlotElement\n\n\tprotected firstUpdated() {\n\t\t// Start at leftmost position\n\t\tthis.slider.scrollLeft = 0\n\n\t\t// Throttle scroll events to update selected index\n\t\tfromEvent(this.slider, 'scroll')\n\t\t\t.pipe(throttleTime(100, undefined, { trailing: true }))\n\t\t\t.subscribe(() => {\n\t\t\t\tthis.updateSelectedIndexOnScroll()\n\t\t\t})\n\t}\n\n\tprivate updateSelectedIndexOnScroll() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (!slides.length) return\n\n\t\tconst oldIndex = this.selectedIndex\n\n\t\t// Center of the slider’s visible area\n\t\tconst sliderCenter = this.slider.scrollLeft + this.slider.clientWidth / 2\n\n\t\tlet closestIndex = 0\n\t\tlet closestDistance = Infinity\n\n\t\tslides.forEach((slide, index) => {\n\t\t\tconst itemStart = (slide as HTMLElement).offsetLeft\n\t\t\tconst itemCenter = itemStart + slide.clientWidth / 2\n\t\t\tconst distance = Math.abs(sliderCenter - itemCenter)\n\n\t\t\tif (distance < closestDistance) {\n\t\t\t\tclosestDistance = distance\n\t\t\t\tclosestIndex = index\n\t\t\t}\n\t\t})\n\n\t\tthis.selectedIndex = closestIndex\n\n\t\t// If the index changed, dispatch event\n\t\tif (this.selectedIndex !== oldIndex) {\n\t\t\tthis.dispatchEvent(\n\t\t\t\tnew CustomEvent('slide-changed', {\n\t\t\t\t\tdetail: { index: this.selectedIndex },\n\t\t\t\t}),\n\t\t\t)\n\t\t}\n\t}\n\n\tprivate goToSlide(newIndex: number) {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (!slides[newIndex]) return\n\n\t\tthis.slider.scrollTo({\n\t\t\tleft: (slides[newIndex] as HTMLElement).offsetLeft,\n\t\t\tbehavior: 'smooth',\n\t\t})\n\t}\n\n\tprivate onPrevClick() {\n\t\tthis.goToSlide(this.selectedIndex - 1)\n\t}\n\n\tprivate onNextClick() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (this.selectedIndex < slides.length - 1) {\n\t\t\tthis.goToSlide(this.selectedIndex + 1)\n\t\t}\n\t}\n\n\trender() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\n\t\treturn html`\n\t\t\t<div class=\"relative inset-0\">\n\t\t\t\t<!-- The scrollable track -->\n\t\t\t\t<div class=\"slider\" id=\"slider\">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<!-- Next/Prev Buttons (Optional) -->\n\t\t\t\t${this.showArrows\n\t\t\t\t\t? html`\n\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\tclass=\"absolute left-2 top-1/2 -translate-y-1/2\"\n\t\t\t\t\t\t\t\t@click=${this.onPrevClick}\n\t\t\t\t\t\t\t\t?disabled=${this.selectedIndex === 0}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tchevron_left\n\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\tclass=\"absolute right-2 top-1/2 -translate-y-1/2\"\n\t\t\t\t\t\t\t\t@click=${this.onNextClick}\n\t\t\t\t\t\t\t\t?disabled=${this.selectedIndex === slides.length - 1}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tchevron_right\n\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t`\n\t\t\t\t\t: null}\n\n\t\t\t\t<!-- Dots / indicators -->\n\t\t\t\t<div class=\"absolute bottom-4 left-1/2 -translate-x-1/2 flex space-x-2\">\n\t\t\t\t\t${slides.map((_, index) => {\n\t\t\t\t\t\tconst isSelected = index === this.selectedIndex\n\t\t\t\t\t\treturn html`\n\t\t\t\t\t\t\t<schmancy-button .variant=${isSelected ? 'filled tonal' : 'outlined'} class=\"rounded-full \">\n\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t`\n\t\t\t\t\t})}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-slider': SchmancySlider\n\t}\n}\n"],"names":["SchmancySlide","$LitElement","css","constructor","super","arguments","this","type","src","alt","controls","autoplay","loop","muted","fit","render","html","cache","renderSlide","__decorateClass","property","String","prototype","Boolean","customElement","SchmancySlider","selectedIndex","showArrows","slider","scrollLeft","fromEvent","pipe","throttleTime","trailing","subscribe","updateSelectedIndexOnScroll","slides","defaultSlot","assignedElements","flatten","length","oldIndex","sliderCenter","clientWidth","closestIndex","closestDistance","Infinity","forEach","slide","index","itemCenter","offsetLeft","distance","Math","abs","dispatchEvent","CustomEvent","detail","newIndex","scrollTo","left","behavior","onPrevClick","goToSlide","onNextClick","map","_","isSelected","state","query"],"mappings":"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"}
1
+ {"version":3,"file":"slider-DWkftwBc.cjs","sources":["../src/slider/slide.ts","../src/slider/slider.ts"],"sourcesContent":["import { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { cache } from 'lit/directives/cache.js'\n\n/**\n * Supported slide \"types.\"\n * - 'image': Renders an <img>\n * - 'video': Renders a <video>\n * - 'content': Renders a <slot> (the default)\n */\ntype SlideType = 'image' | 'video' | 'content'\n\n/**\n * Allowed values for the 'fit' property,\n * which maps to CSS object-fit.\n */\ntype ObjectFit = 'cover' | 'contain' | 'fill' | 'scale-down' | 'none'\n\n@customElement('schmancy-slide')\nexport class SchmancySlide extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tscroll-snap-align: center; /* If your slider uses scroll-snap */\n\t}\n\n\t.slide {\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tobject-fit: var(--object-fit, cover);\n\t}\n`) {\n\t/**\n\t * Determines how this slide should be rendered.\n\t * Defaults to 'content' if not provided.\n\t */\n\t@property({ type: String }) type: SlideType = 'content'\n\n\t/**\n\t * Source for images or videos (if `type` is 'image' or 'video').\n\t */\n\t@property({ type: String }) src: string = ''\n\n\t/**\n\t * Alternate text for images.\n\t */\n\t@property({ type: String }) alt: string = ''\n\n\t/**\n\t * Whether to show default video controls (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) controls = true\n\n\t/**\n\t * Whether the video should autoplay (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) autoplay = false\n\n\t/**\n\t * Whether the video should loop (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) loop = false\n\n\t/**\n\t * Whether the video is muted (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) muted = false\n\n\t/**\n\t * CSS `object-fit` property, applied to images/videos.\n\t */\n\t@property({ type: String }) fit: ObjectFit = 'cover'\n\n\trender() {\n\t\treturn html` <div style=\"--object-fit: ${this.fit}\">${cache(this.renderSlide())}</div> `\n\t}\n\n\tprivate renderSlide() {\n\t\tswitch (this.type) {\n\t\t\tcase 'image':\n\t\t\t\treturn html` <img class=\"slide\" src=\"${this.src}\" alt=\"${this.alt}\" loading=\"lazy\" /> `\n\t\t\tcase 'video':\n\t\t\t\treturn html`\n\t\t\t\t\t<video\n\t\t\t\t\t\tclass=\"slide\"\n\t\t\t\t\t\tsrc=\"${this.src}\"\n\t\t\t\t\t\t?controls=\"${this.controls}\"\n\t\t\t\t\t\t?autoplay=\"${this.autoplay}\"\n\t\t\t\t\t\t?loop=\"${this.loop}\"\n\t\t\t\t\t\t?muted=\"${this.muted}\"\n\t\t\t\t\t>\n\t\t\t\t\t\tYour browser does not support HTML video.\n\t\t\t\t\t</video>\n\t\t\t\t`\n\t\t\tcase 'content':\n\t\t\tdefault:\n\t\t\t\treturn html`<slot></slot>`\n\t\t}\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-slide': SchmancySlide\n\t}\n}\n","import { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { fromEvent } from 'rxjs'\nimport { throttleTime } from 'rxjs/operators'\n\n@customElement('schmancy-slider')\nexport class SchmancySlider extends $LitElement(css`\n\t.slider {\n\t\t/* Lay out slides horizontally, one after another */\n\t\tdisplay: flex;\n\t\toverflow-x: auto;\n\n\t\t/* Optional: scroll snapping */\n\t\tscroll-snap-type: x mandatory;\n\n\t\t/* Hide scrollbars */\n\t\t-ms-overflow-style: none; /* IE and Edge */\n\t\tscrollbar-width: none; /* Firefox */\n\t}\n\t.slider::-webkit-scrollbar {\n\t\tdisplay: none; /* Chrome, Safari, Opera */\n\t}\n\n\t/* \n Ensure each slide takes up the full slider width.\n \"schmancy-slide\" is the child custom element.\n */\n\t::slotted(schmancy-slide) {\n\t\tflex: 0 0 100%;\n\t\tbox-sizing: border-box;\n\t}\n`) {\n\t/**\n\t * Currently centered slide index\n\t */\n\t@state() private selectedIndex: number = 0\n\n\t/**\n\t * If true, renders next/prev buttons\n\t */\n\t@property({ type: Boolean }) showArrows: boolean = true\n\n\t@query('#slider') private slider!: HTMLDivElement\n\t@query('slot') private defaultSlot!: HTMLSlotElement\n\n\tprotected firstUpdated() {\n\t\t// Start at leftmost position\n\t\tthis.slider.scrollLeft = 0\n\n\t\t// Throttle scroll events to update selected index\n\t\tfromEvent(this.slider, 'scroll')\n\t\t\t.pipe(throttleTime(100, undefined, { trailing: true }))\n\t\t\t.subscribe(() => {\n\t\t\t\tthis.updateSelectedIndexOnScroll()\n\t\t\t})\n\t}\n\n\tprivate updateSelectedIndexOnScroll() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (!slides.length) return\n\n\t\tconst oldIndex = this.selectedIndex\n\n\t\t// Center of the slider’s visible area\n\t\tconst sliderCenter = this.slider.scrollLeft + this.slider.clientWidth / 2\n\n\t\tlet closestIndex = 0\n\t\tlet closestDistance = Infinity\n\n\t\tslides.forEach((slide, index) => {\n\t\t\tconst itemStart = (slide as HTMLElement).offsetLeft\n\t\t\tconst itemCenter = itemStart + slide.clientWidth / 2\n\t\t\tconst distance = Math.abs(sliderCenter - itemCenter)\n\n\t\t\tif (distance < closestDistance) {\n\t\t\t\tclosestDistance = distance\n\t\t\t\tclosestIndex = index\n\t\t\t}\n\t\t})\n\n\t\tthis.selectedIndex = closestIndex\n\n\t\t// If the index changed, dispatch event\n\t\tif (this.selectedIndex !== oldIndex) {\n\t\t\tthis.dispatchEvent(\n\t\t\t\tnew CustomEvent('slide-changed', {\n\t\t\t\t\tdetail: { index: this.selectedIndex },\n\t\t\t\t}),\n\t\t\t)\n\t\t}\n\t}\n\n\tprivate goToSlide(newIndex: number) {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (!slides[newIndex]) return\n\n\t\tthis.slider.scrollTo({\n\t\t\tleft: (slides[newIndex] as HTMLElement).offsetLeft,\n\t\t\tbehavior: 'smooth',\n\t\t})\n\t}\n\n\tprivate onPrevClick() {\n\t\tthis.goToSlide(this.selectedIndex - 1)\n\t}\n\n\tprivate onNextClick() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (this.selectedIndex < slides.length - 1) {\n\t\t\tthis.goToSlide(this.selectedIndex + 1)\n\t\t}\n\t}\n\n\trender() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\n\t\treturn html`\n\t\t\t<div class=\"relative inset-0\">\n\t\t\t\t<!-- The scrollable track -->\n\t\t\t\t<div class=\"slider\" id=\"slider\">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<!-- Next/Prev Buttons (Optional) -->\n\t\t\t\t${this.showArrows\n\t\t\t\t\t? html`\n\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\tclass=\"absolute left-2 top-1/2 -translate-y-1/2\"\n\t\t\t\t\t\t\t\t@click=${this.onPrevClick}\n\t\t\t\t\t\t\t\t?disabled=${this.selectedIndex === 0}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tchevron_left\n\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\tclass=\"absolute right-2 top-1/2 -translate-y-1/2\"\n\t\t\t\t\t\t\t\t@click=${this.onNextClick}\n\t\t\t\t\t\t\t\t?disabled=${this.selectedIndex === slides.length - 1}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tchevron_right\n\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t`\n\t\t\t\t\t: null}\n\n\t\t\t\t<!-- Dots / indicators -->\n\t\t\t\t<div class=\"absolute bottom-4 left-1/2 -translate-x-1/2 flex space-x-2\">\n\t\t\t\t\t${slides.map((_, index) => {\n\t\t\t\t\t\tconst isSelected = index === this.selectedIndex\n\t\t\t\t\t\treturn html`\n\t\t\t\t\t\t\t<schmancy-button .variant=${isSelected ? 'filled tonal' : 'outlined'} class=\"rounded-full \">\n\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t`\n\t\t\t\t\t})}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-slider': SchmancySlider\n\t}\n}\n"],"names":["SchmancySlide","$LitElement","css","constructor","super","arguments","this","type","src","alt","controls","autoplay","loop","muted","fit","render","html","cache","renderSlide","__decorateClass","property","String","prototype","Boolean","customElement","SchmancySlider","selectedIndex","showArrows","slider","scrollLeft","fromEvent","pipe","throttleTime","trailing","subscribe","updateSelectedIndexOnScroll","slides","defaultSlot","assignedElements","flatten","length","oldIndex","sliderCenter","clientWidth","closestIndex","closestDistance","Infinity","forEach","slide","index","itemCenter","offsetLeft","distance","Math","abs","dispatchEvent","CustomEvent","detail","newIndex","scrollTo","left","behavior","onPrevClick","goToSlide","onNextClick","map","_","isSelected","state","query"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { fromEvent as g } from "rxjs";
2
2
  import "lit/directives/class-map.js";
3
3
  import "lit/directives/style-map.js";
4
- import { $ as f } from "./litElement.mixin-Cn8IAazz.js";
5
- import "./tailwind.mixin-BHLwDiBj.js";
4
+ import { $ as f } from "./litElement.mixin-C2BM-yMx.js";
5
+ import "./tailwind.mixin-CWA7D8Ym.js";
6
6
  import { property as d, customElement as m, state as x, query as y } from "lit/decorators.js";
7
7
  import { css as v, html as c } from "lit";
8
8
  import { cache as S } from "lit/directives/cache.js";
@@ -158,4 +158,4 @@ export {
158
158
  i as S,
159
159
  h as a
160
160
  };
161
- //# sourceMappingURL=slider-BJQE9wHL.js.map
161
+ //# sourceMappingURL=slider-R8CZdtHO.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"slider-BJQE9wHL.js","sources":["../src/slider/slide.ts","../src/slider/slider.ts"],"sourcesContent":["import { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { cache } from 'lit/directives/cache.js'\n\n/**\n * Supported slide \"types.\"\n * - 'image': Renders an <img>\n * - 'video': Renders a <video>\n * - 'content': Renders a <slot> (the default)\n */\ntype SlideType = 'image' | 'video' | 'content'\n\n/**\n * Allowed values for the 'fit' property,\n * which maps to CSS object-fit.\n */\ntype ObjectFit = 'cover' | 'contain' | 'fill' | 'scale-down' | 'none'\n\n@customElement('schmancy-slide')\nexport class SchmancySlide extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tscroll-snap-align: center; /* If your slider uses scroll-snap */\n\t}\n\n\t.slide {\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tobject-fit: var(--object-fit, cover);\n\t}\n`) {\n\t/**\n\t * Determines how this slide should be rendered.\n\t * Defaults to 'content' if not provided.\n\t */\n\t@property({ type: String }) type: SlideType = 'content'\n\n\t/**\n\t * Source for images or videos (if `type` is 'image' or 'video').\n\t */\n\t@property({ type: String }) src: string = ''\n\n\t/**\n\t * Alternate text for images.\n\t */\n\t@property({ type: String }) alt: string = ''\n\n\t/**\n\t * Whether to show default video controls (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) controls = true\n\n\t/**\n\t * Whether the video should autoplay (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) autoplay = false\n\n\t/**\n\t * Whether the video should loop (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) loop = false\n\n\t/**\n\t * Whether the video is muted (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) muted = false\n\n\t/**\n\t * CSS `object-fit` property, applied to images/videos.\n\t */\n\t@property({ type: String }) fit: ObjectFit = 'cover'\n\n\trender() {\n\t\treturn html` <div style=\"--object-fit: ${this.fit}\">${cache(this.renderSlide())}</div> `\n\t}\n\n\tprivate renderSlide() {\n\t\tswitch (this.type) {\n\t\t\tcase 'image':\n\t\t\t\treturn html` <img class=\"slide\" src=\"${this.src}\" alt=\"${this.alt}\" loading=\"lazy\" /> `\n\t\t\tcase 'video':\n\t\t\t\treturn html`\n\t\t\t\t\t<video\n\t\t\t\t\t\tclass=\"slide\"\n\t\t\t\t\t\tsrc=\"${this.src}\"\n\t\t\t\t\t\t?controls=\"${this.controls}\"\n\t\t\t\t\t\t?autoplay=\"${this.autoplay}\"\n\t\t\t\t\t\t?loop=\"${this.loop}\"\n\t\t\t\t\t\t?muted=\"${this.muted}\"\n\t\t\t\t\t>\n\t\t\t\t\t\tYour browser does not support HTML video.\n\t\t\t\t\t</video>\n\t\t\t\t`\n\t\t\tcase 'content':\n\t\t\tdefault:\n\t\t\t\treturn html`<slot></slot>`\n\t\t}\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-slide': SchmancySlide\n\t}\n}\n","import { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { fromEvent } from 'rxjs'\nimport { throttleTime } from 'rxjs/operators'\n\n@customElement('schmancy-slider')\nexport class SchmancySlider extends $LitElement(css`\n\t.slider {\n\t\t/* Lay out slides horizontally, one after another */\n\t\tdisplay: flex;\n\t\toverflow-x: auto;\n\n\t\t/* Optional: scroll snapping */\n\t\tscroll-snap-type: x mandatory;\n\n\t\t/* Hide scrollbars */\n\t\t-ms-overflow-style: none; /* IE and Edge */\n\t\tscrollbar-width: none; /* Firefox */\n\t}\n\t.slider::-webkit-scrollbar {\n\t\tdisplay: none; /* Chrome, Safari, Opera */\n\t}\n\n\t/* \n Ensure each slide takes up the full slider width.\n \"schmancy-slide\" is the child custom element.\n */\n\t::slotted(schmancy-slide) {\n\t\tflex: 0 0 100%;\n\t\tbox-sizing: border-box;\n\t}\n`) {\n\t/**\n\t * Currently centered slide index\n\t */\n\t@state() private selectedIndex: number = 0\n\n\t/**\n\t * If true, renders next/prev buttons\n\t */\n\t@property({ type: Boolean }) showArrows: boolean = true\n\n\t@query('#slider') private slider!: HTMLDivElement\n\t@query('slot') private defaultSlot!: HTMLSlotElement\n\n\tprotected firstUpdated() {\n\t\t// Start at leftmost position\n\t\tthis.slider.scrollLeft = 0\n\n\t\t// Throttle scroll events to update selected index\n\t\tfromEvent(this.slider, 'scroll')\n\t\t\t.pipe(throttleTime(100, undefined, { trailing: true }))\n\t\t\t.subscribe(() => {\n\t\t\t\tthis.updateSelectedIndexOnScroll()\n\t\t\t})\n\t}\n\n\tprivate updateSelectedIndexOnScroll() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (!slides.length) return\n\n\t\tconst oldIndex = this.selectedIndex\n\n\t\t// Center of the slider’s visible area\n\t\tconst sliderCenter = this.slider.scrollLeft + this.slider.clientWidth / 2\n\n\t\tlet closestIndex = 0\n\t\tlet closestDistance = Infinity\n\n\t\tslides.forEach((slide, index) => {\n\t\t\tconst itemStart = (slide as HTMLElement).offsetLeft\n\t\t\tconst itemCenter = itemStart + slide.clientWidth / 2\n\t\t\tconst distance = Math.abs(sliderCenter - itemCenter)\n\n\t\t\tif (distance < closestDistance) {\n\t\t\t\tclosestDistance = distance\n\t\t\t\tclosestIndex = index\n\t\t\t}\n\t\t})\n\n\t\tthis.selectedIndex = closestIndex\n\n\t\t// If the index changed, dispatch event\n\t\tif (this.selectedIndex !== oldIndex) {\n\t\t\tthis.dispatchEvent(\n\t\t\t\tnew CustomEvent('slide-changed', {\n\t\t\t\t\tdetail: { index: this.selectedIndex },\n\t\t\t\t}),\n\t\t\t)\n\t\t}\n\t}\n\n\tprivate goToSlide(newIndex: number) {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (!slides[newIndex]) return\n\n\t\tthis.slider.scrollTo({\n\t\t\tleft: (slides[newIndex] as HTMLElement).offsetLeft,\n\t\t\tbehavior: 'smooth',\n\t\t})\n\t}\n\n\tprivate onPrevClick() {\n\t\tthis.goToSlide(this.selectedIndex - 1)\n\t}\n\n\tprivate onNextClick() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (this.selectedIndex < slides.length - 1) {\n\t\t\tthis.goToSlide(this.selectedIndex + 1)\n\t\t}\n\t}\n\n\trender() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\n\t\treturn html`\n\t\t\t<div class=\"relative inset-0\">\n\t\t\t\t<!-- The scrollable track -->\n\t\t\t\t<div class=\"slider\" id=\"slider\">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<!-- Next/Prev Buttons (Optional) -->\n\t\t\t\t${this.showArrows\n\t\t\t\t\t? html`\n\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\tclass=\"absolute left-2 top-1/2 -translate-y-1/2\"\n\t\t\t\t\t\t\t\t@click=${this.onPrevClick}\n\t\t\t\t\t\t\t\t?disabled=${this.selectedIndex === 0}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tchevron_left\n\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\tclass=\"absolute right-2 top-1/2 -translate-y-1/2\"\n\t\t\t\t\t\t\t\t@click=${this.onNextClick}\n\t\t\t\t\t\t\t\t?disabled=${this.selectedIndex === slides.length - 1}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tchevron_right\n\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t`\n\t\t\t\t\t: null}\n\n\t\t\t\t<!-- Dots / indicators -->\n\t\t\t\t<div class=\"absolute bottom-4 left-1/2 -translate-x-1/2 flex space-x-2\">\n\t\t\t\t\t${slides.map((_, index) => {\n\t\t\t\t\t\tconst isSelected = index === this.selectedIndex\n\t\t\t\t\t\treturn html`\n\t\t\t\t\t\t\t<schmancy-button .variant=${isSelected ? 'filled tonal' : 'outlined'} class=\"rounded-full \">\n\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t`\n\t\t\t\t\t})}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-slider': SchmancySlider\n\t}\n}\n"],"names":["SchmancySlide","$LitElement","css","constructor","super","arguments","this","type","src","alt","controls","autoplay","loop","muted","fit","render","html","cache","renderSlide","__decorateClass","property","String","prototype","Boolean","customElement","SchmancySlider","selectedIndex","showArrows","slider","scrollLeft","fromEvent","pipe","throttleTime","trailing","subscribe","updateSelectedIndexOnScroll","slides","defaultSlot","assignedElements","flatten","length","oldIndex","sliderCenter","clientWidth","closestIndex","closestDistance","Infinity","forEach","slide","index","itemCenter","offsetLeft","distance","Math","abs","dispatchEvent","CustomEvent","detail","newIndex","scrollTo","left","behavior","onPrevClick","goToSlide","onNextClick","map","_","isSelected","state","query"],"mappings":"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"}
1
+ {"version":3,"file":"slider-R8CZdtHO.js","sources":["../src/slider/slide.ts","../src/slider/slider.ts"],"sourcesContent":["import { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { cache } from 'lit/directives/cache.js'\n\n/**\n * Supported slide \"types.\"\n * - 'image': Renders an <img>\n * - 'video': Renders a <video>\n * - 'content': Renders a <slot> (the default)\n */\ntype SlideType = 'image' | 'video' | 'content'\n\n/**\n * Allowed values for the 'fit' property,\n * which maps to CSS object-fit.\n */\ntype ObjectFit = 'cover' | 'contain' | 'fill' | 'scale-down' | 'none'\n\n@customElement('schmancy-slide')\nexport class SchmancySlide extends $LitElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tscroll-snap-align: center; /* If your slider uses scroll-snap */\n\t}\n\n\t.slide {\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tobject-fit: var(--object-fit, cover);\n\t}\n`) {\n\t/**\n\t * Determines how this slide should be rendered.\n\t * Defaults to 'content' if not provided.\n\t */\n\t@property({ type: String }) type: SlideType = 'content'\n\n\t/**\n\t * Source for images or videos (if `type` is 'image' or 'video').\n\t */\n\t@property({ type: String }) src: string = ''\n\n\t/**\n\t * Alternate text for images.\n\t */\n\t@property({ type: String }) alt: string = ''\n\n\t/**\n\t * Whether to show default video controls (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) controls = true\n\n\t/**\n\t * Whether the video should autoplay (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) autoplay = false\n\n\t/**\n\t * Whether the video should loop (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) loop = false\n\n\t/**\n\t * Whether the video is muted (if `type` is 'video').\n\t */\n\t@property({ type: Boolean }) muted = false\n\n\t/**\n\t * CSS `object-fit` property, applied to images/videos.\n\t */\n\t@property({ type: String }) fit: ObjectFit = 'cover'\n\n\trender() {\n\t\treturn html` <div style=\"--object-fit: ${this.fit}\">${cache(this.renderSlide())}</div> `\n\t}\n\n\tprivate renderSlide() {\n\t\tswitch (this.type) {\n\t\t\tcase 'image':\n\t\t\t\treturn html` <img class=\"slide\" src=\"${this.src}\" alt=\"${this.alt}\" loading=\"lazy\" /> `\n\t\t\tcase 'video':\n\t\t\t\treturn html`\n\t\t\t\t\t<video\n\t\t\t\t\t\tclass=\"slide\"\n\t\t\t\t\t\tsrc=\"${this.src}\"\n\t\t\t\t\t\t?controls=\"${this.controls}\"\n\t\t\t\t\t\t?autoplay=\"${this.autoplay}\"\n\t\t\t\t\t\t?loop=\"${this.loop}\"\n\t\t\t\t\t\t?muted=\"${this.muted}\"\n\t\t\t\t\t>\n\t\t\t\t\t\tYour browser does not support HTML video.\n\t\t\t\t\t</video>\n\t\t\t\t`\n\t\t\tcase 'content':\n\t\t\tdefault:\n\t\t\t\treturn html`<slot></slot>`\n\t\t}\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-slide': SchmancySlide\n\t}\n}\n","import { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { fromEvent } from 'rxjs'\nimport { throttleTime } from 'rxjs/operators'\n\n@customElement('schmancy-slider')\nexport class SchmancySlider extends $LitElement(css`\n\t.slider {\n\t\t/* Lay out slides horizontally, one after another */\n\t\tdisplay: flex;\n\t\toverflow-x: auto;\n\n\t\t/* Optional: scroll snapping */\n\t\tscroll-snap-type: x mandatory;\n\n\t\t/* Hide scrollbars */\n\t\t-ms-overflow-style: none; /* IE and Edge */\n\t\tscrollbar-width: none; /* Firefox */\n\t}\n\t.slider::-webkit-scrollbar {\n\t\tdisplay: none; /* Chrome, Safari, Opera */\n\t}\n\n\t/* \n Ensure each slide takes up the full slider width.\n \"schmancy-slide\" is the child custom element.\n */\n\t::slotted(schmancy-slide) {\n\t\tflex: 0 0 100%;\n\t\tbox-sizing: border-box;\n\t}\n`) {\n\t/**\n\t * Currently centered slide index\n\t */\n\t@state() private selectedIndex: number = 0\n\n\t/**\n\t * If true, renders next/prev buttons\n\t */\n\t@property({ type: Boolean }) showArrows: boolean = true\n\n\t@query('#slider') private slider!: HTMLDivElement\n\t@query('slot') private defaultSlot!: HTMLSlotElement\n\n\tprotected firstUpdated() {\n\t\t// Start at leftmost position\n\t\tthis.slider.scrollLeft = 0\n\n\t\t// Throttle scroll events to update selected index\n\t\tfromEvent(this.slider, 'scroll')\n\t\t\t.pipe(throttleTime(100, undefined, { trailing: true }))\n\t\t\t.subscribe(() => {\n\t\t\t\tthis.updateSelectedIndexOnScroll()\n\t\t\t})\n\t}\n\n\tprivate updateSelectedIndexOnScroll() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (!slides.length) return\n\n\t\tconst oldIndex = this.selectedIndex\n\n\t\t// Center of the slider’s visible area\n\t\tconst sliderCenter = this.slider.scrollLeft + this.slider.clientWidth / 2\n\n\t\tlet closestIndex = 0\n\t\tlet closestDistance = Infinity\n\n\t\tslides.forEach((slide, index) => {\n\t\t\tconst itemStart = (slide as HTMLElement).offsetLeft\n\t\t\tconst itemCenter = itemStart + slide.clientWidth / 2\n\t\t\tconst distance = Math.abs(sliderCenter - itemCenter)\n\n\t\t\tif (distance < closestDistance) {\n\t\t\t\tclosestDistance = distance\n\t\t\t\tclosestIndex = index\n\t\t\t}\n\t\t})\n\n\t\tthis.selectedIndex = closestIndex\n\n\t\t// If the index changed, dispatch event\n\t\tif (this.selectedIndex !== oldIndex) {\n\t\t\tthis.dispatchEvent(\n\t\t\t\tnew CustomEvent('slide-changed', {\n\t\t\t\t\tdetail: { index: this.selectedIndex },\n\t\t\t\t}),\n\t\t\t)\n\t\t}\n\t}\n\n\tprivate goToSlide(newIndex: number) {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (!slides[newIndex]) return\n\n\t\tthis.slider.scrollTo({\n\t\t\tleft: (slides[newIndex] as HTMLElement).offsetLeft,\n\t\t\tbehavior: 'smooth',\n\t\t})\n\t}\n\n\tprivate onPrevClick() {\n\t\tthis.goToSlide(this.selectedIndex - 1)\n\t}\n\n\tprivate onNextClick() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\t\tif (this.selectedIndex < slides.length - 1) {\n\t\t\tthis.goToSlide(this.selectedIndex + 1)\n\t\t}\n\t}\n\n\trender() {\n\t\tconst slides = this.defaultSlot?.assignedElements({ flatten: true }) ?? []\n\n\t\treturn html`\n\t\t\t<div class=\"relative inset-0\">\n\t\t\t\t<!-- The scrollable track -->\n\t\t\t\t<div class=\"slider\" id=\"slider\">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<!-- Next/Prev Buttons (Optional) -->\n\t\t\t\t${this.showArrows\n\t\t\t\t\t? html`\n\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\tclass=\"absolute left-2 top-1/2 -translate-y-1/2\"\n\t\t\t\t\t\t\t\t@click=${this.onPrevClick}\n\t\t\t\t\t\t\t\t?disabled=${this.selectedIndex === 0}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tchevron_left\n\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\t\tclass=\"absolute right-2 top-1/2 -translate-y-1/2\"\n\t\t\t\t\t\t\t\t@click=${this.onNextClick}\n\t\t\t\t\t\t\t\t?disabled=${this.selectedIndex === slides.length - 1}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tchevron_right\n\t\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t\t\t`\n\t\t\t\t\t: null}\n\n\t\t\t\t<!-- Dots / indicators -->\n\t\t\t\t<div class=\"absolute bottom-4 left-1/2 -translate-x-1/2 flex space-x-2\">\n\t\t\t\t\t${slides.map((_, index) => {\n\t\t\t\t\t\tconst isSelected = index === this.selectedIndex\n\t\t\t\t\t\treturn html`\n\t\t\t\t\t\t\t<schmancy-button .variant=${isSelected ? 'filled tonal' : 'outlined'} class=\"rounded-full \">\n\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t`\n\t\t\t\t\t})}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-slider': SchmancySlider\n\t}\n}\n"],"names":["SchmancySlide","$LitElement","css","constructor","super","arguments","this","type","src","alt","controls","autoplay","loop","muted","fit","render","html","cache","renderSlide","__decorateClass","property","String","prototype","Boolean","customElement","SchmancySlider","selectedIndex","showArrows","slider","scrollLeft","fromEvent","pipe","throttleTime","trailing","subscribe","updateSelectedIndexOnScroll","slides","defaultSlot","assignedElements","flatten","length","oldIndex","sliderCenter","clientWidth","closestIndex","closestDistance","Infinity","forEach","slide","index","itemCenter","offsetLeft","distance","Math","abs","dispatchEvent","CustomEvent","detail","newIndex","scrollTo","left","behavior","onPrevClick","goToSlide","onNextClick","map","_","isSelected","state","query"],"mappings":"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"}
package/dist/slider.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./slider-DMIOW38W.cjs");Object.defineProperty(exports,"SchmancySlide",{enumerable:!0,get:()=>e.SchmancySlide}),Object.defineProperty(exports,"SchmancySlider",{enumerable:!0,get:()=>e.SchmancySlider});
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./slider-DWkftwBc.cjs");Object.defineProperty(exports,"SchmancySlide",{enumerable:!0,get:()=>e.SchmancySlide}),Object.defineProperty(exports,"SchmancySlider",{enumerable:!0,get:()=>e.SchmancySlider});
2
2
  //# sourceMappingURL=slider.cjs.map
package/dist/slider.js CHANGED
@@ -1,4 +1,4 @@
1
- import { S as c, a as e } from "./slider-BJQE9wHL.js";
1
+ import { S as c, a as e } from "./slider-R8CZdtHO.js";
2
2
  export {
3
3
  c as SchmancySlide,
4
4
  e as SchmancySlider
@@ -1,49 +1,47 @@
1
1
  import "rxjs";
2
2
  import "lit/directives/class-map.js";
3
3
  import "lit/directives/style-map.js";
4
- import { T as h } from "./tailwind.mixin-BHLwDiBj.js";
5
- import { customElement as y, property as d } from "lit/decorators.js";
6
- import { css as v, html as p } from "lit";
7
- var m = Object.getOwnPropertyDescriptor;
8
- let c = class extends h(v`
4
+ import { T as h } from "./tailwind.mixin-CWA7D8Ym.js";
5
+ import { customElement as y, property as c } from "lit/decorators.js";
6
+ import { css as v, html as d } from "lit";
7
+ var u = Object.getOwnPropertyDescriptor;
8
+ let p = class extends h(v`
9
9
  :host {
10
10
  display: inline;
11
11
  position: absolute;
12
12
  inset: 0;
13
- --tw-gradient-from-position: ;
14
- --tw-gradient-via-position: ;
15
- --tw-gradient-to-position: ;
13
+ pointer-events: all;
14
+ z-index: 50;
16
15
  }
17
16
  `) {
18
17
  render() {
19
- return p`
20
- <div class="absolute inset-0 flex justify-center items-center z-[9999999]">
21
- <!-- Apple visionOS-style glass effect with multiple layers -->
22
- <div
23
- class="absolute transform-gpu inset-0 rounded-[inherit] flex align-middle justify-center items-center
24
- backdrop-blur-2xl backdrop-saturate-150 bg-white/10 dark:bg-black/10
25
- shadow-[inset_0_1px_1px_0_rgba(255,255,255,0.1)]
26
- border border-white/20 dark:border-white/10"
27
- >
28
- <!-- Additional subtle inner glow for depth -->
29
- <div class="absolute inset-0 rounded-[inherit] bg-gradient-to-b from-white/5 to-transparent"></div>
18
+ return d`
19
+ <!-- Clean overlay with subtle backdrop -->
20
+ <div class="absolute inset-0 flex items-center justify-center bg-surface-container/60 backdrop-blur-sm rounded-[inherit]">
21
+ <!-- Content container with clean surface -->
22
+ <div class="relative flex items-center justify-center p-4">
23
+ <!-- Optional background card for content -->
24
+ <div class="absolute inset-0 bg-surface rounded-2xl shadow-sm"></div>
30
25
 
31
- <!-- Content slot with subtle animation -->
32
- <div class="relative animate-pulse">
33
- <slot></slot>
26
+ <!-- Content slot -->
27
+ <div class="relative z-10">
28
+ <slot>
29
+ <!-- Default spinner if no content provided -->
30
+ <schmancy-spinner size="32px"></schmancy-spinner>
31
+ </slot>
34
32
  </div>
35
33
  </div>
36
34
  </div>
37
35
  `;
38
36
  }
39
37
  };
40
- c = ((e, s, o, r) => {
41
- for (var a, t = r > 1 ? void 0 : r ? m(s, o) : s, i = e.length - 1; i >= 0; i--) (a = e[i]) && (t = a(t) || t);
42
- return t;
43
- })([y("schmancy-busy")], c);
44
- var g = Object.defineProperty, u = Object.getOwnPropertyDescriptor, l = (e, s, o, r) => {
45
- for (var a, t = r > 1 ? void 0 : r ? u(s, o) : s, i = e.length - 1; i >= 0; i--) (a = e[i]) && (t = (r ? a(s, o, t) : a(t)) || t);
46
- return r && t && g(s, o, t), t;
38
+ p = ((t, s, o, r) => {
39
+ for (var i, e = r > 1 ? void 0 : r ? u(s, o) : s, a = t.length - 1; a >= 0; a--) (i = t[a]) && (e = i(e) || e);
40
+ return e;
41
+ })([y("schmancy-busy")], p);
42
+ var m = Object.defineProperty, f = Object.getOwnPropertyDescriptor, l = (t, s, o, r) => {
43
+ for (var i, e = r > 1 ? void 0 : r ? f(s, o) : s, a = t.length - 1; a >= 0; a--) (i = t[a]) && (e = (r ? i(s, o, e) : i(e)) || e);
44
+ return r && e && m(s, o, e), e;
47
45
  };
48
46
  let n = class extends h(v`
49
47
  .spinner {
@@ -64,9 +62,9 @@ let n = class extends h(v`
64
62
  super(...arguments), this.color = "gray", this.size = "24px", this.glass = !1;
65
63
  }
66
64
  render() {
67
- const e = { width: this.size, height: this.size };
68
- return this.glass ? p`
69
- <div class="spinner relative" style=${this.styleMap(e)}>
65
+ const t = { width: this.size, height: this.size };
66
+ return this.glass ? d`
67
+ <div class="spinner relative" style=${this.styleMap(t)}>
70
68
  <!-- Glass container with Apple-style effect -->
71
69
  <div class="absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150
72
70
  bg-white/20 dark:bg-black/20
@@ -86,8 +84,8 @@ let n = class extends h(v`
86
84
  <path d="M8 12a4 4 0 100-8 4 4 0 000 8z" fill="var(--schmancy-sys-color-secondary-default)" opacity="0.8"></path>
87
85
  </svg>
88
86
  </div>
89
- ` : p`
90
- <div class="spinner" style=${this.styleMap(e)}>
87
+ ` : d`
88
+ <div class="spinner" style=${this.styleMap(t)}>
91
89
  <svg fill="none" viewBox="0 0 16 16" aria-hidden="true" role="img" style="width: 100%; height: 100%;">
92
90
  <path
93
91
  opacity=".5"
@@ -102,5 +100,5 @@ let n = class extends h(v`
102
100
  `;
103
101
  }
104
102
  };
105
- l([d({ type: String })], n.prototype, "color", 2), l([d({ type: String })], n.prototype, "size", 2), l([d({ type: Boolean })], n.prototype, "glass", 2), n = l([y("schmancy-spinner")], n);
106
- //# sourceMappingURL=spinner-NFkGJJz1.js.map
103
+ l([c({ type: String })], n.prototype, "color", 2), l([c({ type: String })], n.prototype, "size", 2), l([c({ type: Boolean })], n.prototype, "glass", 2), n = l([y("schmancy-spinner")], n);
104
+ //# sourceMappingURL=spinner-4FisLDbU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner-4FisLDbU.js","sources":["../src/busy/busy.ts","../src/busy/spinner.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n@customElement('schmancy-busy')\nexport default class SchmancyBusy extends TailwindElement(css`\n\t:host {\n\t\tdisplay: inline;\n\t\tposition: absolute;\n\t\tinset: 0;\n\t\tpointer-events: all;\n\t\tz-index: 50;\n\t}\n`) {\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<!-- Clean overlay with subtle backdrop -->\n\t\t\t<div class=\"absolute inset-0 flex items-center justify-center bg-surface-container/60 backdrop-blur-sm rounded-[inherit]\">\n\t\t\t\t<!-- Content container with clean surface -->\n\t\t\t\t<div class=\"relative flex items-center justify-center p-4\">\n\t\t\t\t\t<!-- Optional background card for content -->\n\t\t\t\t\t<div class=\"absolute inset-0 bg-surface rounded-2xl shadow-sm\"></div>\n\t\t\t\t\t\n\t\t\t\t\t<!-- Content slot -->\n\t\t\t\t\t<div class=\"relative z-10\">\n\t\t\t\t\t\t<slot>\n\t\t\t\t\t\t\t<!-- Default spinner if no content provided -->\n\t\t\t\t\t\t\t<schmancy-spinner size=\"32px\"></schmancy-spinner>\n\t\t\t\t\t\t</slot>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-busy': SchmancyBusy\n\t}\n}","import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n@customElement('schmancy-spinner')\nexport default class SchmnacySpinner extends TailwindElement(css`\n\t.spinner {\n\t\tanimation: spin 1s linear infinite;\n\t\tanimation-direction: reverse;\n\t}\n\n\t@keyframes spin {\n\t\tfrom {\n\t\t\ttransform: rotate(0deg);\n\t\t}\n\t\tto {\n\t\t\ttransform: rotate(360deg);\n\t\t}\n\t}\n`) {\n\t@property({ type: String }) color: string = 'gray'\n\t@property({ type: String }) size: string = '24px'\n\t@property({ type: Boolean }) glass: boolean = false\n\n\tprotected render(): unknown {\n\t\tconst style = {\n\t\t\twidth: this.size,\n\t\t\theight: this.size,\n\t\t}\n\t\t\n\t\treturn this.glass ? html`\n\t\t\t<div class=\"spinner relative\" style=${this.styleMap(style)}>\n\t\t\t\t<!-- Glass container with Apple-style effect -->\n\t\t\t\t<div class=\"absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150 \n\t\t\t\t\t\t\tbg-white/20 dark:bg-black/20 \n\t\t\t\t\t\t\tshadow-[inset_0_1px_1px_0_rgba(255,255,255,0.2)]\n\t\t\t\t\t\t\tborder border-white/30 dark:border-white/20\"></div>\n\t\t\t\t\n\t\t\t\t<!-- Spinner SVG -->\n\t\t\t\t<svg fill=\"none\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" role=\"img\" \n\t\t\t\t\t style=\"width: 100%; height: 100%;\" class=\"relative z-10\">\n\t\t\t\t\t<path\n\t\t\t\t\t\topacity=\".7\"\n\t\t\t\t\t\td=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\"\n\t\t\t\t\t\tstroke=\"var(--schmancy-sys-color-secondary-default)\"\n\t\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"var(--schmancy-sys-color-secondary-default)\" stroke-width=\"2\"></path>\n\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"var(--schmancy-sys-color-secondary-default)\" opacity=\"0.8\"></path>\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t` : html`\n\t\t\t<div class=\"spinner\" style=${this.styleMap(style)}>\n\t\t\t\t<svg fill=\"none\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" role=\"img\" style=\"width: 100%; height: 100%;\">\n\t\t\t\t\t<path\n\t\t\t\t\t\topacity=\".5\"\n\t\t\t\t\t\td=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\"\n\t\t\t\t\t\tstroke=\"var(--schmancy-sys-color-secondary-default)\"\n\t\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"var(--schmancy-sys-color-secondary-default)\" stroke-width=\"2\"></path>\n\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"var(--schmancy-sys-color-secondary-default)\"></path>\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-spinner': SchmnacySpinner\n\t}\n}\n"],"names":["SchmancyBusy","TailwindElement","css","render","html","customElement","SchmnacySpinner","constructor","super","arguments","this","color","size","glass","style","width","height","styleMap","__decorateClass","property","type","String","prototype","Boolean"],"mappings":";;;;;;;AAKA,IAAqBA,IAArB,cAA0CC,EAAgBC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;EAS/C,SAAAC;AACT,WAAOC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,EAkBR;AAAA;AA5BoBJ;;;GAArB,CADCK,EAAc,mBACML,CAAAA;;;;;ACArB,IAAqBM,IAArB,cAA6CL,EAAgBC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;EAA7D,cAAAK;AAAAC,UAAAA,GAAAC,SAAAA,GAe6BC,KAAAC,QAAgB,QAChBD,KAAAE,OAAe,QACdF,KAAAG,QAAAA;AAAAA,EAAiB;AAAA,EAEpC,SAAAV;AACT,UAAMW,IAAQ,EACbC,OAAOL,KAAKE,MACZI,QAAQN,KAAKE,KAAAA;AAGd,WAAOF,KAAKG,QAAQT;AAAAA,yCACmBM,KAAKO,SAASH,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,MAoBjDV;AAAAA,gCAC0BM,KAAKO,SAASH,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,EAa7C;AAAA;AA7C4BI,EAAA,CAA3BC,EAAS,EAAEC,MAAMC,OAAAA,CAAAA,CAAAA,GAfEf,EAeQgB,WAAA,SAAA,IACAJ,EAAA,CAA3BC,EAAS,EAAEC,MAAMC,OAAAA,CAAAA,CAAAA,GAhBEf,EAgBQgB,WAAA,QAAA,CAAA,GACCJ,EAAA,CAA5BC,EAAS,EAAEC,MAAMG,QAAAA,CAAAA,CAAAA,GAjBEjB,EAiBSgB,WAAA,SAAA,CAAA,GAjBThB,IAArBY,EAAA,CADCb,EAAc,kBAAA,CAAA,GACMC,CAAAA;"}
@@ -1,31 +1,29 @@
1
- "use strict";require("rxjs"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const h=require("./tailwind.mixin-1kcW0BGm.cjs"),l=require("lit/decorators.js"),d=require("lit");var y=Object.getOwnPropertyDescriptor;let p=class extends h.TailwindElement(d.css`
1
+ "use strict";require("rxjs"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const h=require("./tailwind.mixin-Cb7MPMz5.cjs"),l=require("lit/decorators.js"),c=require("lit");var y=Object.getOwnPropertyDescriptor;let p=class extends h.TailwindElement(c.css`
2
2
  :host {
3
3
  display: inline;
4
4
  position: absolute;
5
5
  inset: 0;
6
- --tw-gradient-from-position: ;
7
- --tw-gradient-via-position: ;
8
- --tw-gradient-to-position: ;
6
+ pointer-events: all;
7
+ z-index: 50;
9
8
  }
10
- `){render(){return d.html`
11
- <div class="absolute inset-0 flex justify-center items-center z-[9999999]">
12
- <!-- Apple visionOS-style glass effect with multiple layers -->
13
- <div
14
- class="absolute transform-gpu inset-0 rounded-[inherit] flex align-middle justify-center items-center
15
- backdrop-blur-2xl backdrop-saturate-150 bg-white/10 dark:bg-black/10
16
- shadow-[inset_0_1px_1px_0_rgba(255,255,255,0.1)]
17
- border border-white/20 dark:border-white/10"
18
- >
19
- <!-- Additional subtle inner glow for depth -->
20
- <div class="absolute inset-0 rounded-[inherit] bg-gradient-to-b from-white/5 to-transparent"></div>
9
+ `){render(){return c.html`
10
+ <!-- Clean overlay with subtle backdrop -->
11
+ <div class="absolute inset-0 flex items-center justify-center bg-surface-container/60 backdrop-blur-sm rounded-[inherit]">
12
+ <!-- Content container with clean surface -->
13
+ <div class="relative flex items-center justify-center p-4">
14
+ <!-- Optional background card for content -->
15
+ <div class="absolute inset-0 bg-surface rounded-2xl shadow-sm"></div>
21
16
 
22
- <!-- Content slot with subtle animation -->
23
- <div class="relative animate-pulse">
24
- <slot></slot>
17
+ <!-- Content slot -->
18
+ <div class="relative z-10">
19
+ <slot>
20
+ <!-- Default spinner if no content provided -->
21
+ <schmancy-spinner size="32px"></schmancy-spinner>
22
+ </slot>
25
23
  </div>
26
24
  </div>
27
25
  </div>
28
- `}};p=((t,r,o,s)=>{for(var a,e=s>1?void 0:s?y(r,o):r,i=t.length-1;i>=0;i--)(a=t[i])&&(e=a(e)||e);return e})([l.customElement("schmancy-busy")],p);var u=Object.defineProperty,v=Object.getOwnPropertyDescriptor,c=(t,r,o,s)=>{for(var a,e=s>1?void 0:s?v(r,o):r,i=t.length-1;i>=0;i--)(a=t[i])&&(e=(s?a(r,o,e):a(e))||e);return s&&e&&u(r,o,e),e};let n=class extends h.TailwindElement(d.css`
26
+ `}};p=((t,r,n,s)=>{for(var i,e=s>1?void 0:s?y(r,n):r,a=t.length-1;a>=0;a--)(i=t[a])&&(e=i(e)||e);return e})([l.customElement("schmancy-busy")],p);var u=Object.defineProperty,v=Object.getOwnPropertyDescriptor,d=(t,r,n,s)=>{for(var i,e=s>1?void 0:s?v(r,n):r,a=t.length-1;a>=0;a--)(i=t[a])&&(e=(s?i(r,n,e):i(e))||e);return s&&e&&u(r,n,e),e};let o=class extends h.TailwindElement(c.css`
29
27
  .spinner {
30
28
  animation: spin 1s linear infinite;
31
29
  animation-direction: reverse;
@@ -39,7 +37,7 @@
39
37
  transform: rotate(360deg);
40
38
  }
41
39
  }
42
- `){constructor(){super(...arguments),this.color="gray",this.size="24px",this.glass=!1}render(){const t={width:this.size,height:this.size};return this.glass?d.html`
40
+ `){constructor(){super(...arguments),this.color="gray",this.size="24px",this.glass=!1}render(){const t={width:this.size,height:this.size};return this.glass?c.html`
43
41
  <div class="spinner relative" style=${this.styleMap(t)}>
44
42
  <!-- Glass container with Apple-style effect -->
45
43
  <div class="absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150
@@ -60,7 +58,7 @@
60
58
  <path d="M8 12a4 4 0 100-8 4 4 0 000 8z" fill="var(--schmancy-sys-color-secondary-default)" opacity="0.8"></path>
61
59
  </svg>
62
60
  </div>
63
- `:d.html`
61
+ `:c.html`
64
62
  <div class="spinner" style=${this.styleMap(t)}>
65
63
  <svg fill="none" viewBox="0 0 16 16" aria-hidden="true" role="img" style="width: 100%; height: 100%;">
66
64
  <path
@@ -73,5 +71,5 @@
73
71
  <path d="M8 12a4 4 0 100-8 4 4 0 000 8z" fill="var(--schmancy-sys-color-secondary-default)"></path>
74
72
  </svg>
75
73
  </div>
76
- `}};c([l.property({type:String})],n.prototype,"color",2),c([l.property({type:String})],n.prototype,"size",2),c([l.property({type:Boolean})],n.prototype,"glass",2),n=c([l.customElement("schmancy-spinner")],n);
77
- //# sourceMappingURL=spinner-ByMXQNV3.cjs.map
74
+ `}};d([l.property({type:String})],o.prototype,"color",2),d([l.property({type:String})],o.prototype,"size",2),d([l.property({type:Boolean})],o.prototype,"glass",2),o=d([l.customElement("schmancy-spinner")],o);
75
+ //# sourceMappingURL=spinner-Dl222o48.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner-Dl222o48.cjs","sources":["../src/busy/busy.ts","../src/busy/spinner.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n@customElement('schmancy-busy')\nexport default class SchmancyBusy extends TailwindElement(css`\n\t:host {\n\t\tdisplay: inline;\n\t\tposition: absolute;\n\t\tinset: 0;\n\t\tpointer-events: all;\n\t\tz-index: 50;\n\t}\n`) {\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<!-- Clean overlay with subtle backdrop -->\n\t\t\t<div class=\"absolute inset-0 flex items-center justify-center bg-surface-container/60 backdrop-blur-sm rounded-[inherit]\">\n\t\t\t\t<!-- Content container with clean surface -->\n\t\t\t\t<div class=\"relative flex items-center justify-center p-4\">\n\t\t\t\t\t<!-- Optional background card for content -->\n\t\t\t\t\t<div class=\"absolute inset-0 bg-surface rounded-2xl shadow-sm\"></div>\n\t\t\t\t\t\n\t\t\t\t\t<!-- Content slot -->\n\t\t\t\t\t<div class=\"relative z-10\">\n\t\t\t\t\t\t<slot>\n\t\t\t\t\t\t\t<!-- Default spinner if no content provided -->\n\t\t\t\t\t\t\t<schmancy-spinner size=\"32px\"></schmancy-spinner>\n\t\t\t\t\t\t</slot>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-busy': SchmancyBusy\n\t}\n}","import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n@customElement('schmancy-spinner')\nexport default class SchmnacySpinner extends TailwindElement(css`\n\t.spinner {\n\t\tanimation: spin 1s linear infinite;\n\t\tanimation-direction: reverse;\n\t}\n\n\t@keyframes spin {\n\t\tfrom {\n\t\t\ttransform: rotate(0deg);\n\t\t}\n\t\tto {\n\t\t\ttransform: rotate(360deg);\n\t\t}\n\t}\n`) {\n\t@property({ type: String }) color: string = 'gray'\n\t@property({ type: String }) size: string = '24px'\n\t@property({ type: Boolean }) glass: boolean = false\n\n\tprotected render(): unknown {\n\t\tconst style = {\n\t\t\twidth: this.size,\n\t\t\theight: this.size,\n\t\t}\n\t\t\n\t\treturn this.glass ? html`\n\t\t\t<div class=\"spinner relative\" style=${this.styleMap(style)}>\n\t\t\t\t<!-- Glass container with Apple-style effect -->\n\t\t\t\t<div class=\"absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150 \n\t\t\t\t\t\t\tbg-white/20 dark:bg-black/20 \n\t\t\t\t\t\t\tshadow-[inset_0_1px_1px_0_rgba(255,255,255,0.2)]\n\t\t\t\t\t\t\tborder border-white/30 dark:border-white/20\"></div>\n\t\t\t\t\n\t\t\t\t<!-- Spinner SVG -->\n\t\t\t\t<svg fill=\"none\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" role=\"img\" \n\t\t\t\t\t style=\"width: 100%; height: 100%;\" class=\"relative z-10\">\n\t\t\t\t\t<path\n\t\t\t\t\t\topacity=\".7\"\n\t\t\t\t\t\td=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\"\n\t\t\t\t\t\tstroke=\"var(--schmancy-sys-color-secondary-default)\"\n\t\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"var(--schmancy-sys-color-secondary-default)\" stroke-width=\"2\"></path>\n\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"var(--schmancy-sys-color-secondary-default)\" opacity=\"0.8\"></path>\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t` : html`\n\t\t\t<div class=\"spinner\" style=${this.styleMap(style)}>\n\t\t\t\t<svg fill=\"none\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" role=\"img\" style=\"width: 100%; height: 100%;\">\n\t\t\t\t\t<path\n\t\t\t\t\t\topacity=\".5\"\n\t\t\t\t\t\td=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\"\n\t\t\t\t\t\tstroke=\"var(--schmancy-sys-color-secondary-default)\"\n\t\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"var(--schmancy-sys-color-secondary-default)\" stroke-width=\"2\"></path>\n\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"var(--schmancy-sys-color-secondary-default)\"></path>\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-spinner': SchmnacySpinner\n\t}\n}\n"],"names":["SchmancyBusy","TailwindElement","css","render","html","customElement","SchmnacySpinner","constructor","super","arguments","this","color","size","glass","style","width","height","styleMap","__decorateClass","property","type","String","prototype","Boolean"],"mappings":"kPAKA,IAAqBA,EAArB,cAA0CC,EAAAA,gBAAgBC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAS/C,QAAAC,CACT,OAAOC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAkBR,CAAA,EA5BoBJ,wGAArB,CADCK,EAAAA,cAAc,eAAA,CAAA,EACML,mMCArB,IAAqBM,EAArB,cAA6CL,EAAAA,gBAAgBC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAA7D,CAAA,CAAA,aAAAK,CAAAC,MAAAA,GAAAC,SAAAA,EAe6BC,KAAAC,MAAgB,OAChBD,KAAAE,KAAe,OACdF,KAAAG,MAAAA,EAAiB,CAEpC,QAAAV,CACT,MAAMW,EAAQ,CACbC,MAAOL,KAAKE,KACZI,OAAQN,KAAKE,IAAAA,EAGd,OAAOF,KAAKG,MAAQT,EAAAA;AAAAA,yCACmBM,KAAKO,SAASH,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,IAoBjDV,EAAAA;AAAAA,gCAC0BM,KAAKO,SAASH,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAa7C,CAAA,EA7C4BI,EAAA,CAA3BC,WAAS,CAAEC,KAAMC,MAAAA,CAAAA,CAAAA,EAfEf,EAeQgB,UAAA,QAAA,GACAJ,EAAA,CAA3BC,WAAS,CAAEC,KAAMC,MAAAA,CAAAA,CAAAA,EAhBEf,EAgBQgB,UAAA,OAAA,GACCJ,EAAA,CAA5BC,WAAS,CAAEC,KAAMG,OAAAA,CAAAA,CAAAA,EAjBEjB,EAiBSgB,UAAA,QAAA,CAAA,EAjBThB,EAArBY,EAAA,CADCb,EAAAA,cAAc,kBAAA,CAAA,EACMC,CAAAA"}
package/dist/steps.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./schmancy-steps-container-D3m07gLT.cjs");Object.defineProperty(exports,"SchmancyStep",{enumerable:!0,get:()=>e.SchmancyStep}),Object.defineProperty(exports,"SchmancyStepsContainer",{enumerable:!0,get:()=>e.SchmancyStepsContainer}),exports.StepsController=e.StepsController,exports.stepsContext=e.stepsContext;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./schmancy-steps-container-BYPHyOLL.cjs");Object.defineProperty(exports,"SchmancyStep",{enumerable:!0,get:()=>e.SchmancyStep}),Object.defineProperty(exports,"SchmancyStepsContainer",{enumerable:!0,get:()=>e.SchmancyStepsContainer}),exports.StepsController=e.StepsController,exports.stepsContext=e.stepsContext;
2
2
  //# sourceMappingURL=steps.cjs.map
package/dist/steps.js CHANGED
@@ -1,4 +1,4 @@
1
- import { S as a, a as e, b as n, s as o } from "./schmancy-steps-container-KI2azXpv.js";
1
+ import { S as a, a as e, b as n, s as o } from "./schmancy-steps-container-x6jRkemp.js";
2
2
  export {
3
3
  a as SchmancyStep,
4
4
  e as SchmancyStepsContainer,
@@ -1,4 +1,4 @@
1
- "use strict";const i=require("./provide-BxZ2kn_p.cjs"),u=require("./tailwind.mixin-1kcW0BGm.cjs"),h=require("lit"),r=require("lit/decorators.js");var d=Object.defineProperty,p=Object.getOwnPropertyDescriptor,e=(l,c,t,s)=>{for(var a,o=s>1?void 0:s?p(c,t):c,n=l.length-1;n>=0;n--)(a=l[n])&&(o=(s?a(c,t,o):a(o))||o);return s&&o&&d(c,t,o),o};const y=i.n("surface");exports.SchmancySurface=class extends u.TailwindElement(h.css`
1
+ "use strict";const i=require("./provide-BxZ2kn_p.cjs"),u=require("./tailwind.mixin-Cb7MPMz5.cjs"),h=require("lit"),r=require("lit/decorators.js");var d=Object.defineProperty,p=Object.getOwnPropertyDescriptor,e=(l,c,t,s)=>{for(var a,o=s>1?void 0:s?p(c,t):c,n=l.length-1;n>=0;n--)(a=l[n])&&(o=(s?a(c,t,o):a(o))||o);return s&&o&&d(c,t,o),o};const y=i.n("surface");exports.SchmancySurface=class extends u.TailwindElement(h.css`
2
2
  :host {
3
3
  display: block;
4
4
  position: relative;
@@ -89,4 +89,4 @@
89
89
  color: var(--schmancy-sys-color-surface-on);
90
90
  }
91
91
  `){constructor(){super(...arguments),this.fill="auto",this.rounded="none",this.type="container",this.elevation=0}render(){return h.html`<slot></slot>`}},e([r.property({type:String,reflect:!0})],exports.SchmancySurface.prototype,"fill",2),e([r.property({reflect:!0})],exports.SchmancySurface.prototype,"rounded",2),e([i.e({context:y}),r.property({reflect:!0})],exports.SchmancySurface.prototype,"type",2),e([r.property({type:Number,reflect:!0})],exports.SchmancySurface.prototype,"elevation",2),exports.SchmancySurface=e([r.customElement("schmancy-surface")],exports.SchmancySurface),exports.SchmancySurfaceTypeContext=y;
92
- //# sourceMappingURL=surface-BhCe8hp8.cjs.map
92
+ //# sourceMappingURL=surface-BBtm2OI1.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"surface-BhCe8hp8.cjs","sources":["../src/surface/surface.ts"],"sourcesContent":["import { createContext, provide } from '@lit/context'\nimport { TailwindElement } from '@mixins/tailwind.mixin'\nimport { TSurfaceColor } from '@schmancy/types'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\nexport const SchmancySurfaceTypeContext = createContext<TSurfaceColor>('surface')\n\nexport type SchmancySurfaceFill = 'all' | 'width' | 'height' | 'auto'\n/**\n * `<schmancy-surface>` component\n *\n * This component renders a styled container that adapts its dimensions based on the `fill` property.\n * It supports various rounding options, elevation levels, and applies background and text color classes\n * based on the specified surface variant. Additionally, when the `scroller` property is true, the component\n * enables internal scrolling by applying overflow and scroll-behavior styles.\n *\n * @element schmancy-surface\n * @slot - Default slot for projecting child content.\n *\n * @example\n * <schmancy-surface fill=\"all\" rounded=\"all\" elevation=\"3\" type=\"surfaceBright\" scroller>\n * <p>Your scrollable content here</p>\n * </schmancy-surface>\n */\n@customElement('schmancy-surface')\nexport class SchmancySurface extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\tinset: 0;\n\t\tbox-sizing: border-box;\n\t}\n\t\n\t/* Fill styles */\n\t:host([fill='all']) {\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\t:host([fill='width']) {\n\t\twidth: 100%;\n\t}\n\t:host([fill='height']) {\n\t\theight: 100%;\n\t}\n\t\n\t/* Rounded corner styles */\n\t:host([rounded='none']) {\n\t\tborder-radius: 0;\n\t}\n\t:host([rounded='top']) {\n\t\tborder-radius: 8px 8px 0 0;\n\t}\n\t:host([rounded='left']) {\n\t\tborder-radius: 8px 0 0 8px;\n\t}\n\t:host([rounded='right']) {\n\t\tborder-radius: 0 8px 8px 0;\n\t}\n\t:host([rounded='bottom']) {\n\t\tborder-radius: 0 0 8px 8px;\n\t}\n\t:host([rounded='all']) {\n\t\tborder-radius: 8px;\n\t}\n\t\n\t/* Elevation styles */\n\t:host([elevation='1']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-1);\n\t}\n\t:host([elevation='2']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-2);\n\t}\n\t:host([elevation='3']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-3);\n\t}\n\t:host([elevation='4']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-4);\n\t}\n\t:host([elevation='5']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-5);\n\t}\n\t\n\t/* Surface type styles - background and text colors */\n\t:host([type='surface']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-default);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='surfaceDim']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-dim);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='surfaceBright']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-bright);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerLowest']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-lowest);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerLow']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-low);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='container']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-container);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerHigh']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-high);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerHighest']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-highest);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n`) {\n\t/**\n\t * Fill the width and/or height of the parent container.\n\t * Options: 'all', 'width', 'height', 'auto'.\n\t * @default 'auto'\n\t */\n\t@property({ type: String, reflect: true })\n\tfill: 'all' | 'width' | 'height' | 'auto' = 'auto'\n\n\t/**\n\t * Specifies the rounding style of the component's corners.\n\t * Options: 'none', 'top', 'left', 'right', 'bottom', 'all'.\n\t * @default 'none'\n\t */\n\t@property({ reflect: true })\n\trounded: 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all' = 'none'\n\n\t/**\n\t * Specifies the surface type for styling.\n\t * Provided to descendant components via context.\n\t * Options: 'surface', 'surfaceDim', 'surfaceBright', 'containerLowest',\n\t * 'containerLow', 'container', 'containerHigh', 'containerHighest'.\n\t * @default 'container'\n\t */\n\t@provide({ context: SchmancySurfaceTypeContext })\n\t@property({ reflect: true })\n\ttype: TSurfaceColor = 'container'\n\n\t/**\n\t * Defines the elevation level (shadow depth) of the surface.\n\t * Valid values: 0, 1, 2, 3, 4, 5.\n\t * @default 0\n\t */\n\t@property({ type: Number, reflect: true })\n\televation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\n\tprotected render(): unknown {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-surface': SchmancySurface\n\t}\n}"],"names":["SchmancySurfaceTypeContext","createContext","SchmancySurface","TailwindElement","css","super","arguments","this","fill","rounded","type","elevation","render","html","__decorateClass","property","String","reflect","prototype","provide","context","Number","customElement"],"mappings":"kVAMO,MAAMA,EAA6BC,EAAAA,EAA6B,SAAA,EAoB1DC,QAAAA,gBAAN,cAA8BC,EAAAA,gBAAgBC,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;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAA9C,CAAA,CAAA,cAAAC,MAAAA,GAAAC,SAAAA,EAiGNC,KAAAC,KAA4C,OAQ5CD,KAAAE,QAAgE,OAWhEF,KAAAG,KAAsB,YAQtBH,KAAAI,UAAmC,CAAA,CAEzB,QAAAC,CACT,OAAOC,EAAAA,mBACR,CAAA,EA/BAC,EAAA,CADCC,EAAAA,SAAS,CAAEL,KAAMM,OAAQC,UAAS,CAAA,CAAA,EAhGvBf,wBAiGZgB,UAAA,OAAA,GAQAJ,EAAA,CADCC,WAAS,CAAEE,UAAS,CAAA,CAAA,EAxGTf,wBAyGZgB,UAAA,UAAA,CAAA,EAWAJ,EAAA,CAFCK,IAAQ,CAAEC,QAASpB,CAAAA,CAAAA,EACnBe,WAAS,CAAEE,UAAS,CAAA,CAAA,EAnHTf,wBAoHZgB,UAAA,OAAA,GAQAJ,EAAA,CADCC,EAAAA,SAAS,CAAEL,KAAMW,OAAQJ,QAAAA,MA3Hdf,wBA4HZgB,UAAA,YAAA,CAAA,EA5HYhB,QAAAA,gBAANY,EAAA,CADNQ,EAAAA,cAAc,qBACFpB"}
1
+ {"version":3,"file":"surface-BBtm2OI1.cjs","sources":["../src/surface/surface.ts"],"sourcesContent":["import { createContext, provide } from '@lit/context'\nimport { TailwindElement } from '@mixins/tailwind.mixin'\nimport { TSurfaceColor } from '@schmancy/types'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\nexport const SchmancySurfaceTypeContext = createContext<TSurfaceColor>('surface')\n\nexport type SchmancySurfaceFill = 'all' | 'width' | 'height' | 'auto'\n/**\n * `<schmancy-surface>` component\n *\n * This component renders a styled container that adapts its dimensions based on the `fill` property.\n * It supports various rounding options, elevation levels, and applies background and text color classes\n * based on the specified surface variant. Additionally, when the `scroller` property is true, the component\n * enables internal scrolling by applying overflow and scroll-behavior styles.\n *\n * @element schmancy-surface\n * @slot - Default slot for projecting child content.\n *\n * @example\n * <schmancy-surface fill=\"all\" rounded=\"all\" elevation=\"3\" type=\"surfaceBright\" scroller>\n * <p>Your scrollable content here</p>\n * </schmancy-surface>\n */\n@customElement('schmancy-surface')\nexport class SchmancySurface extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\tinset: 0;\n\t\tbox-sizing: border-box;\n\t}\n\t\n\t/* Fill styles */\n\t:host([fill='all']) {\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\t:host([fill='width']) {\n\t\twidth: 100%;\n\t}\n\t:host([fill='height']) {\n\t\theight: 100%;\n\t}\n\t\n\t/* Rounded corner styles */\n\t:host([rounded='none']) {\n\t\tborder-radius: 0;\n\t}\n\t:host([rounded='top']) {\n\t\tborder-radius: 8px 8px 0 0;\n\t}\n\t:host([rounded='left']) {\n\t\tborder-radius: 8px 0 0 8px;\n\t}\n\t:host([rounded='right']) {\n\t\tborder-radius: 0 8px 8px 0;\n\t}\n\t:host([rounded='bottom']) {\n\t\tborder-radius: 0 0 8px 8px;\n\t}\n\t:host([rounded='all']) {\n\t\tborder-radius: 8px;\n\t}\n\t\n\t/* Elevation styles */\n\t:host([elevation='1']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-1);\n\t}\n\t:host([elevation='2']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-2);\n\t}\n\t:host([elevation='3']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-3);\n\t}\n\t:host([elevation='4']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-4);\n\t}\n\t:host([elevation='5']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-5);\n\t}\n\t\n\t/* Surface type styles - background and text colors */\n\t:host([type='surface']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-default);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='surfaceDim']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-dim);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='surfaceBright']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-bright);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerLowest']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-lowest);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerLow']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-low);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='container']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-container);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerHigh']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-high);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerHighest']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-highest);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n`) {\n\t/**\n\t * Fill the width and/or height of the parent container.\n\t * Options: 'all', 'width', 'height', 'auto'.\n\t * @default 'auto'\n\t */\n\t@property({ type: String, reflect: true })\n\tfill: 'all' | 'width' | 'height' | 'auto' = 'auto'\n\n\t/**\n\t * Specifies the rounding style of the component's corners.\n\t * Options: 'none', 'top', 'left', 'right', 'bottom', 'all'.\n\t * @default 'none'\n\t */\n\t@property({ reflect: true })\n\trounded: 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all' = 'none'\n\n\t/**\n\t * Specifies the surface type for styling.\n\t * Provided to descendant components via context.\n\t * Options: 'surface', 'surfaceDim', 'surfaceBright', 'containerLowest',\n\t * 'containerLow', 'container', 'containerHigh', 'containerHighest'.\n\t * @default 'container'\n\t */\n\t@provide({ context: SchmancySurfaceTypeContext })\n\t@property({ reflect: true })\n\ttype: TSurfaceColor = 'container'\n\n\t/**\n\t * Defines the elevation level (shadow depth) of the surface.\n\t * Valid values: 0, 1, 2, 3, 4, 5.\n\t * @default 0\n\t */\n\t@property({ type: Number, reflect: true })\n\televation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\n\tprotected render(): unknown {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-surface': SchmancySurface\n\t}\n}"],"names":["SchmancySurfaceTypeContext","createContext","SchmancySurface","TailwindElement","css","super","arguments","this","fill","rounded","type","elevation","render","html","__decorateClass","property","String","reflect","prototype","provide","context","Number","customElement"],"mappings":"kVAMO,MAAMA,EAA6BC,EAAAA,EAA6B,SAAA,EAoB1DC,QAAAA,gBAAN,cAA8BC,EAAAA,gBAAgBC,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;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAA9C,CAAA,CAAA,cAAAC,MAAAA,GAAAC,SAAAA,EAiGNC,KAAAC,KAA4C,OAQ5CD,KAAAE,QAAgE,OAWhEF,KAAAG,KAAsB,YAQtBH,KAAAI,UAAmC,CAAA,CAEzB,QAAAC,CACT,OAAOC,EAAAA,mBACR,CAAA,EA/BAC,EAAA,CADCC,EAAAA,SAAS,CAAEL,KAAMM,OAAQC,UAAS,CAAA,CAAA,EAhGvBf,wBAiGZgB,UAAA,OAAA,GAQAJ,EAAA,CADCC,WAAS,CAAEE,UAAS,CAAA,CAAA,EAxGTf,wBAyGZgB,UAAA,UAAA,CAAA,EAWAJ,EAAA,CAFCK,IAAQ,CAAEC,QAASpB,CAAAA,CAAAA,EACnBe,WAAS,CAAEE,UAAS,CAAA,CAAA,EAnHTf,wBAoHZgB,UAAA,OAAA,GAQAJ,EAAA,CADCC,EAAAA,SAAS,CAAEL,KAAMW,OAAQJ,QAAAA,MA3Hdf,wBA4HZgB,UAAA,YAAA,CAAA,EA5HYhB,QAAAA,gBAANY,EAAA,CADNQ,EAAAA,cAAc,qBACFpB"}
@@ -1,5 +1,5 @@
1
1
  import { e as y, n as i } from "./provide-tcktw8xB.js";
2
- import { T as d } from "./tailwind.mixin-BHLwDiBj.js";
2
+ import { T as d } from "./tailwind.mixin-CWA7D8Ym.js";
3
3
  import { css as u, html as p } from "lit";
4
4
  import { property as t, customElement as f } from "lit/decorators.js";
5
5
  var m = Object.defineProperty, v = Object.getOwnPropertyDescriptor, s = (h, e, a, c) => {
@@ -110,4 +110,4 @@ export {
110
110
  b as S,
111
111
  r as a
112
112
  };
113
- //# sourceMappingURL=surface-C7jJaxVu.js.map
113
+ //# sourceMappingURL=surface-DF75Qk2N.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"surface-C7jJaxVu.js","sources":["../src/surface/surface.ts"],"sourcesContent":["import { createContext, provide } from '@lit/context'\nimport { TailwindElement } from '@mixins/tailwind.mixin'\nimport { TSurfaceColor } from '@schmancy/types'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\nexport const SchmancySurfaceTypeContext = createContext<TSurfaceColor>('surface')\n\nexport type SchmancySurfaceFill = 'all' | 'width' | 'height' | 'auto'\n/**\n * `<schmancy-surface>` component\n *\n * This component renders a styled container that adapts its dimensions based on the `fill` property.\n * It supports various rounding options, elevation levels, and applies background and text color classes\n * based on the specified surface variant. Additionally, when the `scroller` property is true, the component\n * enables internal scrolling by applying overflow and scroll-behavior styles.\n *\n * @element schmancy-surface\n * @slot - Default slot for projecting child content.\n *\n * @example\n * <schmancy-surface fill=\"all\" rounded=\"all\" elevation=\"3\" type=\"surfaceBright\" scroller>\n * <p>Your scrollable content here</p>\n * </schmancy-surface>\n */\n@customElement('schmancy-surface')\nexport class SchmancySurface extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\tinset: 0;\n\t\tbox-sizing: border-box;\n\t}\n\t\n\t/* Fill styles */\n\t:host([fill='all']) {\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\t:host([fill='width']) {\n\t\twidth: 100%;\n\t}\n\t:host([fill='height']) {\n\t\theight: 100%;\n\t}\n\t\n\t/* Rounded corner styles */\n\t:host([rounded='none']) {\n\t\tborder-radius: 0;\n\t}\n\t:host([rounded='top']) {\n\t\tborder-radius: 8px 8px 0 0;\n\t}\n\t:host([rounded='left']) {\n\t\tborder-radius: 8px 0 0 8px;\n\t}\n\t:host([rounded='right']) {\n\t\tborder-radius: 0 8px 8px 0;\n\t}\n\t:host([rounded='bottom']) {\n\t\tborder-radius: 0 0 8px 8px;\n\t}\n\t:host([rounded='all']) {\n\t\tborder-radius: 8px;\n\t}\n\t\n\t/* Elevation styles */\n\t:host([elevation='1']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-1);\n\t}\n\t:host([elevation='2']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-2);\n\t}\n\t:host([elevation='3']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-3);\n\t}\n\t:host([elevation='4']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-4);\n\t}\n\t:host([elevation='5']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-5);\n\t}\n\t\n\t/* Surface type styles - background and text colors */\n\t:host([type='surface']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-default);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='surfaceDim']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-dim);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='surfaceBright']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-bright);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerLowest']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-lowest);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerLow']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-low);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='container']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-container);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerHigh']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-high);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerHighest']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-highest);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n`) {\n\t/**\n\t * Fill the width and/or height of the parent container.\n\t * Options: 'all', 'width', 'height', 'auto'.\n\t * @default 'auto'\n\t */\n\t@property({ type: String, reflect: true })\n\tfill: 'all' | 'width' | 'height' | 'auto' = 'auto'\n\n\t/**\n\t * Specifies the rounding style of the component's corners.\n\t * Options: 'none', 'top', 'left', 'right', 'bottom', 'all'.\n\t * @default 'none'\n\t */\n\t@property({ reflect: true })\n\trounded: 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all' = 'none'\n\n\t/**\n\t * Specifies the surface type for styling.\n\t * Provided to descendant components via context.\n\t * Options: 'surface', 'surfaceDim', 'surfaceBright', 'containerLowest',\n\t * 'containerLow', 'container', 'containerHigh', 'containerHighest'.\n\t * @default 'container'\n\t */\n\t@provide({ context: SchmancySurfaceTypeContext })\n\t@property({ reflect: true })\n\ttype: TSurfaceColor = 'container'\n\n\t/**\n\t * Defines the elevation level (shadow depth) of the surface.\n\t * Valid values: 0, 1, 2, 3, 4, 5.\n\t * @default 0\n\t */\n\t@property({ type: Number, reflect: true })\n\televation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\n\tprotected render(): unknown {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-surface': SchmancySurface\n\t}\n}"],"names":["SchmancySurfaceTypeContext","createContext","SchmancySurface","TailwindElement","css","super","arguments","this","fill","rounded","type","elevation","render","html","__decorateClass","property","String","reflect","prototype","provide","context","Number","customElement"],"mappings":";;;;;;;;AAMO,MAAMA,IAA6BC,EAA6B,SAAA;AAoBhE,IAAMC,IAAN,cAA8BC,EAAgBC;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;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAA9C,EAAA;AAAA,EAAA;AAAAC,UAAAA,GAAAC,SAAAA,GAiGNC,KAAAC,OAA4C,QAQ5CD,KAAAE,UAAgE,QAWhEF,KAAAG,OAAsB,aAQtBH,KAAAI,YAAmC;AAAA,EAAA;AAAA,EAEzB,SAAAC;AACT,WAAOC;AAAAA,EACR;AAAA;AA/BAC,EAAA,CADCC,EAAS,EAAEL,MAAMM,QAAQC,SAAAA,GAAS,CAAA,CAAA,GAhGvBf,EAiGZgB,WAAA,QAAA,CAAA,GAQAJ,EAAA,CADCC,EAAS,EAAEE,SAAAA,GAAS,CAAA,CAAA,GAxGTf,EAyGZgB,WAAA,WAAA,CAAA,GAWAJ,EAAA,CAFCK,EAAQ,EAAEC,SAASpB,EAAAA,CAAAA,GACnBe,EAAS,EAAEE,SAAAA,GAAS,CAAA,CAAA,GAnHTf,EAoHZgB,WAAA,QAAA,CAAA,GAQAJ,EAAA,CADCC,EAAS,EAAEL,MAAMW,QAAQJ,SAAAA,QA3Hdf,EA4HZgB,WAAA,aAAA,CAAA,GA5HYhB,IAANY,EAAA,CADNQ,EAAc,kBAAA,CAAA,GACFpB;"}
1
+ {"version":3,"file":"surface-DF75Qk2N.js","sources":["../src/surface/surface.ts"],"sourcesContent":["import { createContext, provide } from '@lit/context'\nimport { TailwindElement } from '@mixins/tailwind.mixin'\nimport { TSurfaceColor } from '@schmancy/types'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\nexport const SchmancySurfaceTypeContext = createContext<TSurfaceColor>('surface')\n\nexport type SchmancySurfaceFill = 'all' | 'width' | 'height' | 'auto'\n/**\n * `<schmancy-surface>` component\n *\n * This component renders a styled container that adapts its dimensions based on the `fill` property.\n * It supports various rounding options, elevation levels, and applies background and text color classes\n * based on the specified surface variant. Additionally, when the `scroller` property is true, the component\n * enables internal scrolling by applying overflow and scroll-behavior styles.\n *\n * @element schmancy-surface\n * @slot - Default slot for projecting child content.\n *\n * @example\n * <schmancy-surface fill=\"all\" rounded=\"all\" elevation=\"3\" type=\"surfaceBright\" scroller>\n * <p>Your scrollable content here</p>\n * </schmancy-surface>\n */\n@customElement('schmancy-surface')\nexport class SchmancySurface extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\tinset: 0;\n\t\tbox-sizing: border-box;\n\t}\n\t\n\t/* Fill styles */\n\t:host([fill='all']) {\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\t:host([fill='width']) {\n\t\twidth: 100%;\n\t}\n\t:host([fill='height']) {\n\t\theight: 100%;\n\t}\n\t\n\t/* Rounded corner styles */\n\t:host([rounded='none']) {\n\t\tborder-radius: 0;\n\t}\n\t:host([rounded='top']) {\n\t\tborder-radius: 8px 8px 0 0;\n\t}\n\t:host([rounded='left']) {\n\t\tborder-radius: 8px 0 0 8px;\n\t}\n\t:host([rounded='right']) {\n\t\tborder-radius: 0 8px 8px 0;\n\t}\n\t:host([rounded='bottom']) {\n\t\tborder-radius: 0 0 8px 8px;\n\t}\n\t:host([rounded='all']) {\n\t\tborder-radius: 8px;\n\t}\n\t\n\t/* Elevation styles */\n\t:host([elevation='1']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-1);\n\t}\n\t:host([elevation='2']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-2);\n\t}\n\t:host([elevation='3']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-3);\n\t}\n\t:host([elevation='4']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-4);\n\t}\n\t:host([elevation='5']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-5);\n\t}\n\t\n\t/* Surface type styles - background and text colors */\n\t:host([type='surface']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-default);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='surfaceDim']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-dim);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='surfaceBright']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-bright);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerLowest']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-lowest);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerLow']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-low);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='container']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-container);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerHigh']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-high);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerHighest']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-highest);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n`) {\n\t/**\n\t * Fill the width and/or height of the parent container.\n\t * Options: 'all', 'width', 'height', 'auto'.\n\t * @default 'auto'\n\t */\n\t@property({ type: String, reflect: true })\n\tfill: 'all' | 'width' | 'height' | 'auto' = 'auto'\n\n\t/**\n\t * Specifies the rounding style of the component's corners.\n\t * Options: 'none', 'top', 'left', 'right', 'bottom', 'all'.\n\t * @default 'none'\n\t */\n\t@property({ reflect: true })\n\trounded: 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all' = 'none'\n\n\t/**\n\t * Specifies the surface type for styling.\n\t * Provided to descendant components via context.\n\t * Options: 'surface', 'surfaceDim', 'surfaceBright', 'containerLowest',\n\t * 'containerLow', 'container', 'containerHigh', 'containerHighest'.\n\t * @default 'container'\n\t */\n\t@provide({ context: SchmancySurfaceTypeContext })\n\t@property({ reflect: true })\n\ttype: TSurfaceColor = 'container'\n\n\t/**\n\t * Defines the elevation level (shadow depth) of the surface.\n\t * Valid values: 0, 1, 2, 3, 4, 5.\n\t * @default 0\n\t */\n\t@property({ type: Number, reflect: true })\n\televation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\n\tprotected render(): unknown {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-surface': SchmancySurface\n\t}\n}"],"names":["SchmancySurfaceTypeContext","createContext","SchmancySurface","TailwindElement","css","super","arguments","this","fill","rounded","type","elevation","render","html","__decorateClass","property","String","reflect","prototype","provide","context","Number","customElement"],"mappings":";;;;;;;;AAMO,MAAMA,IAA6BC,EAA6B,SAAA;AAoBhE,IAAMC,IAAN,cAA8BC,EAAgBC;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;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAA9C,EAAA;AAAA,EAAA;AAAAC,UAAAA,GAAAC,SAAAA,GAiGNC,KAAAC,OAA4C,QAQ5CD,KAAAE,UAAgE,QAWhEF,KAAAG,OAAsB,aAQtBH,KAAAI,YAAmC;AAAA,EAAA;AAAA,EAEzB,SAAAC;AACT,WAAOC;AAAAA,EACR;AAAA;AA/BAC,EAAA,CADCC,EAAS,EAAEL,MAAMM,QAAQC,SAAAA,GAAS,CAAA,CAAA,GAhGvBf,EAiGZgB,WAAA,QAAA,CAAA,GAQAJ,EAAA,CADCC,EAAS,EAAEE,SAAAA,GAAS,CAAA,CAAA,GAxGTf,EAyGZgB,WAAA,WAAA,CAAA,GAWAJ,EAAA,CAFCK,EAAQ,EAAEC,SAASpB,EAAAA,CAAAA,GACnBe,EAAS,EAAEE,SAAAA,GAAS,CAAA,CAAA,GAnHTf,EAoHZgB,WAAA,QAAA,CAAA,GAQAJ,EAAA,CADCC,EAAS,EAAEL,MAAMW,QAAQJ,SAAAA,QA3Hdf,EA4HZgB,WAAA,aAAA,CAAA,GA5HYhB,IAANY,EAAA,CADNQ,EAAc,kBAAA,CAAA,GACFpB;"}
package/dist/surface.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./surface-BhCe8hp8.cjs");Object.defineProperty(exports,"SchmancySurface",{enumerable:!0,get:()=>e.SchmancySurface}),exports.SchmancySurfaceTypeContext=e.SchmancySurfaceTypeContext;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./surface-BBtm2OI1.cjs");Object.defineProperty(exports,"SchmancySurface",{enumerable:!0,get:()=>e.SchmancySurface}),exports.SchmancySurfaceTypeContext=e.SchmancySurfaceTypeContext;
2
2
  //# sourceMappingURL=surface.cjs.map
package/dist/surface.js CHANGED
@@ -1,4 +1,4 @@
1
- import { a as e, S } from "./surface-C7jJaxVu.js";
1
+ import { a as e, S } from "./surface-DF75Qk2N.js";
2
2
  export {
3
3
  e as SchmancySurface,
4
4
  S as SchmancySurfaceTypeContext
@@ -1,4 +1,4 @@
1
- "use strict";const y=require("./tslib.es6-DgOcxv4s.cjs"),h=require("lit"),g=require("lit/decorators/property.js"),k=require("lit/directive.js"),F=require("lit/async-directive.js"),N=require("lit/directives/repeat.js"),D=require("./litElement.mixin-Cs3zx2X6.cjs"),c=require("lit/decorators.js");var B=Object.defineProperty,j=Object.getOwnPropertyDescriptor,v=(l,t,e,i)=>{for(var s,r=i>1?void 0:i?j(t,e):t,o=l.length-1;o>=0;o--)(s=l[o])&&(r=(i?s(t,e,r):s(r))||r);return i&&r&&B(t,e,r),r};exports.SchmancyTableRow=class extends D.$LitElement(){constructor(){super(...arguments),this.columns=[],this.cols=this.columns.map(()=>"1fr").join(" ")}renderCell(l){if(l.render)return h.html`
1
+ "use strict";const y=require("./tslib.es6-DgOcxv4s.cjs"),h=require("lit"),g=require("lit/decorators/property.js"),k=require("lit/directive.js"),F=require("lit/async-directive.js"),N=require("lit/directives/repeat.js"),D=require("./litElement.mixin-Bnma23ZU.cjs"),c=require("lit/decorators.js");var B=Object.defineProperty,j=Object.getOwnPropertyDescriptor,v=(l,t,e,i)=>{for(var s,r=i>1?void 0:i?j(t,e):t,o=l.length-1;o>=0;o--)(s=l[o])&&(r=(i?s(t,e,r):s(r))||r);return i&&r&&B(t,e,r),r};exports.SchmancyTableRow=class extends D.$LitElement(){constructor(){super(...arguments),this.columns=[],this.cols=this.columns.map(()=>"1fr").join(" ")}renderCell(l){if(l.render)return h.html`
2
2
  <div class="overflow-hidden text-ellipsis">
3
3
  <schmancy-typography align="${l.align||"left"}" maxLines="2" weight="${l.weight||"normal"}">
4
4
  ${l.render(this.item)}
@@ -62,4 +62,4 @@
62
62
  </schmancy-grid>
63
63
  </schmancy-surface>
64
64
  `}},d([c.property({type:Array,attribute:!1})],exports.SchmancyDataTable.prototype,"columns",2),d([c.property({type:Array,attribute:!1})],exports.SchmancyDataTable.prototype,"data",2),d([c.property({type:String})],exports.SchmancyDataTable.prototype,"keyField",2),d([c.property({type:String})],exports.SchmancyDataTable.prototype,"cols",2),d([c.property({type:Boolean})],exports.SchmancyDataTable.prototype,"sortable",2),d([c.state()],exports.SchmancyDataTable.prototype,"sortColumn",2),d([c.state()],exports.SchmancyDataTable.prototype,"sortDirection",2),d([c.state()],exports.SchmancyDataTable.prototype,"filteredData",2),exports.SchmancyDataTable=d([c.customElement("schmancy-table")],exports.SchmancyDataTable);
65
- //# sourceMappingURL=table-BlwkABmS.cjs.map
65
+ //# sourceMappingURL=table--JptotNr.cjs.map