@mhmo91/schmancy 0.2.193 → 0.2.195

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 (354) hide show
  1. package/ai/area.md +205 -0
  2. package/ai/autocomplete.md +135 -0
  3. package/ai/avatar.md +178 -0
  4. package/ai/badge.md +100 -0
  5. package/ai/busy.md +195 -0
  6. package/ai/button.md +112 -0
  7. package/ai/card.md +155 -0
  8. package/ai/checkbox.md +108 -0
  9. package/ai/chips.md +180 -0
  10. package/ai/component-relationships.md +93 -0
  11. package/ai/content-drawer.md +190 -0
  12. package/ai/dialog.md +119 -0
  13. package/ai/dropdown.md +238 -0
  14. package/ai/form.md +148 -0
  15. package/ai/icons.md +147 -0
  16. package/ai/index.md +72 -0
  17. package/ai/input.md +167 -0
  18. package/ai/layout.md +166 -0
  19. package/ai/list.md +145 -0
  20. package/ai/menu.md +217 -0
  21. package/ai/notification.md +93 -0
  22. package/ai/radio-group.md +176 -0
  23. package/ai/select.md +174 -0
  24. package/ai/sheet.md +122 -0
  25. package/ai/store.md +235 -0
  26. package/ai/surface.md +221 -0
  27. package/ai/table.md +334 -0
  28. package/ai/tabs.md +71 -0
  29. package/ai/template.md +144 -0
  30. package/ai/textarea.md +147 -0
  31. package/ai/tooltip.md +149 -0
  32. package/ai/tree.md +279 -0
  33. package/ai/typography.md +170 -0
  34. package/dist/_headers +2 -0
  35. package/dist/ai/area.md +205 -0
  36. package/dist/ai/autocomplete.md +135 -0
  37. package/dist/ai/avatar.md +178 -0
  38. package/dist/ai/badge.md +100 -0
  39. package/dist/ai/busy.md +195 -0
  40. package/dist/ai/button.md +112 -0
  41. package/dist/ai/card.md +155 -0
  42. package/dist/ai/checkbox.md +108 -0
  43. package/dist/ai/chips.md +180 -0
  44. package/dist/ai/component-relationships.md +93 -0
  45. package/dist/ai/content-drawer.md +190 -0
  46. package/dist/ai/dialog.md +119 -0
  47. package/dist/ai/dropdown.md +238 -0
  48. package/dist/ai/form.md +148 -0
  49. package/dist/ai/icons.md +147 -0
  50. package/dist/ai/index.md +72 -0
  51. package/dist/ai/input.md +167 -0
  52. package/dist/ai/layout.md +166 -0
  53. package/dist/ai/list.md +145 -0
  54. package/dist/ai/menu.md +217 -0
  55. package/dist/ai/notification.md +93 -0
  56. package/dist/ai/radio-group.md +176 -0
  57. package/dist/ai/select.md +174 -0
  58. package/dist/ai/sheet.md +122 -0
  59. package/dist/ai/store.md +235 -0
  60. package/dist/ai/surface.md +221 -0
  61. package/dist/ai/table.md +334 -0
  62. package/dist/ai/tabs.md +71 -0
  63. package/dist/ai/template.md +144 -0
  64. package/dist/ai/textarea.md +147 -0
  65. package/dist/ai/tooltip.md +149 -0
  66. package/dist/ai/tree.md +279 -0
  67. package/dist/ai/typography.md +170 -0
  68. package/dist/{animated-text-9AM64DHd.cjs → animated-text-Bu9wh3wv.cjs} +2 -2
  69. package/dist/{animated-text-9AM64DHd.cjs.map → animated-text-Bu9wh3wv.cjs.map} +1 -1
  70. package/dist/{animated-text-CVStWn5N.js → animated-text-Ci7M0QTx.js} +3 -3
  71. package/dist/{animated-text-CVStWn5N.js.map → animated-text-Ci7M0QTx.js.map} +1 -1
  72. package/dist/animated-text.cjs +1 -1
  73. package/dist/animated-text.js +1 -1
  74. package/dist/area.cjs +1 -1
  75. package/dist/area.component-Cg9dqZJ5.cjs +8 -0
  76. package/dist/area.component-Cg9dqZJ5.cjs.map +1 -0
  77. package/dist/area.component-eJJ_wryh.js +191 -0
  78. package/dist/area.component-eJJ_wryh.js.map +1 -0
  79. package/dist/area.js +21 -6
  80. package/dist/area.js.map +1 -1
  81. package/dist/{autocomplete-DBXvIJgc.cjs → autocomplete-BH7nQbid.cjs} +2 -2
  82. package/dist/{autocomplete-DBXvIJgc.cjs.map → autocomplete-BH7nQbid.cjs.map} +1 -1
  83. package/dist/{autocomplete-ih92pPkb.js → autocomplete-D9n1MeKT.js} +3 -3
  84. package/dist/{autocomplete-ih92pPkb.js.map → autocomplete-D9n1MeKT.js.map} +1 -1
  85. package/dist/autocomplete.cjs +1 -1
  86. package/dist/autocomplete.js +1 -1
  87. package/dist/{avatar-WAIlaNJg.js → avatar-B4lSs4z5.js} +183 -145
  88. package/dist/avatar-B4lSs4z5.js.map +1 -0
  89. package/dist/{avatar-s-2jSsaH.cjs → avatar-Bg-rdjAe.cjs} +62 -24
  90. package/dist/avatar-Bg-rdjAe.cjs.map +1 -0
  91. package/dist/badge.cjs +1 -1
  92. package/dist/badge.js +1 -1
  93. package/dist/busy.cjs +1 -1
  94. package/dist/busy.js +1 -1
  95. package/dist/button.cjs +1 -1
  96. package/dist/button.js +1 -1
  97. package/dist/card.cjs +1 -1
  98. package/dist/card.js +1 -1
  99. package/dist/{checkbox-DtnX5sT6.cjs → checkbox-CgL23smr.cjs} +10 -10
  100. package/dist/{checkbox-DtnX5sT6.cjs.map → checkbox-CgL23smr.cjs.map} +1 -1
  101. package/dist/{checkbox-Jxxbjxp0.js → checkbox-y37-tGrk.js} +72 -65
  102. package/dist/{checkbox-Jxxbjxp0.js.map → checkbox-y37-tGrk.js.map} +1 -1
  103. package/dist/checkbox.cjs +1 -1
  104. package/dist/checkbox.js +1 -1
  105. package/dist/{chips-CVDnpVUM.cjs → chips-CKST7ug-.cjs} +2 -2
  106. package/dist/{chips-CVDnpVUM.cjs.map → chips-CKST7ug-.cjs.map} +1 -1
  107. package/dist/{chips-lP7ohQep.js → chips-Ndwt1V4b.js} +3 -3
  108. package/dist/{chips-lP7ohQep.js.map → chips-Ndwt1V4b.js.map} +1 -1
  109. package/dist/chips.cjs +1 -1
  110. package/dist/chips.js +1 -1
  111. package/dist/circular-progress-BDmc1zlm.cjs +9 -0
  112. package/dist/circular-progress-BDmc1zlm.cjs.map +1 -0
  113. package/dist/circular-progress-vokDGjmG.js +35 -0
  114. package/dist/circular-progress-vokDGjmG.js.map +1 -0
  115. package/dist/circular-progress.cjs +2 -0
  116. package/dist/circular-progress.cjs.map +1 -0
  117. package/dist/circular-progress.js +5 -0
  118. package/dist/circular-progress.js.map +1 -0
  119. package/dist/components.cjs +1 -1
  120. package/dist/components.js +1 -1
  121. package/dist/content-drawer.cjs +1 -1
  122. package/dist/content-drawer.js +1 -1
  123. package/dist/{date-range-Ca9WLI4Q.js → date-range-CpDVPn_v.js} +3 -3
  124. package/dist/{date-range-Ca9WLI4Q.js.map → date-range-CpDVPn_v.js.map} +1 -1
  125. package/dist/{date-range-DbPA5Y-t.cjs → date-range-DfZz3ifP.cjs} +2 -2
  126. package/dist/{date-range-DbPA5Y-t.cjs.map → date-range-DfZz3ifP.cjs.map} +1 -1
  127. package/dist/date-range.cjs +1 -1
  128. package/dist/date-range.js +1 -1
  129. package/dist/{delay-BgNgQV2G.cjs → delay-ASLyLkQL.cjs} +2 -2
  130. package/dist/{delay-BgNgQV2G.cjs.map → delay-ASLyLkQL.cjs.map} +1 -1
  131. package/dist/{delay-5cCl7ji3.js → delay-CG5SRrzF.js} +2 -2
  132. package/dist/{delay-5cCl7ji3.js.map → delay-CG5SRrzF.js.map} +1 -1
  133. package/dist/delay.cjs +1 -1
  134. package/dist/delay.js +1 -1
  135. package/dist/{dialog-content-9pumpyLD.js → dialog-content-BoPviBAt.js} +86 -82
  136. package/dist/dialog-content-BoPviBAt.js.map +1 -0
  137. package/dist/{dialog-content-qj1E8aye.cjs → dialog-content-D88EcY6L.cjs} +8 -8
  138. package/dist/dialog-content-D88EcY6L.cjs.map +1 -0
  139. package/dist/dialog.cjs +1 -1
  140. package/dist/dialog.js +1 -1
  141. package/dist/{divider-CHckHGEQ.cjs → divider-C38JDYss.cjs} +2 -2
  142. package/dist/{divider-CHckHGEQ.cjs.map → divider-C38JDYss.cjs.map} +1 -1
  143. package/dist/{divider-r8-9eNnl.js → divider-N7GWgK6o.js} +3 -3
  144. package/dist/{divider-r8-9eNnl.js.map → divider-N7GWgK6o.js.map} +1 -1
  145. package/dist/divider.cjs +1 -1
  146. package/dist/divider.js +1 -1
  147. package/dist/{dropdown-content-D-TddflQ.js → dropdown-content-DmO_yIVb.js} +3 -3
  148. package/dist/{dropdown-content-D-TddflQ.js.map → dropdown-content-DmO_yIVb.js.map} +1 -1
  149. package/dist/{dropdown-content-B41MDDRG.cjs → dropdown-content-rH8awIRA.cjs} +2 -2
  150. package/dist/{dropdown-content-B41MDDRG.cjs.map → dropdown-content-rH8awIRA.cjs.map} +1 -1
  151. package/dist/dropdown.cjs +1 -1
  152. package/dist/dropdown.js +1 -1
  153. package/dist/extra.cjs +1 -1
  154. package/dist/extra.js +1 -1
  155. package/dist/{flex-Bf0zNqji.js → flex-CXYfL6bE.js} +2 -2
  156. package/dist/{flex-Bf0zNqji.js.map → flex-CXYfL6bE.js.map} +1 -1
  157. package/dist/{flex-CFv-Zb76.cjs → flex-wYuewqrr.cjs} +2 -2
  158. package/dist/{flex-CFv-Zb76.cjs.map → flex-wYuewqrr.cjs.map} +1 -1
  159. package/dist/{form-BN75s0PI.cjs → form-CNWWdhT_.cjs} +2 -2
  160. package/dist/{form-BN75s0PI.cjs.map → form-CNWWdhT_.cjs.map} +1 -1
  161. package/dist/{form-uYcr1RLJ.js → form-q3JZjWez.js} +2 -2
  162. package/dist/{form-uYcr1RLJ.js.map → form-q3JZjWez.js.map} +1 -1
  163. package/dist/form.cjs +1 -1
  164. package/dist/form.js +1 -1
  165. package/dist/{icon-Cu-imayV.cjs → icon-QnmfHtfT.cjs} +2 -2
  166. package/dist/{icon-Cu-imayV.cjs.map → icon-QnmfHtfT.cjs.map} +1 -1
  167. package/dist/{icon-button-1tZaicyb.js → icon-button-DOTB_28y.js} +3 -3
  168. package/dist/{icon-button-1tZaicyb.js.map → icon-button-DOTB_28y.js.map} +1 -1
  169. package/dist/{icon-button-D0BbHnDL.cjs → icon-button-oAOX71_s.cjs} +2 -2
  170. package/dist/{icon-button-D0BbHnDL.cjs.map → icon-button-oAOX71_s.cjs.map} +1 -1
  171. package/dist/{icon-BR-jE0Y2.js → icon-pLQWXzo8.js} +3 -3
  172. package/dist/{icon-BR-jE0Y2.js.map → icon-pLQWXzo8.js.map} +1 -1
  173. package/dist/icons.cjs +1 -1
  174. package/dist/icons.js +1 -1
  175. package/dist/index.cjs +1 -1
  176. package/dist/index.js +190 -173
  177. package/dist/index.js.map +1 -1
  178. package/dist/{input-B2oV6Hck.cjs → input-CCniOtAr.cjs} +2 -2
  179. package/dist/{input-B2oV6Hck.cjs.map → input-CCniOtAr.cjs.map} +1 -1
  180. package/dist/{input-kiz5O3dY.js → input-DeJitVSV.js} +2 -2
  181. package/dist/{input-kiz5O3dY.js.map → input-DeJitVSV.js.map} +1 -1
  182. package/dist/input.cjs +1 -1
  183. package/dist/input.js +1 -1
  184. package/dist/layout.cjs +1 -1
  185. package/dist/layout.js +1 -1
  186. package/dist/{list-CMHoPfX9.cjs → list-Ad-24MHW.cjs} +2 -2
  187. package/dist/{list-CMHoPfX9.cjs.map → list-Ad-24MHW.cjs.map} +1 -1
  188. package/dist/{list-wT4DLXCh.js → list-Ca79GGNH.js} +2 -2
  189. package/dist/{list-wT4DLXCh.js.map → list-Ca79GGNH.js.map} +1 -1
  190. package/dist/list.cjs +1 -1
  191. package/dist/list.js +1 -1
  192. package/dist/{litElement.mixin-B9Qdq5S_.js → litElement.mixin-BoUiP2tU.js} +2 -2
  193. package/dist/{litElement.mixin-B9Qdq5S_.js.map → litElement.mixin-BoUiP2tU.js.map} +1 -1
  194. package/dist/{litElement.mixin-CHvyxfxf.cjs → litElement.mixin-qOTYSaNG.cjs} +2 -2
  195. package/dist/{litElement.mixin-CHvyxfxf.cjs.map → litElement.mixin-qOTYSaNG.cjs.map} +1 -1
  196. package/dist/{menu-BcSplMNh.cjs → menu-6Wum4ysc.cjs} +2 -2
  197. package/dist/{menu-BcSplMNh.cjs.map → menu-6Wum4ysc.cjs.map} +1 -1
  198. package/dist/{menu-Dl1QU86K.js → menu-Dd_X9oET.js} +3 -3
  199. package/dist/{menu-Dl1QU86K.js.map → menu-Dd_X9oET.js.map} +1 -1
  200. package/dist/menu.cjs +1 -1
  201. package/dist/menu.js +1 -1
  202. package/dist/nav-drawer.cjs +1 -1
  203. package/dist/nav-drawer.js +1 -1
  204. package/dist/{notification-service-CC698xHg.js → notification-service-C-9IqObm.js} +3 -3
  205. package/dist/{notification-service-CC698xHg.js.map → notification-service-C-9IqObm.js.map} +1 -1
  206. package/dist/{notification-service-BV9ybQBu.cjs → notification-service-CrNyAbmv.cjs} +2 -2
  207. package/dist/{notification-service-BV9ybQBu.cjs.map → notification-service-CrNyAbmv.cjs.map} +1 -1
  208. package/dist/notification.cjs +1 -1
  209. package/dist/notification.js +1 -1
  210. package/dist/{option-CkLBgH71.cjs → option-BbBbwrJq.cjs} +2 -2
  211. package/dist/{option-CkLBgH71.cjs.map → option-BbBbwrJq.cjs.map} +1 -1
  212. package/dist/{option-DDxxXwwc.js → option-DVSXUJ96.js} +2 -2
  213. package/dist/{option-DDxxXwwc.js.map → option-DVSXUJ96.js.map} +1 -1
  214. package/dist/option.cjs +1 -1
  215. package/dist/option.js +1 -1
  216. package/dist/{payment-card-form-DDTO5_AA.js → payment-card-form-CTjgVoJK.js} +3 -3
  217. package/dist/{payment-card-form-DDTO5_AA.js.map → payment-card-form-CTjgVoJK.js.map} +1 -1
  218. package/dist/{payment-card-form-UWbAYNPR.cjs → payment-card-form-R5wNWHAv.cjs} +2 -2
  219. package/dist/{payment-card-form-UWbAYNPR.cjs.map → payment-card-form-R5wNWHAv.cjs.map} +1 -1
  220. package/dist/{radio-button-wWoxPDfq.js → radio-button-BDAW1Euc.js} +2 -2
  221. package/dist/{radio-button-wWoxPDfq.js.map → radio-button-BDAW1Euc.js.map} +1 -1
  222. package/dist/{radio-button-BykiVxTD.cjs → radio-button-Cg1JobXT.cjs} +2 -2
  223. package/dist/{radio-button-BykiVxTD.cjs.map → radio-button-Cg1JobXT.cjs.map} +1 -1
  224. package/dist/radio-group.cjs +1 -1
  225. package/dist/radio-group.js +1 -1
  226. package/dist/{schmancy-steps-container-ByO98z7L.js → schmancy-steps-container--d7VK-QR.js} +2 -2
  227. package/dist/{schmancy-steps-container-ByO98z7L.js.map → schmancy-steps-container--d7VK-QR.js.map} +1 -1
  228. package/dist/{schmancy-steps-container-B1mIGa9M.cjs → schmancy-steps-container-BAPIxl4s.cjs} +2 -2
  229. package/dist/{schmancy-steps-container-B1mIGa9M.cjs.map → schmancy-steps-container-BAPIxl4s.cjs.map} +1 -1
  230. package/dist/{select-DE57Nios.cjs → select-CnjO7DLl.cjs} +2 -2
  231. package/dist/{select-DE57Nios.cjs.map → select-CnjO7DLl.cjs.map} +1 -1
  232. package/dist/{select-BIOhocL7.js → select-DfbOOZtm.js} +3 -3
  233. package/dist/{select-BIOhocL7.js.map → select-DfbOOZtm.js.map} +1 -1
  234. package/dist/select.cjs +1 -1
  235. package/dist/select.js +1 -1
  236. package/dist/{sheet-Dh4MLVsU.js → sheet-DhbKM9gJ.js} +3 -3
  237. package/dist/{sheet-Dh4MLVsU.js.map → sheet-DhbKM9gJ.js.map} +1 -1
  238. package/dist/{sheet-fZYAWGsm.cjs → sheet-Ds0Fp0lM.cjs} +2 -2
  239. package/dist/{sheet-fZYAWGsm.cjs.map → sheet-Ds0Fp0lM.cjs.map} +1 -1
  240. package/dist/sheet.cjs +1 -1
  241. package/dist/sheet.js +1 -1
  242. package/dist/{slider-DVlJoDgU.js → slider-Ba3AEh2W.js} +3 -3
  243. package/dist/{slider-DVlJoDgU.js.map → slider-Ba3AEh2W.js.map} +1 -1
  244. package/dist/{slider-CejrdmPF.cjs → slider-CSOzhUhA.cjs} +2 -2
  245. package/dist/{slider-CejrdmPF.cjs.map → slider-CSOzhUhA.cjs.map} +1 -1
  246. package/dist/slider.cjs +1 -1
  247. package/dist/slider.js +1 -1
  248. package/dist/{spinner-DbTnai_Q.js → spinner-BgeQqlFU.js} +3 -3
  249. package/dist/{spinner-DbTnai_Q.js.map → spinner-BgeQqlFU.js.map} +1 -1
  250. package/dist/{spinner-DxVJ7QJZ.cjs → spinner-llMfjiIc.cjs} +2 -2
  251. package/dist/{spinner-DxVJ7QJZ.cjs.map → spinner-llMfjiIc.cjs.map} +1 -1
  252. package/dist/steps.cjs +1 -1
  253. package/dist/steps.js +1 -1
  254. package/dist/surface-CT2g8fDM.cjs +92 -0
  255. package/dist/surface-CT2g8fDM.cjs.map +1 -0
  256. package/dist/surface-UcsAmLj5.js +113 -0
  257. package/dist/surface-UcsAmLj5.js.map +1 -0
  258. package/dist/surface.cjs +1 -1
  259. package/dist/surface.js +1 -1
  260. package/dist/{table-CBhyHINV.cjs → table-CSBhQ-pa.cjs} +4 -4
  261. package/dist/{table-CBhyHINV.cjs.map → table-CSBhQ-pa.cjs.map} +1 -1
  262. package/dist/{table-CqUv1TOC.js → table-DuUlrDCu.js} +72 -68
  263. package/dist/{table-CqUv1TOC.js.map → table-DuUlrDCu.js.map} +1 -1
  264. package/dist/table.cjs +1 -1
  265. package/dist/table.js +1 -1
  266. package/dist/{tabs-compatibility-DUo2f_sV.js → tabs-compatibility-BVFHArgV.js} +2 -2
  267. package/dist/{tabs-compatibility-DUo2f_sV.js.map → tabs-compatibility-BVFHArgV.js.map} +1 -1
  268. package/dist/{tabs-compatibility-DPD6jfGF.cjs → tabs-compatibility-Bt3coGzN.cjs} +2 -2
  269. package/dist/{tabs-compatibility-DPD6jfGF.cjs.map → tabs-compatibility-Bt3coGzN.cjs.map} +1 -1
  270. package/dist/tabs.cjs +1 -1
  271. package/dist/tabs.js +1 -1
  272. package/dist/tailwind.mixin-C71e_LC1.js +43 -0
  273. package/dist/{tailwind.mixin-Di7KWye7.js.map → tailwind.mixin-C71e_LC1.js.map} +1 -1
  274. package/dist/tailwind.mixin-CFCJhe5p.cjs +2 -0
  275. package/dist/{tailwind.mixin-Dm5QDZav.cjs.map → tailwind.mixin-CFCJhe5p.cjs.map} +1 -1
  276. package/dist/teleport.cjs +1 -1
  277. package/dist/teleport.js +1 -1
  278. package/dist/{textarea-Dbz18REy.js → textarea-B8eIpYa-.js} +2 -2
  279. package/dist/{textarea-Dbz18REy.js.map → textarea-B8eIpYa-.js.map} +1 -1
  280. package/dist/{textarea-CesFdBkm.cjs → textarea-CtCk_1Fq.cjs} +2 -2
  281. package/dist/{textarea-CesFdBkm.cjs.map → textarea-CtCk_1Fq.cjs.map} +1 -1
  282. package/dist/textarea.cjs +1 -1
  283. package/dist/textarea.js +1 -1
  284. package/dist/{theme-button-Bt2OV4iu.cjs → theme-button-DQe5uOxU.cjs} +2 -2
  285. package/dist/{theme-button-Bt2OV4iu.cjs.map → theme-button-DQe5uOxU.cjs.map} +1 -1
  286. package/dist/{theme-button-lqbT2_LL.js → theme-button-TEzhKUy6.js} +2 -2
  287. package/dist/{theme-button-lqbT2_LL.js.map → theme-button-TEzhKUy6.js.map} +1 -1
  288. package/dist/theme-button.cjs +1 -1
  289. package/dist/theme-button.js +1 -1
  290. package/dist/theme.cjs +1 -1
  291. package/dist/{theme.component-BlBaN7d6.cjs → theme.component-Be6M74nN.cjs} +3 -3
  292. package/dist/{theme.component-BlBaN7d6.cjs.map → theme.component-Be6M74nN.cjs.map} +1 -1
  293. package/dist/{theme.component-xarFSe8p.js → theme.component-DiTpToTC.js} +2 -2
  294. package/dist/{theme.component-xarFSe8p.js.map → theme.component-DiTpToTC.js.map} +1 -1
  295. package/dist/theme.js +1 -1
  296. package/dist/{timezone-VUMRmZaJ.cjs → timezone-C1aR24i0.cjs} +2 -2
  297. package/dist/{timezone-VUMRmZaJ.cjs.map → timezone-C1aR24i0.cjs.map} +1 -1
  298. package/dist/{timezone-DwT_pQrj.js → timezone-CBSuTrU2.js} +3 -3
  299. package/dist/{timezone-DwT_pQrj.js.map → timezone-CBSuTrU2.js.map} +1 -1
  300. package/dist/{tooltip-BKOHVCMK.js → tooltip-DYQW9R3I.js} +2 -2
  301. package/dist/{tooltip-BKOHVCMK.js.map → tooltip-DYQW9R3I.js.map} +1 -1
  302. package/dist/{tooltip-Cvoroe7w.cjs → tooltip-DYcXTtFy.cjs} +2 -2
  303. package/dist/{tooltip-Cvoroe7w.cjs.map → tooltip-DYcXTtFy.cjs.map} +1 -1
  304. package/dist/tooltip.cjs +1 -1
  305. package/dist/tooltip.js +1 -1
  306. package/dist/{tree-Cyp2AZ8g.cjs → tree-D-rTjnPs.cjs} +2 -2
  307. package/dist/{tree-Cyp2AZ8g.cjs.map → tree-D-rTjnPs.cjs.map} +1 -1
  308. package/dist/{tree-_FJnHVmP.js → tree-nsSIkdNT.js} +2 -2
  309. package/dist/{tree-_FJnHVmP.js.map → tree-nsSIkdNT.js.map} +1 -1
  310. package/dist/tree.cjs +1 -1
  311. package/dist/tree.js +1 -1
  312. package/dist/{typewriter-BIm2tOe4.cjs → typewriter-Cj0R-RDa.cjs} +2 -2
  313. package/dist/{typewriter-BIm2tOe4.cjs.map → typewriter-Cj0R-RDa.cjs.map} +1 -1
  314. package/dist/{typewriter-DWfXPBni.js → typewriter-DrYb6_FB.js} +22 -22
  315. package/dist/{typewriter-DWfXPBni.js.map → typewriter-DrYb6_FB.js.map} +1 -1
  316. package/dist/typewriter.cjs +1 -1
  317. package/dist/typewriter.js +1 -1
  318. package/dist/{typography-OpLt6LNd.cjs → typography-B0Kj2XoC.cjs} +2 -2
  319. package/dist/{typography-OpLt6LNd.cjs.map → typography-B0Kj2XoC.cjs.map} +1 -1
  320. package/dist/{typography-DaKLzjFB.js → typography-DMj2H_lZ.js} +2 -2
  321. package/dist/{typography-DaKLzjFB.js.map → typography-DMj2H_lZ.js.map} +1 -1
  322. package/dist/typography.cjs +1 -1
  323. package/dist/typography.js +1 -1
  324. package/dist/utils-BqFGvnN9.cjs +2 -0
  325. package/dist/utils-BqFGvnN9.cjs.map +1 -0
  326. package/dist/utils-jduntaQU.js +128 -0
  327. package/dist/utils-jduntaQU.js.map +1 -0
  328. package/package.json +14 -14
  329. package/types/src/area/area.component.d.ts +1 -1
  330. package/types/src/area/area.service.d.ts +72 -5
  331. package/types/src/area/index.d.ts +1 -0
  332. package/types/src/area/router.types.d.ts +41 -2
  333. package/types/src/area/utils.d.ts +91 -1
  334. package/types/src/checkbox/checkbox.d.ts +9 -0
  335. package/types/src/circular-progress/circular-progress.d.ts +15 -0
  336. package/types/src/circular-progress/index.d.ts +1 -0
  337. package/types/src/dialog/dailog.d.ts +8 -0
  338. package/types/src/dialog/dialog-service.d.ts +1 -0
  339. package/types/src/index.d.ts +1 -0
  340. package/types/src/table/table.d.ts +1 -0
  341. package/dist/area.component-CZELEuMj.js +0 -107
  342. package/dist/area.component-CZELEuMj.js.map +0 -1
  343. package/dist/area.component-grRkXEse.cjs +0 -8
  344. package/dist/area.component-grRkXEse.cjs.map +0 -1
  345. package/dist/avatar-WAIlaNJg.js.map +0 -1
  346. package/dist/avatar-s-2jSsaH.cjs.map +0 -1
  347. package/dist/dialog-content-9pumpyLD.js.map +0 -1
  348. package/dist/dialog-content-qj1E8aye.cjs.map +0 -1
  349. package/dist/surface-BTuzKmT2.cjs +0 -20
  350. package/dist/surface-BTuzKmT2.cjs.map +0 -1
  351. package/dist/surface-DXx1bJN4.js +0 -43
  352. package/dist/surface-DXx1bJN4.js.map +0 -1
  353. package/dist/tailwind.mixin-Di7KWye7.js +0 -43
  354. package/dist/tailwind.mixin-Dm5QDZav.cjs +0 -2
@@ -0,0 +1,167 @@
1
+ # Schmancy Input - AI Reference
2
+
3
+ ```js
4
+ // Text Input
5
+ <schmancy-input
6
+ name="field-name"
7
+ label="Field Label"
8
+ value="initial value"
9
+ type="text|password|email|number|tel|url|search|date"
10
+ placeholder="Placeholder text"
11
+ required?
12
+ disabled?
13
+ readonly?
14
+ error="Error message"
15
+ success?
16
+ size="small|medium|large"
17
+ @input=${handleInput}
18
+ @change=${handleChange}
19
+ @focus=${handleFocus}
20
+ @blur=${handleBlur}>
21
+ </schmancy-input>
22
+
23
+ // Input v2 (enhanced version with formatting and validation)
24
+ <schmancy-input-v2
25
+ name="field-name"
26
+ label="Field Label"
27
+ value="initial value"
28
+ type="text|password|email|number|tel|url|search|date"
29
+ placeholder="Placeholder text"
30
+ required?
31
+ disabled?
32
+ readonly?
33
+ error="Error message"
34
+ success?
35
+ size="small|medium|large"
36
+ .format=${(value) => formattedValue}
37
+ .parse=${(displayValue) => parsedValue}
38
+ .validate=${(value) => errorMessage}
39
+ @input=${handleInput}
40
+ @change=${handleChange}>
41
+ </schmancy-input-v2>
42
+
43
+ // Input Methods
44
+ input.focus() -> void
45
+ input.blur() -> void
46
+ input.validate() -> boolean
47
+ input.setCustomValidity(message) -> void
48
+ input.select() -> void
49
+
50
+ // Events
51
+ @input // { target: { value: string } }
52
+ @change // { target: { value: string } }
53
+ @focus // { target: HTMLElement }
54
+ @blur // { target: HTMLElement }
55
+
56
+ // Examples
57
+ // 1. Basic input with validation
58
+ <schmancy-input
59
+ name="email"
60
+ label="Email Address"
61
+ type="email"
62
+ required
63
+ placeholder="Enter your email"
64
+ @change=${(e) => console.log(e.target.value)}>
65
+ </schmancy-input>
66
+
67
+ // 2. Input with currency formatting
68
+ <schmancy-input-v2
69
+ name="amount"
70
+ label="Amount"
71
+ type="number"
72
+ .format=${(value) => `$${value.toFixed(2)}`}
73
+ .parse=${(value) => parseFloat(value.replace('$', ''))}
74
+ .validate=${(value) => value < 0 ? 'Amount must be positive' : ''}>
75
+ </schmancy-input-v2>
76
+
77
+ // 3. Input with prefix/suffix
78
+ <schmancy-input label="Price">
79
+ <span slot="prefix">$</span>
80
+ <span slot="suffix">.00</span>
81
+ </schmancy-input>
82
+
83
+ // 4. Input with icons
84
+ <schmancy-input label="Search">
85
+ <schmancy-icon slot="prefix" icon="search"></schmancy-icon>
86
+ <schmancy-icon slot="suffix" icon="close" @click=${clearInput}></schmancy-icon>
87
+ </schmancy-input>
88
+ ```
89
+
90
+ ## Related Components
91
+ - **[Form](./form.md)**: Container for input and other form components
92
+ - **[Textarea](./textarea.md)**: Multi-line text input fields
93
+ - **[Icons](./icons.md)**: Can be used within input slots
94
+ - **[Autocomplete](./autocomplete.md)**: Extended input with suggestions
95
+
96
+ ## Technical Details
97
+
98
+ ### Slots
99
+ ```html
100
+ prefix: Content displayed before the input field
101
+ suffix: Content displayed after the input field
102
+ ```
103
+
104
+ ### CSS Custom Properties
105
+ ```css
106
+ --schmancy-input-height: /* Controls the input height */
107
+ --schmancy-input-border-color: /* Controls the border color */
108
+ --schmancy-input-focus-color: /* Controls the focus color */
109
+ --schmancy-input-error-color: /* Controls the error state color */
110
+ --schmancy-input-success-color: /* Controls the success state color */
111
+ --schmancy-input-font-size: /* Controls the font size */
112
+ ```
113
+
114
+ ### Input v2 Interfaces
115
+ ```typescript
116
+ interface InputValidator {
117
+ (value: any): string | null;
118
+ }
119
+
120
+ interface InputFormatter {
121
+ (value: any): string;
122
+ }
123
+
124
+ interface InputParser {
125
+ (displayValue: string): any;
126
+ }
127
+ ```
128
+
129
+ ### Common Use Cases
130
+
131
+ 1. **Password input with toggle visibility**
132
+ ```html
133
+ <schmancy-input
134
+ type="password"
135
+ label="Password"
136
+ name="password">
137
+ <schmancy-icon
138
+ slot="suffix"
139
+ icon="eye"
140
+ @click=${togglePasswordVisibility}>
141
+ </schmancy-icon>
142
+ </schmancy-input>
143
+ ```
144
+
145
+ 2. **Validating email format**
146
+ ```html
147
+ <schmancy-input-v2
148
+ type="email"
149
+ label="Email"
150
+ name="email"
151
+ .validate=${value => {
152
+ const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
153
+ return emailRegex.test(value) ? '' : 'Please enter a valid email';
154
+ }}>
155
+ </schmancy-input-v2>
156
+ ```
157
+
158
+ 3. **Input with character count**
159
+ ```html
160
+ <schmancy-input
161
+ label="Message"
162
+ name="message"
163
+ maxlength="100"
164
+ @input=${e => updateCharCount(e.target.value.length)}>
165
+ <span slot="suffix" id="charCount">0/100</span>
166
+ </schmancy-input>
167
+ ```
@@ -0,0 +1,166 @@
1
+ # Schmancy Layout - AI Reference
2
+
3
+ ```js
4
+ // Grid Layout
5
+ <schmancy-grid
6
+ columns="3" // Number of columns or template
7
+ rows="auto" // Number of rows or template
8
+ gap="16px" // Gap between items
9
+ column-gap="16px" // Column-specific gap
10
+ row-gap="16px" // Row-specific gap
11
+ justify-items="start|center|end|stretch"
12
+ align-items="start|center|end|stretch"
13
+ justify-content="start|center|end|space-between|space-around|space-evenly"
14
+ align-content="start|center|end|space-between|space-around|space-evenly">
15
+
16
+ <div>Item 1</div>
17
+ <div>Item 2</div>
18
+ <div>Item 3</div>
19
+ </schmancy-grid>
20
+
21
+ // Advanced grid with template
22
+ <schmancy-grid
23
+ columns="repeat(12, 1fr)"
24
+ rows="auto auto 1fr"
25
+ template-areas="
26
+ 'header header header header'
27
+ 'sidebar content content content'
28
+ 'footer footer footer footer'
29
+ ">
30
+ <div style="grid-area: header">Header</div>
31
+ <div style="grid-area: sidebar">Sidebar</div>
32
+ <div style="grid-area: content">Content</div>
33
+ <div style="grid-area: footer">Footer</div>
34
+ </schmancy-grid>
35
+
36
+ // Flex Layout
37
+ <schmancy-flex
38
+ direction="row|column|row-reverse|column-reverse"
39
+ wrap="nowrap|wrap|wrap-reverse"
40
+ justify-content="start|center|end|space-between|space-around|space-evenly"
41
+ align-items="start|center|end|stretch|baseline"
42
+ align-content="start|center|end|space-between|space-around|space-evenly"
43
+ gap="16px" // Gap between items
44
+ column-gap="16px" // Column-specific gap
45
+ row-gap="16px"> // Row-specific gap
46
+
47
+ <div>Item 1</div>
48
+ <div>Item 2</div>
49
+ <div style="flex: 1">Flexible Item</div>
50
+ </schmancy-flex>
51
+
52
+ // Responsive layouts (using attributes)
53
+ <schmancy-grid
54
+ columns="1"
55
+ columns-md="2"
56
+ columns-lg="3"
57
+ columns-xl="4"
58
+ gap="8px"
59
+ gap-md="16px"
60
+ gap-lg="24px">
61
+
62
+ <!-- Content -->
63
+ </schmancy-grid>
64
+
65
+ <schmancy-flex
66
+ direction="column"
67
+ direction-md="row"
68
+ align-items="center"
69
+ justify-content-md="space-between">
70
+
71
+ <!-- Content -->
72
+ </schmancy-flex>
73
+
74
+ // Scroll Container
75
+ <schmancy-scroll
76
+ direction="vertical|horizontal|both"
77
+ scrollbar="auto|always|hover|none">
78
+
79
+ <!-- Scrollable content -->
80
+ </schmancy-scroll>
81
+
82
+ // Layout v2 Components (enhanced versions)
83
+ <schmancy-flex-v2
84
+ display="flex|inline-flex"
85
+ direction="row|column"
86
+ wrap="nowrap|wrap|wrap-reverse"
87
+ justify="flex-start|flex-end|center|space-between|space-around|space-evenly"
88
+ items="flex-start|flex-end|center|stretch|baseline"
89
+ content="flex-start|flex-end|center|space-between|space-around|space-evenly"
90
+ gap="none|xs|sm|md|lg|xl">
91
+
92
+ <!-- Content -->
93
+ </schmancy-flex-v2>
94
+
95
+ <schmancy-grid-v2
96
+ display="grid|inline-grid"
97
+ template-columns="1fr 1fr|repeat(3, 1fr)"
98
+ template-rows="auto|1fr auto"
99
+ template-areas="'header header' 'sidebar content' 'footer footer'"
100
+ gap="none|xs|sm|md|lg|xl"
101
+ justify-content="start|end|center|stretch|space-around|space-between|space-evenly"
102
+ align-content="start|end|center|stretch|space-around|space-between|space-evenly"
103
+ justify-items="start|end|center|stretch"
104
+ align-items="start|end|center|stretch">
105
+
106
+ <!-- Content -->
107
+ </schmancy-grid-v2>
108
+
109
+ // Examples
110
+ // Responsive grid layout
111
+ <schmancy-grid
112
+ columns="1"
113
+ columns-md="2"
114
+ columns-lg="4"
115
+ gap="16px">
116
+ <div>Card 1</div>
117
+ <div>Card 2</div>
118
+ <div>Card 3</div>
119
+ <div>Card 4</div>
120
+ </schmancy-grid>
121
+
122
+ // Flex layout for a form
123
+ <schmancy-flex
124
+ direction="column"
125
+ gap="16px">
126
+ <h2>Contact Form</h2>
127
+ <schmancy-input label="Name"></schmancy-input>
128
+ <schmancy-input label="Email"></schmancy-input>
129
+ <schmancy-textarea label="Message"></schmancy-textarea>
130
+
131
+ <schmancy-flex
132
+ direction="row"
133
+ justify-content="end"
134
+ gap="8px">
135
+ <schmancy-button kind="secondary">Cancel</schmancy-button>
136
+ <schmancy-button kind="primary">Submit</schmancy-button>
137
+ </schmancy-flex>
138
+ </schmancy-flex>
139
+
140
+ // App layout with header, sidebar and content
141
+ <schmancy-grid
142
+ style="height: 100vh"
143
+ template-areas="
144
+ 'header header'
145
+ 'sidebar content'
146
+ "
147
+ template-rows="64px 1fr"
148
+ template-columns="250px 1fr">
149
+
150
+ <div style="grid-area: header">
151
+ <schmancy-appbar>App Title</schmancy-appbar>
152
+ </div>
153
+
154
+ <div style="grid-area: sidebar">
155
+ <schmancy-list>
156
+ <schmancy-list-item>Dashboard</schmancy-list-item>
157
+ <schmancy-list-item>Settings</schmancy-list-item>
158
+ <schmancy-list-item>Profile</schmancy-list-item>
159
+ </schmancy-list>
160
+ </div>
161
+
162
+ <schmancy-scroll style="grid-area: content">
163
+ <!-- Main content -->
164
+ </schmancy-scroll>
165
+ </schmancy-grid>
166
+ ```
@@ -0,0 +1,145 @@
1
+ # Schmancy List - AI Reference
2
+
3
+ ```js
4
+ // Basic List
5
+ <schmancy-list>
6
+ <schmancy-list-item>Item 1</schmancy-list-item>
7
+ <schmancy-list-item>Item 2</schmancy-list-item>
8
+ <schmancy-list-item>Item 3</schmancy-list-item>
9
+ </schmancy-list>
10
+
11
+ // List Options
12
+ <schmancy-list
13
+ size="small|medium|large"
14
+ dividers? // Show dividers between items
15
+ interactive? // Enable hover and focus states
16
+ dense? // More compact appearance
17
+ @select=${handleSelect}>
18
+ <!-- List items -->
19
+ </schmancy-list>
20
+
21
+ // List Item Options
22
+ <schmancy-list-item
23
+ value="item-value" // Value for selection
24
+ disabled? // Disabled state
25
+ selected? // Selected state
26
+ compact? // Compact appearance
27
+ clickable? // Makes item clickable (implied if interactive list)
28
+ @click=${handleClick}>
29
+
30
+ <!-- Content structure -->
31
+ <div slot="start">
32
+ <schmancy-icon icon="home"></schmancy-icon>
33
+ </div>
34
+
35
+ <div slot="main">
36
+ <div>Primary Text</div>
37
+ <div>Secondary Text</div>
38
+ </div>
39
+
40
+ <div slot="end">
41
+ <schmancy-badge>42</schmancy-badge>
42
+ </div>
43
+ </schmancy-list-item>
44
+
45
+ // List Events
46
+ @select // Fires when item is selected, with { detail: { value, item } }
47
+ @action // Fires when action is triggered, with { detail: { action, value, item } }
48
+
49
+ // List Context
50
+ // For creating controlled lists and handling selection
51
+ import { ListContext } from 'schmancy/list';
52
+
53
+ const listContext = new ListContext({
54
+ selectable: true, // Enable selection
55
+ multiple: false, // Allow multiple selection
56
+ selected: [], // Initial selected values
57
+ onSelect: handleSelect // Selection handler
58
+ });
59
+
60
+ // Examples
61
+ // Simple navigation list
62
+ <schmancy-list interactive>
63
+ <schmancy-list-item>
64
+ <schmancy-icon slot="start" icon="home"></schmancy-icon>
65
+ Dashboard
66
+ </schmancy-list-item>
67
+ <schmancy-list-item>
68
+ <schmancy-icon slot="start" icon="settings"></schmancy-icon>
69
+ Settings
70
+ </schmancy-list-item>
71
+ <schmancy-list-item>
72
+ <schmancy-icon slot="start" icon="person"></schmancy-icon>
73
+ Profile
74
+ </schmancy-list-item>
75
+ </schmancy-list>
76
+
77
+ // Selectable list
78
+ <schmancy-list
79
+ interactive
80
+ @select=${(e) => console.log('Selected:', e.detail.value)}>
81
+
82
+ <schmancy-list-item value="item1">
83
+ <div slot="main">
84
+ <div>Item One</div>
85
+ <div>Description for item one</div>
86
+ </div>
87
+ </schmancy-list-item>
88
+
89
+ <schmancy-list-item value="item2">
90
+ <div slot="main">
91
+ <div>Item Two</div>
92
+ <div>Description for item two</div>
93
+ </div>
94
+ <div slot="end">
95
+ <schmancy-badge>New</schmancy-badge>
96
+ </div>
97
+ </schmancy-list-item>
98
+
99
+ <schmancy-list-item value="item3" disabled>
100
+ <div slot="main">
101
+ <div>Item Three (Disabled)</div>
102
+ <div>Cannot be selected</div>
103
+ </div>
104
+ </schmancy-list-item>
105
+ </schmancy-list>
106
+
107
+ // Dynamic list from data
108
+ <schmancy-list>
109
+ ${items.map(item => html`
110
+ <schmancy-list-item value=${item.id}>
111
+ ${item.icon ? html`
112
+ <schmancy-icon slot="start" icon=${item.icon}></schmancy-icon>
113
+ ` : ''}
114
+
115
+ <div slot="main">
116
+ <div>${item.primary}</div>
117
+ ${item.secondary ? html`<div>${item.secondary}</div>` : ''}
118
+ </div>
119
+
120
+ ${item.badge ? html`
121
+ <div slot="end">
122
+ <schmancy-badge>${item.badge}</schmancy-badge>
123
+ </div>
124
+ ` : ''}
125
+ </schmancy-list-item>
126
+ `)}
127
+ </schmancy-list>
128
+
129
+ // List with context (controlled selection)
130
+ const selectedItems = ['item2'];
131
+
132
+ <schmancy-list .context=${new ListContext({
133
+ selectable: true,
134
+ multiple: true,
135
+ selected: selectedItems,
136
+ onSelect: (values) => {
137
+ selectedItems = values;
138
+ console.log('Selected items:', values);
139
+ }
140
+ })}>
141
+ <schmancy-list-item value="item1">Item 1</schmancy-list-item>
142
+ <schmancy-list-item value="item2">Item 2</schmancy-list-item>
143
+ <schmancy-list-item value="item3">Item 3</schmancy-list-item>
144
+ </schmancy-list>
145
+ ```
@@ -0,0 +1,217 @@
1
+ # Schmancy Menu - AI Reference
2
+
3
+ ```js
4
+ // Basic Menu
5
+ <schmancy-menu @select=${handleSelect}>
6
+ <schmancy-menu-item value="item1">Item 1</schmancy-menu-item>
7
+ <schmancy-menu-item value="item2">Item 2</schmancy-menu-item>
8
+ <schmancy-menu-item value="item3" disabled>Item 3</schmancy-menu-item>
9
+ <schmancy-divider></schmancy-divider>
10
+ <schmancy-menu-item value="item4">Item 4</schmancy-menu-item>
11
+ </schmancy-menu>
12
+
13
+ // Menu with icons
14
+ <schmancy-menu>
15
+ <schmancy-menu-item value="copy">
16
+ <schmancy-icon slot="prefix" icon="copy"></schmancy-icon>
17
+ Copy
18
+ </schmancy-menu-item>
19
+
20
+ <schmancy-menu-item value="cut">
21
+ <schmancy-icon slot="prefix" icon="scissors"></schmancy-icon>
22
+ Cut
23
+ </schmancy-menu-item>
24
+
25
+ <schmancy-menu-item value="paste">
26
+ <schmancy-icon slot="prefix" icon="clipboard"></schmancy-icon>
27
+ Paste
28
+ </schmancy-menu-item>
29
+ </schmancy-menu>
30
+
31
+ // Menu with checkable items
32
+ <schmancy-menu multiple>
33
+ <schmancy-menu-item value="bold" checkable>
34
+ <schmancy-icon slot="prefix" icon="bold"></schmancy-icon>
35
+ Bold
36
+ </schmancy-menu-item>
37
+
38
+ <schmancy-menu-item value="italic" checkable>
39
+ <schmancy-icon slot="prefix" icon="italic"></schmancy-icon>
40
+ Italic
41
+ </schmancy-menu-item>
42
+
43
+ <schmancy-menu-item value="underline" checkable>
44
+ <schmancy-icon slot="prefix" icon="underline"></schmancy-icon>
45
+ Underline
46
+ </schmancy-menu-item>
47
+ </schmancy-menu>
48
+
49
+ // Menu in a dropdown
50
+ <schmancy-dropdown>
51
+ <schmancy-button slot="trigger">
52
+ Options
53
+ </schmancy-button>
54
+
55
+ <schmancy-menu slot="content" @select=${handleMenuSelect}>
56
+ <schmancy-menu-item value="edit">Edit</schmancy-menu-item>
57
+ <schmancy-menu-item value="duplicate">Duplicate</schmancy-menu-item>
58
+ <schmancy-menu-item value="archive">Archive</schmancy-menu-item>
59
+ <schmancy-divider></schmancy-divider>
60
+ <schmancy-menu-item value="delete" variant="danger">Delete</schmancy-menu-item>
61
+ </schmancy-menu>
62
+ </schmancy-dropdown>
63
+
64
+ // Menu Properties
65
+ multiple: boolean // Allow selecting multiple items
66
+ value: string|string[] // Selected item value(s)
67
+ size: string // Size: "small", "medium", "large"
68
+ dense: boolean // More compact appearance
69
+
70
+ // Menu Item Properties
71
+ value: string // Value for selection
72
+ disabled: boolean // Disable the item
73
+ selected: boolean // Whether the item is selected
74
+ checkable: boolean // Show checkbox/radio indicator
75
+ checked: boolean // Checked state for checkable items
76
+ variant: string // Variant: "default", "primary", "danger", etc.
77
+
78
+ // Menu Events
79
+ @select // Fires when item is selected, with { detail: { value, item } }
80
+ @change // Fires when selection changes, with { detail: { value } }
81
+
82
+ // Examples
83
+ // Context menu
84
+ <schmancy-dropdown>
85
+ <div
86
+ slot="trigger"
87
+ @contextmenu=${(e) => {
88
+ e.preventDefault();
89
+ dropdown.open({ x: e.clientX, y: e.clientY });
90
+ }}
91
+ style="width: 300px; height: 200px; border: 1px dashed #ccc; display: flex; align-items: center; justify-content: center;">
92
+ Right-click me
93
+ </div>
94
+
95
+ <schmancy-menu slot="content" @select=${handleContextMenuSelect}>
96
+ <schmancy-menu-item value="view">
97
+ <schmancy-icon slot="prefix" icon="eye"></schmancy-icon>
98
+ View
99
+ </schmancy-menu-item>
100
+
101
+ <schmancy-menu-item value="edit">
102
+ <schmancy-icon slot="prefix" icon="edit"></schmancy-icon>
103
+ Edit
104
+ </schmancy-menu-item>
105
+
106
+ <schmancy-menu-item value="share">
107
+ <schmancy-icon slot="prefix" icon="share"></schmancy-icon>
108
+ Share
109
+ <schmancy-icon slot="suffix" icon="external-link"></schmancy-icon>
110
+ </schmancy-menu-item>
111
+
112
+ <schmancy-divider></schmancy-divider>
113
+
114
+ <schmancy-menu-item value="delete" variant="danger">
115
+ <schmancy-icon slot="prefix" icon="trash"></schmancy-icon>
116
+ Delete
117
+ </schmancy-menu-item>
118
+ </schmancy-menu>
119
+ </schmancy-dropdown>
120
+
121
+ // Multi-select menu
122
+ <schmancy-menu
123
+ multiple
124
+ .value=${selectedOptions}
125
+ @change=${(e) => selectedOptions = e.detail.value}>
126
+
127
+ <schmancy-menu-item value="wifi" checkable>
128
+ <schmancy-icon slot="prefix" icon="wifi"></schmancy-icon>
129
+ Wi-Fi
130
+ </schmancy-menu-item>
131
+
132
+ <schmancy-menu-item value="bluetooth" checkable>
133
+ <schmancy-icon slot="prefix" icon="bluetooth"></schmancy-icon>
134
+ Bluetooth
135
+ </schmancy-menu-item>
136
+
137
+ <schmancy-menu-item value="airplane" checkable>
138
+ <schmancy-icon slot="prefix" icon="airplane"></schmancy-icon>
139
+ Airplane Mode
140
+ </schmancy-menu-item>
141
+
142
+ <schmancy-menu-item value="location" checkable>
143
+ <schmancy-icon slot="prefix" icon="map-pin"></schmancy-icon>
144
+ Location
145
+ </schmancy-menu-item>
146
+ </schmancy-menu>
147
+
148
+ // Menu with keyboard shortcuts
149
+ <schmancy-menu>
150
+ <schmancy-menu-item value="new">
151
+ <schmancy-icon slot="prefix" icon="file"></schmancy-icon>
152
+ New File
153
+ <span slot="suffix">Ctrl+N</span>
154
+ </schmancy-menu-item>
155
+
156
+ <schmancy-menu-item value="open">
157
+ <schmancy-icon slot="prefix" icon="folder-open"></schmancy-icon>
158
+ Open...
159
+ <span slot="suffix">Ctrl+O</span>
160
+ </schmancy-menu-item>
161
+
162
+ <schmancy-menu-item value="save">
163
+ <schmancy-icon slot="prefix" icon="save"></schmancy-icon>
164
+ Save
165
+ <span slot="suffix">Ctrl+S</span>
166
+ </schmancy-menu-item>
167
+
168
+ <schmancy-menu-item value="saveAs">
169
+ <schmancy-icon slot="prefix" icon="save"></schmancy-icon>
170
+ Save As...
171
+ <span slot="suffix">Ctrl+Shift+S</span>
172
+ </schmancy-menu-item>
173
+
174
+ <schmancy-divider></schmancy-divider>
175
+
176
+ <schmancy-menu-item value="exit">
177
+ <schmancy-icon slot="prefix" icon="x"></schmancy-icon>
178
+ Exit
179
+ <span slot="suffix">Alt+F4</span>
180
+ </schmancy-menu-item>
181
+ </schmancy-menu>
182
+
183
+ // Menu with nested items (using dropdown)
184
+ <schmancy-menu>
185
+ <schmancy-menu-item value="file">File</schmancy-menu-item>
186
+ <schmancy-menu-item value="edit">Edit</schmancy-menu-item>
187
+ <schmancy-menu-item value="view">View</schmancy-menu-item>
188
+
189
+ <schmancy-dropdown position="right-start">
190
+ <schmancy-menu-item slot="trigger" value="insert">
191
+ Insert
192
+ <schmancy-icon slot="suffix" icon="chevron-right"></schmancy-icon>
193
+ </schmancy-menu-item>
194
+
195
+ <schmancy-menu slot="content">
196
+ <schmancy-menu-item value="insert-image">
197
+ <schmancy-icon slot="prefix" icon="image"></schmancy-icon>
198
+ Image
199
+ </schmancy-menu-item>
200
+
201
+ <schmancy-menu-item value="insert-table">
202
+ <schmancy-icon slot="prefix" icon="grid"></schmancy-icon>
203
+ Table
204
+ </schmancy-menu-item>
205
+
206
+ <schmancy-menu-item value="insert-chart">
207
+ <schmancy-icon slot="prefix" icon="bar-chart"></schmancy-icon>
208
+ Chart
209
+ </schmancy-menu-item>
210
+ </schmancy-menu>
211
+ </schmancy-dropdown>
212
+
213
+ <schmancy-menu-item value="format">Format</schmancy-menu-item>
214
+ <schmancy-menu-item value="tools">Tools</schmancy-menu-item>
215
+ <schmancy-menu-item value="help">Help</schmancy-menu-item>
216
+ </schmancy-menu>
217
+ ```