kemet-ui 4.0.2 → 5.0.0

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 (859) hide show
  1. package/custom-elements.json +6495 -6487
  2. package/dist/constants-W9QKPlZP.d.ts +563 -0
  3. package/dist/elements/accordion/index.d.ts +58 -0
  4. package/dist/elements/accordion/index.js +191 -0
  5. package/dist/elements/accordion/index.js.map +1 -0
  6. package/dist/elements/accordion/styles.css.d.ts +5 -0
  7. package/dist/elements/accordion/styles.css.js +10 -0
  8. package/dist/elements/accordion/styles.css.js.map +1 -0
  9. package/dist/elements/accordion-panel/index.d.ts +69 -0
  10. package/dist/elements/accordion-panel/index.js +186 -0
  11. package/dist/elements/accordion-panel/index.js.map +1 -0
  12. package/dist/elements/accordion-panel/styles.css.d.ts +5 -0
  13. package/dist/elements/accordion-panel/styles.css.js +40 -0
  14. package/dist/elements/accordion-panel/styles.css.js.map +1 -0
  15. package/dist/elements/alert/index.d.ts +90 -0
  16. package/dist/elements/alert/index.js +345 -0
  17. package/dist/elements/alert/index.js.map +1 -0
  18. package/dist/elements/alert/styles.css.d.ts +5 -0
  19. package/dist/elements/alert/styles.css.js +195 -0
  20. package/dist/elements/alert/styles.css.js.map +1 -0
  21. package/dist/elements/avatar/index.d.ts +50 -0
  22. package/dist/elements/avatar/index.js +157 -0
  23. package/dist/elements/avatar/index.js.map +1 -0
  24. package/dist/elements/avatar/styles.css.d.ts +5 -0
  25. package/dist/elements/avatar/styles.css.js +70 -0
  26. package/dist/elements/avatar/styles.css.js.map +1 -0
  27. package/dist/elements/avatars/index.d.ts +30 -0
  28. package/dist/elements/avatars/index.js +75 -0
  29. package/dist/elements/avatars/index.js.map +1 -0
  30. package/dist/elements/avatars/styles.css.d.ts +5 -0
  31. package/dist/elements/avatars/styles.css.js +22 -0
  32. package/dist/elements/avatars/styles.css.js.map +1 -0
  33. package/dist/elements/badge/index.d.ts +52 -0
  34. package/dist/elements/badge/index.js +193 -0
  35. package/dist/elements/badge/index.js.map +1 -0
  36. package/dist/elements/badge/styles.css.d.ts +5 -0
  37. package/dist/elements/badge/styles.css.js +98 -0
  38. package/dist/elements/badge/styles.css.js.map +1 -0
  39. package/dist/elements/button/index.d.ts +113 -0
  40. package/dist/elements/button/index.js +541 -0
  41. package/dist/elements/button/index.js.map +1 -0
  42. package/dist/elements/button/styles.css.d.ts +5 -0
  43. package/dist/elements/button/styles.css.js +310 -0
  44. package/dist/elements/button/styles.css.js.map +1 -0
  45. package/dist/elements/card/index.d.ts +76 -0
  46. package/dist/elements/card/index.js +238 -0
  47. package/dist/elements/card/index.js.map +1 -0
  48. package/dist/elements/card/styles.css.d.ts +5 -0
  49. package/dist/elements/card/styles.css.js +145 -0
  50. package/dist/elements/card/styles.css.js.map +1 -0
  51. package/dist/elements/checkbox/index.d.ts +96 -0
  52. package/dist/elements/checkbox/index.js +401 -0
  53. package/dist/elements/checkbox/index.js.map +1 -0
  54. package/dist/elements/checkbox/styles.css.d.ts +5 -0
  55. package/dist/elements/checkbox/styles.css.js +107 -0
  56. package/dist/elements/checkbox/styles.css.js.map +1 -0
  57. package/dist/elements/combo/index.d.ts +4 -0
  58. package/dist/elements/combo/index.js +220 -0
  59. package/dist/elements/combo/index.js.map +1 -0
  60. package/dist/elements/combo/styles.css.d.ts +5 -0
  61. package/dist/elements/combo/styles.css.js +62 -0
  62. package/dist/elements/combo/styles.css.js.map +1 -0
  63. package/dist/elements/count/index.d.ts +4 -0
  64. package/dist/elements/count/index.js +102 -0
  65. package/dist/elements/count/index.js.map +1 -0
  66. package/dist/elements/dialog/effects.css.d.ts +5 -0
  67. package/dist/elements/dialog/effects.css.js +221 -0
  68. package/dist/elements/dialog/effects.css.js.map +1 -0
  69. package/dist/elements/dialog/index.d.ts +86 -0
  70. package/dist/elements/dialog/index.js +489 -0
  71. package/dist/elements/dialog/index.js.map +1 -0
  72. package/dist/elements/dialog/styles.css.d.ts +5 -0
  73. package/dist/elements/dialog/styles.css.js +108 -0
  74. package/dist/elements/dialog/styles.css.js.map +1 -0
  75. package/dist/elements/dialog-close/index.d.ts +35 -0
  76. package/dist/elements/dialog-close/index.js +72 -0
  77. package/dist/elements/dialog-close/index.js.map +1 -0
  78. package/dist/elements/drawer/effects.d.ts +5 -0
  79. package/dist/elements/drawer/effects.js +220 -0
  80. package/dist/elements/drawer/effects.js.map +1 -0
  81. package/dist/elements/drawer/index.d.ts +69 -0
  82. package/dist/elements/drawer/index.js +436 -0
  83. package/dist/elements/drawer/index.js.map +1 -0
  84. package/dist/elements/drawer/styles.css.d.ts +5 -0
  85. package/dist/elements/drawer/styles.css.js +99 -0
  86. package/dist/elements/drawer/styles.css.js.map +1 -0
  87. package/dist/elements/fab/index.d.ts +62 -0
  88. package/dist/elements/fab/index.js +250 -0
  89. package/dist/elements/fab/index.js.map +1 -0
  90. package/dist/elements/fab/styles.css.d.ts +5 -0
  91. package/dist/elements/fab/styles.css.js +142 -0
  92. package/dist/elements/fab/styles.css.js.map +1 -0
  93. package/dist/elements/field/index.d.ts +4 -0
  94. package/dist/elements/field/index.js +183 -0
  95. package/dist/elements/field/index.js.map +1 -0
  96. package/dist/elements/field/styles.css.d.ts +5 -0
  97. package/dist/elements/field/styles.css.js +54 -0
  98. package/dist/elements/field/styles.css.js.map +1 -0
  99. package/dist/elements/flipcard/index.d.ts +66 -0
  100. package/dist/elements/flipcard/index.js +232 -0
  101. package/dist/elements/flipcard/index.js.map +1 -0
  102. package/dist/elements/flipcard/styles.css.d.ts +5 -0
  103. package/dist/elements/flipcard/styles.css.js +98 -0
  104. package/dist/elements/flipcard/styles.css.js.map +1 -0
  105. package/dist/elements/flipcard-trigger/index.d.ts +32 -0
  106. package/dist/elements/flipcard-trigger/index.js +77 -0
  107. package/dist/elements/flipcard-trigger/index.js.map +1 -0
  108. package/dist/elements/icon/index.d.ts +60 -0
  109. package/dist/elements/icon/index.js +241 -0
  110. package/dist/elements/icon/index.js.map +1 -0
  111. package/dist/elements/icon/styles.css.d.ts +5 -0
  112. package/dist/elements/icon/styles.css.js +13 -0
  113. package/dist/elements/icon/styles.css.js.map +1 -0
  114. package/dist/elements/input/index.d.ts +4 -0
  115. package/dist/elements/input/index.js +684 -0
  116. package/dist/elements/input/index.js.map +1 -0
  117. package/dist/elements/input/styles.css.d.ts +5 -0
  118. package/dist/elements/input/styles.css.js +169 -0
  119. package/dist/elements/input/styles.css.js.map +1 -0
  120. package/dist/elements/input-combo/index.d.ts +118 -0
  121. package/dist/elements/input-combo/index.js +416 -0
  122. package/dist/elements/input-combo/index.js.map +1 -0
  123. package/dist/elements/input-combo/styles.css.d.ts +5 -0
  124. package/dist/elements/input-combo/styles.css.js +189 -0
  125. package/dist/elements/input-combo/styles.css.js.map +1 -0
  126. package/dist/elements/input-file/index.d.ts +59 -0
  127. package/dist/elements/input-file/index.js +438 -0
  128. package/dist/elements/input-file/index.js.map +1 -0
  129. package/dist/elements/input-file/loaders.css.d.ts +5 -0
  130. package/dist/elements/input-file/loaders.css.js +56 -0
  131. package/dist/elements/input-file/loaders.css.js.map +1 -0
  132. package/dist/elements/input-file/styles.css.d.ts +5 -0
  133. package/dist/elements/input-file/styles.css.js +55 -0
  134. package/dist/elements/input-file/styles.css.js.map +1 -0
  135. package/dist/elements/input-files/index.d.ts +76 -0
  136. package/dist/elements/input-files/index.js +449 -0
  137. package/dist/elements/input-files/index.js.map +1 -0
  138. package/dist/elements/input-files/styles.css.d.ts +5 -0
  139. package/dist/elements/input-files/styles.css.js +79 -0
  140. package/dist/elements/input-files/styles.css.js.map +1 -0
  141. package/dist/elements/input-otp/index.d.ts +59 -0
  142. package/dist/elements/input-otp/index.js +205 -0
  143. package/dist/elements/input-otp/index.js.map +1 -0
  144. package/dist/elements/input-otp/styles.css.d.ts +5 -0
  145. package/dist/elements/input-otp/styles.css.js +49 -0
  146. package/dist/elements/input-otp/styles.css.js.map +1 -0
  147. package/dist/elements/loader/index.d.ts +44 -0
  148. package/dist/elements/loader/index.js +582 -0
  149. package/dist/elements/loader/index.js.map +1 -0
  150. package/dist/elements/loader/styles.css.d.ts +5 -0
  151. package/dist/elements/loader/styles.css.js +427 -0
  152. package/dist/elements/loader/styles.css.js.map +1 -0
  153. package/dist/elements/password/index.d.ts +91 -0
  154. package/dist/elements/password/index.js +468 -0
  155. package/dist/elements/password/index.js.map +1 -0
  156. package/dist/elements/password/styles.css.d.ts +5 -0
  157. package/dist/elements/password/styles.css.js +86 -0
  158. package/dist/elements/password/styles.css.js.map +1 -0
  159. package/dist/elements/radio/index.d.ts +87 -0
  160. package/dist/elements/radio/index.js +222 -0
  161. package/dist/elements/radio/index.js.map +1 -0
  162. package/dist/elements/radio/styles.css.d.ts +5 -0
  163. package/dist/elements/radio/styles.css.js +69 -0
  164. package/dist/elements/radio/styles.css.js.map +1 -0
  165. package/dist/elements/radios/index.d.ts +62 -0
  166. package/dist/elements/radios/index.js +296 -0
  167. package/dist/elements/radios/index.js.map +1 -0
  168. package/dist/elements/radios/styles.css.d.ts +5 -0
  169. package/dist/elements/radios/styles.css.js +39 -0
  170. package/dist/elements/radios/styles.css.js.map +1 -0
  171. package/dist/elements/rotator/index.d.ts +59 -0
  172. package/dist/elements/rotator/index.js +223 -0
  173. package/dist/elements/rotator/index.js.map +1 -0
  174. package/dist/elements/rotator/styles.css.d.ts +5 -0
  175. package/dist/elements/rotator/styles.css.js +76 -0
  176. package/dist/elements/rotator/styles.css.js.map +1 -0
  177. package/dist/elements/select/index.d.ts +131 -0
  178. package/dist/elements/select/index.js +689 -0
  179. package/dist/elements/select/index.js.map +1 -0
  180. package/dist/elements/select/styles.css.d.ts +5 -0
  181. package/dist/elements/select/styles.css.js +133 -0
  182. package/dist/elements/select/styles.css.js.map +1 -0
  183. package/dist/elements/select-option/index.d.ts +30 -0
  184. package/dist/elements/select-option/index.js +38 -0
  185. package/dist/elements/select-option/index.js.map +1 -0
  186. package/dist/elements/sortable/index.d.ts +45 -0
  187. package/dist/elements/sortable/index.js +126 -0
  188. package/dist/elements/sortable/index.js.map +1 -0
  189. package/dist/elements/sortable/styles.css.d.ts +5 -0
  190. package/dist/elements/sortable/styles.css.js +12 -0
  191. package/dist/elements/sortable/styles.css.js.map +1 -0
  192. package/dist/elements/sortable-item/index.d.ts +33 -0
  193. package/dist/elements/sortable-item/index.js +75 -0
  194. package/dist/elements/sortable-item/index.js.map +1 -0
  195. package/dist/elements/sortable-item/styles.css.d.ts +5 -0
  196. package/dist/elements/sortable-item/styles.css.js +18 -0
  197. package/dist/elements/sortable-item/styles.css.js.map +1 -0
  198. package/dist/elements/tab/index.d.ts +50 -0
  199. package/dist/elements/tab/index.js +337 -0
  200. package/dist/elements/tab/index.js.map +1 -0
  201. package/dist/elements/tab/styles.css.d.ts +5 -0
  202. package/dist/elements/tab/styles.css.js +28 -0
  203. package/dist/elements/tab/styles.css.js.map +1 -0
  204. package/dist/elements/tab-panel/index.d.ts +41 -0
  205. package/dist/elements/tab-panel/index.js +130 -0
  206. package/dist/elements/tab-panel/index.js.map +1 -0
  207. package/dist/elements/tab-panel/styles.css.d.ts +5 -0
  208. package/dist/elements/tab-panel/styles.css.js +54 -0
  209. package/dist/elements/tab-panel/styles.css.js.map +1 -0
  210. package/dist/elements/tabs/index.d.ts +132 -0
  211. package/dist/elements/tabs/index.js +930 -0
  212. package/dist/elements/tabs/index.js.map +1 -0
  213. package/dist/elements/tabs/styles.css.d.ts +5 -0
  214. package/dist/elements/tabs/styles.css.js +206 -0
  215. package/dist/elements/tabs/styles.css.js.map +1 -0
  216. package/dist/elements/textarea/index.d.ts +4 -0
  217. package/dist/elements/textarea/index.js +497 -0
  218. package/dist/elements/textarea/index.js.map +1 -0
  219. package/dist/elements/textarea/styles.css.d.ts +5 -0
  220. package/dist/elements/textarea/styles.css.js +123 -0
  221. package/dist/elements/textarea/styles.css.js.map +1 -0
  222. package/dist/elements/timer/index.d.ts +54 -0
  223. package/dist/elements/timer/index.js +141 -0
  224. package/dist/elements/timer/index.js.map +1 -0
  225. package/dist/elements/timer/styles.css.d.ts +5 -0
  226. package/dist/elements/timer/styles.css.js +10 -0
  227. package/dist/elements/timer/styles.css.js.map +1 -0
  228. package/dist/elements/timer-display/index.d.ts +38 -0
  229. package/dist/elements/timer-display/index.js +216 -0
  230. package/dist/elements/timer-display/index.js.map +1 -0
  231. package/dist/elements/timer-display/styles.css.d.ts +5 -0
  232. package/dist/elements/timer-display/styles.css.js +10 -0
  233. package/dist/elements/timer-display/styles.css.js.map +1 -0
  234. package/dist/elements/toggle/index.d.ts +73 -0
  235. package/dist/elements/toggle/index.js +318 -0
  236. package/dist/elements/toggle/index.js.map +1 -0
  237. package/dist/elements/toggle/styles.css.d.ts +5 -0
  238. package/dist/elements/toggle/styles.css.js +93 -0
  239. package/dist/elements/toggle/styles.css.js.map +1 -0
  240. package/dist/elements/tracker/index.d.ts +4 -0
  241. package/dist/elements/tracker/index.js +96 -0
  242. package/dist/elements/tracker/index.js.map +1 -0
  243. package/dist/elements/tracker/styles.css.d.ts +5 -0
  244. package/dist/elements/tracker/styles.css.js +13 -0
  245. package/dist/elements/tracker/styles.css.js.map +1 -0
  246. package/dist/elements/tracker-step/index.d.ts +4 -0
  247. package/dist/elements/tracker-step/index.js +460 -0
  248. package/dist/elements/tracker-step/index.js.map +1 -0
  249. package/dist/elements/tracker-step/styles.css.d.ts +5 -0
  250. package/dist/elements/tracker-step/styles.css.js +125 -0
  251. package/dist/elements/tracker-step/styles.css.js.map +1 -0
  252. package/dist/elements/typewriter/index.d.ts +48 -0
  253. package/dist/elements/typewriter/index.js +124 -0
  254. package/dist/elements/typewriter/index.js.map +1 -0
  255. package/dist/form-controller-3q581XcZ.d.ts +23 -0
  256. package/dist/index-h1DTXXCf.d.ts +108 -0
  257. package/dist/styles/article.css +73 -0
  258. package/dist/styles/borders.css +1537 -0
  259. package/dist/styles/breakpoints.css +3 -0
  260. package/dist/styles/button.css +242 -0
  261. package/dist/styles/colors.css +2329 -0
  262. package/dist/styles/elevation.css +41 -0
  263. package/dist/styles/native/button.css +228 -0
  264. package/dist/styles/native/button.css.map +1 -0
  265. package/dist/styles/native.css +228 -0
  266. package/dist/styles/native.css.map +1 -0
  267. package/dist/styles/shared/breakpoints.css +3 -0
  268. package/dist/styles/shared/breakpoints.css.map +1 -0
  269. package/dist/styles/shared/colors.css +3 -0
  270. package/dist/styles/shared/colors.css.map +1 -0
  271. package/dist/styles/spacing.css +2654 -0
  272. package/dist/styles/text.css +333 -0
  273. package/dist/styles/tokens.css +400 -0
  274. package/dist/styles/tokens.css.map +1 -0
  275. package/dist/styles/utilities/article.css +66 -0
  276. package/dist/styles/utilities/article.css.map +1 -0
  277. package/dist/styles/utilities/borders.css +1537 -0
  278. package/dist/styles/utilities/borders.css.map +1 -0
  279. package/dist/styles/utilities/colors.css +2329 -0
  280. package/dist/styles/utilities/colors.css.map +1 -0
  281. package/dist/styles/utilities/elevation.css +33 -0
  282. package/dist/styles/utilities/elevation.css.map +1 -0
  283. package/dist/styles/utilities/spacing.css +2654 -0
  284. package/dist/styles/utilities/spacing.css.map +1 -0
  285. package/dist/styles/utilities/text.css +333 -0
  286. package/dist/styles/utilities/text.css.map +1 -0
  287. package/dist/styles/utilities/visibility.css +167 -0
  288. package/dist/styles/utilities/visibility.css.map +1 -0
  289. package/dist/styles/utilities.css +7110 -0
  290. package/dist/styles/utilities.css.map +1 -0
  291. package/dist/styles/visibility.css +167 -0
  292. package/dist/wrappers/react.d.ts +70 -151
  293. package/dist/wrappers/react.js +6644 -7670
  294. package/dist/wrappers/react.js.map +1 -1
  295. package/package.json +229 -68
  296. package/types/global.d.ts +8 -2
  297. package/types/jsx.d.ts +22 -44
  298. package/types/solid.d.ts +24 -44
  299. package/types/typewriter-effect.d.ts +18 -0
  300. package/types/vite-env.d.ts +4 -0
  301. package/dist/chunk-32DYCJ46.mjs +0 -53
  302. package/dist/chunk-32DYCJ46.mjs.map +0 -1
  303. package/dist/chunk-42U43NKG.mjs +0 -1
  304. package/dist/chunk-42U43NKG.mjs.map +0 -1
  305. package/dist/chunk-4B5LWYUI.mjs +0 -39
  306. package/dist/chunk-4B5LWYUI.mjs.map +0 -1
  307. package/dist/chunk-4IBCDLVD.mjs +0 -406
  308. package/dist/chunk-4IBCDLVD.mjs.map +0 -1
  309. package/dist/chunk-4PCL2QJV.mjs +0 -205
  310. package/dist/chunk-4PCL2QJV.mjs.map +0 -1
  311. package/dist/chunk-5CL7F5XK.mjs +0 -68
  312. package/dist/chunk-5CL7F5XK.mjs.map +0 -1
  313. package/dist/chunk-5LCSEF3N.mjs +0 -282
  314. package/dist/chunk-5LCSEF3N.mjs.map +0 -1
  315. package/dist/chunk-5WUBMMWS.mjs +0 -28
  316. package/dist/chunk-5WUBMMWS.mjs.map +0 -1
  317. package/dist/chunk-6KGFENNL.mjs +0 -74
  318. package/dist/chunk-6KGFENNL.mjs.map +0 -1
  319. package/dist/chunk-6T73EOKO.mjs +0 -138
  320. package/dist/chunk-6T73EOKO.mjs.map +0 -1
  321. package/dist/chunk-6VG2IYDS.mjs +0 -133
  322. package/dist/chunk-6VG2IYDS.mjs.map +0 -1
  323. package/dist/chunk-7DJKARFX.mjs +0 -132
  324. package/dist/chunk-7DJKARFX.mjs.map +0 -1
  325. package/dist/chunk-7S4TQDFJ.mjs +0 -270
  326. package/dist/chunk-7S4TQDFJ.mjs.map +0 -1
  327. package/dist/chunk-7SD6A3KE.mjs +0 -45
  328. package/dist/chunk-7SD6A3KE.mjs.map +0 -1
  329. package/dist/chunk-AEMR7XYR.mjs +0 -219
  330. package/dist/chunk-AEMR7XYR.mjs.map +0 -1
  331. package/dist/chunk-AEOXLPN2.mjs +0 -198
  332. package/dist/chunk-AEOXLPN2.mjs.map +0 -1
  333. package/dist/chunk-AF3CJRDB.mjs +0 -60
  334. package/dist/chunk-AF3CJRDB.mjs.map +0 -1
  335. package/dist/chunk-AMTRXWZ7.mjs +0 -41
  336. package/dist/chunk-AMTRXWZ7.mjs.map +0 -1
  337. package/dist/chunk-ARM72B3S.mjs +0 -65
  338. package/dist/chunk-ARM72B3S.mjs.map +0 -1
  339. package/dist/chunk-ASA4GA5J.mjs +0 -84
  340. package/dist/chunk-ASA4GA5J.mjs.map +0 -1
  341. package/dist/chunk-BEBUXXOW.mjs +0 -241
  342. package/dist/chunk-BEBUXXOW.mjs.map +0 -1
  343. package/dist/chunk-BJ5CZRKZ.mjs +0 -90
  344. package/dist/chunk-BJ5CZRKZ.mjs.map +0 -1
  345. package/dist/chunk-CIZYNSL7.mjs +0 -39
  346. package/dist/chunk-CIZYNSL7.mjs.map +0 -1
  347. package/dist/chunk-CK7STPSD.mjs +0 -18
  348. package/dist/chunk-CK7STPSD.mjs.map +0 -1
  349. package/dist/chunk-CKCJX7GP.mjs +0 -265
  350. package/dist/chunk-CKCJX7GP.mjs.map +0 -1
  351. package/dist/chunk-CUZ6G5AK.mjs +0 -330
  352. package/dist/chunk-CUZ6G5AK.mjs.map +0 -1
  353. package/dist/chunk-CXKQSEE4.mjs +0 -109
  354. package/dist/chunk-CXKQSEE4.mjs.map +0 -1
  355. package/dist/chunk-DPI6H4CJ.mjs +0 -53
  356. package/dist/chunk-DPI6H4CJ.mjs.map +0 -1
  357. package/dist/chunk-DXRTO6DV.mjs +0 -135
  358. package/dist/chunk-DXRTO6DV.mjs.map +0 -1
  359. package/dist/chunk-ETLBNDW5.mjs +0 -563
  360. package/dist/chunk-ETLBNDW5.mjs.map +0 -1
  361. package/dist/chunk-F74NYUH5.mjs +0 -90
  362. package/dist/chunk-F74NYUH5.mjs.map +0 -1
  363. package/dist/chunk-FIFFC63Y.mjs +0 -346
  364. package/dist/chunk-FIFFC63Y.mjs.map +0 -1
  365. package/dist/chunk-G5OGR6EP.mjs +0 -101
  366. package/dist/chunk-G5OGR6EP.mjs.map +0 -1
  367. package/dist/chunk-GD6K7M4N.mjs +0 -144
  368. package/dist/chunk-GD6K7M4N.mjs.map +0 -1
  369. package/dist/chunk-GPBOM3MJ.mjs +0 -118
  370. package/dist/chunk-GPBOM3MJ.mjs.map +0 -1
  371. package/dist/chunk-H4D2CASA.mjs +0 -48
  372. package/dist/chunk-H4D2CASA.mjs.map +0 -1
  373. package/dist/chunk-HEJAQQFO.mjs +0 -140
  374. package/dist/chunk-HEJAQQFO.mjs.map +0 -1
  375. package/dist/chunk-IVO3EKSY.mjs +0 -126
  376. package/dist/chunk-IVO3EKSY.mjs.map +0 -1
  377. package/dist/chunk-JA5Z4MY5.mjs +0 -39
  378. package/dist/chunk-JA5Z4MY5.mjs.map +0 -1
  379. package/dist/chunk-JBDFJW7Y.mjs +0 -50
  380. package/dist/chunk-JBDFJW7Y.mjs.map +0 -1
  381. package/dist/chunk-JI5MHBCW.mjs +0 -478
  382. package/dist/chunk-JI5MHBCW.mjs.map +0 -1
  383. package/dist/chunk-JXKIXKVM.mjs +0 -116
  384. package/dist/chunk-JXKIXKVM.mjs.map +0 -1
  385. package/dist/chunk-L5NNYTOF.mjs +0 -183
  386. package/dist/chunk-L5NNYTOF.mjs.map +0 -1
  387. package/dist/chunk-LHEY3UOF.mjs +0 -11
  388. package/dist/chunk-LHEY3UOF.mjs.map +0 -1
  389. package/dist/chunk-LKIDBCVS.mjs +0 -574
  390. package/dist/chunk-LKIDBCVS.mjs.map +0 -1
  391. package/dist/chunk-MJLS4VOS.mjs +0 -36
  392. package/dist/chunk-MJLS4VOS.mjs.map +0 -1
  393. package/dist/chunk-MZO4Q7DU.mjs +0 -88
  394. package/dist/chunk-MZO4Q7DU.mjs.map +0 -1
  395. package/dist/chunk-NFIR3QAK.mjs +0 -287
  396. package/dist/chunk-NFIR3QAK.mjs.map +0 -1
  397. package/dist/chunk-NY2FTW7A.mjs +0 -24
  398. package/dist/chunk-NY2FTW7A.mjs.map +0 -1
  399. package/dist/chunk-OIGUEDIP.mjs +0 -91
  400. package/dist/chunk-OIGUEDIP.mjs.map +0 -1
  401. package/dist/chunk-OLDBGAR2.mjs +0 -66
  402. package/dist/chunk-OLDBGAR2.mjs.map +0 -1
  403. package/dist/chunk-OURZELWQ.mjs +0 -207
  404. package/dist/chunk-OURZELWQ.mjs.map +0 -1
  405. package/dist/chunk-P7GREIMJ.mjs +0 -93
  406. package/dist/chunk-P7GREIMJ.mjs.map +0 -1
  407. package/dist/chunk-PWWLC4X4.mjs +0 -185
  408. package/dist/chunk-PWWLC4X4.mjs.map +0 -1
  409. package/dist/chunk-Q3TV6JZX.mjs +0 -162
  410. package/dist/chunk-Q3TV6JZX.mjs.map +0 -1
  411. package/dist/chunk-QCMF4CCI.mjs +0 -197
  412. package/dist/chunk-QCMF4CCI.mjs.map +0 -1
  413. package/dist/chunk-QTA3KC7Q.mjs +0 -53
  414. package/dist/chunk-QTA3KC7Q.mjs.map +0 -1
  415. package/dist/chunk-RN4YODB5.mjs +0 -30
  416. package/dist/chunk-RN4YODB5.mjs.map +0 -1
  417. package/dist/chunk-SAWN7RJP.mjs +0 -15
  418. package/dist/chunk-SAWN7RJP.mjs.map +0 -1
  419. package/dist/chunk-SG6N234R.mjs +0 -53
  420. package/dist/chunk-SG6N234R.mjs.map +0 -1
  421. package/dist/chunk-T6PYRK57.mjs +0 -465
  422. package/dist/chunk-T6PYRK57.mjs.map +0 -1
  423. package/dist/chunk-T7FJ76DU.mjs +0 -85
  424. package/dist/chunk-T7FJ76DU.mjs.map +0 -1
  425. package/dist/chunk-TFESUHTA.mjs +0 -48
  426. package/dist/chunk-TFESUHTA.mjs.map +0 -1
  427. package/dist/chunk-U4JLLOLD.mjs +0 -112
  428. package/dist/chunk-U4JLLOLD.mjs.map +0 -1
  429. package/dist/chunk-VDX3OED3.mjs +0 -102
  430. package/dist/chunk-VDX3OED3.mjs.map +0 -1
  431. package/dist/chunk-VHOXQRZV.mjs +0 -450
  432. package/dist/chunk-VHOXQRZV.mjs.map +0 -1
  433. package/dist/chunk-WS2CRWKG.mjs +0 -158
  434. package/dist/chunk-WS2CRWKG.mjs.map +0 -1
  435. package/dist/chunk-YDPU6LZP.mjs +0 -47
  436. package/dist/chunk-YDPU6LZP.mjs.map +0 -1
  437. package/dist/chunk-YP7UN6IN.mjs +0 -119
  438. package/dist/chunk-YP7UN6IN.mjs.map +0 -1
  439. package/dist/chunk-YVOM5EV3.mjs +0 -49
  440. package/dist/chunk-YVOM5EV3.mjs.map +0 -1
  441. package/dist/chunk-ZBQXY2YN.mjs +0 -88
  442. package/dist/chunk-ZBQXY2YN.mjs.map +0 -1
  443. package/dist/constants-BEtO8uLN.d.mts +0 -525
  444. package/dist/constants-CcB9aXsT.d.ts +0 -525
  445. package/dist/elements/accordion-panel.d.mts +0 -55
  446. package/dist/elements/accordion-panel.d.ts +0 -55
  447. package/dist/elements/accordion-panel.js +0 -188
  448. package/dist/elements/accordion-panel.js.map +0 -1
  449. package/dist/elements/accordion-panel.mjs +0 -10
  450. package/dist/elements/accordion-panel.mjs.map +0 -1
  451. package/dist/elements/accordion.d.mts +0 -53
  452. package/dist/elements/accordion.d.ts +0 -53
  453. package/dist/elements/accordion.js +0 -209
  454. package/dist/elements/accordion.js.map +0 -1
  455. package/dist/elements/accordion.mjs +0 -9
  456. package/dist/elements/accordion.mjs.map +0 -1
  457. package/dist/elements/alert.d.mts +0 -75
  458. package/dist/elements/alert.d.ts +0 -75
  459. package/dist/elements/alert.js +0 -302
  460. package/dist/elements/alert.js.map +0 -1
  461. package/dist/elements/alert.mjs +0 -14
  462. package/dist/elements/alert.mjs.map +0 -1
  463. package/dist/elements/avatar.d.mts +0 -49
  464. package/dist/elements/avatar.d.ts +0 -49
  465. package/dist/elements/avatar.js +0 -161
  466. package/dist/elements/avatar.js.map +0 -1
  467. package/dist/elements/avatar.mjs +0 -9
  468. package/dist/elements/avatar.mjs.map +0 -1
  469. package/dist/elements/avatars.d.mts +0 -25
  470. package/dist/elements/avatars.d.ts +0 -25
  471. package/dist/elements/avatars.js +0 -125
  472. package/dist/elements/avatars.js.map +0 -1
  473. package/dist/elements/avatars.mjs +0 -9
  474. package/dist/elements/avatars.mjs.map +0 -1
  475. package/dist/elements/badge.d.mts +0 -41
  476. package/dist/elements/badge.d.ts +0 -41
  477. package/dist/elements/badge.js +0 -185
  478. package/dist/elements/badge.js.map +0 -1
  479. package/dist/elements/badge.mjs +0 -9
  480. package/dist/elements/badge.mjs.map +0 -1
  481. package/dist/elements/button.d.mts +0 -124
  482. package/dist/elements/button.d.ts +0 -124
  483. package/dist/elements/button.js +0 -414
  484. package/dist/elements/button.js.map +0 -1
  485. package/dist/elements/button.mjs +0 -21
  486. package/dist/elements/button.mjs.map +0 -1
  487. package/dist/elements/card.d.mts +0 -52
  488. package/dist/elements/card.d.ts +0 -52
  489. package/dist/elements/card.js +0 -139
  490. package/dist/elements/card.js.map +0 -1
  491. package/dist/elements/card.mjs +0 -8
  492. package/dist/elements/card.mjs.map +0 -1
  493. package/dist/elements/carousel-current.d.mts +0 -33
  494. package/dist/elements/carousel-current.d.ts +0 -33
  495. package/dist/elements/carousel-current.js +0 -62
  496. package/dist/elements/carousel-current.js.map +0 -1
  497. package/dist/elements/carousel-current.mjs +0 -8
  498. package/dist/elements/carousel-current.mjs.map +0 -1
  499. package/dist/elements/carousel-first.d.mts +0 -31
  500. package/dist/elements/carousel-first.d.ts +0 -31
  501. package/dist/elements/carousel-first.js +0 -82
  502. package/dist/elements/carousel-first.js.map +0 -1
  503. package/dist/elements/carousel-first.mjs +0 -9
  504. package/dist/elements/carousel-first.mjs.map +0 -1
  505. package/dist/elements/carousel-last.d.mts +0 -31
  506. package/dist/elements/carousel-last.d.ts +0 -31
  507. package/dist/elements/carousel-last.js +0 -82
  508. package/dist/elements/carousel-last.js.map +0 -1
  509. package/dist/elements/carousel-last.mjs +0 -9
  510. package/dist/elements/carousel-last.mjs.map +0 -1
  511. package/dist/elements/carousel-link.d.mts +0 -37
  512. package/dist/elements/carousel-link.d.ts +0 -37
  513. package/dist/elements/carousel-link.js +0 -95
  514. package/dist/elements/carousel-link.js.map +0 -1
  515. package/dist/elements/carousel-link.mjs +0 -9
  516. package/dist/elements/carousel-link.mjs.map +0 -1
  517. package/dist/elements/carousel-next.d.mts +0 -31
  518. package/dist/elements/carousel-next.d.ts +0 -31
  519. package/dist/elements/carousel-next.js +0 -82
  520. package/dist/elements/carousel-next.js.map +0 -1
  521. package/dist/elements/carousel-next.mjs +0 -9
  522. package/dist/elements/carousel-next.mjs.map +0 -1
  523. package/dist/elements/carousel-prev.d.mts +0 -31
  524. package/dist/elements/carousel-prev.d.ts +0 -31
  525. package/dist/elements/carousel-prev.js +0 -82
  526. package/dist/elements/carousel-prev.js.map +0 -1
  527. package/dist/elements/carousel-prev.mjs +0 -9
  528. package/dist/elements/carousel-prev.mjs.map +0 -1
  529. package/dist/elements/carousel-slide.d.mts +0 -34
  530. package/dist/elements/carousel-slide.d.ts +0 -34
  531. package/dist/elements/carousel-slide.js +0 -72
  532. package/dist/elements/carousel-slide.js.map +0 -1
  533. package/dist/elements/carousel-slide.mjs +0 -8
  534. package/dist/elements/carousel-slide.mjs.map +0 -1
  535. package/dist/elements/carousel-total.d.mts +0 -33
  536. package/dist/elements/carousel-total.d.ts +0 -33
  537. package/dist/elements/carousel-total.js +0 -62
  538. package/dist/elements/carousel-total.js.map +0 -1
  539. package/dist/elements/carousel-total.mjs +0 -8
  540. package/dist/elements/carousel-total.mjs.map +0 -1
  541. package/dist/elements/carousel.d.mts +0 -123
  542. package/dist/elements/carousel.d.ts +0 -123
  543. package/dist/elements/carousel.js +0 -472
  544. package/dist/elements/carousel.js.map +0 -1
  545. package/dist/elements/carousel.mjs +0 -9
  546. package/dist/elements/carousel.mjs.map +0 -1
  547. package/dist/elements/checkbox.d.mts +0 -83
  548. package/dist/elements/checkbox.d.ts +0 -83
  549. package/dist/elements/checkbox.js +0 -387
  550. package/dist/elements/checkbox.js.map +0 -1
  551. package/dist/elements/checkbox.mjs +0 -11
  552. package/dist/elements/checkbox.mjs.map +0 -1
  553. package/dist/elements/combo.d.mts +0 -4
  554. package/dist/elements/combo.d.ts +0 -4
  555. package/dist/elements/combo.js +0 -232
  556. package/dist/elements/combo.js.map +0 -1
  557. package/dist/elements/combo.mjs +0 -9
  558. package/dist/elements/combo.mjs.map +0 -1
  559. package/dist/elements/count.d.mts +0 -4
  560. package/dist/elements/count.d.ts +0 -4
  561. package/dist/elements/count.js +0 -117
  562. package/dist/elements/count.js.map +0 -1
  563. package/dist/elements/count.mjs +0 -10
  564. package/dist/elements/count.mjs.map +0 -1
  565. package/dist/elements/draggable.d.mts +0 -54
  566. package/dist/elements/draggable.d.ts +0 -54
  567. package/dist/elements/draggable.js +0 -157
  568. package/dist/elements/draggable.js.map +0 -1
  569. package/dist/elements/draggable.mjs +0 -9
  570. package/dist/elements/draggable.mjs.map +0 -1
  571. package/dist/elements/drawer.d.mts +0 -62
  572. package/dist/elements/drawer.d.ts +0 -62
  573. package/dist/elements/drawer.js +0 -438
  574. package/dist/elements/drawer.js.map +0 -1
  575. package/dist/elements/drawer.mjs +0 -14
  576. package/dist/elements/drawer.mjs.map +0 -1
  577. package/dist/elements/fab.d.mts +0 -54
  578. package/dist/elements/fab.d.ts +0 -54
  579. package/dist/elements/fab.js +0 -206
  580. package/dist/elements/fab.js.map +0 -1
  581. package/dist/elements/fab.mjs +0 -8
  582. package/dist/elements/fab.mjs.map +0 -1
  583. package/dist/elements/field.d.mts +0 -4
  584. package/dist/elements/field.d.ts +0 -4
  585. package/dist/elements/field.js +0 -181
  586. package/dist/elements/field.js.map +0 -1
  587. package/dist/elements/field.mjs +0 -9
  588. package/dist/elements/field.mjs.map +0 -1
  589. package/dist/elements/flipcard-trigger.d.mts +0 -26
  590. package/dist/elements/flipcard-trigger.d.ts +0 -26
  591. package/dist/elements/flipcard-trigger.js +0 -70
  592. package/dist/elements/flipcard-trigger.js.map +0 -1
  593. package/dist/elements/flipcard-trigger.mjs +0 -9
  594. package/dist/elements/flipcard-trigger.mjs.map +0 -1
  595. package/dist/elements/flipcard.d.mts +0 -57
  596. package/dist/elements/flipcard.d.ts +0 -57
  597. package/dist/elements/flipcard.js +0 -225
  598. package/dist/elements/flipcard.js.map +0 -1
  599. package/dist/elements/flipcard.mjs +0 -8
  600. package/dist/elements/flipcard.mjs.map +0 -1
  601. package/dist/elements/icon-bootstrap.d.mts +0 -21
  602. package/dist/elements/icon-bootstrap.d.ts +0 -21
  603. package/dist/elements/icon-bootstrap.js +0 -155
  604. package/dist/elements/icon-bootstrap.js.map +0 -1
  605. package/dist/elements/icon-bootstrap.mjs +0 -8
  606. package/dist/elements/icon-bootstrap.mjs.map +0 -1
  607. package/dist/elements/icon-lucide.d.mts +0 -29
  608. package/dist/elements/icon-lucide.d.ts +0 -29
  609. package/dist/elements/icon-lucide.js +0 -113
  610. package/dist/elements/icon-lucide.js.map +0 -1
  611. package/dist/elements/icon-lucide.mjs +0 -8
  612. package/dist/elements/icon-lucide.mjs.map +0 -1
  613. package/dist/elements/input.d.mts +0 -4
  614. package/dist/elements/input.d.ts +0 -4
  615. package/dist/elements/input.js +0 -696
  616. package/dist/elements/input.js.map +0 -1
  617. package/dist/elements/input.mjs +0 -27
  618. package/dist/elements/input.mjs.map +0 -1
  619. package/dist/elements/modal-close.d.mts +0 -26
  620. package/dist/elements/modal-close.d.ts +0 -26
  621. package/dist/elements/modal-close.js +0 -68
  622. package/dist/elements/modal-close.js.map +0 -1
  623. package/dist/elements/modal-close.mjs +0 -9
  624. package/dist/elements/modal-close.mjs.map +0 -1
  625. package/dist/elements/modal.d.mts +0 -84
  626. package/dist/elements/modal.d.ts +0 -84
  627. package/dist/elements/modal.js +0 -492
  628. package/dist/elements/modal.js.map +0 -1
  629. package/dist/elements/modal.mjs +0 -13
  630. package/dist/elements/modal.mjs.map +0 -1
  631. package/dist/elements/multi-input.d.mts +0 -124
  632. package/dist/elements/multi-input.d.ts +0 -124
  633. package/dist/elements/multi-input.js +0 -368
  634. package/dist/elements/multi-input.js.map +0 -1
  635. package/dist/elements/multi-input.mjs +0 -10
  636. package/dist/elements/multi-input.mjs.map +0 -1
  637. package/dist/elements/option.d.mts +0 -30
  638. package/dist/elements/option.d.ts +0 -30
  639. package/dist/elements/option.js +0 -59
  640. package/dist/elements/option.js.map +0 -1
  641. package/dist/elements/option.mjs +0 -8
  642. package/dist/elements/option.mjs.map +0 -1
  643. package/dist/elements/password.d.mts +0 -90
  644. package/dist/elements/password.d.ts +0 -90
  645. package/dist/elements/password.js +0 -392
  646. package/dist/elements/password.js.map +0 -1
  647. package/dist/elements/password.mjs +0 -11
  648. package/dist/elements/password.mjs.map +0 -1
  649. package/dist/elements/popper-close.d.mts +0 -27
  650. package/dist/elements/popper-close.d.ts +0 -27
  651. package/dist/elements/popper-close.js +0 -76
  652. package/dist/elements/popper-close.js.map +0 -1
  653. package/dist/elements/popper-close.mjs +0 -9
  654. package/dist/elements/popper-close.mjs.map +0 -1
  655. package/dist/elements/popper.d.mts +0 -120
  656. package/dist/elements/popper.d.ts +0 -120
  657. package/dist/elements/popper.js +0 -597
  658. package/dist/elements/popper.js.map +0 -1
  659. package/dist/elements/popper.mjs +0 -25
  660. package/dist/elements/popper.mjs.map +0 -1
  661. package/dist/elements/radio.d.mts +0 -80
  662. package/dist/elements/radio.d.ts +0 -80
  663. package/dist/elements/radio.js +0 -265
  664. package/dist/elements/radio.js.map +0 -1
  665. package/dist/elements/radio.mjs +0 -10
  666. package/dist/elements/radio.mjs.map +0 -1
  667. package/dist/elements/radios.d.mts +0 -55
  668. package/dist/elements/radios.d.ts +0 -55
  669. package/dist/elements/radios.js +0 -372
  670. package/dist/elements/radios.js.map +0 -1
  671. package/dist/elements/radios.mjs +0 -12
  672. package/dist/elements/radios.mjs.map +0 -1
  673. package/dist/elements/rotator.d.mts +0 -56
  674. package/dist/elements/rotator.d.ts +0 -56
  675. package/dist/elements/rotator.js +0 -226
  676. package/dist/elements/rotator.js.map +0 -1
  677. package/dist/elements/rotator.mjs +0 -12
  678. package/dist/elements/rotator.mjs.map +0 -1
  679. package/dist/elements/scroll-nav.d.mts +0 -44
  680. package/dist/elements/scroll-nav.d.ts +0 -44
  681. package/dist/elements/scroll-nav.js +0 -121
  682. package/dist/elements/scroll-nav.js.map +0 -1
  683. package/dist/elements/scroll-nav.mjs +0 -12
  684. package/dist/elements/scroll-nav.mjs.map +0 -1
  685. package/dist/elements/scroll-snap-paginator.d.mts +0 -50
  686. package/dist/elements/scroll-snap-paginator.d.ts +0 -50
  687. package/dist/elements/scroll-snap-paginator.js +0 -342
  688. package/dist/elements/scroll-snap-paginator.js.map +0 -1
  689. package/dist/elements/scroll-snap-paginator.mjs +0 -11
  690. package/dist/elements/scroll-snap-paginator.mjs.map +0 -1
  691. package/dist/elements/scroll-snap-slide.d.mts +0 -35
  692. package/dist/elements/scroll-snap-slide.d.ts +0 -35
  693. package/dist/elements/scroll-snap-slide.js +0 -68
  694. package/dist/elements/scroll-snap-slide.js.map +0 -1
  695. package/dist/elements/scroll-snap-slide.mjs +0 -8
  696. package/dist/elements/scroll-snap-slide.mjs.map +0 -1
  697. package/dist/elements/scroll-snap.d.mts +0 -53
  698. package/dist/elements/scroll-snap.d.ts +0 -53
  699. package/dist/elements/scroll-snap.js +0 -210
  700. package/dist/elements/scroll-snap.js.map +0 -1
  701. package/dist/elements/scroll-snap.mjs +0 -11
  702. package/dist/elements/scroll-snap.mjs.map +0 -1
  703. package/dist/elements/select.d.mts +0 -124
  704. package/dist/elements/select.d.ts +0 -124
  705. package/dist/elements/select.js +0 -576
  706. package/dist/elements/select.js.map +0 -1
  707. package/dist/elements/select.mjs +0 -12
  708. package/dist/elements/select.mjs.map +0 -1
  709. package/dist/elements/sortable-item.d.mts +0 -26
  710. package/dist/elements/sortable-item.d.ts +0 -26
  711. package/dist/elements/sortable-item.js +0 -75
  712. package/dist/elements/sortable-item.js.map +0 -1
  713. package/dist/elements/sortable-item.mjs +0 -9
  714. package/dist/elements/sortable-item.mjs.map +0 -1
  715. package/dist/elements/sortable.d.mts +0 -37
  716. package/dist/elements/sortable.d.ts +0 -37
  717. package/dist/elements/sortable.js +0 -139
  718. package/dist/elements/sortable.js.map +0 -1
  719. package/dist/elements/sortable.mjs +0 -10
  720. package/dist/elements/sortable.mjs.map +0 -1
  721. package/dist/elements/svg.d.mts +0 -43
  722. package/dist/elements/svg.d.ts +0 -43
  723. package/dist/elements/svg.js +0 -108
  724. package/dist/elements/svg.js.map +0 -1
  725. package/dist/elements/svg.mjs +0 -8
  726. package/dist/elements/svg.mjs.map +0 -1
  727. package/dist/elements/svgs.d.mts +0 -32
  728. package/dist/elements/svgs.d.ts +0 -32
  729. package/dist/elements/svgs.js +0 -71
  730. package/dist/elements/svgs.js.map +0 -1
  731. package/dist/elements/svgs.mjs +0 -8
  732. package/dist/elements/svgs.mjs.map +0 -1
  733. package/dist/elements/tab-panel.d.mts +0 -33
  734. package/dist/elements/tab-panel.d.ts +0 -33
  735. package/dist/elements/tab-panel.js +0 -348
  736. package/dist/elements/tab-panel.js.map +0 -1
  737. package/dist/elements/tab-panel.mjs +0 -9
  738. package/dist/elements/tab-panel.mjs.map +0 -1
  739. package/dist/elements/tab.d.mts +0 -43
  740. package/dist/elements/tab.d.ts +0 -43
  741. package/dist/elements/tab.js +0 -500
  742. package/dist/elements/tab.js.map +0 -1
  743. package/dist/elements/tab.mjs +0 -11
  744. package/dist/elements/tab.mjs.map +0 -1
  745. package/dist/elements/tabs.d.mts +0 -128
  746. package/dist/elements/tabs.d.ts +0 -128
  747. package/dist/elements/tabs.js +0 -906
  748. package/dist/elements/tabs.js.map +0 -1
  749. package/dist/elements/tabs.mjs +0 -20
  750. package/dist/elements/tabs.mjs.map +0 -1
  751. package/dist/elements/textarea.d.mts +0 -4
  752. package/dist/elements/textarea.d.ts +0 -4
  753. package/dist/elements/textarea.js +0 -482
  754. package/dist/elements/textarea.js.map +0 -1
  755. package/dist/elements/textarea.mjs +0 -364
  756. package/dist/elements/textarea.mjs.map +0 -1
  757. package/dist/elements/timer-display.d.mts +0 -30
  758. package/dist/elements/timer-display.d.ts +0 -30
  759. package/dist/elements/timer-display.js +0 -103
  760. package/dist/elements/timer-display.js.map +0 -1
  761. package/dist/elements/timer-display.mjs +0 -9
  762. package/dist/elements/timer-display.mjs.map +0 -1
  763. package/dist/elements/timer.d.mts +0 -49
  764. package/dist/elements/timer.d.ts +0 -49
  765. package/dist/elements/timer.js +0 -156
  766. package/dist/elements/timer.js.map +0 -1
  767. package/dist/elements/timer.mjs +0 -14
  768. package/dist/elements/timer.mjs.map +0 -1
  769. package/dist/elements/toggle.d.mts +0 -65
  770. package/dist/elements/toggle.d.ts +0 -65
  771. package/dist/elements/toggle.js +0 -319
  772. package/dist/elements/toggle.js.map +0 -1
  773. package/dist/elements/toggle.mjs +0 -10
  774. package/dist/elements/toggle.mjs.map +0 -1
  775. package/dist/elements/tooltip.d.mts +0 -38
  776. package/dist/elements/tooltip.d.ts +0 -38
  777. package/dist/elements/tooltip.js +0 -654
  778. package/dist/elements/tooltip.js.map +0 -1
  779. package/dist/elements/tooltip.mjs +0 -10
  780. package/dist/elements/tooltip.mjs.map +0 -1
  781. package/dist/elements/tracker-step.d.mts +0 -3
  782. package/dist/elements/tracker-step.d.ts +0 -3
  783. package/dist/elements/tracker-step.js +0 -366
  784. package/dist/elements/tracker-step.js.map +0 -1
  785. package/dist/elements/tracker-step.mjs +0 -9
  786. package/dist/elements/tracker-step.mjs.map +0 -1
  787. package/dist/elements/tracker.d.mts +0 -3
  788. package/dist/elements/tracker.d.ts +0 -3
  789. package/dist/elements/tracker.js +0 -88
  790. package/dist/elements/tracker.js.map +0 -1
  791. package/dist/elements/tracker.mjs +0 -8
  792. package/dist/elements/tracker.mjs.map +0 -1
  793. package/dist/elements/upload-file.d.mts +0 -51
  794. package/dist/elements/upload-file.d.ts +0 -51
  795. package/dist/elements/upload-file.js +0 -415
  796. package/dist/elements/upload-file.js.map +0 -1
  797. package/dist/elements/upload-file.mjs +0 -10
  798. package/dist/elements/upload-file.mjs.map +0 -1
  799. package/dist/elements/upload.d.mts +0 -69
  800. package/dist/elements/upload.d.ts +0 -69
  801. package/dist/elements/upload.js +0 -464
  802. package/dist/elements/upload.js.map +0 -1
  803. package/dist/elements/upload.mjs +0 -11
  804. package/dist/elements/upload.mjs.map +0 -1
  805. package/dist/form-controller-BR0gZhrG.d.mts +0 -13
  806. package/dist/form-controller-BR0gZhrG.d.ts +0 -13
  807. package/dist/styles/core/attributes.scss +0 -38
  808. package/dist/styles/core/layout.scss +0 -169
  809. package/dist/styles/elements/accordion.ts +0 -43
  810. package/dist/styles/elements/alert.ts +0 -156
  811. package/dist/styles/elements/avatar.ts +0 -79
  812. package/dist/styles/elements/badge.ts +0 -92
  813. package/dist/styles/elements/button.ts +0 -112
  814. package/dist/styles/elements/card.ts +0 -78
  815. package/dist/styles/elements/carousel.ts +0 -82
  816. package/dist/styles/elements/checkbox.ts +0 -90
  817. package/dist/styles/elements/combo.ts +0 -56
  818. package/dist/styles/elements/drawer.ts +0 -323
  819. package/dist/styles/elements/fab.ts +0 -104
  820. package/dist/styles/elements/field.ts +0 -49
  821. package/dist/styles/elements/flipcard.ts +0 -95
  822. package/dist/styles/elements/icon-lucide.ts +0 -7
  823. package/dist/styles/elements/input.ts +0 -156
  824. package/dist/styles/elements/modal.ts +0 -317
  825. package/dist/styles/elements/multi-input.ts +0 -125
  826. package/dist/styles/elements/password.ts +0 -80
  827. package/dist/styles/elements/popper.ts +0 -349
  828. package/dist/styles/elements/radio.ts +0 -113
  829. package/dist/styles/elements/rotator.ts +0 -74
  830. package/dist/styles/elements/scroll-nav.ts +0 -33
  831. package/dist/styles/elements/scroll-snap.ts +0 -83
  832. package/dist/styles/elements/select.ts +0 -113
  833. package/dist/styles/elements/sortable.ts +0 -23
  834. package/dist/styles/elements/tabs.ts +0 -277
  835. package/dist/styles/elements/textarea.ts +0 -109
  836. package/dist/styles/elements/timer.ts +0 -13
  837. package/dist/styles/elements/toggle.ts +0 -90
  838. package/dist/styles/elements/tooltip.ts +0 -61
  839. package/dist/styles/elements/tracker.ts +0 -122
  840. package/dist/styles/elements/upload.ts +0 -180
  841. package/dist/styles/kemet.base.css +0 -306
  842. package/dist/styles/kemet.base.css.map +0 -1
  843. package/dist/styles/kemet.base.scss +0 -29
  844. package/dist/styles/kemet.core.css +0 -10022
  845. package/dist/styles/kemet.core.css.map +0 -1
  846. package/dist/styles/kemet.core.scss +0 -2
  847. package/dist/styles/shared/_config.scss +0 -595
  848. package/dist/styles/shared/_helpers.scss +0 -531
  849. package/dist/tracker-step-DkA-T98W.d.mts +0 -93
  850. package/dist/tracker-step-DkA-T98W.d.ts +0 -93
  851. package/dist/wrappers/next.d.mts +0 -127
  852. package/dist/wrappers/next.d.ts +0 -127
  853. package/dist/wrappers/next.js +0 -10629
  854. package/dist/wrappers/next.js.map +0 -1
  855. package/dist/wrappers/next.mjs +0 -198
  856. package/dist/wrappers/next.mjs.map +0 -1
  857. package/dist/wrappers/react.d.mts +0 -272
  858. package/dist/wrappers/react.mjs +0 -668
  859. package/dist/wrappers/react.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/elements/checkbox/index.ts","../../../src/utilities/form-controller.ts","../../../src/utilities/events.ts","../../../src/elements/checkbox/styles.css.ts"],"sourcesContent":["import { html, LitElement, unsafeCSS } from 'lit';\nimport { customElement, property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { FormSubmitController } from '../../utilities/form-controller';\nimport { emitEvent } from '../../utilities/events';\nimport { EnumAppearances } from '../../utilities/constants';\nimport styles from './styles.css.ts';\n\n/**\n * @since 1.0.0\n * @status stable\n *\n * @tagname kemet-checkbox\n * @summary An enhanced checkbox.\n *\n * @prop {string} label - Label text for the checkbox\n * @prop {boolean} checked - Determines if the checkbox is selected\n * @prop {boolean} indeterminate - An indeterminate selection status\n * @prop {string} name - Name of the checkbox\n * @prop {string} value - Value of the checkbox\n * @prop {boolean} disabled - Determines if a checkbox is disabled\n * @prop {boolean} required - Determines if a checkbox is required\n * @prop {boolean} focused - Is true when the checkbox is focused\n * @prop {boolean} rounded - Gives the checkbox rounded edges\n * @prop {boolean} filled - Fills the checkbox with color\n * @prop {EnumAppearances} appearance - The status of the checkbox\n * @prop {string} message - Message associated with checkbox status\n * @prop {'light' | 'dark'} polarity - Determines if the component has a dark or light background\n * @prop {string} dom - The status of dom initalization.\n *\n * @csspart label - The label element.\n * @csspart text - The label's text.\n * @csspart mark - The icon of the check mark.\n *\n * @cssproperty --kemet-checkbox-size - The width and height of the checkbox.\n * @cssproperty --kemet-checkbox-color - The color of the checkbox mark.\n * @cssproperty --kemet-checkbox-border - The border of the checkbox.\n * @cssproperty --kemet-checkbox-border-radius - The border radius of the checkbox.\n * @cssproperty --kemet-checkbox-filled-color - The filled color of the checkbox mark.\n * @cssproperty --kemet-checkbox-filled-background-color - The filled background color.\n *\n * @fires kemet-change - Fires when the state of the checkbox changes\n * @details {KemetCheckbox} element - The checkbox element\n *\n * @fires kemet-focus - Fires when the checkbox receives focus\n * @details {KemetCheckbox} element - The checkbox element\n *\n * @fires kemet-blur - Fires when the checkbox loses focus\n * @details {KemetCheckbox} element - The checkbox element\n *\n * @fires kemet-checkbox-mounted - Fires when the checkbox is mounted to the dom\n * @details {KemetCheckbox} element -The checkbox element\n *\n */\n\n@customElement('kemet-checkbox')\nexport default class KemetCheckbox extends LitElement {\n /** @internal */\n formSubmitController: FormSubmitController;\n\n static styles = [styles];\n\n @property({ type: String })\n label: string = '';\n\n @property({ type: Boolean, reflect: true })\n checked: boolean = false;\n\n @property({ type: Boolean, reflect: true })\n indeterminate: boolean = false;\n\n @property({ type: String })\n name: string = 'checkbox';\n\n @property({ type: Boolean })\n value: boolean = false;\n\n @property({ type: Boolean, reflect: true })\n disabled: boolean = false;\n\n @property({ type: Boolean, reflect: true })\n required: boolean = false;\n\n @property({ type: Boolean, reflect: true })\n focused: boolean = false;\n\n @property({ type: Boolean, reflect: true })\n rounded: boolean = false;\n\n @property({ type: Boolean, reflect: true })\n filled: boolean = false;\n\n @property({ type: String, reflect: true })\n appearance!: EnumAppearances;\n\n @property({ type: String })\n message: string = '';\n\n @property({ type: String, reflect: true })\n polarity?: 'light' | 'dark';\n\n @property({ type: String, reflect: true })\n dom: string = 'initializing';\n\n @query('input')\n input!: HTMLInputElement;\n\n firstUpdated() {\n emitEvent(this, 'kemet-checkbox-mounted', {\n bubbles: true,\n composed: true,\n detail: {\n element: this,\n },\n });\n this.dom = 'mounted';\n }\n\n constructor() {\n super();\n /** @internal */\n this.formSubmitController = new FormSubmitController(this);\n }\n\n render() {\n return html`\n <label part=\"label\">\n <input\n type=\"checkbox\"\n name=${ifDefined(this.name)}\n .value=${this.value}\n .indeterminate=${live(this.indeterminate)}\n .checked=${live(this.checked)}\n .disabled=${this.disabled}\n .required=${this.required}\n aria-checked=${this.checked ? 'true' : 'false'}\n @click=${() => this.handleClick()}\n @blur=${() => this.handleBlur()}\n @focus=${() => this.handleFocus()}\n @change=${() => this.handleChange()}\n />\n <button part=\"checkbox\" aria-label=${this.label}>\n ${this.makeCheckMark()}\n </button>\n <span part=\"text\">${this.label}</span>\n </label>\n ${this.makeMessage()}\n `;\n }\n\n /**\n * Simulates a click on the input element.\n * @public\n * @method click\n * @returns {void}\n */\n click(): void {\n this.input.click();\n }\n\n handleClick() {\n this.checked = !this.checked;\n this.indeterminate = false;\n emitEvent(this, 'kemet-change', { element: this });\n }\n\n handleBlur() {\n this.focused = false;\n emitEvent(this, 'kemet-blur', { element: this });\n }\n\n handleFocus() {\n this.focused = true;\n emitEvent(this, 'kemet-focus', { element: this });\n }\n\n handleChange() {\n this.value = this.checked;\n }\n\n makeMessage() {\n if (this.appearance === EnumAppearances.Error || this.appearance === EnumAppearances.Warning) {\n return html`<span part=\"message\">${this.message}</span>`;\n }\n\n return null;\n }\n\n makeCheckMark() {\n if (this.checked) {\n return html`\n <span part=\"mark\">\n <svg viewBox=\"0 0 16 16\">\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\" stroke-linecap=\"round\">\n <g stroke=\"currentColor\" stroke-width=\"2\">\n <g transform=\"translate(3.428571, 3.428571)\">\n <path d=\"M0,5.71428571 L3.42857143,9.14285714\"></path>\n <path d=\"M9.14285714,0 L3.42857143,9.14285714\"></path>\n </g>\n </g>\n </g>\n </svg>\n </span>\n `;\n }\n\n if (!this.checked && this.indeterminate) {\n return html`\n <span part=\"mark\">\n <svg viewBox=\"0 0 16 16\">\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\" stroke-linecap=\"round\">\n <g stroke=\"currentColor\" stroke-width=\"2\">\n <g transform=\"translate(2.285714, 6.857143)\">\n <path d=\"M10.2857143,1.14285714 L1.14285714,1.14285714\"></path>\n </g>\n </g>\n </g>\n </svg>\n </span>\n `;\n }\n\n return null;\n }\n\n checkValidity() {\n return this.input.checkValidity();\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-checkbox': KemetCheckbox\n }\n}\n","export class FormSubmitController {\n host: any;\n form: HTMLFormElement | null | undefined;\n options: {\n form: (input: any) => HTMLFormElement | null | undefined;\n name: (input: any) => string;\n value: (input: any) => any;\n disabled: (input: any) => boolean;\n };\n\n constructor(host: any, options: Partial<{\n form: (input: any) => HTMLFormElement | null | undefined;\n name: (input: any) => string;\n value: (input: any) => any;\n disabled: (input: any) => boolean;\n }> = {}) {\n (this.host = host).addController(this);\n\n this.options = {\n form: (input: any) => input.closest('form'),\n name: (input: any) => input.name,\n value: (input: any) => input.value,\n disabled: (input: any) => input.disabled,\n ...options,\n };\n\n this.handleFormData = this.handleFormData.bind(this);\n this.handleFormSubmit = this.handleFormSubmit.bind(this);\n }\n\n hostConnected() {\n this.form = this.options.form(this.host);\n\n if (this.form) {\n this.form.addEventListener('formdata', this.handleFormData);\n this.form.addEventListener('submit', this.handleFormSubmit);\n }\n }\n\n hostDisconnected() {\n if (this.form) {\n this.form.removeEventListener('formdata', this.handleFormData);\n this.form.removeEventListener('submit', this.handleFormSubmit);\n this.form = undefined;\n }\n }\n\n handleFormData(event: FormDataEvent) {\n const disabled = this.options.disabled(this.host);\n const name = this.options.name(this.host);\n const value = this.options.value(this.host);\n\n if (!disabled && typeof name === 'string' && typeof value !== 'undefined') {\n // TODO recreate a scenario where value will be an array\n // if (Array.isArray(value)) {\n // value.forEach((val) => {\n // event.formData?.append(name, val.toString());\n // });\n // } else {\n // event.formData?.append(name, value.toString());\n // }\n event.formData?.append(name, value.toString());\n }\n }\n\n handleFormSubmit(event: SubmitEvent) {\n event.preventDefault();\n event.stopImmediatePropagation();\n\n const disabled = this.options.disabled(this.host);\n this.form = this.options.form(this.host);\n\n if (this.form && !disabled) {\n const components = this.form.querySelectorAll('kemet-input, kemet-textarea, kemet-select, kemet-checkbox, kemet-radios');\n\n components.forEach((component: any) => {\n if (component.checkValidity) {\n component.checkValidity();\n\n if (!component.checkValidity()) {\n component.status = 'error';\n component.invalid = true;\n\n component.dispatchEvent(\n new CustomEvent('kemet-input-status', {\n bubbles: true,\n composed: true,\n detail: {\n status: 'error',\n validity: component.validity ? component.validity : {},\n element: component,\n },\n }),\n );\n }\n\n if (component.checkLimitValidity && !component.checkLimitValidity()) {\n component.status = 'error';\n component.invalid = true;\n\n component.dispatchEvent(\n new CustomEvent('kemet-input-status', {\n bubbles: true,\n composed: true,\n detail: {\n status: 'error',\n validity: { passedLimit: true },\n element: component,\n },\n }),\n );\n }\n }\n });\n }\n }\n\n submit() {\n const button = document.createElement('button');\n\n if (this.form) {\n button.type = 'submit';\n button.style.position = 'absolute';\n button.style.width = '0';\n button.style.height = '0';\n button.style.clip = 'rect(0 0 0 0)';\n button.style.clipPath = 'inset(50%)';\n button.style.overflow = 'hidden';\n button.style.whiteSpace = 'nowrap';\n this.form.append(button);\n button.click();\n button.remove();\n }\n }\n}\n","export const emitEvent = (element, name, detail, bubbles = true, composed = true) => {\n element.dispatchEvent(\n new CustomEvent(name, { bubbles, composed, detail }),\n );\n};\n","import { css } from 'lit';\n\nexport default css`:host {\n /* public */\n --kemet-checkbox-size: 18px;\n --kemet-checkbox-color: var(--kemet-color-background-inverse);\n --kemet-checkbox-mark-color: var(--kemet-checkbox-color);\n --kemet-checkbox-border: 1px solid var(--kemet-checkbox-color);\n --kemet-checkbox-border-radius: 0;\n\n /* private */\n --_kemet-checkbox-background-color: transparent;\n\n display: inline-block;\n}\n\n:host([disabled]) {\n --kemet-checkbox-color: var(--kemet-color-background-disabled)\n}\n\nlabel {\n display: inline-flex;\n gap: 0.5rem;\n align-items: center;\n}\n\ninput {\n cursor: pointer;\n margin: 0;\n padding: 0;\n width: var(--kemet-checkbox-size);\n height: var(--kemet-checkbox-size);\n position: relative;\n z-index: 99;\n opacity: 0;\n}\n\nbutton {\n margin: 0;\n border: none;\n background: none;\n}\n\n[part=checkbox] {\n color: var(--kemet-checkbox-mark-color);\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--kemet-checkbox-size);\n height: var(--kemet-checkbox-size);\n border: var(--kemet-checkbox-border);\n border-radius: var(--kemet-checkbox-border-radius);\n background-color: var(--_kemet-checkbox-background-color);\n position: absolute;\n}\n\n:host([rounded]) [part=checkbox] {\n --kemet-checkbox-border-radius: var(--kemet-border-radius-sm);\n}\n\n:host([filled]) {\n --kemet-checkbox-mark-color: var(--kemet-color-font-inverse-base);\n --kemet-checkbox-border: 1px solid var(--kemet-checkbox-color);\n --_kemet-checkbox-background-color: var(--kemet-checkbox-color);\n}\n\n\n[part=mark] {\n display: flex;\n width: calc(var(--kemet-checkbox-size) - 4px);\n height: calc(var(--kemet-checkbox-size) - 4px);\n}\n\n:host([filled][checked]) [part=mark],\n:host([filled][indeterminate]) [part=mark] {\n --kemet-checkbox-mark-color: var(--kemet-color-font-base-inverse);\n}\n\n[part=message] {\n display: block;\n margin-top: 0.5rem;\n}\n\n:host([appearance=brand]) {\n --kemet-checkbox-color: var(--kemet-color-brand-primary-base);\n}\n\n:host([appearance=error]) {\n --kemet-checkbox-color: var(--kemet-color-background-error);\n}\n\n:host([appearance=warning]) {\n --kemet-checkbox-color: var(--kemet-color-background-warning);\n}\n\n:host([appearance=info]) {\n --kemet-checkbox-color: var(--kemet-color-background-info);\n}\n\n:host([appearance=link]) {\n --kemet-checkbox-color: var(--kemet-color-background-link);\n}\n`;\n"],"mappings":"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","names":[]}
@@ -0,0 +1,5 @@
1
+ import * as lit from 'lit';
2
+
3
+ declare const _default: lit.CSSResult;
4
+
5
+ export { _default as default };
@@ -0,0 +1,107 @@
1
+ // src/elements/checkbox/styles.css.ts
2
+ import { css } from "lit";
3
+ var styles_css_default = css`:host {
4
+ /* public */
5
+ --kemet-checkbox-size: 18px;
6
+ --kemet-checkbox-color: var(--kemet-color-background-inverse);
7
+ --kemet-checkbox-mark-color: var(--kemet-checkbox-color);
8
+ --kemet-checkbox-border: 1px solid var(--kemet-checkbox-color);
9
+ --kemet-checkbox-border-radius: 0;
10
+
11
+ /* private */
12
+ --_kemet-checkbox-background-color: transparent;
13
+
14
+ display: inline-block;
15
+ }
16
+
17
+ :host([disabled]) {
18
+ --kemet-checkbox-color: var(--kemet-color-background-disabled)
19
+ }
20
+
21
+ label {
22
+ display: inline-flex;
23
+ gap: 0.5rem;
24
+ align-items: center;
25
+ }
26
+
27
+ input {
28
+ cursor: pointer;
29
+ margin: 0;
30
+ padding: 0;
31
+ width: var(--kemet-checkbox-size);
32
+ height: var(--kemet-checkbox-size);
33
+ position: relative;
34
+ z-index: 99;
35
+ opacity: 0;
36
+ }
37
+
38
+ button {
39
+ margin: 0;
40
+ border: none;
41
+ background: none;
42
+ }
43
+
44
+ [part=checkbox] {
45
+ color: var(--kemet-checkbox-mark-color);
46
+ display: flex;
47
+ align-items: center;
48
+ justify-content: center;
49
+ width: var(--kemet-checkbox-size);
50
+ height: var(--kemet-checkbox-size);
51
+ border: var(--kemet-checkbox-border);
52
+ border-radius: var(--kemet-checkbox-border-radius);
53
+ background-color: var(--_kemet-checkbox-background-color);
54
+ position: absolute;
55
+ }
56
+
57
+ :host([rounded]) [part=checkbox] {
58
+ --kemet-checkbox-border-radius: var(--kemet-border-radius-sm);
59
+ }
60
+
61
+ :host([filled]) {
62
+ --kemet-checkbox-mark-color: var(--kemet-color-font-inverse-base);
63
+ --kemet-checkbox-border: 1px solid var(--kemet-checkbox-color);
64
+ --_kemet-checkbox-background-color: var(--kemet-checkbox-color);
65
+ }
66
+
67
+
68
+ [part=mark] {
69
+ display: flex;
70
+ width: calc(var(--kemet-checkbox-size) - 4px);
71
+ height: calc(var(--kemet-checkbox-size) - 4px);
72
+ }
73
+
74
+ :host([filled][checked]) [part=mark],
75
+ :host([filled][indeterminate]) [part=mark] {
76
+ --kemet-checkbox-mark-color: var(--kemet-color-font-base-inverse);
77
+ }
78
+
79
+ [part=message] {
80
+ display: block;
81
+ margin-top: 0.5rem;
82
+ }
83
+
84
+ :host([appearance=brand]) {
85
+ --kemet-checkbox-color: var(--kemet-color-brand-primary-base);
86
+ }
87
+
88
+ :host([appearance=error]) {
89
+ --kemet-checkbox-color: var(--kemet-color-background-error);
90
+ }
91
+
92
+ :host([appearance=warning]) {
93
+ --kemet-checkbox-color: var(--kemet-color-background-warning);
94
+ }
95
+
96
+ :host([appearance=info]) {
97
+ --kemet-checkbox-color: var(--kemet-color-background-info);
98
+ }
99
+
100
+ :host([appearance=link]) {
101
+ --kemet-checkbox-color: var(--kemet-color-background-link);
102
+ }
103
+ `;
104
+ export {
105
+ styles_css_default as default
106
+ };
107
+ //# sourceMappingURL=styles.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/elements/checkbox/styles.css.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport default css`:host {\n /* public */\n --kemet-checkbox-size: 18px;\n --kemet-checkbox-color: var(--kemet-color-background-inverse);\n --kemet-checkbox-mark-color: var(--kemet-checkbox-color);\n --kemet-checkbox-border: 1px solid var(--kemet-checkbox-color);\n --kemet-checkbox-border-radius: 0;\n\n /* private */\n --_kemet-checkbox-background-color: transparent;\n\n display: inline-block;\n}\n\n:host([disabled]) {\n --kemet-checkbox-color: var(--kemet-color-background-disabled)\n}\n\nlabel {\n display: inline-flex;\n gap: 0.5rem;\n align-items: center;\n}\n\ninput {\n cursor: pointer;\n margin: 0;\n padding: 0;\n width: var(--kemet-checkbox-size);\n height: var(--kemet-checkbox-size);\n position: relative;\n z-index: 99;\n opacity: 0;\n}\n\nbutton {\n margin: 0;\n border: none;\n background: none;\n}\n\n[part=checkbox] {\n color: var(--kemet-checkbox-mark-color);\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--kemet-checkbox-size);\n height: var(--kemet-checkbox-size);\n border: var(--kemet-checkbox-border);\n border-radius: var(--kemet-checkbox-border-radius);\n background-color: var(--_kemet-checkbox-background-color);\n position: absolute;\n}\n\n:host([rounded]) [part=checkbox] {\n --kemet-checkbox-border-radius: var(--kemet-border-radius-sm);\n}\n\n:host([filled]) {\n --kemet-checkbox-mark-color: var(--kemet-color-font-inverse-base);\n --kemet-checkbox-border: 1px solid var(--kemet-checkbox-color);\n --_kemet-checkbox-background-color: var(--kemet-checkbox-color);\n}\n\n\n[part=mark] {\n display: flex;\n width: calc(var(--kemet-checkbox-size) - 4px);\n height: calc(var(--kemet-checkbox-size) - 4px);\n}\n\n:host([filled][checked]) [part=mark],\n:host([filled][indeterminate]) [part=mark] {\n --kemet-checkbox-mark-color: var(--kemet-color-font-base-inverse);\n}\n\n[part=message] {\n display: block;\n margin-top: 0.5rem;\n}\n\n:host([appearance=brand]) {\n --kemet-checkbox-color: var(--kemet-color-brand-primary-base);\n}\n\n:host([appearance=error]) {\n --kemet-checkbox-color: var(--kemet-color-background-error);\n}\n\n:host([appearance=warning]) {\n --kemet-checkbox-color: var(--kemet-color-background-warning);\n}\n\n:host([appearance=info]) {\n --kemet-checkbox-color: var(--kemet-color-background-info);\n}\n\n:host([appearance=link]) {\n --kemet-checkbox-color: var(--kemet-color-background-link);\n}\n`;\n"],"mappings":";AAAA,SAAS,WAAW;AAEpB,IAAO,qBAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
@@ -0,0 +1,4 @@
1
+ import 'lit-html';
2
+ import 'lit';
3
+ export { I as InterfaceKemetSelectionEvent, K as default } from '../../constants-W9QKPlZP.js';
4
+ import '../../form-controller-3q581XcZ.js';
@@ -0,0 +1,220 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __decorateClass = (decorators, target, key, kind) => {
4
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
5
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
6
+ if (decorator = decorators[i])
7
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
8
+ if (kind && result) __defProp(target, key, result);
9
+ return result;
10
+ };
11
+
12
+ // src/elements/combo/index.ts
13
+ import { html, LitElement } from "lit";
14
+ import { customElement, property, state } from "lit/decorators.js";
15
+
16
+ // src/utilities/events.ts
17
+ var emitEvent = (element, name, detail, bubbles = true, composed = true) => {
18
+ element.dispatchEvent(
19
+ new CustomEvent(name, { bubbles, composed, detail })
20
+ );
21
+ };
22
+
23
+ // src/elements/combo/styles.css.ts
24
+ import { css } from "lit";
25
+ var styles_css_default = css`:host {
26
+ --kemet-combo-width: calc(100% - 2px);
27
+ --kemet-combo-margin: 1rem auto;
28
+ --kemet-combo-max-height: calc(5 * 3rem);
29
+ --kemet-combo-border: 1px solid;
30
+ --kemet-combo-border-radius: var(--kemet-border-radius-md);
31
+ --kemet-combo-shadow: var(--kemet-elevation-layer-5);
32
+ --kemet-combo-font-color: var(--kemet-color-font-base);
33
+ --kemet-combo-background-color: var(--kemet-color-background-base);
34
+ --kemet-combo-item-background-color: var(--kemet-color-background-base);
35
+
36
+
37
+ opacity: 0;
38
+ width: var(--kemet-combo-width);
39
+ margin: var(--kemet-combo-margin);
40
+ pointer-events: none;
41
+ display: block;
42
+ position: relative;
43
+ transition: opacity 0.3s ease-in-out;
44
+ }
45
+
46
+ :host([show]) {
47
+ opacity: 1;
48
+ pointer-events: auto;
49
+ }
50
+
51
+ ul {
52
+ width: 100%;
53
+ max-height: var(--kemet-combo-max-height);
54
+ position: absolute;
55
+ z-index: 1;
56
+ list-style: none;
57
+ margin: 0;
58
+ padding: 0;
59
+ overflow-y: auto;
60
+ border: var(--kemet-combo-border);
61
+ border-radius: var(--kemet-combo-border-radius);
62
+ box-shadow: var(--kemet-combo-shadow);
63
+ background-color: var(--kemet-combo-background-color);
64
+ }
65
+
66
+ li {
67
+ color: var(--kemet-combo-font-color);
68
+ line-height: 3rem;
69
+ padding: 0 1.5rem;
70
+ cursor: pointer;
71
+ background-color: var(--kemet-combo-item-background-color);
72
+ }
73
+
74
+ li:hover,
75
+ li:focus {
76
+ --kemet-combo-font-color: var(--kemet-color-font-inverse-base);
77
+ --kemet-combo-item-background-color: var(--kemet-color-background-inverse);
78
+ outline: none;
79
+ }
80
+ `;
81
+
82
+ // src/elements/combo/index.ts
83
+ var KemetCombo = class extends LitElement {
84
+ constructor() {
85
+ super(...arguments);
86
+ this.options = [];
87
+ this.filteredOptions = [];
88
+ }
89
+ firstUpdated() {
90
+ this.field = this.closest("kemet-field");
91
+ this.input = this.field.querySelector('[slot="input"]');
92
+ this.slug = this.field.slug || "slug";
93
+ this.input.addEventListener("kemet-input-input", this.handleInput.bind(this));
94
+ this.input.addEventListener("kemet-input-focus", this.handleFocus.bind(this));
95
+ this.input.addEventListener("kemet-input-combo-input", this.handleInput.bind(this));
96
+ this.input.addEventListener("kemet-input-combo-focus", this.handleFocus.bind(this));
97
+ this.input.addEventListener("keydown", (event) => this.handleInputKeyDown(event));
98
+ }
99
+ render() {
100
+ return html`
101
+ <div
102
+ role="combobox"
103
+ part="combobox"
104
+ aria-expanded=${this.show}
105
+ aria-controls="${this.slug}-listbox"
106
+ aria-haspopup="listbox"
107
+ id="${this.slug}-combobox"
108
+ aria-label="${this.field?.label}"
109
+ >
110
+ <ul role="listbox" aria-labelledby="${this.slug}-label" id="${this.slug}-listbox" part="listbox">
111
+ ${this.makeOptions()}
112
+ </ul>
113
+ </div>
114
+ `;
115
+ }
116
+ makeOptions() {
117
+ if (this.input) {
118
+ this.filteredOptions = this.options.filter(
119
+ (option) => option.toLowerCase().indexOf(this.input.value?.toLowerCase()) !== -1
120
+ );
121
+ if (this.filteredOptions.length < 1) {
122
+ this.show = false;
123
+ return null;
124
+ }
125
+ return this.filteredOptions.map(
126
+ (option, index) => html`<li
127
+ id="${this.slug}-option-${index}"
128
+ role="option"
129
+ tabindex="0"
130
+ aria-selected="false"
131
+ @click=${(event) => this.handleSelection(event)}
132
+ @keydown=${(event) => this.handleOptionKeyDown(event)}
133
+ >
134
+ ${option}
135
+ </li>`
136
+ );
137
+ }
138
+ return null;
139
+ }
140
+ handleInput(event) {
141
+ this.makeOptions();
142
+ this.show = event.detail.value.length > 0;
143
+ }
144
+ handleFocus() {
145
+ this.makeOptions();
146
+ this.show = true;
147
+ }
148
+ handleSelection(event) {
149
+ const target = event.target;
150
+ this.input.value = target.innerText;
151
+ this.show = false;
152
+ emitEvent(this, "kemet-combo-selection", {
153
+ element: target,
154
+ text: target.innerText,
155
+ id: target.getAttribute("id")
156
+ });
157
+ }
158
+ handleOptionKeyDown(event) {
159
+ event.preventDefault();
160
+ const target = event.target;
161
+ if (event.code === "ArrowDown") {
162
+ const next = target.nextElementSibling;
163
+ if (next) {
164
+ next.focus();
165
+ } else {
166
+ this.shadowRoot?.querySelector("li")?.focus();
167
+ }
168
+ }
169
+ if (event.code === "ArrowUp") {
170
+ const previous = target.previousElementSibling;
171
+ const lastChild = this.shadowRoot?.querySelector("li:last-child");
172
+ if (previous) {
173
+ previous.focus();
174
+ } else {
175
+ lastChild.focus();
176
+ }
177
+ }
178
+ if (event.code === "Escape" || event.code === "Tab") {
179
+ this.show = false;
180
+ this.input.focus();
181
+ }
182
+ if (event.code === "Enter" || event.code === "Space") {
183
+ this.handleSelection(event);
184
+ }
185
+ }
186
+ handleInputKeyDown(event) {
187
+ if (event.code === "ArrowDown") {
188
+ this.shadowRoot?.querySelector("li")?.focus();
189
+ }
190
+ if (event.code === "Escape") {
191
+ this.show = false;
192
+ }
193
+ }
194
+ };
195
+ KemetCombo.styles = [styles_css_default];
196
+ __decorateClass([
197
+ property({ type: String })
198
+ ], KemetCombo.prototype, "slug", 2);
199
+ __decorateClass([
200
+ property({ type: Array })
201
+ ], KemetCombo.prototype, "options", 2);
202
+ __decorateClass([
203
+ property({ type: Boolean, reflect: true })
204
+ ], KemetCombo.prototype, "show", 2);
205
+ __decorateClass([
206
+ state()
207
+ ], KemetCombo.prototype, "filteredOptions", 2);
208
+ __decorateClass([
209
+ state()
210
+ ], KemetCombo.prototype, "field", 2);
211
+ __decorateClass([
212
+ state()
213
+ ], KemetCombo.prototype, "input", 2);
214
+ KemetCombo = __decorateClass([
215
+ customElement("kemet-combo")
216
+ ], KemetCombo);
217
+ export {
218
+ KemetCombo as default
219
+ };
220
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/elements/combo/index.ts","../../../src/utilities/events.ts","../../../src/elements/combo/styles.css.ts"],"sourcesContent":["import { html, LitElement, unsafeCSS } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { emitEvent } from '../../utilities/events';\nimport type HTMLKemetFieldElement from '../field';\nimport styles from './styles.css.ts';\n\nexport interface InterfaceKemetSelectionEvent {\n element: KemetCombo;\n text: string;\n id: string;\n}\n\n/**\n * @since 1.0.0\n * @status stable\n *\n * @tagname kemet-combo\n * @summary Allows the user to select a choice filtered through an Input. May only be used as a component of Field.\n *\n * @prop {string} slug - Uniquely identifies the component. Should match the slug used in a control.\n * @prop {array} options - An array of items listed for the combo box\n * @prop {boolean} show - Controls the display of the combo box\n *\n * @csspart combobox - The combo's container element.\n * @csspart listbox - The list element in the combo.\n *\n * @cssproperty --kemet-combo-width - The width of the combo box.\n * @cssproperty --kemet-combo-margin - The margins on the combo box.\n * @cssproperty --kemet-combo-max-height - The max height of the combo box.\n * @cssproperty --kemet-combo-border - The border of the combo box.\n * @cssproperty --kemet-combo-border-radius - The border radius of the combo box.\n * @cssproperty --kemet-combo-background-color - The background color of the combo box.\n * @cssproperty --kemet-combo-shadow - The shadow of the combo box.\n * @cssproperty --kemet-combo-hover-color - The hover item's text color.\n * @cssproperty --kemet-combo-hover-background-color - The hover item's background color.\n *\n * @event kemet-combo-selection - Fires when a selection has been made\n *\n */\n\n\n@customElement('kemet-combo')\nexport default class KemetCombo extends LitElement {\n static styles = [styles];\n\n @property({ type: String })\n slug?: string;\n\n @property({ type: Array })\n options: string[] = [];\n\n @property({ type: Boolean, reflect: true })\n show!: boolean;\n\n @state()\n filteredOptions: string[] = [];\n\n @state()\n field!: HTMLKemetFieldElement;\n\n @state()\n input!: HTMLInputElement;\n\n firstUpdated() {\n // standard properties\n this.field = this.closest('kemet-field') as HTMLKemetFieldElement;\n this.input = this.field.querySelector('[slot=\"input\"]') as HTMLInputElement;\n\n // managed properties\n this.slug = this.field.slug || 'slug';\n\n // events listeners\n this.input.addEventListener('kemet-input-input', this.handleInput.bind(this));\n this.input.addEventListener('kemet-input-focus', this.handleFocus.bind(this));\n this.input.addEventListener('kemet-input-combo-input', this.handleInput.bind(this));\n this.input.addEventListener('kemet-input-combo-focus', this.handleFocus.bind(this));\n this.input.addEventListener('keydown', event => this.handleInputKeyDown(event));\n }\n\n render() {\n return html`\n <div\n role=\"combobox\"\n part=\"combobox\"\n aria-expanded=${this.show}\n aria-controls=\"${this.slug}-listbox\"\n aria-haspopup=\"listbox\"\n id=\"${this.slug}-combobox\"\n aria-label=\"${this.field?.label}\"\n >\n <ul role=\"listbox\" aria-labelledby=\"${this.slug}-label\" id=\"${this.slug}-listbox\" part=\"listbox\">\n ${this.makeOptions()}\n </ul>\n </div>\n `;\n }\n\n makeOptions() {\n if (this.input) {\n this.filteredOptions = this.options.filter(\n option => option.toLowerCase().indexOf(this.input.value?.toLowerCase()) !== -1,\n );\n\n if (this.filteredOptions.length < 1) {\n this.show = false;\n return null;\n }\n\n return this.filteredOptions.map(\n (option, index) => html`<li\n id=\"${this.slug}-option-${index}\"\n role=\"option\"\n tabindex=\"0\"\n aria-selected=\"false\"\n @click=${(event: KeyboardEvent) => this.handleSelection(event)}\n @keydown=${(event: KeyboardEvent) => this.handleOptionKeyDown(event)}\n >\n ${option}\n </li>`,\n );\n }\n\n return null;\n }\n\n handleInput(event: Event) {\n this.makeOptions();\n this.show = (event as CustomEvent).detail.value.length > 0;\n }\n\n handleFocus() {\n this.makeOptions();\n this.show = true;\n }\n\n handleSelection(event: KeyboardEvent) {\n const target = event.target as HTMLElement;\n this.input.value = target.innerText;\n this.show = false;\n\n emitEvent(this, 'kemet-combo-selection', {\n element: target,\n text: target.innerText,\n id: target.getAttribute('id'),\n });\n }\n\n handleOptionKeyDown(event: KeyboardEvent) {\n event.preventDefault();\n const target = event.target as HTMLElement;\n\n if (event.code === 'ArrowDown') {\n const next = target.nextElementSibling as HTMLElement;\n\n if (next) {\n next.focus();\n } else {\n this.shadowRoot?.querySelector('li')?.focus();\n }\n }\n\n if (event.code === 'ArrowUp') {\n const previous = target.previousElementSibling as HTMLElement;\n const lastChild = this.shadowRoot?.querySelector('li:last-child') as HTMLElement;\n\n if (previous) {\n previous.focus();\n } else {\n lastChild.focus();\n }\n }\n\n if (event.code === 'Escape' || event.code === 'Tab') {\n this.show = false;\n this.input.focus();\n }\n\n if (event.code === 'Enter' || event.code === 'Space') {\n this.handleSelection(event);\n }\n }\n\n handleInputKeyDown(event: KeyboardEvent) {\n if (event.code === 'ArrowDown') {\n this.shadowRoot?.querySelector('li')?.focus();\n }\n\n if (event.code === 'Escape') {\n this.show = false;\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-combo': KemetCombo\n }\n}\n","export const emitEvent = (element, name, detail, bubbles = true, composed = true) => {\n element.dispatchEvent(\n new CustomEvent(name, { bubbles, composed, detail }),\n );\n};\n","import { css } from 'lit';\n\nexport default css`:host {\n --kemet-combo-width: calc(100% - 2px);\n --kemet-combo-margin: 1rem auto;\n --kemet-combo-max-height: calc(5 * 3rem);\n --kemet-combo-border: 1px solid;\n --kemet-combo-border-radius: var(--kemet-border-radius-md);\n --kemet-combo-shadow: var(--kemet-elevation-layer-5);\n --kemet-combo-font-color: var(--kemet-color-font-base);\n --kemet-combo-background-color: var(--kemet-color-background-base);\n --kemet-combo-item-background-color: var(--kemet-color-background-base);\n\n\n opacity: 0;\n width: var(--kemet-combo-width);\n margin: var(--kemet-combo-margin);\n pointer-events: none;\n display: block;\n position: relative;\n transition: opacity 0.3s ease-in-out;\n}\n\n:host([show]) {\n opacity: 1;\n pointer-events: auto;\n}\n\nul {\n width: 100%;\n max-height: var(--kemet-combo-max-height);\n position: absolute;\n z-index: 1;\n list-style: none;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n border: var(--kemet-combo-border);\n border-radius: var(--kemet-combo-border-radius);\n box-shadow: var(--kemet-combo-shadow);\n background-color: var(--kemet-combo-background-color);\n}\n\nli {\n color: var(--kemet-combo-font-color);\n line-height: 3rem;\n padding: 0 1.5rem;\n cursor: pointer;\n background-color: var(--kemet-combo-item-background-color);\n}\n\nli:hover,\nli:focus {\n --kemet-combo-font-color: var(--kemet-color-font-inverse-base);\n --kemet-combo-item-background-color: var(--kemet-color-background-inverse);\n outline: none;\n}\n`;\n"],"mappings":"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","names":[]}
@@ -0,0 +1,5 @@
1
+ import * as lit from 'lit';
2
+
3
+ declare const _default: lit.CSSResult;
4
+
5
+ export { _default as default };
@@ -0,0 +1,62 @@
1
+ // src/elements/combo/styles.css.ts
2
+ import { css } from "lit";
3
+ var styles_css_default = css`:host {
4
+ --kemet-combo-width: calc(100% - 2px);
5
+ --kemet-combo-margin: 1rem auto;
6
+ --kemet-combo-max-height: calc(5 * 3rem);
7
+ --kemet-combo-border: 1px solid;
8
+ --kemet-combo-border-radius: var(--kemet-border-radius-md);
9
+ --kemet-combo-shadow: var(--kemet-elevation-layer-5);
10
+ --kemet-combo-font-color: var(--kemet-color-font-base);
11
+ --kemet-combo-background-color: var(--kemet-color-background-base);
12
+ --kemet-combo-item-background-color: var(--kemet-color-background-base);
13
+
14
+
15
+ opacity: 0;
16
+ width: var(--kemet-combo-width);
17
+ margin: var(--kemet-combo-margin);
18
+ pointer-events: none;
19
+ display: block;
20
+ position: relative;
21
+ transition: opacity 0.3s ease-in-out;
22
+ }
23
+
24
+ :host([show]) {
25
+ opacity: 1;
26
+ pointer-events: auto;
27
+ }
28
+
29
+ ul {
30
+ width: 100%;
31
+ max-height: var(--kemet-combo-max-height);
32
+ position: absolute;
33
+ z-index: 1;
34
+ list-style: none;
35
+ margin: 0;
36
+ padding: 0;
37
+ overflow-y: auto;
38
+ border: var(--kemet-combo-border);
39
+ border-radius: var(--kemet-combo-border-radius);
40
+ box-shadow: var(--kemet-combo-shadow);
41
+ background-color: var(--kemet-combo-background-color);
42
+ }
43
+
44
+ li {
45
+ color: var(--kemet-combo-font-color);
46
+ line-height: 3rem;
47
+ padding: 0 1.5rem;
48
+ cursor: pointer;
49
+ background-color: var(--kemet-combo-item-background-color);
50
+ }
51
+
52
+ li:hover,
53
+ li:focus {
54
+ --kemet-combo-font-color: var(--kemet-color-font-inverse-base);
55
+ --kemet-combo-item-background-color: var(--kemet-color-background-inverse);
56
+ outline: none;
57
+ }
58
+ `;
59
+ export {
60
+ styles_css_default as default
61
+ };
62
+ //# sourceMappingURL=styles.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/elements/combo/styles.css.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport default css`:host {\n --kemet-combo-width: calc(100% - 2px);\n --kemet-combo-margin: 1rem auto;\n --kemet-combo-max-height: calc(5 * 3rem);\n --kemet-combo-border: 1px solid;\n --kemet-combo-border-radius: var(--kemet-border-radius-md);\n --kemet-combo-shadow: var(--kemet-elevation-layer-5);\n --kemet-combo-font-color: var(--kemet-color-font-base);\n --kemet-combo-background-color: var(--kemet-color-background-base);\n --kemet-combo-item-background-color: var(--kemet-color-background-base);\n\n\n opacity: 0;\n width: var(--kemet-combo-width);\n margin: var(--kemet-combo-margin);\n pointer-events: none;\n display: block;\n position: relative;\n transition: opacity 0.3s ease-in-out;\n}\n\n:host([show]) {\n opacity: 1;\n pointer-events: auto;\n}\n\nul {\n width: 100%;\n max-height: var(--kemet-combo-max-height);\n position: absolute;\n z-index: 1;\n list-style: none;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n border: var(--kemet-combo-border);\n border-radius: var(--kemet-combo-border-radius);\n box-shadow: var(--kemet-combo-shadow);\n background-color: var(--kemet-combo-background-color);\n}\n\nli {\n color: var(--kemet-combo-font-color);\n line-height: 3rem;\n padding: 0 1.5rem;\n cursor: pointer;\n background-color: var(--kemet-combo-item-background-color);\n}\n\nli:hover,\nli:focus {\n --kemet-combo-font-color: var(--kemet-color-font-inverse-base);\n --kemet-combo-item-background-color: var(--kemet-color-background-inverse);\n outline: none;\n}\n`;\n"],"mappings":";AAAA,SAAS,WAAW;AAEpB,IAAO,qBAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
@@ -0,0 +1,4 @@
1
+ import 'lit-html';
2
+ import 'lit';
3
+ export { m as InterfaceAppearanceChangeEvent, a as default } from '../../constants-W9QKPlZP.js';
4
+ import '../../form-controller-3q581XcZ.js';
@@ -0,0 +1,102 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __decorateClass = (decorators, target, key, kind) => {
4
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
5
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
6
+ if (decorator = decorators[i])
7
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
8
+ if (kind && result) __defProp(target, key, result);
9
+ return result;
10
+ };
11
+
12
+ // src/elements/count/index.ts
13
+ import { html, css, LitElement } from "lit";
14
+ import { customElement, property, state } from "lit/decorators.js";
15
+
16
+ // src/utilities/events.ts
17
+ var emitEvent = (element, name, detail, bubbles = true, composed = true) => {
18
+ element.dispatchEvent(
19
+ new CustomEvent(name, { bubbles, composed, detail })
20
+ );
21
+ };
22
+
23
+ // src/elements/count/index.ts
24
+ var KemetCount = class extends LitElement {
25
+ firstUpdated() {
26
+ this.field = this.closest("kemet-field");
27
+ this.inputSlot = this.field.querySelector('[slot="input"]');
28
+ this.remaining = this.limit - this.field.length;
29
+ this.field.addEventListener("kemet-input-input", (event) => this.handleInput(event));
30
+ this.field.addEventListener("kemet-textarea-input", (event) => this.handleInput(event));
31
+ this.input = this.inputSlot?.shadowRoot?.querySelector("input") || null;
32
+ this.textarea = this.inputSlot?.shadowRoot?.querySelector("textarea") || null;
33
+ }
34
+ render() {
35
+ return html`${this.remaining} ${this.message}`;
36
+ }
37
+ handleInput(event) {
38
+ this.remaining = this.limit - event.detail.value.length;
39
+ const nativeElement = this.input || this.textarea;
40
+ if (nativeElement) {
41
+ if (this.remaining < 0) {
42
+ if (this.validateImmediately) {
43
+ this.inputSlot.appearance = "error" /* Error */;
44
+ this.inputSlot.invalid = true;
45
+ emitEvent(this, "kemet-count-appearance-change", {
46
+ status: "error" /* Error */,
47
+ validity: nativeElement.validity,
48
+ element: this.inputSlot
49
+ });
50
+ }
51
+ } else {
52
+ this.inputSlot.appearance = "neutral" /* Neutral */;
53
+ nativeElement.checkValidity();
54
+ emitEvent(this, "kemet-count-appearance-change", {
55
+ appearance: "neutral" /* Neutral */,
56
+ validity: nativeElement.validity,
57
+ element: this.inputSlot
58
+ });
59
+ }
60
+ }
61
+ }
62
+ };
63
+ KemetCount.styles = [
64
+ css`
65
+ :host {
66
+ display: block;
67
+ font-size: var(--kemet-count-font-size, 90%);
68
+ margin-top: 0.8rem;
69
+ }
70
+ `
71
+ ];
72
+ __decorateClass([
73
+ property({ type: String })
74
+ ], KemetCount.prototype, "message", 2);
75
+ __decorateClass([
76
+ property({ type: Number })
77
+ ], KemetCount.prototype, "limit", 2);
78
+ __decorateClass([
79
+ property({ type: Boolean, attribute: "validate-immediately" })
80
+ ], KemetCount.prototype, "validateImmediately", 2);
81
+ __decorateClass([
82
+ state()
83
+ ], KemetCount.prototype, "remaining", 2);
84
+ __decorateClass([
85
+ state()
86
+ ], KemetCount.prototype, "field", 2);
87
+ __decorateClass([
88
+ state()
89
+ ], KemetCount.prototype, "inputSlot", 2);
90
+ __decorateClass([
91
+ state()
92
+ ], KemetCount.prototype, "input", 2);
93
+ __decorateClass([
94
+ state()
95
+ ], KemetCount.prototype, "textarea", 2);
96
+ KemetCount = __decorateClass([
97
+ customElement("kemet-count")
98
+ ], KemetCount);
99
+ export {
100
+ KemetCount as default
101
+ };
102
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/elements/count/index.ts","../../../src/utilities/events.ts"],"sourcesContent":["import { html, css, LitElement } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { emitEvent } from '../../utilities/events';\nimport HTMLKemetFieldElement from '../field';\nimport HTMLKemetInputElement from '../input';\nimport HTMLKemetTextareaElement from '../textarea';\nimport { EnumAppearances } from '../../utilities/constants';\n\nexport interface InterfaceAppearanceChangeEvent {\n appearance: EnumAppearances;\n validity: ValidityState;\n element: HTMLKemetFieldElement;\n}\n\n/**\n * @since 1.0.0\n * @status stable\n *\n * @tagname kemet-count\n * @summary Maintains a character count for an input field. Is to be used only in the component slot of a Field component.\n *\n * @prop {string} message - The text label shown to users\n * @prop {number} remaining - The number of characters remaining\n * @prop {number} limit - The maximum number of characters allowed\n * @prop {boolean} validateImmediately - Set to true if the field should validate as soon as the character limit is reached\n *\n * @cssproperty --kemet-count-font-size - The font size. Default: 90%.\n *\n * @fires kemet-count-appearance-change - Fires when there's a change in status.\n *\n */\n\n@customElement('kemet-count')\nexport default class KemetCount extends LitElement {\n static styles = [\n css`\n :host {\n display: block;\n font-size: var(--kemet-count-font-size, 90%);\n margin-top: 0.8rem;\n }\n `,\n ];\n\n @property({ type: String })\n message!: string;\n\n @property({ type: Number })\n limit!: number;\n\n @property({ type: Boolean, attribute: 'validate-immediately' })\n validateImmediately!: boolean;\n\n @state()\n remaining!: number;\n\n @state()\n field!: HTMLKemetFieldElement;\n\n @state()\n inputSlot!: HTMLKemetInputElement | HTMLKemetTextareaElement;\n\n @state()\n input!: HTMLInputElement | null;\n\n @state()\n textarea!: HTMLTextAreaElement | null;\n\n firstUpdated() {\n this.field = this.closest('kemet-field') as HTMLKemetFieldElement;\n this.inputSlot = this.field.querySelector('[slot=\"input\"]') as HTMLKemetInputElement | HTMLKemetTextareaElement;\n this.remaining = this.limit - this.field.length;\n\n this.field.addEventListener('kemet-input-input', (event: Event) => this.handleInput(event));\n this.field.addEventListener('kemet-textarea-input', (event: Event) => this.handleInput(event));\n\n this.input = this.inputSlot?.shadowRoot?.querySelector('input') || null;\n this.textarea = this.inputSlot?.shadowRoot?.querySelector('textarea') || null;\n }\n\n render() {\n return html`${this.remaining} ${this.message}`;\n }\n\n handleInput(event: Event) {\n this.remaining = this.limit - (event as CustomEvent).detail.value.length;\n\n const nativeElement = this.input || this.textarea;\n\n if (nativeElement) {\n if (this.remaining < 0) {\n if (this.validateImmediately) {\n (this.inputSlot as any).appearance = EnumAppearances.Error;\n (this.inputSlot as any).invalid = true;\n\n emitEvent(this, 'kemet-count-appearance-change', {\n status: EnumAppearances.Error,\n validity: nativeElement.validity,\n element: this.inputSlot,\n });\n }\n } else {\n (this.inputSlot as any).appearance = EnumAppearances.Neutral;\n nativeElement.checkValidity();\n\n emitEvent(this, 'kemet-count-appearance-change', {\n appearance: EnumAppearances.Neutral,\n validity: nativeElement.validity,\n element: this.inputSlot,\n });\n }\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-count': KemetCount\n }\n}\n","export const emitEvent = (element, name, detail, bubbles = true, composed = true) => {\n element.dispatchEvent(\n new CustomEvent(name, { bubbles, composed, detail }),\n );\n};\n"],"mappings":";;;;;;;;;;;;AAAA,SAAS,MAAM,KAAK,kBAAkB;AACtC,SAAS,eAAe,UAAU,aAAa;;;ACDxC,IAAM,YAAY,CAAC,SAAS,MAAM,QAAQ,UAAU,MAAM,WAAW,SAAS;AACnF,UAAQ;AAAA,IACN,IAAI,YAAY,MAAM,EAAE,SAAS,UAAU,OAAO,CAAC;AAAA,EACrD;AACF;;;AD6BA,IAAqB,aAArB,cAAwC,WAAW;AAAA,EAmCjD,eAAe;AACb,SAAK,QAAQ,KAAK,QAAQ,aAAa;AACvC,SAAK,YAAY,KAAK,MAAM,cAAc,gBAAgB;AAC1D,SAAK,YAAY,KAAK,QAAQ,KAAK,MAAM;AAEzC,SAAK,MAAM,iBAAiB,qBAAqB,CAAC,UAAiB,KAAK,YAAY,KAAK,CAAC;AAC1F,SAAK,MAAM,iBAAiB,wBAAwB,CAAC,UAAiB,KAAK,YAAY,KAAK,CAAC;AAE7F,SAAK,QAAQ,KAAK,WAAW,YAAY,cAAc,OAAO,KAAK;AACnE,SAAK,WAAW,KAAK,WAAW,YAAY,cAAc,UAAU,KAAK;AAAA,EAC3E;AAAA,EAEA,SAAS;AACP,WAAO,OAAO,KAAK,SAAS,IAAI,KAAK,OAAO;AAAA,EAC9C;AAAA,EAEA,YAAY,OAAc;AACxB,SAAK,YAAY,KAAK,QAAS,MAAsB,OAAO,MAAM;AAElE,UAAM,gBAAgB,KAAK,SAAS,KAAK;AAEzC,QAAI,eAAe;AACjB,UAAI,KAAK,YAAY,GAAG;AACtB,YAAI,KAAK,qBAAqB;AAC5B,UAAC,KAAK,UAAkB;AACxB,UAAC,KAAK,UAAkB,UAAU;AAElC,oBAAU,MAAM,iCAAiC;AAAA,YAC/C;AAAA,YACA,UAAU,cAAc;AAAA,YACxB,SAAS,KAAK;AAAA,UAChB,CAAC;AAAA,QACH;AAAA,MACF,OAAO;AACL,QAAC,KAAK,UAAkB;AACxB,sBAAc,cAAc;AAE5B,kBAAU,MAAM,iCAAiC;AAAA,UAC/C;AAAA,UACA,UAAU,cAAc;AAAA,UACxB,SAAS,KAAK;AAAA,QAChB,CAAC;AAAA,MACH;AAAA,IACF;AAAA,EACF;AACF;AAhFqB,WACZ,SAAS;AAAA,EACd;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOF;AAGA;AAAA,EADC,SAAS,EAAE,MAAM,OAAO,CAAC;AAAA,GAXP,WAYnB;AAGA;AAAA,EADC,SAAS,EAAE,MAAM,OAAO,CAAC;AAAA,GAdP,WAenB;AAGA;AAAA,EADC,SAAS,EAAE,MAAM,SAAS,WAAW,uBAAuB,CAAC;AAAA,GAjB3C,WAkBnB;AAGA;AAAA,EADC,MAAM;AAAA,GApBY,WAqBnB;AAGA;AAAA,EADC,MAAM;AAAA,GAvBY,WAwBnB;AAGA;AAAA,EADC,MAAM;AAAA,GA1BY,WA2BnB;AAGA;AAAA,EADC,MAAM;AAAA,GA7BY,WA8BnB;AAGA;AAAA,EADC,MAAM;AAAA,GAhCY,WAiCnB;AAjCmB,aAArB;AAAA,EADC,cAAc,aAAa;AAAA,GACP;","names":[]}
@@ -0,0 +1,5 @@
1
+ import * as lit from 'lit';
2
+
3
+ declare const _default: lit.CSSResult;
4
+
5
+ export { _default as default };