@mhmo91/schmancy 0.4.13 → 0.4.14

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 (311) hide show
  1. package/ai/busy.md +6 -7
  2. package/ai/button.md +5 -5
  3. package/ai/card.md +1 -1
  4. package/ai/checkbox.md +15 -25
  5. package/ai/form.md +63 -66
  6. package/ai/input.md +33 -28
  7. package/ai/notification.md +47 -61
  8. package/ai/radio-group.md +47 -29
  9. package/ai/select.md +3 -3
  10. package/ai/typography.md +12 -12
  11. package/dist/ai/busy.md +6 -7
  12. package/dist/ai/button.md +5 -5
  13. package/dist/ai/card.md +1 -1
  14. package/dist/ai/checkbox.md +15 -25
  15. package/dist/ai/form.md +63 -66
  16. package/dist/ai/input.md +33 -28
  17. package/dist/ai/notification.md +47 -61
  18. package/dist/ai/radio-group.md +47 -29
  19. package/dist/ai/select.md +3 -3
  20. package/dist/ai/typography.md +12 -12
  21. package/dist/{animated-text-DrgxxVXA.js → animated-text-CuOeUPBc.js} +3 -3
  22. package/dist/{animated-text-DrgxxVXA.js.map → animated-text-CuOeUPBc.js.map} +1 -1
  23. package/dist/{animated-text-aOZ4KXTt.cjs → animated-text-vI_J_T4H.cjs} +2 -2
  24. package/dist/{animated-text-aOZ4KXTt.cjs.map → animated-text-vI_J_T4H.cjs.map} +1 -1
  25. package/dist/animated-text.cjs +1 -1
  26. package/dist/animated-text.js +1 -1
  27. package/dist/area.cjs +1 -1
  28. package/dist/{area.component-BNENor9z.js → area.component-BM9ihM3x.js} +3 -3
  29. package/dist/{area.component-BNENor9z.js.map → area.component-BM9ihM3x.js.map} +1 -1
  30. package/dist/{area.component-BEiNkBI9.cjs → area.component-DMXMTNuu.cjs} +2 -2
  31. package/dist/{area.component-BEiNkBI9.cjs.map → area.component-DMXMTNuu.cjs.map} +1 -1
  32. package/dist/area.js +1 -1
  33. package/dist/{autocomplete-L0aas1vi.cjs → autocomplete-BF2L9FvO.cjs} +2 -2
  34. package/dist/{autocomplete-L0aas1vi.cjs.map → autocomplete-BF2L9FvO.cjs.map} +1 -1
  35. package/dist/{autocomplete-86x1z92h.js → autocomplete-BmY1HiRm.js} +3 -3
  36. package/dist/{autocomplete-86x1z92h.js.map → autocomplete-BmY1HiRm.js.map} +1 -1
  37. package/dist/autocomplete.cjs +1 -1
  38. package/dist/autocomplete.js +1 -1
  39. package/dist/{avatar-DtzFyhlM.js → avatar-BCuQDohh.js} +45 -45
  40. package/dist/{avatar-DtzFyhlM.js.map → avatar-BCuQDohh.js.map} +1 -1
  41. package/dist/{avatar-Cy-cEMb2.cjs → avatar-CFAmHdY7.cjs} +2 -2
  42. package/dist/{avatar-Cy-cEMb2.cjs.map → avatar-CFAmHdY7.cjs.map} +1 -1
  43. package/dist/badge.cjs +1 -1
  44. package/dist/badge.js +1 -1
  45. package/dist/{boat-CMO8rBpx.js → boat-DhLd0NFJ.js} +2 -2
  46. package/dist/{boat-CMO8rBpx.js.map → boat-DhLd0NFJ.js.map} +1 -1
  47. package/dist/{boat-BMESV9c8.cjs → boat-GHXDYUXo.cjs} +2 -2
  48. package/dist/{boat-BMESV9c8.cjs.map → boat-GHXDYUXo.cjs.map} +1 -1
  49. package/dist/boat.cjs +1 -1
  50. package/dist/boat.js +1 -1
  51. package/dist/busy.cjs +1 -1
  52. package/dist/busy.js +1 -1
  53. package/dist/button.cjs +1 -1
  54. package/dist/button.js +1 -1
  55. package/dist/card.cjs +1 -1
  56. package/dist/card.js +1 -1
  57. package/dist/{checkbox-Chh3OgWJ.js → checkbox-BOQEemBC.js} +2 -2
  58. package/dist/{checkbox-Chh3OgWJ.js.map → checkbox-BOQEemBC.js.map} +1 -1
  59. package/dist/{checkbox-C7Xx4zVu.cjs → checkbox-CRwmpo0I.cjs} +2 -2
  60. package/dist/{checkbox-C7Xx4zVu.cjs.map → checkbox-CRwmpo0I.cjs.map} +1 -1
  61. package/dist/checkbox.cjs +1 -1
  62. package/dist/checkbox.js +1 -1
  63. package/dist/{chips-CZWOuWYh.js → chips-CAdNz2hu.js} +3 -3
  64. package/dist/{chips-CZWOuWYh.js.map → chips-CAdNz2hu.js.map} +1 -1
  65. package/dist/{chips-BPaU1fIQ.cjs → chips-CL4ex3S5.cjs} +2 -2
  66. package/dist/{chips-BPaU1fIQ.cjs.map → chips-CL4ex3S5.cjs.map} +1 -1
  67. package/dist/chips.cjs +1 -1
  68. package/dist/chips.js +1 -1
  69. package/dist/{circular-progress-xJRFI7FV.js → circular-progress-Byjn--Fy.js} +3 -3
  70. package/dist/{circular-progress-xJRFI7FV.js.map → circular-progress-Byjn--Fy.js.map} +1 -1
  71. package/dist/{circular-progress-B716jMbW.cjs → circular-progress-DHLvm1dK.cjs} +2 -2
  72. package/dist/{circular-progress-B716jMbW.cjs.map → circular-progress-DHLvm1dK.cjs.map} +1 -1
  73. package/dist/circular-progress.cjs +1 -1
  74. package/dist/circular-progress.js +1 -1
  75. package/dist/code-highlight.cjs +1 -1
  76. package/dist/code-highlight.js +1 -1
  77. package/dist/{code-preview-D1CCeP9o.cjs → code-preview-C0kMHrZp.cjs} +2 -2
  78. package/dist/{code-preview-D1CCeP9o.cjs.map → code-preview-C0kMHrZp.cjs.map} +1 -1
  79. package/dist/{code-preview-BMLIHTbp.js → code-preview-KWJFLNdy.js} +2 -2
  80. package/dist/{code-preview-BMLIHTbp.js.map → code-preview-KWJFLNdy.js.map} +1 -1
  81. package/dist/components.cjs +1 -1
  82. package/dist/components.js +1 -1
  83. package/dist/content-drawer.cjs +1 -1
  84. package/dist/content-drawer.js +1 -1
  85. package/dist/{date-range-fP7yi819.js → date-range-Dbw7tlTg.js} +3 -3
  86. package/dist/{date-range-fP7yi819.js.map → date-range-Dbw7tlTg.js.map} +1 -1
  87. package/dist/{date-range-BncoO-ye.cjs → date-range-Dq9AYUX9.cjs} +2 -2
  88. package/dist/{date-range-BncoO-ye.cjs.map → date-range-Dq9AYUX9.cjs.map} +1 -1
  89. package/dist/date-range.cjs +1 -1
  90. package/dist/date-range.js +1 -1
  91. package/dist/{delay-oQ9qrOV_.cjs → delay-CHFrBv7q.cjs} +2 -2
  92. package/dist/{delay-oQ9qrOV_.cjs.map → delay-CHFrBv7q.cjs.map} +1 -1
  93. package/dist/{delay-DN_yNSsK.js → delay-DVNcXeFo.js} +2 -2
  94. package/dist/{delay-DN_yNSsK.js.map → delay-DVNcXeFo.js.map} +1 -1
  95. package/dist/delay.cjs +1 -1
  96. package/dist/delay.js +1 -1
  97. package/dist/{dialog-content-BxiEOcGi.js → dialog-content-BUZnNGK5.js} +3 -3
  98. package/dist/{dialog-content-BxiEOcGi.js.map → dialog-content-BUZnNGK5.js.map} +1 -1
  99. package/dist/{dialog-content-aKmUf0nh.cjs → dialog-content-Bgc7dtoN.cjs} +2 -2
  100. package/dist/{dialog-content-aKmUf0nh.cjs.map → dialog-content-Bgc7dtoN.cjs.map} +1 -1
  101. package/dist/dialog.cjs +1 -1
  102. package/dist/dialog.js +1 -1
  103. package/dist/{divider-CZMnnY6N.js → divider-Baxo2_bg.js} +3 -3
  104. package/dist/{divider-CZMnnY6N.js.map → divider-Baxo2_bg.js.map} +1 -1
  105. package/dist/{divider-DH4gDqR3.cjs → divider-ONYdMCC3.cjs} +2 -2
  106. package/dist/{divider-DH4gDqR3.cjs.map → divider-ONYdMCC3.cjs.map} +1 -1
  107. package/dist/divider.cjs +1 -1
  108. package/dist/divider.js +1 -1
  109. package/dist/{dropdown-content-CDONqec-.js → dropdown-content-Di_ThsYr.js} +3 -3
  110. package/dist/{dropdown-content-CDONqec-.js.map → dropdown-content-Di_ThsYr.js.map} +1 -1
  111. package/dist/{dropdown-content-B_nQ7JQb.cjs → dropdown-content-DjcEmYM4.cjs} +2 -2
  112. package/dist/{dropdown-content-B_nQ7JQb.cjs.map → dropdown-content-DjcEmYM4.cjs.map} +1 -1
  113. package/dist/dropdown.cjs +1 -1
  114. package/dist/dropdown.js +1 -1
  115. package/dist/extra.cjs +1 -1
  116. package/dist/extra.js +1 -1
  117. package/dist/{flex-CdU3dsnT.cjs → flex-B_mu8j3k.cjs} +2 -2
  118. package/dist/{flex-CdU3dsnT.cjs.map → flex-B_mu8j3k.cjs.map} +1 -1
  119. package/dist/{flex-DpEq-xBP.js → flex-CqNaXCKb.js} +2 -2
  120. package/dist/{flex-DpEq-xBP.js.map → flex-CqNaXCKb.js.map} +1 -1
  121. package/dist/{form-DOXwEWEA.cjs → form-ha4Eqx8c.cjs} +2 -2
  122. package/dist/{form-DOXwEWEA.cjs.map → form-ha4Eqx8c.cjs.map} +1 -1
  123. package/dist/{form-CBQ7tqoN.js → form-t3eedyiY.js} +2 -2
  124. package/dist/{form-CBQ7tqoN.js.map → form-t3eedyiY.js.map} +1 -1
  125. package/dist/form.cjs +1 -1
  126. package/dist/form.js +1 -1
  127. package/dist/{formField.mixin-Dua_nJpW.js → formField.mixin-DzKDhHbR.js} +2 -2
  128. package/dist/{formField.mixin-Dua_nJpW.js.map → formField.mixin-DzKDhHbR.js.map} +1 -1
  129. package/dist/{formField.mixin-s6FQGAPU.cjs → formField.mixin-d14Fm5er.cjs} +2 -2
  130. package/dist/{formField.mixin-s6FQGAPU.cjs.map → formField.mixin-d14Fm5er.cjs.map} +1 -1
  131. package/dist/{icon-MwCR53u1.cjs → icon-CFCGmi4A.cjs} +2 -2
  132. package/dist/{icon-MwCR53u1.cjs.map → icon-CFCGmi4A.cjs.map} +1 -1
  133. package/dist/{icon-button-Dv6GLseS.cjs → icon-button-D4GrKqC0.cjs} +2 -2
  134. package/dist/{icon-button-Dv6GLseS.cjs.map → icon-button-D4GrKqC0.cjs.map} +1 -1
  135. package/dist/{icon-button-nX-6I8-n.js → icon-button-UhONt-F9.js} +3 -3
  136. package/dist/{icon-button-nX-6I8-n.js.map → icon-button-UhONt-F9.js.map} +1 -1
  137. package/dist/{icon-h6T16FZr.js → icon-tJDnrQSl.js} +2 -2
  138. package/dist/{icon-h6T16FZr.js.map → icon-tJDnrQSl.js.map} +1 -1
  139. package/dist/icons.cjs +1 -1
  140. package/dist/icons.js +1 -1
  141. package/dist/index.cjs +1 -1
  142. package/dist/index.js +43 -43
  143. package/dist/{input-CRyjA5vL.js → input-BKGOpZ3z.js} +3 -3
  144. package/dist/{input-CRyjA5vL.js.map → input-BKGOpZ3z.js.map} +1 -1
  145. package/dist/{input-oZQ_ATz5.cjs → input-dNXzVzgY.cjs} +2 -2
  146. package/dist/{input-oZQ_ATz5.cjs.map → input-dNXzVzgY.cjs.map} +1 -1
  147. package/dist/input.cjs +1 -1
  148. package/dist/input.js +1 -1
  149. package/dist/layout.cjs +1 -1
  150. package/dist/layout.js +1 -1
  151. package/dist/{list-le1t7wnv.js → list-BXQI_aVt.js} +2 -2
  152. package/dist/{list-le1t7wnv.js.map → list-BXQI_aVt.js.map} +1 -1
  153. package/dist/{list-DsOs1b2s.cjs → list-DLKOrlMB.cjs} +2 -2
  154. package/dist/{list-DsOs1b2s.cjs.map → list-DLKOrlMB.cjs.map} +1 -1
  155. package/dist/list.cjs +1 -1
  156. package/dist/list.js +1 -1
  157. package/dist/{litElement.mixin-nh8G1Uii.js → litElement.mixin-BFshhc99.js} +2 -2
  158. package/dist/{litElement.mixin-nh8G1Uii.js.map → litElement.mixin-BFshhc99.js.map} +1 -1
  159. package/dist/{litElement.mixin-HAhKNS-6.cjs → litElement.mixin-D80K-DKp.cjs} +2 -2
  160. package/dist/{litElement.mixin-HAhKNS-6.cjs.map → litElement.mixin-D80K-DKp.cjs.map} +1 -1
  161. package/dist/{media-BP4kiHwu.js → media-CMy1y_G4.js} +2 -2
  162. package/dist/{media-BP4kiHwu.js.map → media-CMy1y_G4.js.map} +1 -1
  163. package/dist/{media-D90bHvDD.cjs → media-DrrOd3Cp.cjs} +2 -2
  164. package/dist/{media-D90bHvDD.cjs.map → media-DrrOd3Cp.cjs.map} +1 -1
  165. package/dist/{menu-BirD28L0.js → menu-CIbYjq5w.js} +3 -3
  166. package/dist/{menu-BirD28L0.js.map → menu-CIbYjq5w.js.map} +1 -1
  167. package/dist/{menu-C0F6gTv9.cjs → menu-HxSHRr44.cjs} +2 -2
  168. package/dist/{menu-C0F6gTv9.cjs.map → menu-HxSHRr44.cjs.map} +1 -1
  169. package/dist/menu.cjs +1 -1
  170. package/dist/menu.js +1 -1
  171. package/dist/nav-drawer.cjs +1 -1
  172. package/dist/nav-drawer.js +1 -1
  173. package/dist/{notification-service-COqkYPMO.cjs → notification-service-D6dwccSa.cjs} +2 -2
  174. package/dist/{notification-service-COqkYPMO.cjs.map → notification-service-D6dwccSa.cjs.map} +1 -1
  175. package/dist/{notification-service-CX1notpL.js → notification-service-DqhrEhim.js} +3 -3
  176. package/dist/{notification-service-CX1notpL.js.map → notification-service-DqhrEhim.js.map} +1 -1
  177. package/dist/notification.cjs +1 -1
  178. package/dist/notification.js +1 -1
  179. package/dist/{option-BgfgOhne.js → option-B7mh5iBR.js} +2 -2
  180. package/dist/{option-BgfgOhne.js.map → option-B7mh5iBR.js.map} +1 -1
  181. package/dist/{option-C2ioIuX3.cjs → option-YZacOiKm.cjs} +2 -2
  182. package/dist/{option-C2ioIuX3.cjs.map → option-YZacOiKm.cjs.map} +1 -1
  183. package/dist/option.cjs +1 -1
  184. package/dist/option.js +1 -1
  185. package/dist/{payment-card-form-CPdQDBjl.cjs → payment-card-form-Ba3j-mko.cjs} +2 -2
  186. package/dist/{payment-card-form-CPdQDBjl.cjs.map → payment-card-form-Ba3j-mko.cjs.map} +1 -1
  187. package/dist/{payment-card-form-BV5TjuAP.js → payment-card-form-jeoZZi6p.js} +3 -3
  188. package/dist/{payment-card-form-BV5TjuAP.js.map → payment-card-form-jeoZZi6p.js.map} +1 -1
  189. package/dist/progress-CZXKwGBB.cjs +35 -0
  190. package/dist/progress-CZXKwGBB.cjs.map +1 -0
  191. package/dist/progress-D4y0dpK9.js +57 -0
  192. package/dist/progress-D4y0dpK9.js.map +1 -0
  193. package/dist/progress.cjs +1 -1
  194. package/dist/progress.js +1 -1
  195. package/dist/{radio-button-D6ZQIEMc.js → radio-button-CKty5_sG.js} +3 -3
  196. package/dist/{radio-button-D6ZQIEMc.js.map → radio-button-CKty5_sG.js.map} +1 -1
  197. package/dist/{radio-button-Bplx6LUo.cjs → radio-button-DeAY1R3D.cjs} +2 -2
  198. package/dist/{radio-button-Bplx6LUo.cjs.map → radio-button-DeAY1R3D.cjs.map} +1 -1
  199. package/dist/radio-group.cjs +1 -1
  200. package/dist/radio-group.js +1 -1
  201. package/dist/{schmancy-steps-container-CI_dfEaJ.cjs → schmancy-steps-container-CmSXDf7C.cjs} +2 -2
  202. package/dist/{schmancy-steps-container-CI_dfEaJ.cjs.map → schmancy-steps-container-CmSXDf7C.cjs.map} +1 -1
  203. package/dist/{schmancy-steps-container-feCUXcti.js → schmancy-steps-container-DdxlPOl3.js} +2 -2
  204. package/dist/{schmancy-steps-container-feCUXcti.js.map → schmancy-steps-container-DdxlPOl3.js.map} +1 -1
  205. package/dist/{select-B4HKxJNd.js → select-7pWyVOgh.js} +3 -3
  206. package/dist/{select-B4HKxJNd.js.map → select-7pWyVOgh.js.map} +1 -1
  207. package/dist/{select-7MfozdvB.cjs → select-BRkT8QuS.cjs} +2 -2
  208. package/dist/{select-7MfozdvB.cjs.map → select-BRkT8QuS.cjs.map} +1 -1
  209. package/dist/select.cjs +1 -1
  210. package/dist/select.js +1 -1
  211. package/dist/{sheet-CoHqDHlJ.js → sheet-q6FFKREE.js} +4 -4
  212. package/dist/{sheet-CoHqDHlJ.js.map → sheet-q6FFKREE.js.map} +1 -1
  213. package/dist/{sheet-BD7mNPgo.cjs → sheet-t4A4BeGz.cjs} +2 -2
  214. package/dist/{sheet-BD7mNPgo.cjs.map → sheet-t4A4BeGz.cjs.map} +1 -1
  215. package/dist/sheet.cjs +1 -1
  216. package/dist/sheet.js +2 -2
  217. package/dist/{theme.component-CqT-wazM.cjs → sheet.service-DO-2bnGp.cjs} +3 -3
  218. package/dist/sheet.service-DO-2bnGp.cjs.map +1 -0
  219. package/dist/{theme.component-Biom0Mmq.js → sheet.service-DqO2aRtR.js} +60 -60
  220. package/dist/sheet.service-DqO2aRtR.js.map +1 -0
  221. package/dist/{slider-D8YnrJ-8.cjs → slider-BtKp18tE.cjs} +2 -2
  222. package/dist/{slider-D8YnrJ-8.cjs.map → slider-BtKp18tE.cjs.map} +1 -1
  223. package/dist/{slider-B7r8w_31.js → slider-Cv78iuoH.js} +3 -3
  224. package/dist/{slider-B7r8w_31.js.map → slider-Cv78iuoH.js.map} +1 -1
  225. package/dist/slider.cjs +1 -1
  226. package/dist/slider.js +1 -1
  227. package/dist/spinner-BZKI4Aje.cjs +77 -0
  228. package/dist/spinner-BZKI4Aje.cjs.map +1 -0
  229. package/dist/spinner-DIXpf7Xc.js +106 -0
  230. package/dist/spinner-DIXpf7Xc.js.map +1 -0
  231. package/dist/steps.cjs +1 -1
  232. package/dist/steps.js +1 -1
  233. package/dist/{surface-CjUKBdLJ.cjs → surface-6Kwk9NCC.cjs} +2 -2
  234. package/dist/{surface-CjUKBdLJ.cjs.map → surface-6Kwk9NCC.cjs.map} +1 -1
  235. package/dist/{surface-Bw7q1kMH.js → surface-By-1_D5m.js} +2 -2
  236. package/dist/{surface-Bw7q1kMH.js.map → surface-By-1_D5m.js.map} +1 -1
  237. package/dist/surface.cjs +1 -1
  238. package/dist/surface.js +1 -1
  239. package/dist/{table-DQ38Z4T0.js → table-BKdxrE64.js} +2 -2
  240. package/dist/{table-DQ38Z4T0.js.map → table-BKdxrE64.js.map} +1 -1
  241. package/dist/{table-DFnbyo4s.cjs → table-BojV1cr-.cjs} +2 -2
  242. package/dist/{table-DFnbyo4s.cjs.map → table-BojV1cr-.cjs.map} +1 -1
  243. package/dist/table.cjs +1 -1
  244. package/dist/table.js +1 -1
  245. package/dist/{tabs-compatibility-DYErcu_5.js → tabs-compatibility-BddIPDk-.js} +2 -2
  246. package/dist/{tabs-compatibility-DYErcu_5.js.map → tabs-compatibility-BddIPDk-.js.map} +1 -1
  247. package/dist/{tabs-compatibility-BFULPNKJ.cjs → tabs-compatibility-BuSTUrbW.cjs} +2 -2
  248. package/dist/{tabs-compatibility-BFULPNKJ.cjs.map → tabs-compatibility-BuSTUrbW.cjs.map} +1 -1
  249. package/dist/tabs.cjs +1 -1
  250. package/dist/tabs.js +1 -1
  251. package/dist/tailwind.mixin-C9wSwMyj.cjs +2 -0
  252. package/dist/{tailwind.mixin-DN3mj7AF.cjs.map → tailwind.mixin-C9wSwMyj.cjs.map} +1 -1
  253. package/dist/tailwind.mixin-CjS7whsn.js +43 -0
  254. package/dist/{tailwind.mixin-CGuZJSAV.js.map → tailwind.mixin-CjS7whsn.js.map} +1 -1
  255. package/dist/teleport.cjs +1 -1
  256. package/dist/teleport.js +1 -1
  257. package/dist/{textarea-DUQC00Fd.js → textarea-BkUV1o5c.js} +2 -2
  258. package/dist/{textarea-DUQC00Fd.js.map → textarea-BkUV1o5c.js.map} +1 -1
  259. package/dist/{textarea-B1kV_2eH.cjs → textarea-Csc71VAg.cjs} +2 -2
  260. package/dist/{textarea-B1kV_2eH.cjs.map → textarea-Csc71VAg.cjs.map} +1 -1
  261. package/dist/textarea.cjs +1 -1
  262. package/dist/textarea.js +1 -1
  263. package/dist/{theme-button-nswF-4e7.cjs → theme-button-BBAfag6o.cjs} +2 -2
  264. package/dist/{theme-button-nswF-4e7.cjs.map → theme-button-BBAfag6o.cjs.map} +1 -1
  265. package/dist/{theme-button-CXnJIlOE.js → theme-button-D-bDzeOP.js} +2 -2
  266. package/dist/{theme-button-CXnJIlOE.js.map → theme-button-D-bDzeOP.js.map} +1 -1
  267. package/dist/theme-button.cjs +1 -1
  268. package/dist/theme-button.js +1 -1
  269. package/dist/theme.cjs +1 -1
  270. package/dist/theme.js +1 -1
  271. package/dist/{timezone-DEfdZ7Ih.js → timezone-CRh0TVA5.js} +3 -3
  272. package/dist/{timezone-DEfdZ7Ih.js.map → timezone-CRh0TVA5.js.map} +1 -1
  273. package/dist/{timezone-BanTl7db.cjs → timezone-DntF7Anf.cjs} +2 -2
  274. package/dist/{timezone-BanTl7db.cjs.map → timezone-DntF7Anf.cjs.map} +1 -1
  275. package/dist/{tooltip-DyiokkSK.cjs → tooltip-7Vz-0dIm.cjs} +2 -2
  276. package/dist/{tooltip-DyiokkSK.cjs.map → tooltip-7Vz-0dIm.cjs.map} +1 -1
  277. package/dist/{tooltip-Cwd97bhO.js → tooltip-DSZZBYgA.js} +2 -2
  278. package/dist/{tooltip-Cwd97bhO.js.map → tooltip-DSZZBYgA.js.map} +1 -1
  279. package/dist/tooltip.cjs +1 -1
  280. package/dist/tooltip.js +1 -1
  281. package/dist/{tree-DiGklPGH.js → tree-BNtkejK4.js} +2 -2
  282. package/dist/{tree-DiGklPGH.js.map → tree-BNtkejK4.js.map} +1 -1
  283. package/dist/{tree-CkEPnffd.cjs → tree-CPQBVpEO.cjs} +2 -2
  284. package/dist/{tree-CkEPnffd.cjs.map → tree-CPQBVpEO.cjs.map} +1 -1
  285. package/dist/tree.cjs +1 -1
  286. package/dist/tree.js +1 -1
  287. package/dist/{typewriter-CclJKtWA.js → typewriter-Brhk0nKN.js} +4 -4
  288. package/dist/{typewriter-CclJKtWA.js.map → typewriter-Brhk0nKN.js.map} +1 -1
  289. package/dist/{typewriter-3DNeJHA8.cjs → typewriter-h4SJqRGh.cjs} +2 -2
  290. package/dist/{typewriter-3DNeJHA8.cjs.map → typewriter-h4SJqRGh.cjs.map} +1 -1
  291. package/dist/typewriter.cjs +1 -1
  292. package/dist/typewriter.js +1 -1
  293. package/dist/{typography-CddeXVmZ.cjs → typography-7ntwHeb5.cjs} +2 -2
  294. package/dist/{typography-CddeXVmZ.cjs.map → typography-7ntwHeb5.cjs.map} +1 -1
  295. package/dist/{typography-UQvNQS6H.js → typography-Bt0EPE8x.js} +2 -2
  296. package/dist/{typography-UQvNQS6H.js.map → typography-Bt0EPE8x.js.map} +1 -1
  297. package/dist/typography.cjs +1 -1
  298. package/dist/typography.js +1 -1
  299. package/package.json +1 -1
  300. package/dist/progress-C7nnUVNo.cjs +0 -30
  301. package/dist/progress-C7nnUVNo.cjs.map +0 -1
  302. package/dist/progress-DNoDfb2_.js +0 -52
  303. package/dist/progress-DNoDfb2_.js.map +0 -1
  304. package/dist/spinner-CXfX6eka.js +0 -77
  305. package/dist/spinner-CXfX6eka.js.map +0 -1
  306. package/dist/spinner-DYX-qUui.cjs +0 -45
  307. package/dist/spinner-DYX-qUui.cjs.map +0 -1
  308. package/dist/tailwind.mixin-CGuZJSAV.js +0 -43
  309. package/dist/tailwind.mixin-DN3mj7AF.cjs +0 -2
  310. package/dist/theme.component-Biom0Mmq.js.map +0 -1
  311. package/dist/theme.component-CqT-wazM.cjs.map +0 -1
package/ai/busy.md CHANGED
@@ -13,8 +13,8 @@
13
13
 
14
14
  // Spinner Component
15
15
  <schmancy-spinner
16
- size="small|medium|large"
17
- color="primary|secondary|tertiary|currentColor">
16
+ size="24px" // Any CSS size value (e.g., "16px", "2em", "32px")
17
+ color="gray"> // Currently not used - spinner uses secondary color
18
18
  </schmancy-spinner>
19
19
 
20
20
  // Busy overlaying content
@@ -50,16 +50,15 @@ delay: number // Delay in ms before showing (to prevent flashing)
50
50
  minDuration: number // Minimum duration in ms to show
51
51
 
52
52
  // Spinner Properties
53
- size: string // Size: "small" (16px), "medium" (24px), "large" (48px), or custom size
54
- color: string // Color: "primary", "secondary", "tertiary", "currentColor" or CSS color
55
- thickness: number // Thickness of the spinner stroke
53
+ size: string // CSS size value (default: "24px"). Examples: "16px", "20px", "32px", "2rem"
54
+ color: string // Currently not used - spinner always uses secondary color
56
55
 
57
56
  // Examples
58
57
  // Basic usage
59
58
  <schmancy-busy active=${loading} label="Loading..."></schmancy-busy>
60
59
 
61
- // Spinner with custom size and color
62
- <schmancy-spinner size="32px" color="#ff5722"></schmancy-spinner>
60
+ // Spinner with custom size
61
+ <schmancy-spinner size="32px"></schmancy-spinner>
63
62
 
64
63
  // Busy indicator in a button
65
64
  <schmancy-button ?disabled=${loading}>
package/ai/button.md CHANGED
@@ -21,8 +21,8 @@
21
21
  type="button|reset|submit" // HTML button type (default: "button")
22
22
  href?="string" // Makes button a link
23
23
  disabled? // Disable state
24
- aria-label="string"> // Accessibility label
25
- icon_name
24
+ aria-label="string"> // Accessibility label (REQUIRED)
25
+ <!-- Icon name as content -->
26
26
  </schmancy-icon-button>
27
27
 
28
28
  // Component Methods
@@ -99,9 +99,9 @@ Material Design 3 emphasis levels (highest to lowest):
99
99
  4. `text` - Low emphasis, tertiary actions
100
100
 
101
101
  ### Icon Button Sizes
102
- - `sm`: 40×40px container, 18px icon
103
- - `md`: 48×48px container, 24px icon (default)
104
- - `lg`: 56×56px container, 28px icon
102
+ - `sm`: 18px icon size
103
+ - `md`: 24px icon size (default)
104
+ - `lg`: 32px icon size
105
105
 
106
106
  ### CSS Custom Properties
107
107
  ```css
package/ai/card.md CHANGED
@@ -59,7 +59,7 @@ elevation: number // Shadow depth 0-5 (default: 0, overrides type defaults)
59
59
  ### CSS Host Styling
60
60
  The component uses `:host` selectors for all styling:
61
61
  - No wrapper elements - clean component boundary
62
- - Type and elevation properties reflect to HTML attributes
62
+ - CSS attribute selectors work with the properties
63
63
  - Automatic hover states for elevated and outlined types
64
64
 
65
65
  ### Theme Integration
package/ai/checkbox.md CHANGED
@@ -5,49 +5,39 @@
5
5
  <schmancy-checkbox
6
6
  name="checkbox-name"
7
7
  label="Checkbox Label"
8
- value="checkbox-value"
9
- checked?
10
- indeterminate?
8
+ value="true|false" // Boolean value (default: false)
9
+ checked? // Alias for value
11
10
  disabled?
12
11
  required?
12
+ size="sm|md|lg" // Size of checkbox (default: "md")
13
13
  @change=${handleChange}>
14
14
  </schmancy-checkbox>
15
15
 
16
- // Checkbox with helper text
16
+ // Checkbox with label
17
17
  <schmancy-checkbox
18
18
  label="Subscribe to newsletter"
19
- helper-text="You'll receive weekly updates">
19
+ value="false">
20
20
  </schmancy-checkbox>
21
21
 
22
- // Checkbox with error
22
+ // Checkbox with slot content
23
23
  <schmancy-checkbox
24
- label="Accept terms"
25
- error="You must accept the terms to continue"
24
+ name="terms"
26
25
  required>
26
+ I accept the <a href="/terms">terms and conditions</a>
27
27
  </schmancy-checkbox>
28
28
 
29
- // Checkbox Methods
30
- checkbox.check() -> void // Programmatically check
31
- checkbox.uncheck() -> void // Programmatically uncheck
32
- checkbox.toggle() -> void // Toggle current state
33
- checkbox.focus() -> void // Focus the checkbox
34
- checkbox.blur() -> void // Remove focus
35
- checkbox.validate() -> boolean // Validate and show error if invalid
36
-
37
29
  // Checkbox Properties
38
- checked: boolean // The checked state
39
- indeterminate: boolean // Indeterminate state (neither checked nor unchecked)
40
- value: string // The value attribute of the checkbox
41
- name: string // The name attribute
30
+ value: boolean // The checked state (true/false)
31
+ checked: boolean // Alias for value
32
+ name: string // The name attribute (auto-generated if not provided)
33
+ id: string // The id attribute (auto-generated if not provided)
42
34
  disabled: boolean // Whether the checkbox is disabled
43
35
  required: boolean // Whether the checkbox is required
44
- error: string // Error message to display
36
+ label?: string // Optional label text
37
+ size: 'sm'|'md'|'lg' // Size of the checkbox (default: 'md')
45
38
 
46
39
  // Checkbox Events
47
- @change // Fires when checked state changes, with { detail: { checked, value } }
48
- @input // Fires when value changes during interaction
49
- @focus // Fires when checkbox gains focus
50
- @blur // Fires when checkbox loses focus
40
+ @change // Fires when checked state changes, with { detail: { value: boolean } }
51
41
 
52
42
  // Examples
53
43
  // Basic usage
package/ai/form.md CHANGED
@@ -3,66 +3,59 @@
3
3
  ```js
4
4
  // Form Container
5
5
  <schmancy-form
6
- @submit=${handleSubmit}
7
- @validate=${handleValidation}
8
- @change=${handleChange}>
6
+ novalidate? // Skip form validation on submit
7
+ @submit=${handleSubmit} // Form submission event
8
+ @reset=${handleReset}> // Form reset event
9
9
  <!-- Form fields go here -->
10
10
  </schmancy-form>
11
11
 
12
- // Form v2 (enhanced version with model binding)
13
- <schmancy-form-v2
14
- .model=${formData}
15
- .validators=${validators}
16
- @submit=${handleSubmit}
17
- @change=${handleChange}>
18
- <!-- Form fields go here -->
19
- </schmancy-form-v2>
20
-
21
12
  // Form Methods
22
- form.submit() -> Promise<any>
23
- form.reset() -> void
24
- form.validate() -> Promise<boolean>
25
- form.setErrors({fieldName: errorMessage}) -> void
26
- form.getValues() -> Object
13
+ form.submit() -> boolean // Submit the form programmatically
14
+ form.reset() -> void // Reset all form fields to default values
15
+ form.getFormData() -> FormData // Get form data as FormData object
16
+ form.reportValidity() -> boolean // Check validity and show validation messages
17
+ form.checkValidity() -> boolean // Check validity without showing messages
27
18
 
28
19
  // Events
29
- @submit // { detail: { values: Object, isValid: boolean } }
30
- @validate // { detail: { errors: Object, isValid: boolean } }
31
- @change // { detail: { name: string, value: any, values: Object } }
20
+ @submit // CustomEvent<FormData> // Fired when form is submitted
21
+ @reset // CustomEvent // Fired when form is reset
32
22
 
33
23
  // Examples
34
24
  // 1. Basic form with validation
35
25
  <schmancy-form @submit=${(e) => {
36
- const values = e.detail.values;
37
- console.log('Form submitted:', values);
26
+ const formData = e.detail;
27
+ console.log('Form submitted:', formData);
28
+ // Convert FormData to object if needed
29
+ const values = Object.fromEntries(formData);
30
+ console.log('Values:', values);
38
31
  }}>
39
32
  <schmancy-input
40
33
  name="email"
41
34
  label="Email Address"
42
- required
43
- error=${emailError}>
35
+ type="email"
36
+ required>
44
37
  </schmancy-input>
45
38
 
46
39
  <schmancy-button type="submit">Submit</schmancy-button>
47
40
  </schmancy-form>
48
41
 
49
- // 2. Form v2 with model binding and validators
50
- <schmancy-form-v2
51
- .model=${{
52
- username: '',
53
- password: ''
54
- }}
55
- .validators=${{
56
- username: (value) => value ? '' : 'Username is required',
57
- password: (value) => value.length >= 8 ? '' : 'Password must be at least 8 characters'
58
- }}
59
- @submit=${(e) => console.log('Valid data:', e.detail.values)}>
42
+ // 2. Form with multiple fields and validation
43
+ <schmancy-form
44
+ @submit=${async (e) => {
45
+ const formData = e.detail;
46
+ // Send to server
47
+ await fetch('/api/submit', {
48
+ method: 'POST',
49
+ body: formData
50
+ });
51
+ }}>
60
52
 
61
- <schmancy-input name="username" label="Username"></schmancy-input>
62
- <schmancy-input name="password" label="Password" type="password"></schmancy-input>
53
+ <schmancy-input name="username" label="Username" required></schmancy-input>
54
+ <schmancy-input name="password" label="Password" type="password" required></schmancy-input>
55
+ <schmancy-checkbox name="remember" label="Remember me"></schmancy-checkbox>
63
56
 
64
57
  <schmancy-button type="submit">Login</schmancy-button>
65
- </schmancy-form-v2>
58
+ </schmancy-form>
66
59
  ```
67
60
 
68
61
  ## Related Components
@@ -89,20 +82,12 @@ success? // Shows success state
89
82
  placeholder="Text" // Placeholder text (where applicable)
90
83
  ```
91
84
 
92
- ### Form v2 Interfaces
93
- ```typescript
94
- interface FormModel {
95
- [key: string]: any;
96
- }
97
-
98
- interface FormValidators {
99
- [key: string]: (value: any, allValues: FormModel) => string | null;
100
- }
101
-
102
- interface FormErrors {
103
- [key: string]: string;
104
- }
105
- ```
85
+ ### Form Behavior
86
+ - Submits when Enter key is pressed in input fields
87
+ - Submits when submit button is clicked
88
+ - Automatically collects data from all form controls
89
+ - Supports native HTML5 validation
90
+ - Works with custom Schmancy form components
106
91
 
107
92
  ### Common Use Cases
108
93
 
@@ -117,32 +102,44 @@ interface FormErrors {
117
102
  </schmancy-form>
118
103
  ```
119
104
 
120
- 2. **Dynamic form fields**: Add or remove fields based on user input
105
+ 2. **Programmatic form submission**
121
106
  ```js
122
- <schmancy-form-v2
123
- .model=${dynamicModel}
124
- .validators=${dynamicValidators}>
125
- ${dynamicFields.map(field => html`
126
- <schmancy-input name=${field.name} label=${field.label}></schmancy-input>
127
- `)}
128
- <button type="button" @click=${addField}>Add Field</button>
129
- </schmancy-form-v2>
107
+ const form = document.querySelector('schmancy-form');
108
+
109
+ // Check validity before submitting
110
+ if (form.checkValidity()) {
111
+ form.submit();
112
+ } else {
113
+ // Show validation messages
114
+ form.reportValidity();
115
+ }
130
116
  ```
131
117
 
132
118
  3. **Form with server validation**: Handle backend validation errors
133
119
  ```js
134
120
  async function submitForm(e) {
121
+ const formData = e.detail;
122
+
135
123
  try {
136
124
  const response = await fetch('/api/submit', {
137
125
  method: 'POST',
138
- body: JSON.stringify(e.detail.values)
126
+ body: formData
139
127
  });
140
- const data = await response.json();
141
- if (!data.success) {
142
- formRef.setErrors(data.errors);
128
+
129
+ if (!response.ok) {
130
+ // Handle server errors
131
+ const errors = await response.json();
132
+ // Update form fields with errors
133
+ Object.entries(errors).forEach(([field, message]) => {
134
+ const input = form.querySelector(`[name="${field}"]`);
135
+ if (input) {
136
+ input.error = true;
137
+ input.hint = message;
138
+ }
139
+ });
143
140
  }
144
141
  } catch (error) {
145
- console.error(error);
142
+ console.error('Submission failed:', error);
146
143
  }
147
144
  }
148
145
  ```
package/ai/input.md CHANGED
@@ -11,13 +11,14 @@
11
11
  placeholder="Placeholder text" // Placeholder text
12
12
  hint?="Helper text" // Helper text below input
13
13
  align?="left|center|right" // Text alignment (default: "left")
14
+ size?="sm|md|lg" // Input size (default: "md")
14
15
  required? // Required field
15
16
  disabled? // Disabled state
16
17
  readonly? // Read-only state
17
18
  clickable? // Show pointer cursor when readonly
18
19
  error? // Error state (boolean)
19
20
  autofocus? // Auto-focus on render
20
- spellcheck? // Enable spellcheck
21
+ spellcheck? // Enable spellcheck (default: false)
21
22
  inputmode?="none|text|tel|url|email|numeric|decimal|search" // Virtual keyboard hint
22
23
  autocomplete?="off|on|name|email|tel|etc" // Autofill hints
23
24
  pattern?="regex" // Validation pattern
@@ -26,12 +27,14 @@
26
27
  min?="number|date" // Min value (number/date)
27
28
  max?="number|date" // Max value (number/date)
28
29
  step?="number|any" // Step increment
29
- tabIndex?="number" // Tab order
30
+ list?="datalist-id" // Associate with datalist
31
+ validateOn?="always|touched|dirty|submitted" // Validation strategy (default: "touched")
30
32
  @input=${handleInput} // Every keystroke
31
33
  @change=${handleChange} // On blur/change
32
34
  @enter=${handleEnter} // Enter key pressed
33
35
  @focus=${handleFocus} // Focus event
34
- @blur=${handleBlur}> // Blur event
36
+ @blur=${handleBlur} // Blur event
37
+ @autofill=${handleAutofill}> // Autofill detected
35
38
  </schmancy-input>
36
39
 
37
40
  // Input Methods
@@ -43,14 +46,23 @@ input.checkValidity() -> boolean
43
46
  input.reportValidity() -> boolean
44
47
  input.setCustomValidity(message: string) -> void
45
48
  input.getValidity() -> ValidityState
49
+ input.setSelectionRange(start: number, end: number, direction?: 'forward'|'backward'|'none') -> void
50
+ input.setRangeText(replacement: string, start?: number, end?: number, selectMode?: 'select'|'start'|'end'|'preserve') -> void
51
+
52
+ // Input Properties
53
+ input.selectionStart -> number | null
54
+ input.selectionEnd -> number | null
55
+ input.selectionDirection -> 'forward' | 'backward' | 'none' | null
46
56
 
47
57
  // Events (Custom Events with detail)
48
- @input // CustomEvent<{ value: string }>
49
- @change // CustomEvent<{ value: string }>
50
- @enter // CustomEvent<{ value: string }>
51
- @focus // Standard FocusEvent
52
- @blur // Standard FocusEvent
53
- @click // Standard MouseEvent
58
+ @input // CustomEvent<{ value: string }>
59
+ @change // CustomEvent<{ value: string }>
60
+ @enter // CustomEvent<{ value: string }>
61
+ @autofill // CustomEvent<{ value: string }>
62
+ @reset // CustomEvent<void>
63
+ @focus // Standard FocusEvent
64
+ @blur // Standard FocusEvent
65
+ @click // Standard MouseEvent
54
66
 
55
67
  // Examples
56
68
  // 1. Basic input with validation
@@ -142,18 +154,12 @@ input.checkValidity() // Returns true/false
142
154
  input.reportValidity() // Shows validation message
143
155
  input.setCustomValidity('Custom error') // Set custom message
144
156
  input.getValidity() // Get ValidityState object
145
- suffix: Content displayed after the input field
146
157
  ```
147
158
 
148
- ### CSS Custom Properties
149
- ```css
150
- --schmancy-input-height: /* Controls the input height */
151
- --schmancy-input-border-color: /* Controls the border color */
152
- --schmancy-input-focus-color: /* Controls the focus color */
153
- --schmancy-input-error-color: /* Controls the error state color */
154
- --schmancy-input-success-color: /* Controls the success state color */
155
- --schmancy-input-font-size: /* Controls the font size */
156
- ```
159
+ ### Input Sizes
160
+ - `sm`: 40px height, 14px font size, compact padding
161
+ - `md`: 50px height, 16px font size, standard padding (default)
162
+ - `lg`: 60px height, 18px font size, spacious padding
157
163
 
158
164
  ### Input v2 Interfaces
159
165
  ```typescript
@@ -172,17 +178,13 @@ interface InputParser {
172
178
 
173
179
  ### Common Use Cases
174
180
 
175
- 1. **Password input with toggle visibility**
181
+ 1. **Password input with show/hide functionality**
176
182
  ```html
177
183
  <schmancy-input
178
184
  type="password"
179
185
  label="Password"
180
- name="password">
181
- <schmancy-icon
182
- slot="suffix"
183
- icon="eye"
184
- @click=${togglePasswordVisibility}>
185
- </schmancy-icon>
186
+ name="password"
187
+ @enter=${handleSubmit}>
186
188
  </schmancy-input>
187
189
  ```
188
190
 
@@ -205,7 +207,10 @@ interface InputParser {
205
207
  label="Message"
206
208
  name="message"
207
209
  maxlength="100"
208
- @input=${e => updateCharCount(e.target.value.length)}>
209
- <span slot="suffix" id="charCount">0/100</span>
210
+ hint="0/100 characters"
211
+ @input=${e => {
212
+ const count = e.target.value.length;
213
+ e.target.hint = `${count}/100 characters`;
214
+ }}>
210
215
  </schmancy-input>
211
216
  ```
@@ -2,53 +2,51 @@
2
2
 
3
3
  ```js
4
4
  // Notification Service API
5
- import { $notification } from 'schmancy';
5
+ import { $notification } from '@mhmo91/schmancy';
6
6
 
7
7
  // Display notification methods
8
- $notification.info(message, options?) -> NotificationRef
9
- $notification.success(message, options?) -> NotificationRef
10
- $notification.warning(message, options?) -> NotificationRef
11
- $notification.error(message, options?) -> NotificationRef
8
+ $notification.info(message?, options?) -> string // Returns notification ID
9
+ $notification.success(message?, options?) -> string
10
+ $notification.warning(message?, options?) -> string
11
+ $notification.error(message?, options?) -> string
12
12
 
13
13
  // Custom notification
14
- $notification.show({
14
+ $notification.notify({
15
15
  message: string,
16
- type: 'info'|'success'|'warning'|'error',
16
+ type?: 'info'|'success'|'warning'|'error',
17
17
  title?: string,
18
- duration?: number, // milliseconds, default 5000
19
- closable?: boolean, // default true
20
- actions?: [{
21
- label: string,
22
- onClick: Function
23
- }],
24
- position?: 'top-right'|'top-left'|'bottom-right'|'bottom-left'|'top'|'bottom',
25
- onClose?: Function
26
- }) -> NotificationRef
27
-
28
- // NotificationRef object
29
- {
30
- close(): void, // Programmatically close the notification
31
- id: string // Unique ID of the notification
32
- }
18
+ duration?: number, // milliseconds, default 1000 (1 second)
19
+ closable?: boolean, // default true
20
+ playSound?: boolean, // default true
21
+ id?: string // custom ID
22
+ }) -> string // Returns notification ID
33
23
 
34
24
  // Notification Container Component
35
- <schmancy-notification-container
36
- position="top-right|top-left|bottom-right|bottom-left|top|bottom"
37
- max-count="5">
38
- </schmancy-notification-container>
39
-
40
- // Notification Outlet (place notifications in specific locations)
41
- <schmancy-notification-outlet name="custom-location"></schmancy-notification-outlet>
42
- // Use with:
43
- $notification.show({ message: "Alert", outlet: "custom-location" });
25
+ <sch-notification-container
26
+ position="top-right|top-left|bottom-right|bottom-left|top-center|bottom-center"
27
+ max-visible-notifications="2" // Max number shown at once (default: 2)
28
+ play-sound="true|false" // Enable/disable sounds (default: false)
29
+ audio-volume="0.1"> // Volume level 0-1 (default: 0.1)
30
+ </sch-notification-container>
44
31
 
45
- // Notification Audio
46
- $notification.setAudio(type, audioUrl) // Configure audio for notification types
32
+ // Individual Notification Component (used internally)
33
+ <sch-notification
34
+ title="Title"
35
+ message="Message text"
36
+ type="info|success|warning|error"
37
+ duration="5000" // Auto-close after ms (0 = no auto-close)
38
+ closable="true"
39
+ play-sound="true"
40
+ @close> // Fired when notification closes
41
+ </sch-notification>
47
42
 
48
43
  // Examples
49
44
  // Basic usage
50
45
  $notification.success("Operation completed successfully");
51
46
 
47
+ // Without message (just icon)
48
+ $notification.success();
49
+
52
50
  // With options
53
51
  $notification.error("Failed to save changes", {
54
52
  title: "Error",
@@ -56,38 +54,26 @@ $notification.error("Failed to save changes", {
56
54
  closable: true
57
55
  });
58
56
 
59
- // With actions
60
- $notification.info("New update available", {
61
- actions: [
62
- {
63
- label: "Update Now",
64
- onClick: () => performUpdate()
65
- },
66
- {
67
- label: "Remind Later",
68
- onClick: () => scheduleReminder()
69
- }
70
- ]
71
- });
72
-
73
57
  // Custom notification
74
- $notification.show({
58
+ $notification.notify({
75
59
  type: "info",
76
- message: "Custom message with HTML content",
60
+ message: "Custom message",
77
61
  title: "Information",
78
62
  duration: 0, // won't auto-close
79
- position: "bottom",
80
- actions: [{
81
- label: "Dismiss",
82
- onClick: (ref) => ref.close()
83
- }]
63
+ playSound: false
84
64
  });
85
65
 
86
- // With HTML content (using lit-html)
87
- $notification.info(html`
88
- <div>
89
- <strong>Hello</strong>
90
- <p>This is a notification with <em>HTML</em> content</p>
91
- </div>
92
- `);
66
+ // Programmatic control
67
+ const notificationId = $notification.info("Processing...", { duration: 0 });
68
+ // Later, to remove it:
69
+ const container = document.querySelector('sch-notification-container');
70
+ container.removeNotification(notificationId);
71
+
72
+ // Setup notification container
73
+ // Add this once in your app layout:
74
+ <sch-notification-container
75
+ position="top-right"
76
+ max-visible-notifications="3"
77
+ play-sound="true">
78
+ </sch-notification-container>
93
79
  ```