kemet-ui 3.1.0 → 4.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 (575) hide show
  1. package/custom-elements.json +2144 -1522
  2. package/dist/{components/kemet-accordion/styles.js → styles/elements/accordion.ts} +4 -3
  3. package/dist/{components/kemet-alert/styles.js → styles/elements/alert.ts} +53 -3
  4. package/dist/{components/kemet-avatar/styles.js → styles/elements/avatar.ts} +26 -12
  5. package/dist/styles/elements/badge.ts +92 -0
  6. package/dist/{components/kemet-button/styles.js → styles/elements/button.ts} +32 -13
  7. package/dist/{components/kemet-card/styles.js → styles/elements/card.ts} +3 -3
  8. package/dist/{components/kemet-carousel/styles.js → styles/elements/carousel.ts} +2 -2
  9. package/dist/{components/kemet-checkbox/styles.js → styles/elements/checkbox.ts} +2 -2
  10. package/dist/{components/kemet-combo/styles.js → styles/elements/combo.ts} +2 -2
  11. package/dist/{components/kemet-drawer/styles.js → styles/elements/drawer.ts} +5 -3
  12. package/dist/{components/kemet-fab/styles.js → styles/elements/fab.ts} +2 -2
  13. package/dist/{components/kemet-field/styles.js → styles/elements/field.ts} +2 -14
  14. package/dist/{components/kemet-flipcard/styles.js → styles/elements/flipcard.ts} +2 -2
  15. package/dist/styles/elements/icon-lucide.ts +7 -0
  16. package/dist/{components/kemet-input/styles.js → styles/elements/input.ts} +36 -12
  17. package/dist/{components/kemet-modal/styles.js → styles/elements/modal.ts} +27 -6
  18. package/dist/{components/kemet-multi-input/styles.js → styles/elements/multi-input.ts} +41 -3
  19. package/dist/{components/kemet-password/styles.js → styles/elements/password.ts} +3 -3
  20. package/dist/{components/kemet-popper/styles.effects.js → styles/elements/popper.ts} +52 -9
  21. package/dist/{components/kemet-radio/styles.js → styles/elements/radio.ts} +4 -3
  22. package/dist/{components/kemet-rotator/styles.js → styles/elements/rotator.ts} +2 -2
  23. package/dist/{components/kemet-scroll-nav/styles.js → styles/elements/scroll-nav.ts} +2 -2
  24. package/dist/{components/kemet-scroll-snap/styles.js → styles/elements/scroll-snap.ts} +4 -3
  25. package/dist/{components/kemet-select/styles.js → styles/elements/select.ts} +34 -10
  26. package/dist/{components/kemet-sortable/styles.js → styles/elements/sortable.ts} +4 -3
  27. package/dist/{components/kemet-tabs/styles.js → styles/elements/tabs.ts} +7 -5
  28. package/dist/{components/kemet-textarea/styles.js → styles/elements/textarea.ts} +29 -4
  29. package/dist/{components/kemet-timer/styles.js → styles/elements/timer.ts} +4 -3
  30. package/dist/{components/kemet-toggle/styles.js → styles/elements/toggle.ts} +2 -2
  31. package/dist/{components/kemet-tooltip/styles.js → styles/elements/tooltip.ts} +2 -2
  32. package/dist/{components/kemet-tracker/styles.js → styles/elements/tracker.ts} +2 -2
  33. package/dist/{components/kemet-upload/styles.js → styles/elements/upload.ts} +6 -4
  34. package/dist/styles/kemet.base.css +1 -1
  35. package/dist/styles/kemet.base.css.map +1 -1
  36. package/dist/styles/kemet.core.css +1 -1
  37. package/dist/styles/kemet.core.css.map +1 -1
  38. package/dist/styles/shared/_helpers.scss +19 -18
  39. package/package.json +71 -88
  40. package/types/global.d.ts +3 -0
  41. package/types/jsx.d.ts +140 -0
  42. package/dist/components/kemet-accordion/docs/stories.d.ts +0 -12
  43. package/dist/components/kemet-accordion/docs/stories.js +0 -99
  44. package/dist/components/kemet-accordion/docs/stories.js.map +0 -1
  45. package/dist/components/kemet-accordion/kemet-accordion-panel.d.ts +0 -50
  46. package/dist/components/kemet-accordion/kemet-accordion-panel.js +0 -137
  47. package/dist/components/kemet-accordion/kemet-accordion-panel.js.map +0 -1
  48. package/dist/components/kemet-accordion/kemet-accordion.d.ts +0 -38
  49. package/dist/components/kemet-accordion/kemet-accordion.js +0 -138
  50. package/dist/components/kemet-accordion/kemet-accordion.js.map +0 -1
  51. package/dist/components/kemet-accordion/spec.d.ts +0 -2
  52. package/dist/components/kemet-accordion/spec.js +0 -132
  53. package/dist/components/kemet-accordion/spec.js.map +0 -1
  54. package/dist/components/kemet-accordion/styles.d.ts +0 -2
  55. package/dist/components/kemet-accordion/styles.js.map +0 -1
  56. package/dist/components/kemet-alert/docs/stories.d.ts +0 -21
  57. package/dist/components/kemet-alert/docs/stories.js +0 -222
  58. package/dist/components/kemet-alert/docs/stories.js.map +0 -1
  59. package/dist/components/kemet-alert/kemet-alert.d.ts +0 -51
  60. package/dist/components/kemet-alert/kemet-alert.js +0 -111
  61. package/dist/components/kemet-alert/kemet-alert.js.map +0 -1
  62. package/dist/components/kemet-alert/spec.d.ts +0 -1
  63. package/dist/components/kemet-alert/spec.js +0 -35
  64. package/dist/components/kemet-alert/spec.js.map +0 -1
  65. package/dist/components/kemet-alert/styles.d.ts +0 -1
  66. package/dist/components/kemet-alert/styles.js.map +0 -1
  67. package/dist/components/kemet-alert/types.d.ts +0 -1
  68. package/dist/components/kemet-alert/types.js +0 -2
  69. package/dist/components/kemet-alert/types.js.map +0 -1
  70. package/dist/components/kemet-avatar/docs/stories.d.ts +0 -15
  71. package/dist/components/kemet-avatar/docs/stories.js +0 -108
  72. package/dist/components/kemet-avatar/docs/stories.js.map +0 -1
  73. package/dist/components/kemet-avatar/kemet-avatar.d.ts +0 -43
  74. package/dist/components/kemet-avatar/kemet-avatar.js +0 -78
  75. package/dist/components/kemet-avatar/kemet-avatar.js.map +0 -1
  76. package/dist/components/kemet-avatar/kemet-avatars.d.ts +0 -20
  77. package/dist/components/kemet-avatar/kemet-avatars.js +0 -25
  78. package/dist/components/kemet-avatar/kemet-avatars.js.map +0 -1
  79. package/dist/components/kemet-avatar/spec.d.ts +0 -1
  80. package/dist/components/kemet-avatar/spec.js +0 -26
  81. package/dist/components/kemet-avatar/spec.js.map +0 -1
  82. package/dist/components/kemet-avatar/styles.d.ts +0 -2
  83. package/dist/components/kemet-avatar/styles.js.map +0 -1
  84. package/dist/components/kemet-badge/docs/stories.d.ts +0 -15
  85. package/dist/components/kemet-badge/docs/stories.js +0 -76
  86. package/dist/components/kemet-badge/docs/stories.js.map +0 -1
  87. package/dist/components/kemet-badge/kemet-badge.d.ts +0 -31
  88. package/dist/components/kemet-badge/kemet-badge.js +0 -55
  89. package/dist/components/kemet-badge/kemet-badge.js.map +0 -1
  90. package/dist/components/kemet-badge/spec.d.ts +0 -1
  91. package/dist/components/kemet-badge/spec.js +0 -21
  92. package/dist/components/kemet-badge/spec.js.map +0 -1
  93. package/dist/components/kemet-badge/styles.d.ts +0 -1
  94. package/dist/components/kemet-badge/styles.js +0 -42
  95. package/dist/components/kemet-badge/styles.js.map +0 -1
  96. package/dist/components/kemet-badge/types.d.ts +0 -1
  97. package/dist/components/kemet-badge/types.js +0 -2
  98. package/dist/components/kemet-badge/types.js.map +0 -1
  99. package/dist/components/kemet-button/docs/stories.d.ts +0 -21
  100. package/dist/components/kemet-button/docs/stories.js +0 -112
  101. package/dist/components/kemet-button/docs/stories.js.map +0 -1
  102. package/dist/components/kemet-button/kemet-button.d.ts +0 -89
  103. package/dist/components/kemet-button/kemet-button.js +0 -155
  104. package/dist/components/kemet-button/kemet-button.js.map +0 -1
  105. package/dist/components/kemet-button/spec.d.ts +0 -1
  106. package/dist/components/kemet-button/spec.js +0 -49
  107. package/dist/components/kemet-button/spec.js.map +0 -1
  108. package/dist/components/kemet-button/styles.d.ts +0 -1
  109. package/dist/components/kemet-button/styles.js.map +0 -1
  110. package/dist/components/kemet-button/types.d.ts +0 -1
  111. package/dist/components/kemet-button/types.js +0 -2
  112. package/dist/components/kemet-button/types.js.map +0 -1
  113. package/dist/components/kemet-card/docs/stories.d.ts +0 -19
  114. package/dist/components/kemet-card/docs/stories.js +0 -120
  115. package/dist/components/kemet-card/docs/stories.js.map +0 -1
  116. package/dist/components/kemet-card/kemet-card.d.ts +0 -47
  117. package/dist/components/kemet-card/kemet-card.js +0 -65
  118. package/dist/components/kemet-card/kemet-card.js.map +0 -1
  119. package/dist/components/kemet-card/spec.d.ts +0 -1
  120. package/dist/components/kemet-card/spec.js +0 -31
  121. package/dist/components/kemet-card/spec.js.map +0 -1
  122. package/dist/components/kemet-card/styles.d.ts +0 -1
  123. package/dist/components/kemet-card/styles.js.map +0 -1
  124. package/dist/components/kemet-carousel/docs/stories.d.ts +0 -23
  125. package/dist/components/kemet-carousel/docs/stories.js +0 -180
  126. package/dist/components/kemet-carousel/docs/stories.js.map +0 -1
  127. package/dist/components/kemet-carousel/kemet-carousel-current.d.ts +0 -26
  128. package/dist/components/kemet-carousel/kemet-carousel-current.js +0 -44
  129. package/dist/components/kemet-carousel/kemet-carousel-current.js.map +0 -1
  130. package/dist/components/kemet-carousel/kemet-carousel-first.d.ts +0 -26
  131. package/dist/components/kemet-carousel/kemet-carousel-first.js +0 -57
  132. package/dist/components/kemet-carousel/kemet-carousel-first.js.map +0 -1
  133. package/dist/components/kemet-carousel/kemet-carousel-last.d.ts +0 -26
  134. package/dist/components/kemet-carousel/kemet-carousel-last.js +0 -57
  135. package/dist/components/kemet-carousel/kemet-carousel-last.js.map +0 -1
  136. package/dist/components/kemet-carousel/kemet-carousel-link.d.ts +0 -32
  137. package/dist/components/kemet-carousel/kemet-carousel-link.js +0 -74
  138. package/dist/components/kemet-carousel/kemet-carousel-link.js.map +0 -1
  139. package/dist/components/kemet-carousel/kemet-carousel-next.d.ts +0 -26
  140. package/dist/components/kemet-carousel/kemet-carousel-next.js +0 -57
  141. package/dist/components/kemet-carousel/kemet-carousel-next.js.map +0 -1
  142. package/dist/components/kemet-carousel/kemet-carousel-prev.d.ts +0 -26
  143. package/dist/components/kemet-carousel/kemet-carousel-prev.js +0 -57
  144. package/dist/components/kemet-carousel/kemet-carousel-prev.js.map +0 -1
  145. package/dist/components/kemet-carousel/kemet-carousel-slide.d.ts +0 -29
  146. package/dist/components/kemet-carousel/kemet-carousel-slide.js +0 -53
  147. package/dist/components/kemet-carousel/kemet-carousel-slide.js.map +0 -1
  148. package/dist/components/kemet-carousel/kemet-carousel-total.d.ts +0 -26
  149. package/dist/components/kemet-carousel/kemet-carousel-total.js +0 -44
  150. package/dist/components/kemet-carousel/kemet-carousel-total.js.map +0 -1
  151. package/dist/components/kemet-carousel/kemet-carousel.d.ts +0 -118
  152. package/dist/components/kemet-carousel/kemet-carousel.js +0 -429
  153. package/dist/components/kemet-carousel/kemet-carousel.js.map +0 -1
  154. package/dist/components/kemet-carousel/spec.d.ts +0 -10
  155. package/dist/components/kemet-carousel/spec.js +0 -168
  156. package/dist/components/kemet-carousel/spec.js.map +0 -1
  157. package/dist/components/kemet-carousel/styles.d.ts +0 -1
  158. package/dist/components/kemet-carousel/styles.js.map +0 -1
  159. package/dist/components/kemet-checkbox/docs/stories.d.ts +0 -13
  160. package/dist/components/kemet-checkbox/docs/stories.js +0 -45
  161. package/dist/components/kemet-checkbox/docs/stories.js.map +0 -1
  162. package/dist/components/kemet-checkbox/kemet-checkbox.d.ts +0 -71
  163. package/dist/components/kemet-checkbox/kemet-checkbox.js +0 -192
  164. package/dist/components/kemet-checkbox/kemet-checkbox.js.map +0 -1
  165. package/dist/components/kemet-checkbox/spec.d.ts +0 -1
  166. package/dist/components/kemet-checkbox/spec.js +0 -33
  167. package/dist/components/kemet-checkbox/spec.js.map +0 -1
  168. package/dist/components/kemet-checkbox/styles.d.ts +0 -1
  169. package/dist/components/kemet-checkbox/styles.js.map +0 -1
  170. package/dist/components/kemet-checkbox/types.d.ts +0 -15
  171. package/dist/components/kemet-checkbox/types.js +0 -2
  172. package/dist/components/kemet-checkbox/types.js.map +0 -1
  173. package/dist/components/kemet-combo/docs/stories.d.ts +0 -11
  174. package/dist/components/kemet-combo/docs/stories.js +0 -32
  175. package/dist/components/kemet-combo/docs/stories.js.map +0 -1
  176. package/dist/components/kemet-combo/kemet-combo.d.ts +0 -51
  177. package/dist/components/kemet-combo/kemet-combo.js +0 -163
  178. package/dist/components/kemet-combo/kemet-combo.js.map +0 -1
  179. package/dist/components/kemet-combo/spec.d.ts +0 -3
  180. package/dist/components/kemet-combo/spec.js +0 -46
  181. package/dist/components/kemet-combo/spec.js.map +0 -1
  182. package/dist/components/kemet-combo/styles.d.ts +0 -1
  183. package/dist/components/kemet-combo/styles.js.map +0 -1
  184. package/dist/components/kemet-count/docs/stories.d.ts +0 -11
  185. package/dist/components/kemet-count/docs/stories.js +0 -36
  186. package/dist/components/kemet-count/docs/stories.js.map +0 -1
  187. package/dist/components/kemet-count/kemet-count.d.ts +0 -39
  188. package/dist/components/kemet-count/kemet-count.js +0 -98
  189. package/dist/components/kemet-count/kemet-count.js.map +0 -1
  190. package/dist/components/kemet-count/spec.d.ts +0 -4
  191. package/dist/components/kemet-count/spec.js +0 -45
  192. package/dist/components/kemet-count/spec.js.map +0 -1
  193. package/dist/components/kemet-draggable/docs/stories.d.ts +0 -10
  194. package/dist/components/kemet-draggable/docs/stories.js +0 -25
  195. package/dist/components/kemet-draggable/docs/stories.js.map +0 -1
  196. package/dist/components/kemet-draggable/kemet-draggable.d.ts +0 -49
  197. package/dist/components/kemet-draggable/kemet-draggable.js +0 -138
  198. package/dist/components/kemet-draggable/kemet-draggable.js.map +0 -1
  199. package/dist/components/kemet-draggable/spec.d.ts +0 -1
  200. package/dist/components/kemet-draggable/spec.js +0 -30
  201. package/dist/components/kemet-draggable/spec.js.map +0 -1
  202. package/dist/components/kemet-drawer/docs/stories.d.ts +0 -16
  203. package/dist/components/kemet-drawer/docs/stories.js +0 -90
  204. package/dist/components/kemet-drawer/docs/stories.js.map +0 -1
  205. package/dist/components/kemet-drawer/kemet-drawer.d.ts +0 -48
  206. package/dist/components/kemet-drawer/kemet-drawer.js +0 -95
  207. package/dist/components/kemet-drawer/kemet-drawer.js.map +0 -1
  208. package/dist/components/kemet-drawer/spec.d.ts +0 -1
  209. package/dist/components/kemet-drawer/spec.js +0 -21
  210. package/dist/components/kemet-drawer/spec.js.map +0 -1
  211. package/dist/components/kemet-drawer/styles.d.ts +0 -2
  212. package/dist/components/kemet-drawer/styles.js.map +0 -1
  213. package/dist/components/kemet-drawer/types.d.ts +0 -2
  214. package/dist/components/kemet-drawer/types.js +0 -2
  215. package/dist/components/kemet-drawer/types.js.map +0 -1
  216. package/dist/components/kemet-fab/docs/stories.d.ts +0 -14
  217. package/dist/components/kemet-fab/docs/stories.js +0 -78
  218. package/dist/components/kemet-fab/docs/stories.js.map +0 -1
  219. package/dist/components/kemet-fab/kemet-fab.d.ts +0 -49
  220. package/dist/components/kemet-fab/kemet-fab.js +0 -101
  221. package/dist/components/kemet-fab/kemet-fab.js.map +0 -1
  222. package/dist/components/kemet-fab/spec.d.ts +0 -2
  223. package/dist/components/kemet-fab/spec.js +0 -43
  224. package/dist/components/kemet-fab/spec.js.map +0 -1
  225. package/dist/components/kemet-fab/styles.d.ts +0 -1
  226. package/dist/components/kemet-fab/styles.js.map +0 -1
  227. package/dist/components/kemet-fab/types.d.ts +0 -8
  228. package/dist/components/kemet-fab/types.js +0 -2
  229. package/dist/components/kemet-fab/types.js.map +0 -1
  230. package/dist/components/kemet-field/docs/stories.d.ts +0 -15
  231. package/dist/components/kemet-field/docs/stories.js +0 -55
  232. package/dist/components/kemet-field/docs/stories.js.map +0 -1
  233. package/dist/components/kemet-field/kemet-field.d.ts +0 -61
  234. package/dist/components/kemet-field/kemet-field.js +0 -139
  235. package/dist/components/kemet-field/kemet-field.js.map +0 -1
  236. package/dist/components/kemet-field/spec.d.ts +0 -2
  237. package/dist/components/kemet-field/spec.js +0 -38
  238. package/dist/components/kemet-field/spec.js.map +0 -1
  239. package/dist/components/kemet-field/styles.d.ts +0 -1
  240. package/dist/components/kemet-field/styles.js.map +0 -1
  241. package/dist/components/kemet-field/types.d.ts +0 -13
  242. package/dist/components/kemet-field/types.js +0 -2
  243. package/dist/components/kemet-field/types.js.map +0 -1
  244. package/dist/components/kemet-flipcard/docs/stories.d.ts +0 -14
  245. package/dist/components/kemet-flipcard/docs/stories.js +0 -60
  246. package/dist/components/kemet-flipcard/docs/stories.js.map +0 -1
  247. package/dist/components/kemet-flipcard/kemet-flipcard-trigger.d.ts +0 -21
  248. package/dist/components/kemet-flipcard/kemet-flipcard-trigger.js +0 -41
  249. package/dist/components/kemet-flipcard/kemet-flipcard-trigger.js.map +0 -1
  250. package/dist/components/kemet-flipcard/kemet-flipcard.d.ts +0 -52
  251. package/dist/components/kemet-flipcard/kemet-flipcard.js +0 -129
  252. package/dist/components/kemet-flipcard/kemet-flipcard.js.map +0 -1
  253. package/dist/components/kemet-flipcard/spec.d.ts +0 -3
  254. package/dist/components/kemet-flipcard/spec.js +0 -38
  255. package/dist/components/kemet-flipcard/spec.js.map +0 -1
  256. package/dist/components/kemet-flipcard/styles.d.ts +0 -1
  257. package/dist/components/kemet-flipcard/styles.js.map +0 -1
  258. package/dist/components/kemet-flipcard/types.d.ts +0 -7
  259. package/dist/components/kemet-flipcard/types.js +0 -2
  260. package/dist/components/kemet-flipcard/types.js.map +0 -1
  261. package/dist/components/kemet-icon/docs/stories.d.ts +0 -9
  262. package/dist/components/kemet-icon/docs/stories.js +0 -27
  263. package/dist/components/kemet-icon/docs/stories.js.map +0 -1
  264. package/dist/components/kemet-icon/kemet-icon.d.ts +0 -28
  265. package/dist/components/kemet-icon/kemet-icon.js +0 -114
  266. package/dist/components/kemet-icon/kemet-icon.js.map +0 -1
  267. package/dist/components/kemet-icon/spec.d.ts +0 -1
  268. package/dist/components/kemet-icon/spec.js +0 -69
  269. package/dist/components/kemet-icon/spec.js.map +0 -1
  270. package/dist/components/kemet-icon/styles.d.ts +0 -1
  271. package/dist/components/kemet-icon/styles.js +0 -9
  272. package/dist/components/kemet-icon/styles.js.map +0 -1
  273. package/dist/components/kemet-icon/types.d.ts +0 -5
  274. package/dist/components/kemet-icon/types.js +0 -2
  275. package/dist/components/kemet-icon/types.js.map +0 -1
  276. package/dist/components/kemet-input/docs/stories.d.ts +0 -13
  277. package/dist/components/kemet-input/docs/stories.js +0 -83
  278. package/dist/components/kemet-input/docs/stories.js.map +0 -1
  279. package/dist/components/kemet-input/kemet-input.d.ts +0 -174
  280. package/dist/components/kemet-input/kemet-input.js +0 -397
  281. package/dist/components/kemet-input/kemet-input.js.map +0 -1
  282. package/dist/components/kemet-input/spec.d.ts +0 -1
  283. package/dist/components/kemet-input/spec.js +0 -83
  284. package/dist/components/kemet-input/spec.js.map +0 -1
  285. package/dist/components/kemet-input/styles.d.ts +0 -1
  286. package/dist/components/kemet-input/styles.js.map +0 -1
  287. package/dist/components/kemet-input/types.d.ts +0 -35
  288. package/dist/components/kemet-input/types.js +0 -2
  289. package/dist/components/kemet-input/types.js.map +0 -1
  290. package/dist/components/kemet-modal/docs/stories.d.ts +0 -12
  291. package/dist/components/kemet-modal/docs/stories.js +0 -58
  292. package/dist/components/kemet-modal/docs/stories.js.map +0 -1
  293. package/dist/components/kemet-modal/kemet-modal-close.d.ts +0 -21
  294. package/dist/components/kemet-modal/kemet-modal-close.js +0 -40
  295. package/dist/components/kemet-modal/kemet-modal-close.js.map +0 -1
  296. package/dist/components/kemet-modal/kemet-modal.d.ts +0 -59
  297. package/dist/components/kemet-modal/kemet-modal.js +0 -150
  298. package/dist/components/kemet-modal/kemet-modal.js.map +0 -1
  299. package/dist/components/kemet-modal/styles.d.ts +0 -2
  300. package/dist/components/kemet-modal/styles.js.map +0 -1
  301. package/dist/components/kemet-modal/types.d.ts +0 -8
  302. package/dist/components/kemet-modal/types.js +0 -2
  303. package/dist/components/kemet-modal/types.js.map +0 -1
  304. package/dist/components/kemet-multi-input/docs/stories.d.ts +0 -8
  305. package/dist/components/kemet-multi-input/docs/stories.js +0 -33
  306. package/dist/components/kemet-multi-input/docs/stories.js.map +0 -1
  307. package/dist/components/kemet-multi-input/kemet-multi-input.d.ts +0 -116
  308. package/dist/components/kemet-multi-input/kemet-multi-input.js +0 -193
  309. package/dist/components/kemet-multi-input/kemet-multi-input.js.map +0 -1
  310. package/dist/components/kemet-multi-input/styles.d.ts +0 -1
  311. package/dist/components/kemet-multi-input/styles.js.map +0 -1
  312. package/dist/components/kemet-multi-input/types.d.ts +0 -5
  313. package/dist/components/kemet-multi-input/types.js +0 -2
  314. package/dist/components/kemet-multi-input/types.js.map +0 -1
  315. package/dist/components/kemet-password/docs/stories.d.ts +0 -10
  316. package/dist/components/kemet-password/docs/stories.js +0 -29
  317. package/dist/components/kemet-password/docs/stories.js.map +0 -1
  318. package/dist/components/kemet-password/kemet-password.d.ts +0 -83
  319. package/dist/components/kemet-password/kemet-password.js +0 -155
  320. package/dist/components/kemet-password/kemet-password.js.map +0 -1
  321. package/dist/components/kemet-password/styles.d.ts +0 -1
  322. package/dist/components/kemet-password/styles.js.map +0 -1
  323. package/dist/components/kemet-password/types.d.ts +0 -10
  324. package/dist/components/kemet-password/types.js +0 -2
  325. package/dist/components/kemet-password/types.js.map +0 -1
  326. package/dist/components/kemet-popper/docs/stories.d.ts +0 -12
  327. package/dist/components/kemet-popper/docs/stories.js +0 -65
  328. package/dist/components/kemet-popper/docs/stories.js.map +0 -1
  329. package/dist/components/kemet-popper/kemet-popper-close.d.ts +0 -22
  330. package/dist/components/kemet-popper/kemet-popper-close.js +0 -48
  331. package/dist/components/kemet-popper/kemet-popper-close.js.map +0 -1
  332. package/dist/components/kemet-popper/kemet-popper.d.ts +0 -72
  333. package/dist/components/kemet-popper/kemet-popper.js +0 -173
  334. package/dist/components/kemet-popper/kemet-popper.js.map +0 -1
  335. package/dist/components/kemet-popper/styles.d.ts +0 -1
  336. package/dist/components/kemet-popper/styles.effects.d.ts +0 -8
  337. package/dist/components/kemet-popper/styles.effects.js.map +0 -1
  338. package/dist/components/kemet-popper/styles.js +0 -37
  339. package/dist/components/kemet-popper/styles.js.map +0 -1
  340. package/dist/components/kemet-popper/types.d.ts +0 -3
  341. package/dist/components/kemet-popper/types.js +0 -2
  342. package/dist/components/kemet-popper/types.js.map +0 -1
  343. package/dist/components/kemet-radio/docs/stories.d.ts +0 -12
  344. package/dist/components/kemet-radio/docs/stories.js +0 -44
  345. package/dist/components/kemet-radio/docs/stories.js.map +0 -1
  346. package/dist/components/kemet-radio/kemet-radio.d.ts +0 -57
  347. package/dist/components/kemet-radio/kemet-radio.js +0 -130
  348. package/dist/components/kemet-radio/kemet-radio.js.map +0 -1
  349. package/dist/components/kemet-radio/kemet-radios.d.ts +0 -50
  350. package/dist/components/kemet-radio/kemet-radios.js +0 -149
  351. package/dist/components/kemet-radio/kemet-radios.js.map +0 -1
  352. package/dist/components/kemet-radio/spec.d.ts +0 -3
  353. package/dist/components/kemet-radio/spec.js +0 -67
  354. package/dist/components/kemet-radio/spec.js.map +0 -1
  355. package/dist/components/kemet-radio/styles.d.ts +0 -2
  356. package/dist/components/kemet-radio/styles.js.map +0 -1
  357. package/dist/components/kemet-radio/types.d.ts +0 -20
  358. package/dist/components/kemet-radio/types.js +0 -2
  359. package/dist/components/kemet-radio/types.js.map +0 -1
  360. package/dist/components/kemet-rotator/docs/stories.d.ts +0 -10
  361. package/dist/components/kemet-rotator/docs/stories.js +0 -34
  362. package/dist/components/kemet-rotator/docs/stories.js.map +0 -1
  363. package/dist/components/kemet-rotator/kemet-rotator.d.ts +0 -40
  364. package/dist/components/kemet-rotator/kemet-rotator.js +0 -121
  365. package/dist/components/kemet-rotator/kemet-rotator.js.map +0 -1
  366. package/dist/components/kemet-rotator/styles.d.ts +0 -1
  367. package/dist/components/kemet-rotator/styles.js.map +0 -1
  368. package/dist/components/kemet-rotator/types.d.ts +0 -9
  369. package/dist/components/kemet-rotator/types.js +0 -2
  370. package/dist/components/kemet-rotator/types.js.map +0 -1
  371. package/dist/components/kemet-scroll-link/docs/stories.d.ts +0 -9
  372. package/dist/components/kemet-scroll-link/docs/stories.js +0 -97
  373. package/dist/components/kemet-scroll-link/docs/stories.js.map +0 -1
  374. package/dist/components/kemet-scroll-link/kemet-scroll-link.d.ts +0 -31
  375. package/dist/components/kemet-scroll-link/kemet-scroll-link.js +0 -83
  376. package/dist/components/kemet-scroll-link/kemet-scroll-link.js.map +0 -1
  377. package/dist/components/kemet-scroll-link/types.d.ts +0 -6
  378. package/dist/components/kemet-scroll-link/types.js +0 -2
  379. package/dist/components/kemet-scroll-link/types.js.map +0 -1
  380. package/dist/components/kemet-scroll-nav/docs/stories.d.ts +0 -10
  381. package/dist/components/kemet-scroll-nav/docs/stories.js +0 -162
  382. package/dist/components/kemet-scroll-nav/docs/stories.js.map +0 -1
  383. package/dist/components/kemet-scroll-nav/kemet-scroll-nav.d.ts +0 -34
  384. package/dist/components/kemet-scroll-nav/kemet-scroll-nav.js +0 -65
  385. package/dist/components/kemet-scroll-nav/kemet-scroll-nav.js.map +0 -1
  386. package/dist/components/kemet-scroll-nav/styles.d.ts +0 -1
  387. package/dist/components/kemet-scroll-nav/styles.js.map +0 -1
  388. package/dist/components/kemet-scroll-nav/types.d.ts +0 -6
  389. package/dist/components/kemet-scroll-nav/types.js +0 -2
  390. package/dist/components/kemet-scroll-nav/types.js.map +0 -1
  391. package/dist/components/kemet-scroll-snap/docs/stories.d.ts +0 -17
  392. package/dist/components/kemet-scroll-snap/docs/stories.js +0 -121
  393. package/dist/components/kemet-scroll-snap/docs/stories.js.map +0 -1
  394. package/dist/components/kemet-scroll-snap/kemet-scroll-snap-paginator.d.ts +0 -45
  395. package/dist/components/kemet-scroll-snap/kemet-scroll-snap-paginator.js +0 -120
  396. package/dist/components/kemet-scroll-snap/kemet-scroll-snap-paginator.js.map +0 -1
  397. package/dist/components/kemet-scroll-snap/kemet-scroll-snap-slide.d.ts +0 -30
  398. package/dist/components/kemet-scroll-snap/kemet-scroll-snap-slide.js +0 -53
  399. package/dist/components/kemet-scroll-snap/kemet-scroll-snap-slide.js.map +0 -1
  400. package/dist/components/kemet-scroll-snap/kemet-scroll-snap.d.ts +0 -47
  401. package/dist/components/kemet-scroll-snap/kemet-scroll-snap.js +0 -117
  402. package/dist/components/kemet-scroll-snap/kemet-scroll-snap.js.map +0 -1
  403. package/dist/components/kemet-scroll-snap/styles.d.ts +0 -2
  404. package/dist/components/kemet-scroll-snap/styles.js.map +0 -1
  405. package/dist/components/kemet-scroll-snap/types.d.ts +0 -20
  406. package/dist/components/kemet-scroll-snap/types.js +0 -2
  407. package/dist/components/kemet-scroll-snap/types.js.map +0 -1
  408. package/dist/components/kemet-select/docs/stories.d.ts +0 -13
  409. package/dist/components/kemet-select/docs/stories.js +0 -49
  410. package/dist/components/kemet-select/docs/stories.js.map +0 -1
  411. package/dist/components/kemet-select/kemet-option.d.ts +0 -29
  412. package/dist/components/kemet-select/kemet-option.js +0 -45
  413. package/dist/components/kemet-select/kemet-option.js.map +0 -1
  414. package/dist/components/kemet-select/kemet-select.d.ts +0 -119
  415. package/dist/components/kemet-select/kemet-select.js +0 -198
  416. package/dist/components/kemet-select/kemet-select.js.map +0 -1
  417. package/dist/components/kemet-select/spec.d.ts +0 -3
  418. package/dist/components/kemet-select/spec.js +0 -53
  419. package/dist/components/kemet-select/spec.js.map +0 -1
  420. package/dist/components/kemet-select/styles.d.ts +0 -1
  421. package/dist/components/kemet-select/styles.js.map +0 -1
  422. package/dist/components/kemet-select/types.d.ts +0 -20
  423. package/dist/components/kemet-select/types.js +0 -2
  424. package/dist/components/kemet-select/types.js.map +0 -1
  425. package/dist/components/kemet-sortable/docs/stories.d.ts +0 -10
  426. package/dist/components/kemet-sortable/docs/stories.js +0 -29
  427. package/dist/components/kemet-sortable/docs/stories.js.map +0 -1
  428. package/dist/components/kemet-sortable/kemet-sortable-item.d.ts +0 -21
  429. package/dist/components/kemet-sortable/kemet-sortable-item.js +0 -30
  430. package/dist/components/kemet-sortable/kemet-sortable-item.js.map +0 -1
  431. package/dist/components/kemet-sortable/kemet-sortable.d.ts +0 -25
  432. package/dist/components/kemet-sortable/kemet-sortable.js +0 -77
  433. package/dist/components/kemet-sortable/kemet-sortable.js.map +0 -1
  434. package/dist/components/kemet-sortable/styles.d.ts +0 -2
  435. package/dist/components/kemet-sortable/styles.js.map +0 -1
  436. package/dist/components/kemet-sortable/types.d.ts +0 -3
  437. package/dist/components/kemet-sortable/types.js +0 -2
  438. package/dist/components/kemet-sortable/types.js.map +0 -1
  439. package/dist/components/kemet-svgs/docs/stories.d.ts +0 -10
  440. package/dist/components/kemet-svgs/docs/stories.js +0 -67
  441. package/dist/components/kemet-svgs/docs/stories.js.map +0 -1
  442. package/dist/components/kemet-svgs/kemet-svg.d.ts +0 -38
  443. package/dist/components/kemet-svgs/kemet-svg.js +0 -97
  444. package/dist/components/kemet-svgs/kemet-svg.js.map +0 -1
  445. package/dist/components/kemet-svgs/kemet-svgs.d.ts +0 -27
  446. package/dist/components/kemet-svgs/kemet-svgs.js +0 -51
  447. package/dist/components/kemet-svgs/kemet-svgs.js.map +0 -1
  448. package/dist/components/kemet-svgs/types.d.ts +0 -10
  449. package/dist/components/kemet-svgs/types.js +0 -2
  450. package/dist/components/kemet-svgs/types.js.map +0 -1
  451. package/dist/components/kemet-tabs/docs/stories.d.ts +0 -18
  452. package/dist/components/kemet-tabs/docs/stories.js +0 -142
  453. package/dist/components/kemet-tabs/docs/stories.js.map +0 -1
  454. package/dist/components/kemet-tabs/kemet-tab-panel.d.ts +0 -28
  455. package/dist/components/kemet-tabs/kemet-tab-panel.js +0 -55
  456. package/dist/components/kemet-tabs/kemet-tab-panel.js.map +0 -1
  457. package/dist/components/kemet-tabs/kemet-tab.d.ts +0 -38
  458. package/dist/components/kemet-tabs/kemet-tab.js +0 -82
  459. package/dist/components/kemet-tabs/kemet-tab.js.map +0 -1
  460. package/dist/components/kemet-tabs/kemet-tabs.d.ts +0 -100
  461. package/dist/components/kemet-tabs/kemet-tabs.js +0 -487
  462. package/dist/components/kemet-tabs/kemet-tabs.js.map +0 -1
  463. package/dist/components/kemet-tabs/styles.d.ts +0 -3
  464. package/dist/components/kemet-tabs/styles.js.map +0 -1
  465. package/dist/components/kemet-tabs/types.d.ts +0 -27
  466. package/dist/components/kemet-tabs/types.js +0 -2
  467. package/dist/components/kemet-tabs/types.js.map +0 -1
  468. package/dist/components/kemet-textarea/docs/stories.d.ts +0 -12
  469. package/dist/components/kemet-textarea/docs/stories.js +0 -58
  470. package/dist/components/kemet-textarea/docs/stories.js.map +0 -1
  471. package/dist/components/kemet-textarea/kemet-textarea.d.ts +0 -123
  472. package/dist/components/kemet-textarea/kemet-textarea.js +0 -293
  473. package/dist/components/kemet-textarea/kemet-textarea.js.map +0 -1
  474. package/dist/components/kemet-textarea/spec.d.ts +0 -3
  475. package/dist/components/kemet-textarea/spec.js +0 -69
  476. package/dist/components/kemet-textarea/spec.js.map +0 -1
  477. package/dist/components/kemet-textarea/styles.d.ts +0 -1
  478. package/dist/components/kemet-textarea/styles.js.map +0 -1
  479. package/dist/components/kemet-textarea/types.d.ts +0 -20
  480. package/dist/components/kemet-textarea/types.js +0 -2
  481. package/dist/components/kemet-textarea/types.js.map +0 -1
  482. package/dist/components/kemet-timer/docs/stories.d.ts +0 -10
  483. package/dist/components/kemet-timer/docs/stories.js +0 -40
  484. package/dist/components/kemet-timer/docs/stories.js.map +0 -1
  485. package/dist/components/kemet-timer/kemet-timer-display.d.ts +0 -25
  486. package/dist/components/kemet-timer/kemet-timer-display.js +0 -65
  487. package/dist/components/kemet-timer/kemet-timer-display.js.map +0 -1
  488. package/dist/components/kemet-timer/kemet-timer.d.ts +0 -36
  489. package/dist/components/kemet-timer/kemet-timer.js +0 -103
  490. package/dist/components/kemet-timer/kemet-timer.js.map +0 -1
  491. package/dist/components/kemet-timer/styles.d.ts +0 -2
  492. package/dist/components/kemet-timer/styles.js.map +0 -1
  493. package/dist/components/kemet-timer/types.d.ts +0 -1
  494. package/dist/components/kemet-timer/types.js +0 -2
  495. package/dist/components/kemet-timer/types.js.map +0 -1
  496. package/dist/components/kemet-toggle/docs/stories.d.ts +0 -11
  497. package/dist/components/kemet-toggle/docs/stories.js +0 -43
  498. package/dist/components/kemet-toggle/docs/stories.js.map +0 -1
  499. package/dist/components/kemet-toggle/kemet-toggle.d.ts +0 -60
  500. package/dist/components/kemet-toggle/kemet-toggle.js +0 -130
  501. package/dist/components/kemet-toggle/kemet-toggle.js.map +0 -1
  502. package/dist/components/kemet-toggle/spec.d.ts +0 -1
  503. package/dist/components/kemet-toggle/spec.js +0 -46
  504. package/dist/components/kemet-toggle/spec.js.map +0 -1
  505. package/dist/components/kemet-toggle/styles.d.ts +0 -1
  506. package/dist/components/kemet-toggle/styles.js.map +0 -1
  507. package/dist/components/kemet-toggle/types.d.ts +0 -10
  508. package/dist/components/kemet-toggle/types.js +0 -2
  509. package/dist/components/kemet-toggle/types.js.map +0 -1
  510. package/dist/components/kemet-tooltip/docs/stories.d.ts +0 -14
  511. package/dist/components/kemet-tooltip/docs/stories.js +0 -97
  512. package/dist/components/kemet-tooltip/docs/stories.js.map +0 -1
  513. package/dist/components/kemet-tooltip/kemet-tooltip.d.ts +0 -33
  514. package/dist/components/kemet-tooltip/kemet-tooltip.js +0 -69
  515. package/dist/components/kemet-tooltip/kemet-tooltip.js.map +0 -1
  516. package/dist/components/kemet-tooltip/styles.d.ts +0 -1
  517. package/dist/components/kemet-tooltip/styles.js.map +0 -1
  518. package/dist/components/kemet-tooltip/types.d.ts +0 -3
  519. package/dist/components/kemet-tooltip/types.js +0 -2
  520. package/dist/components/kemet-tooltip/types.js.map +0 -1
  521. package/dist/components/kemet-tracker/docs/stories.d.ts +0 -11
  522. package/dist/components/kemet-tracker/docs/stories.js +0 -42
  523. package/dist/components/kemet-tracker/docs/stories.js.map +0 -1
  524. package/dist/components/kemet-tracker/kemet-tracker-step.d.ts +0 -63
  525. package/dist/components/kemet-tracker/kemet-tracker-step.js +0 -127
  526. package/dist/components/kemet-tracker/kemet-tracker-step.js.map +0 -1
  527. package/dist/components/kemet-tracker/kemet-tracker.d.ts +0 -27
  528. package/dist/components/kemet-tracker/kemet-tracker.js +0 -70
  529. package/dist/components/kemet-tracker/kemet-tracker.js.map +0 -1
  530. package/dist/components/kemet-tracker/styles.d.ts +0 -1
  531. package/dist/components/kemet-tracker/styles.js.map +0 -1
  532. package/dist/components/kemet-tracker/types.d.ts +0 -13
  533. package/dist/components/kemet-tracker/types.js +0 -2
  534. package/dist/components/kemet-tracker/types.js.map +0 -1
  535. package/dist/components/kemet-upload/docs/stories.d.ts +0 -10
  536. package/dist/components/kemet-upload/docs/stories.js +0 -52
  537. package/dist/components/kemet-upload/docs/stories.js.map +0 -1
  538. package/dist/components/kemet-upload/kemet-upload-file.d.ts +0 -46
  539. package/dist/components/kemet-upload/kemet-upload-file.js +0 -109
  540. package/dist/components/kemet-upload/kemet-upload-file.js.map +0 -1
  541. package/dist/components/kemet-upload/kemet-upload.d.ts +0 -58
  542. package/dist/components/kemet-upload/kemet-upload.js +0 -149
  543. package/dist/components/kemet-upload/kemet-upload.js.map +0 -1
  544. package/dist/components/kemet-upload/styles.d.ts +0 -3
  545. package/dist/components/kemet-upload/styles.js.map +0 -1
  546. package/dist/components/kemet-upload/types.d.ts +0 -21
  547. package/dist/components/kemet-upload/types.js +0 -2
  548. package/dist/components/kemet-upload/types.js.map +0 -1
  549. package/dist/kemet-components.bundle.js +0 -83
  550. package/dist/kemet-components.bundle.js.map +0 -1
  551. package/dist/kemet-components.cjs +0 -12149
  552. package/dist/kemet-components.js +0 -12147
  553. package/dist/styles/components/_config.scss +0 -4
  554. package/dist/styles/components/accordion.scss +0 -9
  555. package/dist/styles/components/scrollsnap.scss +0 -11
  556. package/dist/styles/kemet.components.css +0 -23
  557. package/dist/styles/kemet.components.css.map +0 -1
  558. package/dist/styles/kemet.components.scss +0 -2
  559. package/dist/tsconfig.tsbuildinfo +0 -1
  560. package/dist/utilities/controllers/forms.d.ts +0 -11
  561. package/dist/utilities/controllers/forms.js +0 -100
  562. package/dist/utilities/controllers/forms.js.map +0 -1
  563. package/dist/utilities/controllers/forms.spec.d.ts +0 -2
  564. package/dist/utilities/controllers/forms.spec.js +0 -36
  565. package/dist/utilities/controllers/forms.spec.js.map +0 -1
  566. package/dist/utilities/misc/constants.d.ts +0 -5
  567. package/dist/utilities/misc/constants.js +0 -6
  568. package/dist/utilities/misc/constants.js.map +0 -1
  569. package/dist/utilities/misc/drag.d.ts +0 -6
  570. package/dist/utilities/misc/drag.js +0 -63
  571. package/dist/utilities/misc/drag.js.map +0 -1
  572. package/dist/utilities/misc/events.d.ts +0 -1
  573. package/dist/utilities/misc/events.js +0 -4
  574. package/dist/utilities/misc/events.js.map +0 -1
  575. package/index.js +0 -1
@@ -1,70 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { html, css, LitElement } from 'lit';
3
- import { customElement, property, state } from 'lit/decorators.js';
4
- /**
5
- *
6
- * @since 1.2.0
7
- * @status stable
8
- *
9
- * @prop {number} total - The total number of steps
10
- * @prop {string} breakpoint - The point at which the tracker goes from mobile to standard
11
- *
12
- */
13
- let KemetTracker = class KemetTracker extends LitElement {
14
- constructor() {
15
- super();
16
- this.breakpoint = '767px';
17
- }
18
- firstUpdated() {
19
- // elements
20
- this.steps = this.querySelectorAll('kemet-tracker-step');
21
- // methods exe
22
- this.isMobile();
23
- // events
24
- window.addEventListener('resize', () => {
25
- this.isMobile();
26
- });
27
- }
28
- render() {
29
- return html `<slot @slotchange=${() => this.handleSlotChange()}></slot>`;
30
- }
31
- handleSlotChange() {
32
- this.total = this.steps.length;
33
- this.steps.forEach((step, index) => {
34
- step.step = index + 1;
35
- if (step.step === this.total) {
36
- step.last = true;
37
- }
38
- });
39
- }
40
- isMobile() {
41
- const mediaQuery = window.matchMedia(`(max-width: ${this.breakpoint})`);
42
- this.steps.forEach((step) => {
43
- step.mobile = mediaQuery.matches;
44
- });
45
- }
46
- };
47
- KemetTracker.styles = [
48
- css `
49
- :host {
50
- display: flex;
51
- justify-content: center;
52
- align-items: flex-start;
53
- width: 100%;
54
- }
55
- `,
56
- ];
57
- __decorate([
58
- property({ type: Number })
59
- ], KemetTracker.prototype, "total", void 0);
60
- __decorate([
61
- property({ type: String })
62
- ], KemetTracker.prototype, "breakpoint", void 0);
63
- __decorate([
64
- state()
65
- ], KemetTracker.prototype, "steps", void 0);
66
- KemetTracker = __decorate([
67
- customElement('kemet-tracker')
68
- ], KemetTracker);
69
- export default KemetTracker;
70
- //# sourceMappingURL=kemet-tracker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"kemet-tracker.js","sourceRoot":"","sources":["../../../src/components/kemet-tracker/kemet-tracker.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAGnE;;;;;;;;GAQG;AAGY,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,UAAU;IAqBlD;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;IAC5B,CAAC;IAED,YAAY;QACV,WAAW;QACX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;QAEzD,cAAc;QACd,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,SAAS;QACT,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,EAAE;YACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAA,qBAAqB,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC;IAC1E,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAE/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACjC,IAAI,CAAC,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC;YACtB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACnB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,eAAe,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QAExE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC1B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC;;AA3DM,mBAAM,GAAG;IACd,GAAG,CAAA;;;;;;;KAOF;CACF,AATY,CASX;AAGF;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;2CACb;AAGd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;gDACR;AAGnB;IADC,KAAK,EAAE;2CAC4B;AAnBjB,YAAY;IADhC,aAAa,CAAC,eAAe,CAAC;GACV,YAAY,CA6DhC;eA7DoB,YAAY","sourcesContent":["import { html, css, LitElement } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport type KemetTrackerStep from './kemet-tracker-step';\n\n/**\n *\n * @since 1.2.0\n * @status stable\n *\n * @prop {number} total - The total number of steps\n * @prop {string} breakpoint - The point at which the tracker goes from mobile to standard\n *\n */\n\n@customElement('kemet-tracker')\nexport default class KemetTracker extends LitElement {\n static styles = [\n css`\n :host {\n display: flex;\n justify-content: center;\n align-items: flex-start;\n width: 100%;\n }\n `,\n ];\n\n @property({ type: Number })\n total: number;\n\n @property({ type: String })\n breakpoint: string;\n\n @state()\n steps: NodeListOf<KemetTrackerStep>;\n\n constructor() {\n super();\n this.breakpoint = '767px';\n }\n\n firstUpdated() {\n // elements\n this.steps = this.querySelectorAll('kemet-tracker-step');\n\n // methods exe\n this.isMobile();\n\n // events\n window.addEventListener('resize', () => {\n this.isMobile();\n });\n }\n\n render() {\n return html`<slot @slotchange=${() => this.handleSlotChange()}></slot>`;\n }\n\n handleSlotChange() {\n this.total = this.steps.length;\n\n this.steps.forEach((step, index) => {\n step.step = index + 1;\n if (step.step === this.total) {\n step.last = true;\n }\n });\n }\n\n isMobile() {\n const mediaQuery = window.matchMedia(`(max-width: ${this.breakpoint})`);\n\n this.steps.forEach((step) => {\n step.mobile = mediaQuery.matches;\n });\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-tracker': KemetTracker\n }\n}\n"]}
@@ -1 +0,0 @@
1
- export declare const stylesStep: import("lit").CSSResult;
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/kemet-tracker/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuH5B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const stylesStep = css`\n :host {\n --kemet-tracker-step-dot-size: 50px;\n --kemet-tracker-step-dot-size-mobile: 25px;\n --kemet-tracker-step-dot-gap: 4px;\n --kemet-tracker-step-dot-transition: all 300ms ease-in-out;\n --kemet-tracker-step-dot-font-size: 90%;\n --kemet-tracker-step-dot-color: rgb(var(--kemet-color-primary));\n --kemet-tracker-step-dot-background-color: rgb(var(--kemet-color-white));\n --kemet-tracker-step-dot-border: 1px solid rgb(var(--kemet-color-primary));\n --kemet-tracker-step-dot-fill-color: transparent;\n --kemet-tracker-step-standard-line-weight: 1px;\n --kemet-tracker-step-completed-line-weight: 3px;\n --kemet-tracker-step-completed-color: rgb(var(--kemet-color-white));\n --kemet-tracker-step-completed-fill-color: rgb(var(--kemet-color-success));\n --kemet-tracker-step-current-color: rgb(var(--kemet-color-white));\n --kemet-tracker-step-current-fill-color: rgb(var(--kemet-color-primary));\n --kemet-tracker-step-line-color: rgb(var(--kemet-color-primary));\n --kemet-tracker-step-completed-line-color: rgb(var(--kemet-color-primary));\n\n position: relative;\n width: 100%;\n text-align: center;\n }\n\n .dot {\n font-size: var(--kemet-tracker-step-dot-font-size);\n color: var(--kemet-tracker-step-dot-color);\n display: flex;\n align-items: center;\n justify-content: center;\n margin: 0 auto;\n position: relative;\n z-index: 1;\n width: var(--kemet-tracker-step-dot-size);\n height: var(--kemet-tracker-step-dot-size);\n border-radius: 100%;\n transition: var(--kemet-tracker-step-dot-transition);\n background-color: var(--kemet-tracker-step-dot-background-color);\n }\n\n .dot::after {\n content: \"\";\n width: unset;\n height: unset;\n position: absolute;\n top: var(--kemet-tracker-step-dot-gap);\n left: var(--kemet-tracker-step-dot-gap);\n right: var(--kemet-tracker-step-dot-gap);\n bottom: var(--kemet-tracker-step-dot-gap);\n z-index: -1;\n border-radius: 100%;\n transition: var(--kemet-tracker-step-dot-transition);\n border: var(--kemet-tracker-step-dot-border);\n background-color: var(--kemet-tracker-step-dot-fill-color);\n }\n\n :host([completed]) .dot {\n color: var(--kemet-tracker-step-completed-color);\n }\n\n :host([completed]) .dot::after {\n border: 0;\n background-color: var(--kemet-tracker-step-completed-fill-color);\n }\n\n :host([current]) .dot.animate {\n color: var(--kemet-tracker-step-current-color);\n }\n\n :host([current]) .dot.animate::after {\n border: 0;\n background-color: var(--kemet-tracker-step-current-fill-color);\n }\n\n :host([mobile]) .dot {\n width: var(--kemet-tracker-step-dot-size-mobile);\n height: var(--kemet-tracker-step-dot-size-mobile);\n }\n\n .line {\n display: block;\n position: absolute;\n left: 50%;\n right: 0;\n bottom: 0;\n width: 100%;\n\n /* standard */\n top: calc((var(--kemet-tracker-step-dot-size) - var(--kemet-tracker-step-standard-line-weight)) / 2);\n height: var(--kemet-tracker-step-standard-line-weight);\n background-color: var(--kemet-tracker-step-line-color);\n }\n\n .line.completed {\n width: 100%;\n transform: scaleX(0);\n transform-origin: left center;\n top: calc((var(--kemet-tracker-step-dot-size) - var(--kemet-tracker-step-completed-line-weight)) / 2);\n height: var(--kemet-tracker-step-completed-line-weight);\n background-color: var(--kemet-tracker-step-completed-line-color);\n animation-name: grow;\n animation-delay: 1s;\n animation-duration: 600ms;\n animation-fill-mode: forwards;\n }\n\n :host([mobile]) .line {\n top: calc((var(--kemet-tracker-step-dot-size-mobile) - var(--kemet-tracker-step-standard-line-weight)) / 2);\n }\n\n :host([mobile]) .line.completed {\n top: calc((var(--kemet-tracker-step-dot-size-mobile) - var(--kemet-tracker-step-completed-line-weight)) / 2);\n }\n\n @keyframes grow {\n from { transform: scaleX(0); }\n to { transform: scaleX(1); }\n }\n`;\n"]}
@@ -1,13 +0,0 @@
1
- export interface KemetTrackerInterface extends HTMLElement {
2
- total?: number;
3
- breakpoint?: string;
4
- }
5
- export interface KemetTrackerStepInterface extends HTMLElement {
6
- step?: number;
7
- completed?: boolean;
8
- current?: boolean;
9
- last?: boolean;
10
- mobile?: boolean;
11
- hideDotContent?: boolean;
12
- completedSize?: number;
13
- }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/kemet-tracker/types.ts"],"names":[],"mappings":"","sourcesContent":["export interface KemetTrackerInterface extends HTMLElement {\n total?: number,\n breakpoint?: string,\n}\n\nexport interface KemetTrackerStepInterface extends HTMLElement {\n step?: number,\n completed?: boolean,\n current?: boolean,\n last?: boolean,\n mobile?: boolean,\n hideDotContent?: boolean,\n completedSize?: number,\n}\n"]}
@@ -1,10 +0,0 @@
1
- import type { Meta, StoryObj } from '@storybook/web-components';
2
- import '../kemet-upload';
3
- import '../kemet-upload-file';
4
- import '../../kemet-tabs/kemet-tabs';
5
- import '../../kemet-tabs/kemet-tab';
6
- import '../../kemet-tabs/kemet-tab-panel';
7
- declare const meta: Meta;
8
- export default meta;
9
- type Story = StoryObj;
10
- export declare const Standard: Story;
@@ -1,52 +0,0 @@
1
- import { html } from 'lit';
2
- import { ifDefined } from 'lit/directives/if-defined.js';
3
- import '../kemet-upload';
4
- import '../kemet-upload-file';
5
- import '../../kemet-tabs/kemet-tabs';
6
- import '../../kemet-tabs/kemet-tab';
7
- import '../../kemet-tabs/kemet-tab-panel';
8
- const meta = {
9
- title: 'Components / Upload',
10
- component: 'kemet-upload',
11
- args: {
12
- files: [
13
- {
14
- name: 'image.jpg',
15
- size: 2000000,
16
- loaded: 2000000,
17
- status: 'complete',
18
- },
19
- {
20
- name: 'image.png',
21
- size: 200000,
22
- loaded: 100000,
23
- status: 'uploading',
24
- },
25
- {
26
- name: 'package.zip',
27
- size: 8000000,
28
- loaded: 2000000,
29
- status: 'error',
30
- message: 'File size is too big.',
31
- },
32
- ],
33
- },
34
- };
35
- export default meta;
36
- const Template = (args) => {
37
- const uploadFiles = [];
38
- args.files.forEach((file) => {
39
- uploadFiles.push(html `
40
- <kemet-upload-file name=${file.name} size=${file.size} loaded=${file.loaded} status=${file.status} message=${ifDefined(file.message)}></kemet-upload-file>
41
- `);
42
- });
43
- return html `
44
- <kemet-upload>
45
- ${uploadFiles}
46
- </kemet-upload>
47
- `;
48
- };
49
- export const Standard = {
50
- render: (args) => Template(args),
51
- };
52
- //# sourceMappingURL=stories.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../../src/components/kemet-upload/docs/stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAGzD,OAAO,iBAAiB,CAAC;AACzB,OAAO,sBAAsB,CAAC;AAE9B,OAAO,6BAA6B,CAAC;AACrC,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAE1C,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,cAAc;IACzB,IAAI,EAAE;QACJ,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,UAAU;aACnB;YACD;gBACE,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,WAAW;aACpB;YACD;gBACE,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,uBAAuB;aACjC;SACF;KACF;CACF,CAAC;AACF,eAAe,IAAI,CAAC;AAIpB,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE;IACxB,MAAM,WAAW,GAAG,EAAE,CAAC;IAEvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAA;gCACO,IAAI,CAAC,IAAI,SAAS,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,MAAM,WAAW,IAAI,CAAC,MAAM,YAAY,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;KACrI,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAA;;QAEL,WAAW;;GAEhB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAU;IAC7B,MAAM,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;CACtC,CAAC","sourcesContent":["import { html } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport type { Meta, StoryObj } from '@storybook/web-components';\n\nimport '../kemet-upload';\nimport '../kemet-upload-file';\n\nimport '../../kemet-tabs/kemet-tabs';\nimport '../../kemet-tabs/kemet-tab';\nimport '../../kemet-tabs/kemet-tab-panel';\n\nconst meta: Meta = {\n title: 'Components / Upload',\n component: 'kemet-upload',\n args: {\n files: [\n {\n name: 'image.jpg',\n size: 2000000,\n loaded: 2000000,\n status: 'complete',\n },\n {\n name: 'image.png',\n size: 200000,\n loaded: 100000,\n status: 'uploading',\n },\n {\n name: 'package.zip',\n size: 8000000,\n loaded: 2000000,\n status: 'error',\n message: 'File size is too big.',\n },\n ],\n },\n};\nexport default meta;\n\ntype Story = StoryObj;\n\nconst Template = (args) => {\n const uploadFiles = [];\n\n args.files.forEach((file) => {\n uploadFiles.push(html`\n <kemet-upload-file name=${file.name} size=${file.size} loaded=${file.loaded} status=${file.status} message=${ifDefined(file.message)}></kemet-upload-file>\n `);\n });\n\n return html`\n <kemet-upload>\n ${uploadFiles}\n </kemet-upload>\n `;\n};\n\nexport const Standard: Story = {\n render: (args: any) => Template(args),\n};\n"]}
@@ -1,46 +0,0 @@
1
- import { LitElement } from 'lit';
2
- /**
3
- * @since 1.3.0
4
- * @status stable
5
- *
6
- * @tagname kemet-upload-file
7
- * @summary A file in the upload.
8
- *
9
- * @prop {string} name - The name of the file
10
- * @prop {number} loaded - The number of bytes loaded
11
- * @prop {number} size - The file size in bytes
12
- * @prop {string} type - The file type
13
- * @prop {string} status - The status of the file. Values are complete | uploading | error.
14
- * @prop {number} percent - Percentage of file completion that's calculated by the loaded property.
15
- * @prop {string} message - An error message to give to users
16
- *
17
- * @cssproperty --kemet-upload-file-color - The default text color.
18
- * @cssproperty --kemet-upload-file-padding - The padding around the file.
19
- * @cssproperty --kemet-upload-file-border - The border around the file.
20
- *
21
- * @csspart percentage - Area that displays the percentage.
22
- * @csspart filename - Area that displays file name.
23
- * @csspart loaded - Area that displays how much has uploaded.
24
- * @csspart message - Area for the error message.
25
- * @csspart indicator - Area for status icon.
26
- *
27
- */
28
- export default class KemetUploadFile extends LitElement {
29
- static styles: import("lit").CSSResult[];
30
- name: string;
31
- loaded: number;
32
- size: number;
33
- type: string;
34
- status: string;
35
- percent: number;
36
- message: string;
37
- updated(): void;
38
- render(): import("lit-html").TemplateResult<1>;
39
- calculatePercent(): number;
40
- getStatusIcon(): import("lit-html").TemplateResult<1>;
41
- }
42
- declare global {
43
- interface HTMLElementTagNameMap {
44
- 'kemet-upload-file': KemetUploadFile;
45
- }
46
- }
@@ -1,109 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { html, LitElement } from 'lit';
3
- import { customElement, property } from 'lit/decorators.js';
4
- import { stylesUploadFile, stylesLoaders } from './styles';
5
- const formatBytes = (bytes, decimals = 2) => {
6
- if (bytes === 0)
7
- return '0 Bytes';
8
- const k = 1024;
9
- const dm = decimals < 0 ? 0 : decimals;
10
- const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
11
- const i = Math.floor(Math.log(bytes) / Math.log(k));
12
- // eslint-disable-next-line no-restricted-properties
13
- return `${parseFloat((bytes / k ** i).toFixed(dm))} ${sizes[i]}`;
14
- };
15
- /**
16
- * @since 1.3.0
17
- * @status stable
18
- *
19
- * @tagname kemet-upload-file
20
- * @summary A file in the upload.
21
- *
22
- * @prop {string} name - The name of the file
23
- * @prop {number} loaded - The number of bytes loaded
24
- * @prop {number} size - The file size in bytes
25
- * @prop {string} type - The file type
26
- * @prop {string} status - The status of the file. Values are complete | uploading | error.
27
- * @prop {number} percent - Percentage of file completion that's calculated by the loaded property.
28
- * @prop {string} message - An error message to give to users
29
- *
30
- * @cssproperty --kemet-upload-file-color - The default text color.
31
- * @cssproperty --kemet-upload-file-padding - The padding around the file.
32
- * @cssproperty --kemet-upload-file-border - The border around the file.
33
- *
34
- * @csspart percentage - Area that displays the percentage.
35
- * @csspart filename - Area that displays file name.
36
- * @csspart loaded - Area that displays how much has uploaded.
37
- * @csspart message - Area for the error message.
38
- * @csspart indicator - Area for status icon.
39
- *
40
- */
41
- let KemetUploadFile = class KemetUploadFile extends LitElement {
42
- constructor() {
43
- super(...arguments);
44
- this.loaded = 0;
45
- this.size = 0;
46
- this.percent = 0;
47
- }
48
- updated() {
49
- this.percent = this.calculatePercent();
50
- }
51
- render() {
52
- return html `
53
- <div class="percentage" part="percentage">
54
- <span>${this.percent}%</span>
55
- </div>
56
- <div>
57
- <h3 part="filename">${this.name}</h3>
58
- <span part="loaded">${formatBytes(this.loaded)} / ${formatBytes(this.size)}</span>
59
- ${this.message ? html `<div class="message" part="message">${this.message}</div>` : null}
60
- </div>
61
- <div class="indicator" part="indicator">
62
- ${this.getStatusIcon()}
63
- </div>
64
- `;
65
- }
66
- calculatePercent() {
67
- const percent = Math.round((this.loaded * 100.0) / this.size);
68
- return percent > 100 ? 100 : percent;
69
- }
70
- getStatusIcon() {
71
- if (this.status === 'uploading') {
72
- return html `<div class="lds-ripple"><div></div><div></div></div>`;
73
- }
74
- if (this.status === 'complete') {
75
- return html `<kemet-icon icon="check-circle" size="48"></kemet-icon>`;
76
- }
77
- if (this.status === 'error') {
78
- return html `<kemet-icon icon="exclamation-circle" size="48"></kemet-icon>`;
79
- }
80
- return null;
81
- }
82
- };
83
- KemetUploadFile.styles = [stylesUploadFile, stylesLoaders];
84
- __decorate([
85
- property({ type: String })
86
- ], KemetUploadFile.prototype, "name", void 0);
87
- __decorate([
88
- property({ type: Number })
89
- ], KemetUploadFile.prototype, "loaded", void 0);
90
- __decorate([
91
- property({ type: Number })
92
- ], KemetUploadFile.prototype, "size", void 0);
93
- __decorate([
94
- property({ type: String })
95
- ], KemetUploadFile.prototype, "type", void 0);
96
- __decorate([
97
- property({ type: String, reflect: true })
98
- ], KemetUploadFile.prototype, "status", void 0);
99
- __decorate([
100
- property({ type: Number })
101
- ], KemetUploadFile.prototype, "percent", void 0);
102
- __decorate([
103
- property({ type: String })
104
- ], KemetUploadFile.prototype, "message", void 0);
105
- KemetUploadFile = __decorate([
106
- customElement('kemet-upload-file')
107
- ], KemetUploadFile);
108
- export default KemetUploadFile;
109
- //# sourceMappingURL=kemet-upload-file.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"kemet-upload-file.js","sourceRoot":"","sources":["../../../src/components/kemet-upload/kemet-upload-file.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { stylesUploadFile, stylesLoaders } from './styles';\n\nconst formatBytes = (bytes: number, decimals = 2) => {\n if (bytes === 0) return '0 Bytes';\n\n const k = 1024;\n const dm = decimals < 0 ? 0 : decimals;\n const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\n\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n\n // eslint-disable-next-line no-restricted-properties\n return `${parseFloat((bytes / k ** i).toFixed(dm))} ${sizes[i]}`;\n};\n\n/**\n * @since 1.3.0\n * @status stable\n *\n * @tagname kemet-upload-file\n * @summary A file in the upload.\n *\n * @prop {string} name - The name of the file\n * @prop {number} loaded - The number of bytes loaded\n * @prop {number} size - The file size in bytes\n * @prop {string} type - The file type\n * @prop {string} status - The status of the file. Values are complete | uploading | error.\n * @prop {number} percent - Percentage of file completion that's calculated by the loaded property.\n * @prop {string} message - An error message to give to users\n *\n * @cssproperty --kemet-upload-file-color - The default text color.\n * @cssproperty --kemet-upload-file-padding - The padding around the file.\n * @cssproperty --kemet-upload-file-border - The border around the file.\n *\n * @csspart percentage - Area that displays the percentage.\n * @csspart filename - Area that displays file name.\n * @csspart loaded - Area that displays how much has uploaded.\n * @csspart message - Area for the error message.\n * @csspart indicator - Area for status icon.\n *\n */\n\n@customElement('kemet-upload-file')\nexport default class KemetUploadFile extends LitElement {\n static styles = [stylesUploadFile, stylesLoaders];\n\n @property({ type: String })\n name: string;\n\n @property({ type: Number })\n loaded: number = 0;\n\n @property({ type: Number })\n size: number = 0;\n\n @property({ type: String })\n type: string;\n\n @property({ type: String, reflect: true })\n status: string;\n\n @property({ type: Number })\n percent: number = 0;\n\n @property({ type: String })\n message: string;\n\n updated() {\n this.percent = this.calculatePercent();\n }\n\n render() {\n return html`\n <div class=\"percentage\" part=\"percentage\">\n <span>${this.percent}%</span>\n </div>\n <div>\n <h3 part=\"filename\">${this.name}</h3>\n <span part=\"loaded\">${formatBytes(this.loaded)} / ${formatBytes(this.size)}</span>\n ${this.message ? html`<div class=\"message\" part=\"message\">${this.message}</div>` : null}\n </div>\n <div class=\"indicator\" part=\"indicator\">\n ${this.getStatusIcon()}\n </div>\n `;\n }\n\n calculatePercent() {\n const percent = Math.round((this.loaded * 100.0) / this.size);\n return percent > 100 ? 100 : percent;\n }\n\n getStatusIcon() {\n if (this.status === 'uploading') {\n return html`<div class=\"lds-ripple\"><div></div><div></div></div>`;\n }\n\n if (this.status === 'complete') {\n return html`<kemet-icon icon=\"check-circle\" size=\"48\"></kemet-icon>`;\n }\n\n if (this.status === 'error') {\n return html`<kemet-icon icon=\"exclamation-circle\" size=\"48\"></kemet-icon>`;\n }\n\n return null;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-upload-file': KemetUploadFile\n }\n}\n"]}
@@ -1,58 +0,0 @@
1
- import { LitElement } from 'lit';
2
- /**
3
- * @since 1.3.0
4
- * @status stable
5
- *
6
- * @tagname kemet-upload
7
- * @summary An interface for uploading files.
8
- *
9
- * @prop {string} slug - A unique identifier for the component
10
- * @prop {string} accept - Determines what file types are accepted
11
- * @prop {boolean} multiple - Allows for multiple files
12
- * @prop {boolean} over - Automatically is true when a file is being dragged over the upload area
13
- * @prop {string} heading - Descriptive text for the upload area
14
- * @prop {boolean} mobile - Displays the component in a mobile context
15
- * @prop {string} breakpoint - Controls the point at which the component is considered mobile
16
- * @prop {boolean} noDragDrop - Is true if drag and drop support is not detected
17
- * @prop {number} maxSize - The maximum file size for uploads
18
- * @prop {string} buttonLabel - The browse files button text
19
- *
20
- * @event kemet-upload-change - Fires when files have been added
21
- *
22
- * @csspart upload - The area where files are dropped.
23
- * @csspart heading - The description in the upload area.
24
- * @csspart button - The button in the upload area.
25
- * @csspart files - The area where uploaded files are listed.
26
- *
27
- * @cssproperty --kemet-upload-color - The default text color.
28
- * @cssproperty --kemet-upload-height - The height.
29
- * @cssproperty --kemet-upload-border - The border.
30
- * @cssproperty --kemet-upload-background-color - The background color.
31
- *
32
- */
33
- export default class KemetUpload extends LitElement {
34
- static styles: import("lit").CSSResult[];
35
- slug: string;
36
- accept: string;
37
- multiple: boolean;
38
- over: boolean;
39
- heading: string;
40
- mobile: boolean;
41
- breakpoint: string;
42
- noDragDrop: boolean;
43
- maxSize: number;
44
- buttonLabel: string;
45
- fileInputElement: HTMLInputElement;
46
- upload: HTMLElement;
47
- firstUpdated(): void;
48
- render(): import("lit-html").TemplateResult<1>;
49
- handleChange(event: Event): void;
50
- handleDrop(event: DragEvent): void;
51
- isMobile(): void;
52
- hasDragDrop(): void;
53
- }
54
- declare global {
55
- interface HTMLElementTagNameMap {
56
- 'kemet-upload': KemetUpload;
57
- }
58
- }
@@ -1,149 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { html, LitElement } from 'lit';
3
- import { customElement, property, state } from 'lit/decorators.js';
4
- import { ifDefined } from 'lit/directives/if-defined.js';
5
- import { emitEvent } from '../../utilities/misc/events';
6
- import { stylesUpload } from './styles';
7
- const preventDefaults = (event) => {
8
- event.preventDefault();
9
- event.stopPropagation();
10
- };
11
- /**
12
- * @since 1.3.0
13
- * @status stable
14
- *
15
- * @tagname kemet-upload
16
- * @summary An interface for uploading files.
17
- *
18
- * @prop {string} slug - A unique identifier for the component
19
- * @prop {string} accept - Determines what file types are accepted
20
- * @prop {boolean} multiple - Allows for multiple files
21
- * @prop {boolean} over - Automatically is true when a file is being dragged over the upload area
22
- * @prop {string} heading - Descriptive text for the upload area
23
- * @prop {boolean} mobile - Displays the component in a mobile context
24
- * @prop {string} breakpoint - Controls the point at which the component is considered mobile
25
- * @prop {boolean} noDragDrop - Is true if drag and drop support is not detected
26
- * @prop {number} maxSize - The maximum file size for uploads
27
- * @prop {string} buttonLabel - The browse files button text
28
- *
29
- * @event kemet-upload-change - Fires when files have been added
30
- *
31
- * @csspart upload - The area where files are dropped.
32
- * @csspart heading - The description in the upload area.
33
- * @csspart button - The button in the upload area.
34
- * @csspart files - The area where uploaded files are listed.
35
- *
36
- * @cssproperty --kemet-upload-color - The default text color.
37
- * @cssproperty --kemet-upload-height - The height.
38
- * @cssproperty --kemet-upload-border - The border.
39
- * @cssproperty --kemet-upload-background-color - The background color.
40
- *
41
- */
42
- let KemetUpload = class KemetUpload extends LitElement {
43
- constructor() {
44
- super(...arguments);
45
- this.slug = 'upload';
46
- this.heading = 'Drag & Drop Files';
47
- this.breakpoint = '600px';
48
- this.buttonLabel = 'Browse Files';
49
- }
50
- firstUpdated() {
51
- this.fileInputElement = this.shadowRoot.querySelector('[type="file"]');
52
- this.upload = this.shadowRoot.querySelector('.upload');
53
- ['dragenter', 'dragover', 'dragleave', 'drop'].forEach((eventName) => {
54
- this.upload.addEventListener(eventName, event => preventDefaults(event), false);
55
- });
56
- ['dragenter', 'dragover'].forEach((eventName) => {
57
- this.upload.addEventListener(eventName, () => { this.over = true; }, false);
58
- });
59
- ['dragleave', 'drop'].forEach((eventName) => {
60
- this.upload.addEventListener(eventName, () => { this.over = false; }, false);
61
- });
62
- this.isMobile();
63
- this.hasDragDrop();
64
- window.addEventListener('resize', () => { this.isMobile(); });
65
- this.upload.addEventListener('drop', event => this.handleDrop(event), false);
66
- }
67
- render() {
68
- return html `
69
- <div class="upload" part="upload">
70
- <kemet-icon icon="cloud-arrow-up" size="128"></kemet-icon>
71
- <input
72
- type="file"
73
- id=${this.slug}
74
- ?multiple=${this.multiple}
75
- accept=${ifDefined(this.accept) ? this.accept : null}
76
- @change=${(event) => this.handleChange(event)}
77
- />
78
- <h3 class="heading" part="heading">${this.heading}</h3>
79
- <label class="button" part="button" for=${this.slug}>${this.buttonLabel}</label>
80
- </div>
81
- <div class="files" part="files">
82
- <slot></slot>
83
- </div>
84
- `;
85
- }
86
- handleChange(event) {
87
- emitEvent(this, 'kemet-upload-change', {
88
- event,
89
- files: this.fileInputElement.files,
90
- fileElement: this.fileInputElement,
91
- });
92
- }
93
- handleDrop(event) {
94
- emitEvent(this, 'kemet-upload-change', {
95
- event,
96
- files: (event === null || event === void 0 ? void 0 : event.dataTransfer.files) || [],
97
- fileElement: this.fileInputElement,
98
- });
99
- }
100
- isMobile() {
101
- const mediaQuery = window.matchMedia(`(max-width: ${this.breakpoint})`);
102
- this.mobile = mediaQuery.matches;
103
- }
104
- hasDragDrop() {
105
- this.noDragDrop = !('draggable' in document.createElement('span'));
106
- }
107
- };
108
- KemetUpload.styles = [stylesUpload];
109
- __decorate([
110
- property({ type: String })
111
- ], KemetUpload.prototype, "slug", void 0);
112
- __decorate([
113
- property({ type: String })
114
- ], KemetUpload.prototype, "accept", void 0);
115
- __decorate([
116
- property({ type: Boolean })
117
- ], KemetUpload.prototype, "multiple", void 0);
118
- __decorate([
119
- property({ type: Boolean, reflect: true })
120
- ], KemetUpload.prototype, "over", void 0);
121
- __decorate([
122
- property({ type: String })
123
- ], KemetUpload.prototype, "heading", void 0);
124
- __decorate([
125
- property({ type: Boolean, reflect: true })
126
- ], KemetUpload.prototype, "mobile", void 0);
127
- __decorate([
128
- property({ type: String, reflect: true })
129
- ], KemetUpload.prototype, "breakpoint", void 0);
130
- __decorate([
131
- property({ type: Boolean, reflect: true, attribute: 'no-drag-drop' })
132
- ], KemetUpload.prototype, "noDragDrop", void 0);
133
- __decorate([
134
- property({ type: Number, attribute: 'max-size' })
135
- ], KemetUpload.prototype, "maxSize", void 0);
136
- __decorate([
137
- property({ type: String, attribute: 'button-label' })
138
- ], KemetUpload.prototype, "buttonLabel", void 0);
139
- __decorate([
140
- state()
141
- ], KemetUpload.prototype, "fileInputElement", void 0);
142
- __decorate([
143
- state()
144
- ], KemetUpload.prototype, "upload", void 0);
145
- KemetUpload = __decorate([
146
- customElement('kemet-upload')
147
- ], KemetUpload);
148
- export default KemetUpload;
149
- //# sourceMappingURL=kemet-upload.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"kemet-upload.js","sourceRoot":"","sources":["../../../src/components/kemet-upload/kemet-upload.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { emitEvent } from '../../utilities/misc/events';\nimport { stylesUpload } from './styles';\n\nconst preventDefaults = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n};\n\n/**\n * @since 1.3.0\n * @status stable\n *\n * @tagname kemet-upload\n * @summary An interface for uploading files.\n *\n * @prop {string} slug - A unique identifier for the component\n * @prop {string} accept - Determines what file types are accepted\n * @prop {boolean} multiple - Allows for multiple files\n * @prop {boolean} over - Automatically is true when a file is being dragged over the upload area\n * @prop {string} heading - Descriptive text for the upload area\n * @prop {boolean} mobile - Displays the component in a mobile context\n * @prop {string} breakpoint - Controls the point at which the component is considered mobile\n * @prop {boolean} noDragDrop - Is true if drag and drop support is not detected\n * @prop {number} maxSize - The maximum file size for uploads\n * @prop {string} buttonLabel - The browse files button text\n *\n * @event kemet-upload-change - Fires when files have been added\n *\n * @csspart upload - The area where files are dropped.\n * @csspart heading - The description in the upload area.\n * @csspart button - The button in the upload area.\n * @csspart files - The area where uploaded files are listed.\n *\n * @cssproperty --kemet-upload-color - The default text color.\n * @cssproperty --kemet-upload-height - The height.\n * @cssproperty --kemet-upload-border - The border.\n * @cssproperty --kemet-upload-background-color - The background color.\n *\n */\n\n@customElement('kemet-upload')\nexport default class KemetUpload extends LitElement {\n static styles = [stylesUpload];\n\n @property({ type: String })\n slug: string = 'upload';\n\n @property({ type: String })\n accept: string;\n\n @property({ type: Boolean })\n multiple: boolean;\n\n @property({ type: Boolean, reflect: true })\n over: boolean;\n\n @property({ type: String })\n heading: string = 'Drag & Drop Files';\n\n @property({ type: Boolean, reflect: true })\n mobile: boolean;\n\n @property({ type: String, reflect: true })\n breakpoint: string = '600px';\n\n @property({ type: Boolean, reflect: true, attribute: 'no-drag-drop' })\n noDragDrop: boolean;\n\n @property({ type: Number, attribute: 'max-size' })\n maxSize: number;\n\n @property({ type: String, attribute: 'button-label' })\n buttonLabel: string = 'Browse Files';\n\n @state()\n fileInputElement: HTMLInputElement;\n\n @state()\n upload: HTMLElement;\n\n firstUpdated() {\n this.fileInputElement = this.shadowRoot.querySelector('[type=\"file\"]');\n this.upload = this.shadowRoot.querySelector('.upload');\n\n ['dragenter', 'dragover', 'dragleave', 'drop'].forEach((eventName) => {\n this.upload.addEventListener(eventName, event => preventDefaults(event), false);\n });\n\n ['dragenter', 'dragover'].forEach((eventName) => {\n this.upload.addEventListener(eventName, () => { this.over = true; }, false);\n });\n\n ['dragleave', 'drop'].forEach((eventName) => {\n this.upload.addEventListener(eventName, () => { this.over = false; }, false);\n });\n\n this.isMobile();\n this.hasDragDrop();\n\n window.addEventListener('resize', () => { this.isMobile(); });\n this.upload.addEventListener('drop', event => this.handleDrop(event), false);\n }\n\n render() {\n return html`\n <div class=\"upload\" part=\"upload\">\n <kemet-icon icon=\"cloud-arrow-up\" size=\"128\"></kemet-icon>\n <input\n type=\"file\"\n id=${this.slug}\n ?multiple=${this.multiple}\n accept=${ifDefined(this.accept) ? this.accept : null}\n @change=${(event: Event) => this.handleChange(event)}\n />\n <h3 class=\"heading\" part=\"heading\">${this.heading}</h3>\n <label class=\"button\" part=\"button\" for=${this.slug}>${this.buttonLabel}</label>\n </div>\n <div class=\"files\" part=\"files\">\n <slot></slot>\n </div>\n `;\n }\n\n handleChange(event: Event) {\n emitEvent(this, 'kemet-upload-change', {\n event,\n files: this.fileInputElement.files,\n fileElement: this.fileInputElement,\n });\n }\n\n handleDrop(event: DragEvent) {\n emitEvent(this, 'kemet-upload-change', {\n event,\n files: event?.dataTransfer.files || [],\n fileElement: this.fileInputElement,\n });\n }\n\n isMobile() {\n const mediaQuery = window.matchMedia(`(max-width: ${this.breakpoint})`);\n this.mobile = mediaQuery.matches;\n }\n\n hasDragDrop() {\n this.noDragDrop = !('draggable' in document.createElement('span'));\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-upload': KemetUpload\n }\n}\n"]}
@@ -1,3 +0,0 @@
1
- export declare const stylesUpload: import("lit").CSSResult;
2
- export declare const stylesUploadFile: import("lit").CSSResult;
3
- export declare const stylesLoaders: import("lit").CSSResult;
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/kemet-upload/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0E9B,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDlC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkD/B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const stylesUpload = css`\n :host {\n --kemet-upload-color: rgb(var(--kemet-color-white));\n --kemet-upload-height: 364px;\n --kemet-upload-border: 1rem solid rgb(var(--kemet-color-gray-50-to-transparent));\n --kemet-upload-background-color: rgb(var(--kemet-color-primary-to-transparent));\n\n\n color: var(--kemet-upload-color);\n display: grid;\n grid-template-columns: 1fr 1fr;\n height: var(--kemet-upload-height);\n border: var(--kemet-upload-border);\n background-color: var(--kemet-upload-background-color);\n }\n\n :host([mobile]) {\n display: block;\n height: auto;\n }\n\n input {\n display: none;\n }\n\n .button {\n cursor: pointer;\n font-size: 1rem;\n display: block;\n color: rgb(var(--kemet-color-white));\n padding: 0.5rem 1rem;\n border: 1px solid rgb(var(--kemet-color-white));\n background-color: transparent;\n }\n\n .upload {\n display: flex;\n align-items: center;\n justify-content: center;\n margin: var(--kemet-upload-margin);\n flex-direction: column;\n border: 2px dashed rgb(var(--kemet-color-white));\n }\n\n :host([over]) .upload {\n background-color: rgb(var(--kemet-color-green-600));\n }\n\n :host([mobile]) .upload {\n height: 280px;\n }\n\n .files {\n display: flex;\n gap: 1rem;\n flex-direction: column;\n padding: 0 1rem;\n overflow: auto;\n background-color: rgb(var(--kemet-color-gray-50-to-transparent));\n }\n\n :host([mobile]) .files {\n padding: 0;\n max-height: 280px;\n }\n\n .heading {\n font-size: 1.25rem;\n margin: 0 0 2rem 0;\n }\n\n :host([no-drag-drop]) .heading {\n display: none;\n }\n`;\n\nexport const stylesUploadFile = css`\n :host {\n --kemet-upload-file-ripple-color: rgb(var(--kemet-color-primary));\n --kemet-upload-file-color: rgb(var(--kemet-color-text));\n --kemet-upload-file-padding: 0.5rem 1rem;\n --kemet-upload-file-border: 1px solid rgb(var(--kemet-color-primary));\n\n color: var(--kemet-upload-file-color);\n display: grid;\n gap: 1rem;\n grid-template-columns: auto 1fr auto;\n align-items: center;\n height: 100%;\n max-height: 50%;\n padding: var(--kemet-upload-file-padding);\n border: var(--kemet-upload-file-border);\n }\n\n :host([status='error']) {\n border: 1px solid rgb(var(--kemet-color-error));\n }\n\n :host([status='complete']) {\n border: 1px solid rgb(var(--kemet-color-success));\n }\n\n h3 {\n margin: 0;\n }\n\n .percentage {\n font-size: clamp(2rem, 3vw, 2.5rem);\n align-self: center;\n justify-self: center;\n }\n\n .indicator {\n transform: scale(0.8);\n }\n\n :host([status='complete']) .message,\n :host([status='complete']) .indicator {\n color: rgb(var(--kemet-color-success));\n }\n\n :host([status='error']) .message,\n :host([status='error']) .indicator {\n color: rgb(var(--kemet-color-error));\n }\n`;\n\nexport const stylesLoaders = css`\n .lds-ripple {\n display: inline-block;\n position: relative;\n width: 80px;\n height: 80px;\n }\n\n .lds-ripple div {\n position: absolute;\n border: 4px solid var(--kemet-upload-file-ripple-color);\n opacity: 1;\n border-radius: var(--kemet-border-radius-circle);\n animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;\n }\n\n .lds-ripple div:nth-child(2) {\n animation-delay: -0.5s;\n }\n\n @keyframes lds-ripple {\n 0% {\n top: 36px;\n left: 36px;\n width: 0;\n height: 0;\n opacity: 0;\n }\n 4.9% {\n top: 36px;\n left: 36px;\n width: 0;\n height: 0;\n opacity: 0;\n }\n 5% {\n top: 36px;\n left: 36px;\n width: 0;\n height: 0;\n opacity: 1;\n }\n 100% {\n top: 0px;\n left: 0px;\n width: 72px;\n height: 72px;\n opacity: 0;\n }\n }\n`;\n"]}
@@ -1,21 +0,0 @@
1
- export interface KemetUploadInterface extends HTMLElement {
2
- slug?: string;
3
- accept?: string;
4
- multiple?: boolean;
5
- over?: boolean;
6
- heading?: string;
7
- mobile?: boolean;
8
- breakpoint?: string;
9
- noDragDrop?: boolean;
10
- maxSize?: number;
11
- buttonLabel?: string;
12
- }
13
- export interface KemetUploadFile extends HTMLElement {
14
- name?: string;
15
- loaded?: number;
16
- size?: number;
17
- type?: string;
18
- status?: string;
19
- percent?: number;
20
- message?: string;
21
- }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/kemet-upload/types.ts"],"names":[],"mappings":"","sourcesContent":["export interface KemetUploadInterface extends HTMLElement {\n slug?: string,\n accept?: string,\n multiple?: boolean,\n over?: boolean,\n heading?: string,\n mobile?: boolean,\n breakpoint?: string,\n noDragDrop?: boolean,\n maxSize?: number,\n buttonLabel?: string\n}\n\nexport interface KemetUploadFile extends HTMLElement {\n name?: string,\n loaded?: number,\n size?: number,\n type?: string,\n status?: string,\n percent?: number,\n message?: string,\n}\n"]}