kemet-ui 2.0.2 → 3.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 (297) hide show
  1. package/custom-elements.json +540 -553
  2. package/dist/components/kemet-accordion/kemet-accordion-panel.d.ts +1 -2
  3. package/dist/components/kemet-accordion/kemet-accordion-panel.js +3 -2
  4. package/dist/components/kemet-accordion/kemet-accordion-panel.js.map +1 -1
  5. package/dist/components/kemet-accordion/kemet-accordion.d.ts +3 -2
  6. package/dist/components/kemet-accordion/kemet-accordion.js +12 -4
  7. package/dist/components/kemet-accordion/kemet-accordion.js.map +1 -1
  8. package/dist/components/kemet-accordion/stories.d.ts +2 -0
  9. package/dist/components/kemet-accordion/stories.js +6 -3
  10. package/dist/components/kemet-accordion/stories.js.map +1 -1
  11. package/dist/components/kemet-accordion/styles.js +5 -5
  12. package/dist/components/kemet-accordion/styles.js.map +1 -1
  13. package/dist/components/kemet-alert/docs/stories.d.ts +12 -0
  14. package/dist/components/kemet-alert/docs/stories.js +180 -36
  15. package/dist/components/kemet-alert/docs/stories.js.map +1 -1
  16. package/dist/components/kemet-alert/kemet-alert.d.ts +4 -5
  17. package/dist/components/kemet-alert/kemet-alert.js +8 -5
  18. package/dist/components/kemet-alert/kemet-alert.js.map +1 -1
  19. package/dist/components/kemet-alert/styles.js +10 -8
  20. package/dist/components/kemet-alert/styles.js.map +1 -1
  21. package/dist/components/kemet-alert/types.d.ts +0 -9
  22. package/dist/components/kemet-alert/types.js.map +1 -1
  23. package/dist/components/kemet-avatar/docs/stories.d.ts +4 -0
  24. package/dist/components/kemet-avatar/docs/stories.js +57 -35
  25. package/dist/components/kemet-avatar/docs/stories.js.map +1 -1
  26. package/dist/components/kemet-avatar/kemet-avatar.d.ts +4 -4
  27. package/dist/components/kemet-avatar/kemet-avatar.js +4 -4
  28. package/dist/components/kemet-avatar/kemet-avatar.js.map +1 -1
  29. package/dist/components/kemet-avatar/styles.js +16 -9
  30. package/dist/components/kemet-avatar/styles.js.map +1 -1
  31. package/dist/components/kemet-badge/docs/stories.d.ts +6 -0
  32. package/dist/components/kemet-badge/docs/stories.js +52 -16
  33. package/dist/components/kemet-badge/docs/stories.js.map +1 -1
  34. package/dist/components/kemet-badge/kemet-badge.d.ts +2 -1
  35. package/dist/components/kemet-badge/kemet-badge.js +1 -1
  36. package/dist/components/kemet-badge/kemet-badge.js.map +1 -1
  37. package/dist/components/kemet-badge/styles.js +11 -9
  38. package/dist/components/kemet-badge/styles.js.map +1 -1
  39. package/dist/components/kemet-badge/types.d.ts +1 -6
  40. package/dist/components/kemet-badge/types.js.map +1 -1
  41. package/dist/components/kemet-button/docs/stories.d.ts +12 -0
  42. package/dist/components/kemet-button/docs/stories.js +81 -20
  43. package/dist/components/kemet-button/docs/stories.js.map +1 -1
  44. package/dist/components/kemet-button/kemet-button.d.ts +21 -21
  45. package/dist/components/kemet-button/kemet-button.js +22 -22
  46. package/dist/components/kemet-button/kemet-button.js.map +1 -1
  47. package/dist/components/kemet-button/styles.js +46 -26
  48. package/dist/components/kemet-button/styles.js.map +1 -1
  49. package/dist/components/kemet-button/types.d.ts +1 -10
  50. package/dist/components/kemet-button/types.js.map +1 -1
  51. package/dist/components/kemet-card/docs/stories.d.ts +10 -0
  52. package/dist/components/kemet-card/docs/stories.js +78 -66
  53. package/dist/components/kemet-card/docs/stories.js.map +1 -1
  54. package/dist/components/kemet-card/kemet-card.d.ts +15 -15
  55. package/dist/components/kemet-card/kemet-card.js +15 -15
  56. package/dist/components/kemet-card/kemet-card.js.map +1 -1
  57. package/dist/components/kemet-card/styles.js +29 -14
  58. package/dist/components/kemet-card/styles.js.map +1 -1
  59. package/dist/components/kemet-carousel/docs/stories.d.ts +6 -0
  60. package/dist/components/kemet-carousel/docs/stories.js +72 -60
  61. package/dist/components/kemet-carousel/docs/stories.js.map +1 -1
  62. package/dist/components/kemet-carousel/kemet-carousel-current.d.ts +2 -2
  63. package/dist/components/kemet-carousel/kemet-carousel-current.js.map +1 -1
  64. package/dist/components/kemet-carousel/kemet-carousel-total.d.ts +2 -2
  65. package/dist/components/kemet-carousel/kemet-carousel-total.js.map +1 -1
  66. package/dist/components/kemet-carousel/kemet-carousel.d.ts +15 -15
  67. package/dist/components/kemet-carousel/kemet-carousel.js +15 -15
  68. package/dist/components/kemet-carousel/kemet-carousel.js.map +1 -1
  69. package/dist/components/kemet-carousel/styles.js +31 -15
  70. package/dist/components/kemet-carousel/styles.js.map +1 -1
  71. package/dist/components/kemet-checkbox/docs/stories.d.ts +4 -0
  72. package/dist/components/kemet-checkbox/docs/stories.js +28 -28
  73. package/dist/components/kemet-checkbox/docs/stories.js.map +1 -1
  74. package/dist/components/kemet-checkbox/kemet-checkbox.d.ts +6 -6
  75. package/dist/components/kemet-checkbox/kemet-checkbox.js +6 -6
  76. package/dist/components/kemet-checkbox/kemet-checkbox.js.map +1 -1
  77. package/dist/components/kemet-checkbox/styles.js +20 -13
  78. package/dist/components/kemet-checkbox/styles.js.map +1 -1
  79. package/dist/components/kemet-combo/docs/stories.js +14 -12
  80. package/dist/components/kemet-combo/docs/stories.js.map +1 -1
  81. package/dist/components/kemet-combo/kemet-combo.d.ts +9 -9
  82. package/dist/components/kemet-combo/kemet-combo.js +9 -9
  83. package/dist/components/kemet-combo/kemet-combo.js.map +1 -1
  84. package/dist/components/kemet-combo/styles.js +21 -9
  85. package/dist/components/kemet-combo/styles.js.map +1 -1
  86. package/dist/components/kemet-count/docs/stories.js +10 -25
  87. package/dist/components/kemet-count/docs/stories.js.map +1 -1
  88. package/dist/components/kemet-draggable/docs/stories.d.ts +1 -0
  89. package/dist/components/kemet-draggable/docs/stories.js +8 -15
  90. package/dist/components/kemet-draggable/docs/stories.js.map +1 -1
  91. package/dist/components/kemet-drawer/docs/stories.d.ts +6 -0
  92. package/dist/components/kemet-drawer/docs/stories.js +59 -60
  93. package/dist/components/kemet-drawer/docs/stories.js.map +1 -1
  94. package/dist/components/kemet-drawer/kemet-drawer.d.ts +5 -5
  95. package/dist/components/kemet-drawer/kemet-drawer.js +5 -5
  96. package/dist/components/kemet-drawer/kemet-drawer.js.map +1 -1
  97. package/dist/components/kemet-drawer/styles.js +31 -25
  98. package/dist/components/kemet-drawer/styles.js.map +1 -1
  99. package/dist/components/kemet-drawer/types.d.ts +0 -6
  100. package/dist/components/kemet-drawer/types.js.map +1 -1
  101. package/dist/components/kemet-fab/docs/stories.d.ts +3 -0
  102. package/dist/components/kemet-fab/docs/stories.js +23 -32
  103. package/dist/components/kemet-fab/docs/stories.js.map +1 -1
  104. package/dist/components/kemet-fab/kemet-fab.d.ts +6 -6
  105. package/dist/components/kemet-fab/kemet-fab.js +6 -6
  106. package/dist/components/kemet-fab/kemet-fab.js.map +1 -1
  107. package/dist/components/kemet-fab/styles.js +19 -10
  108. package/dist/components/kemet-fab/styles.js.map +1 -1
  109. package/dist/components/kemet-field/docs/stories.d.ts +1 -1
  110. package/dist/components/kemet-field/docs/stories.js +19 -69
  111. package/dist/components/kemet-field/docs/stories.js.map +1 -1
  112. package/dist/components/kemet-field/kemet-field.d.ts +5 -5
  113. package/dist/components/kemet-field/kemet-field.js.map +1 -1
  114. package/dist/components/kemet-field/styles.js +6 -6
  115. package/dist/components/kemet-field/styles.js.map +1 -1
  116. package/dist/components/kemet-flipcard/docs/stories.d.ts +3 -0
  117. package/dist/components/kemet-flipcard/docs/stories.js +29 -78
  118. package/dist/components/kemet-flipcard/docs/stories.js.map +1 -1
  119. package/dist/components/kemet-flipcard/kemet-flipcard.d.ts +7 -7
  120. package/dist/components/kemet-flipcard/kemet-flipcard.js +7 -7
  121. package/dist/components/kemet-flipcard/kemet-flipcard.js.map +1 -1
  122. package/dist/components/kemet-flipcard/styles.js +20 -10
  123. package/dist/components/kemet-flipcard/styles.js.map +1 -1
  124. package/dist/components/kemet-icon/docs/stories.js +8 -15
  125. package/dist/components/kemet-icon/docs/stories.js.map +1 -1
  126. package/dist/components/kemet-input/docs/stories.d.ts +4 -0
  127. package/dist/components/kemet-input/docs/stories.js +54 -113
  128. package/dist/components/kemet-input/docs/stories.js.map +1 -1
  129. package/dist/components/kemet-input/kemet-input.d.ts +15 -15
  130. package/dist/components/kemet-input/kemet-input.js +15 -15
  131. package/dist/components/kemet-input/kemet-input.js.map +1 -1
  132. package/dist/components/kemet-input/styles.js +38 -21
  133. package/dist/components/kemet-input/styles.js.map +1 -1
  134. package/dist/components/kemet-modal/docs/stories.d.ts +2 -0
  135. package/dist/components/kemet-modal/docs/stories.js +25 -68
  136. package/dist/components/kemet-modal/docs/stories.js.map +1 -1
  137. package/dist/components/kemet-modal/kemet-modal-close.js +1 -1
  138. package/dist/components/kemet-modal/kemet-modal-close.js.map +1 -1
  139. package/dist/components/kemet-modal/kemet-modal.d.ts +16 -6
  140. package/dist/components/kemet-modal/kemet-modal.js +37 -18
  141. package/dist/components/kemet-modal/kemet-modal.js.map +1 -1
  142. package/dist/components/kemet-modal/styles.js +77 -48
  143. package/dist/components/kemet-modal/styles.js.map +1 -1
  144. package/dist/components/kemet-password/docs/stories.js +10 -18
  145. package/dist/components/kemet-password/docs/stories.js.map +1 -1
  146. package/dist/components/kemet-password/styles.js +7 -7
  147. package/dist/components/kemet-password/styles.js.map +1 -1
  148. package/dist/components/kemet-popper/docs/stories.d.ts +2 -0
  149. package/dist/components/kemet-popper/docs/stories.js +32 -39
  150. package/dist/components/kemet-popper/docs/stories.js.map +1 -1
  151. package/dist/components/kemet-popper/kemet-popper.d.ts +1 -3
  152. package/dist/components/kemet-popper/kemet-popper.js +3 -8
  153. package/dist/components/kemet-popper/kemet-popper.js.map +1 -1
  154. package/dist/components/kemet-popper/styles.js +14 -5
  155. package/dist/components/kemet-popper/styles.js.map +1 -1
  156. package/dist/components/kemet-radio/docs/stories.d.ts +2 -0
  157. package/dist/components/kemet-radio/docs/stories.js +24 -20
  158. package/dist/components/kemet-radio/docs/stories.js.map +1 -1
  159. package/dist/components/kemet-radio/kemet-radio.d.ts +7 -6
  160. package/dist/components/kemet-radio/kemet-radio.js +7 -6
  161. package/dist/components/kemet-radio/kemet-radio.js.map +1 -1
  162. package/dist/components/kemet-radio/kemet-radios.d.ts +1 -1
  163. package/dist/components/kemet-radio/kemet-radios.js +1 -1
  164. package/dist/components/kemet-radio/kemet-radios.js.map +1 -1
  165. package/dist/components/kemet-radio/styles.js +26 -16
  166. package/dist/components/kemet-radio/styles.js.map +1 -1
  167. package/dist/components/kemet-rotator/docs/stories.d.ts +1 -0
  168. package/dist/components/kemet-rotator/docs/stories.js +16 -28
  169. package/dist/components/kemet-rotator/docs/stories.js.map +1 -1
  170. package/dist/components/kemet-rotator/kemet-rotator.d.ts +2 -2
  171. package/dist/components/kemet-rotator/kemet-rotator.js +1 -1
  172. package/dist/components/kemet-rotator/kemet-rotator.js.map +1 -1
  173. package/dist/components/kemet-rotator/styles.js +4 -2
  174. package/dist/components/kemet-rotator/styles.js.map +1 -1
  175. package/dist/components/kemet-scroll-link/docs/stories.js +2 -2
  176. package/dist/components/kemet-scroll-link/docs/stories.js.map +1 -1
  177. package/dist/components/kemet-scroll-nav/docs/stories.js +5 -5
  178. package/dist/components/kemet-scroll-nav/docs/stories.js.map +1 -1
  179. package/dist/components/kemet-scroll-nav/kemet-scroll-nav.d.ts +5 -5
  180. package/dist/components/kemet-scroll-nav/kemet-scroll-nav.js +5 -5
  181. package/dist/components/kemet-scroll-nav/kemet-scroll-nav.js.map +1 -1
  182. package/dist/components/kemet-scroll-nav/styles.js +10 -4
  183. package/dist/components/kemet-scroll-nav/styles.js.map +1 -1
  184. package/dist/components/kemet-scroll-snap/docs/stories.d.ts +6 -0
  185. package/dist/components/kemet-scroll-snap/docs/stories.js +72 -82
  186. package/dist/components/kemet-scroll-snap/docs/stories.js.map +1 -1
  187. package/dist/components/kemet-scroll-snap/kemet-scroll-snap-paginator.d.ts +3 -3
  188. package/dist/components/kemet-scroll-snap/kemet-scroll-snap-paginator.js +3 -3
  189. package/dist/components/kemet-scroll-snap/kemet-scroll-snap-paginator.js.map +1 -1
  190. package/dist/components/kemet-scroll-snap/kemet-scroll-snap.d.ts +4 -4
  191. package/dist/components/kemet-scroll-snap/kemet-scroll-snap.js +4 -4
  192. package/dist/components/kemet-scroll-snap/kemet-scroll-snap.js.map +1 -1
  193. package/dist/components/kemet-scroll-snap/styles.js +14 -6
  194. package/dist/components/kemet-scroll-snap/styles.js.map +1 -1
  195. package/dist/components/kemet-select/docs/stories.d.ts +3 -0
  196. package/dist/components/kemet-select/docs/stories.js +25 -33
  197. package/dist/components/kemet-select/docs/stories.js.map +1 -1
  198. package/dist/components/kemet-select/kemet-select.d.ts +13 -13
  199. package/dist/components/kemet-select/kemet-select.js +13 -13
  200. package/dist/components/kemet-select/kemet-select.js.map +1 -1
  201. package/dist/components/kemet-select/styles.js +32 -16
  202. package/dist/components/kemet-select/styles.js.map +1 -1
  203. package/dist/components/kemet-sortable/docs/stories.js +5 -10
  204. package/dist/components/kemet-sortable/docs/stories.js.map +1 -1
  205. package/dist/components/kemet-sortable/styles.js +1 -1
  206. package/dist/components/kemet-sortable/styles.js.map +1 -1
  207. package/dist/components/kemet-svgs/docs/stories.js +11 -11
  208. package/dist/components/kemet-svgs/docs/stories.js.map +1 -1
  209. package/dist/components/kemet-tabs/docs/stories.d.ts +9 -0
  210. package/dist/components/kemet-tabs/docs/stories.js +78 -78
  211. package/dist/components/kemet-tabs/docs/stories.js.map +1 -1
  212. package/dist/components/kemet-tabs/kemet-tab-panel.d.ts +1 -1
  213. package/dist/components/kemet-tabs/kemet-tab-panel.js +1 -1
  214. package/dist/components/kemet-tabs/kemet-tab-panel.js.map +1 -1
  215. package/dist/components/kemet-tabs/kemet-tab.d.ts +2 -2
  216. package/dist/components/kemet-tabs/kemet-tab.js +2 -2
  217. package/dist/components/kemet-tabs/kemet-tab.js.map +1 -1
  218. package/dist/components/kemet-tabs/kemet-tabs.d.ts +8 -8
  219. package/dist/components/kemet-tabs/kemet-tabs.js +16 -8
  220. package/dist/components/kemet-tabs/kemet-tabs.js.map +1 -1
  221. package/dist/components/kemet-tabs/styles.js +12 -5
  222. package/dist/components/kemet-tabs/styles.js.map +1 -1
  223. package/dist/components/kemet-textarea/docs/stories.d.ts +3 -0
  224. package/dist/components/kemet-textarea/docs/stories.js +37 -67
  225. package/dist/components/kemet-textarea/docs/stories.js.map +1 -1
  226. package/dist/components/kemet-textarea/kemet-textarea.d.ts +12 -12
  227. package/dist/components/kemet-textarea/kemet-textarea.js +12 -12
  228. package/dist/components/kemet-textarea/kemet-textarea.js.map +1 -1
  229. package/dist/components/kemet-textarea/styles.js +31 -16
  230. package/dist/components/kemet-textarea/styles.js.map +1 -1
  231. package/dist/components/kemet-toggle/docs/stories.d.ts +2 -0
  232. package/dist/components/kemet-toggle/docs/stories.js +21 -36
  233. package/dist/components/kemet-toggle/docs/stories.js.map +1 -1
  234. package/dist/components/kemet-toggle/kemet-toggle.d.ts +9 -9
  235. package/dist/components/kemet-toggle/kemet-toggle.js +9 -9
  236. package/dist/components/kemet-toggle/kemet-toggle.js.map +1 -1
  237. package/dist/components/kemet-toggle/styles.js +12 -6
  238. package/dist/components/kemet-toggle/styles.js.map +1 -1
  239. package/dist/components/kemet-tooltip/docs/stories.d.ts +4 -0
  240. package/dist/components/kemet-tooltip/docs/stories.js +58 -33
  241. package/dist/components/kemet-tooltip/docs/stories.js.map +1 -1
  242. package/dist/components/kemet-tooltip/styles.js +2 -2
  243. package/dist/components/kemet-tooltip/styles.js.map +1 -1
  244. package/dist/components/kemet-tracker/docs/stories.d.ts +1 -0
  245. package/dist/components/kemet-tracker/docs/stories.js +18 -22
  246. package/dist/components/kemet-tracker/docs/stories.js.map +1 -1
  247. package/dist/components/kemet-tracker/kemet-tracker-step.d.ts +16 -16
  248. package/dist/components/kemet-tracker/kemet-tracker-step.js +16 -16
  249. package/dist/components/kemet-tracker/kemet-tracker-step.js.map +1 -1
  250. package/dist/components/kemet-tracker/styles.js +23 -12
  251. package/dist/components/kemet-tracker/styles.js.map +1 -1
  252. package/dist/components/kemet-upload/docs/stories.js +17 -22
  253. package/dist/components/kemet-upload/docs/stories.js.map +1 -1
  254. package/dist/components/kemet-upload/kemet-upload-file.d.ts +3 -3
  255. package/dist/components/kemet-upload/kemet-upload-file.js +3 -3
  256. package/dist/components/kemet-upload/kemet-upload-file.js.map +1 -1
  257. package/dist/components/kemet-upload/kemet-upload.d.ts +4 -4
  258. package/dist/components/kemet-upload/kemet-upload.js +4 -4
  259. package/dist/components/kemet-upload/kemet-upload.js.map +1 -1
  260. package/dist/components/kemet-upload/styles.js +27 -18
  261. package/dist/components/kemet-upload/styles.js.map +1 -1
  262. package/dist/kemet-components.bundle.js +16 -17
  263. package/dist/kemet-components.bundle.js.map +1 -1
  264. package/dist/kemet-components.cjs +6866 -6753
  265. package/dist/kemet-components.js +6866 -6753
  266. package/dist/styles/kemet.base.css +255 -78
  267. package/dist/styles/kemet.base.css.map +1 -1
  268. package/dist/styles/kemet.base.scss +6 -5
  269. package/dist/styles/kemet.components.css +1 -16
  270. package/dist/styles/kemet.components.css.map +1 -1
  271. package/dist/styles/kemet.components.scss +0 -2
  272. package/dist/styles/kemet.core.css +5729 -1737
  273. package/dist/styles/kemet.core.css.map +1 -1
  274. package/dist/styles/shared/_config.scss +306 -93
  275. package/dist/styles/shared/_helpers.scss +88 -16
  276. package/dist/tsconfig.tsbuildinfo +1 -1
  277. package/package.json +13 -12
  278. package/dist/components/kemet-accordion/types.d.ts +0 -9
  279. package/dist/components/kemet-accordion/types.js +0 -2
  280. package/dist/components/kemet-accordion/types.js.map +0 -1
  281. package/dist/components/kemet-avatar/types.d.ts +0 -8
  282. package/dist/components/kemet-avatar/types.js +0 -2
  283. package/dist/components/kemet-avatar/types.js.map +0 -1
  284. package/dist/components/kemet-card/types.d.ts +0 -3
  285. package/dist/components/kemet-card/types.js +0 -2
  286. package/dist/components/kemet-card/types.js.map +0 -1
  287. package/dist/components/kemet-carousel/types.d.ts +0 -21
  288. package/dist/components/kemet-carousel/types.js +0 -2
  289. package/dist/components/kemet-carousel/types.js.map +0 -1
  290. package/dist/components/kemet-combo/types.d.ts +0 -5
  291. package/dist/components/kemet-combo/types.js +0 -2
  292. package/dist/components/kemet-combo/types.js.map +0 -1
  293. package/dist/components/kemet-draggable/types.d.ts +0 -6
  294. package/dist/components/kemet-draggable/types.js +0 -2
  295. package/dist/components/kemet-draggable/types.js.map +0 -1
  296. package/dist/styles/components/drawer.scss +0 -11
  297. package/dist/styles/components/modal.scss +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"kemet-modal.js","sourceRoot":"","sources":["../../../src/components/kemet-modal/kemet-modal.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { stylesBase, stylesEffects } from './styles';\nimport { emitEvent } from '../../utilities/misc/events';\nimport { TypeEffect } from './types';\n\n/**\n * @since 1.0.0\n * @status stable\n *\n * @tagname kemet-modal\n * @summary A dialog that has many built in effects and flexible styles.\n *\n * @prop {boolean} opened\n * @prop {string} effect\n * @prop {boolean} closeOnClick\n * @prop {string} breakpoint\n * @prop {boolean} mobile\n *\n * @csspart content - The main contents of the modal.\n * @csspart overlay - The surrounding scrim of the modal.\n *\n * @cssproperty --kemet-modal-content-min-width - The minimum width of the content. Default: 0.\n * @cssproperty --kemet-modal-content-max-width - The maximum width of the content. Default: none.\n * @cssproperty --kemet-modal-content-background-color - The background color of the content. Default: --kemet-color-white.\n * @cssproperty --kemet-modal-content-mobile-min-width - The min with of the mobile content. Default: 100%.\n * @cssproperty --kemet-modal-content-mobile-min-height - The min height of the mobile content. Default: 80vh.\n *\n * @event kemet-modal-opened - Fires when the modal opens\n * @event kemet-modal-closed - Fires when the modal closes\n *\n */\n\n@customElement('kemet-modal')\nexport default class KemetModal extends LitElement {\n static styles = [stylesBase, stylesEffects];\n\n @property({ type: Boolean, reflect: true })\n opened: boolean = false;\n\n @property({ type: String, reflect: true })\n effect: TypeEffect;\n\n @property({ type: Boolean, attribute: 'close-on-click' })\n closeOnClick: boolean = false;\n\n @property({ type: String })\n breakpoint: string = '600px';\n\n @property({ type: Boolean, reflect: true })\n mobile: boolean;\n\n @state()\n focusableSelector: string;\n\n @state()\n focusableElements: any;\n\n constructor() {\n super();\n\n // bindings\n this.addEventListener('kemet-modal-close-pressed', () => { this.opened = false; });\n }\n\n firstUpdated() {\n // standard properties\n /** @internal */\n this.focusableSelector = 'body, a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]';\n this.focusableElements = this.querySelectorAll(this.focusableSelector);\n\n // events\n this.addEventListener('keyup', (event) => {\n if (event.key === 'Escape') {\n this.opened = false;\n }\n });\n\n this.addEventListener('click', (event) => {\n const targetElement = event.target as HTMLElement;\n if (this.opened && this.closeOnClick && targetElement.tagName.toLowerCase() === 'kemet-modal') {\n this.opened = false;\n }\n });\n\n window.addEventListener('resize', () => {\n this.isMobile();\n });\n\n this.focusableElements.forEach((element) => {\n element.addEventListener('keydown', event => this.handleFocusableDown(event));\n });\n }\n\n updated(prevProps) {\n if (!prevProps.get('opened') && this.opened === true) {\n setTimeout(() => {\n this.focusableElements[0]?.focus();\n }, 100);\n\n emitEvent(this, 'kemet-modal-opened', this);\n }\n\n if (prevProps.get('opened') && this.opened === false) {\n emitEvent(this, 'kemet-modal-closed', this);\n }\n\n this.isMobile();\n }\n\n render() {\n return html`\n <div class=\"content\" part=\"content\">\n <slot></slot>\n </div>\n <div class=\"overlay\" part=\"overlay\"></div>\n `;\n }\n\n isMobile() {\n const mediaQuery = window.matchMedia(`(max-width: ${this.breakpoint})`);\n this.mobile = mediaQuery.matches;\n }\n\n handleFocusableDown(event) {\n const firstFocusable = this.focusableElements[0];\n const lastFocusable = this.focusableElements[this.focusableElements.length - 1];\n\n if (event.key === 'Tab') {\n if (event.shiftKey && document.activeElement === firstFocusable) {\n event.preventDefault();\n lastFocusable.focus();\n } else if (!event.shiftKey && document.activeElement === lastFocusable) {\n event.preventDefault();\n firstFocusable.focus();\n }\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-modal': KemetModal\n }\n}\n"]}
1
+ {"version":3,"file":"kemet-modal.js","sourceRoot":"","sources":["../../../src/components/kemet-modal/kemet-modal.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAGxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAGH,IAAqB,UAAU,GAA/B,MAAqB,UAAW,SAAQ,UAAU;IAiChD;QACE,KAAK,EAAE,CAAC;QA9BV,WAAM,GAAY,KAAK,CAAC;QAMxB,iBAAY,GAAY,KAAK,CAAC;QAG9B,eAAU,GAAW,OAAO,CAAC;QAuB3B,WAAW;QACX,IAAI,CAAC,gBAAgB,CAAC,2BAA2B,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC;IAED,YAAY;QACV,sBAAsB;QACtB,gBAAgB;QAChB,IAAI,CAAC,iBAAiB,GAAG,oLAAoL,CAAC;QAC9M,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAEvE,SAAS;QACT,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACvC,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;gBAC1B,IAAI,CAAC,WAAW,EAAE,CAAC;aACpB;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACvC,MAAM,aAAa,GAAG,KAAK,CAAC,MAAqB,CAAC;YAClD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,IAAI,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,aAAa,EAAE;gBAC7F,IAAI,CAAC,WAAW,EAAE,CAAC;aACpB;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,EAAE;YACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACzC,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,SAAS;QACf,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE;YACpD,IAAI,CAAC,UAAU,EAAE,CAAC;SACnB;QAED,IAAI,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE;YACpD,IAAI,CAAC,WAAW,EAAE,CAAC;SACpB;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAA;qCACsB,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;;;;KAIxD,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,eAAe,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC;IACnC,CAAC;IAED,UAAU;;QACR,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,MAAA,IAAI,CAAC,aAAa,0CAAE,SAAS;YAAE,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;QAClE,SAAS,CAAC,IAAI,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,WAAW;;QACT,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,MAAA,IAAI,CAAC,aAAa,0CAAE,KAAK;YAAE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC1D,SAAS,CAAC,IAAI,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,mBAAmB,CAAC,KAAK;QACvB,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACjD,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEhF,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE;YACvB,IAAI,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,aAAa,KAAK,cAAc,EAAE;gBAC/D,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,aAAa,CAAC,KAAK,EAAE,CAAC;aACvB;iBAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,aAAa,KAAK,aAAa,EAAE;gBACtE,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,cAAc,CAAC,KAAK,EAAE,CAAC;aACxB;SACF;IACH,CAAC;CACF,CAAA;AAxHQ,iBAAM,GAAG,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAG5C;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0CACnB;AAGxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0CACvB;AAGnB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;gDAC3B;AAG9B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8CACE;AAG7B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;0CAC3B;AAGhB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;2CAC1B;AAIjB;IADC,KAAK,CAAC,QAAQ,CAAC;iDACiB;AAIjC;IADC,KAAK,EAAE;qDACkB;AAI1B;IADC,KAAK,EAAE;qDACe;AA/BJ,UAAU;IAD9B,aAAa,CAAC,aAAa,CAAC;GACR,UAAU,CAyH9B;eAzHoB,UAAU","sourcesContent":["import { html, LitElement } from 'lit';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { stylesBase, stylesEffects } from './styles';\nimport { emitEvent } from '../../utilities/misc/events';\nimport { TypeEffect } from './types';\n\n/**\n * @since 1.0.0\n * @status stable\n *\n * @tagname kemet-modal\n * @summary A dialog that has many built in effects and flexible styles.\n *\n * @prop {boolean} opened\n * @prop {string} effect\n * @prop {boolean} closeOnClick\n * @prop {string} breakpoint\n * @prop {boolean} mobile\n *\n * @csspart dialog - The main contents of the modal.\n * @csspart overlay - The surrounding scrim of the modal.\n *\n * @cssproperty --kemet-modal-radius - The mount of rounding for rounded corners\n * @cssproperty --kemet-modal-dialog-min-width - The minimum width of the dialog.\n * @cssproperty --kemet-modal-dialog-max-width - The maximum width of the dialog.\n * @cssproperty --kemet-modal-dialog-background-color - The background color of the dialog.\n * @cssproperty --kemet-modal-dialog-mobile-width - The width of the mobile dialog.\n * @cssproperty --kemet-modal-dialog-mobile-margin - The margins of the mobile dialog.\n * @cssproperty --kemet-modal-dialog-mobile-padding - The padding of the mobile dialog.\n * @cssproperty --kemet-modal-overlay-background-color - The color of the backdrop overlay.\n *\n * @event kemet-modal-opened - Fires when the modal opens\n * @event kemet-modal-closed - Fires when the modal closes\n *\n */\n\n@customElement('kemet-modal')\nexport default class KemetModal extends LitElement {\n static styles = [stylesBase, stylesEffects];\n\n @property({ type: Boolean, reflect: true })\n opened: boolean = false;\n\n @property({ type: String, reflect: true })\n effect: TypeEffect;\n\n @property({ type: Boolean, attribute: 'close-on-click' })\n closeOnClick: boolean = false;\n\n @property({ type: String })\n breakpoint: string = '600px';\n\n @property({ type: Boolean, reflect: true })\n mobile: boolean;\n\n @property({ type: Boolean, reflect: true })\n rounded: boolean;\n\n /** @internal */\n @query('dialog')\n dialogElement: HTMLDialogElement;\n\n /** @internal */\n @state()\n focusableSelector: string;\n\n /** @internal */\n @state()\n focusableElements: any;\n\n constructor() {\n super();\n\n // bindings\n this.addEventListener('kemet-modal-close-pressed', () => { this.handleClose() });\n }\n\n firstUpdated() {\n // standard properties\n /** @internal */\n this.focusableSelector = 'body, a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]';\n this.focusableElements = this.querySelectorAll(this.focusableSelector);\n\n // events\n this.addEventListener('keyup', (event) => {\n if (event.key === 'Escape') {\n this.handleClose();\n }\n });\n\n this.addEventListener('click', (event) => {\n const targetElement = event.target as HTMLElement;\n if (this.opened && this.closeOnClick && targetElement.tagName.toLowerCase() === 'kemet-modal') {\n this.handleClose();\n }\n });\n\n window.addEventListener('resize', () => {\n this.isMobile();\n });\n\n this.focusableElements.forEach((element) => {\n element.addEventListener('keydown', event => this.handleFocusableDown(event));\n });\n }\n\n updated(prevProps) {\n if (!prevProps.get('opened') && this.opened === true) {\n this.handleOpen();\n }\n\n if (prevProps.get('opened') && this.opened === false) {\n this.handleClose();\n }\n\n this.isMobile();\n }\n\n render() {\n return html`\n <dialog part=\"dialog\" @close=${() => this.handleClose()}>\n <slot></slot>\n </dialog>\n <div class=\"overlay\" part=\"overlay\"></div>\n `;\n }\n\n isMobile() {\n const mediaQuery = window.matchMedia(`(max-width: ${this.breakpoint})`);\n this.mobile = mediaQuery.matches;\n }\n\n handleOpen() {\n this.opened = true;\n if (this.dialogElement?.showModal) this.dialogElement.showModal();\n emitEvent(this, 'kemet-modal-opened', this);\n }\n\n handleClose() {\n this.opened = false;\n if (this.dialogElement?.close) this.dialogElement.close();\n emitEvent(this, 'kemet-modal-closed', this);\n }\n\n handleFocusableDown(event) {\n const firstFocusable = this.focusableElements[0];\n const lastFocusable = this.focusableElements[this.focusableElements.length - 1];\n\n if (event.key === 'Tab') {\n if (event.shiftKey && document.activeElement === firstFocusable) {\n event.preventDefault();\n lastFocusable.focus();\n } else if (!event.shiftKey && document.activeElement === lastFocusable) {\n event.preventDefault();\n firstFocusable.focus();\n }\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-modal': KemetModal\n }\n}\n"]}
@@ -7,6 +7,16 @@ export const stylesBase = css `
7
7
  }
8
8
 
9
9
  :host {
10
+ --kemet-modal-radius: var(--kemet-border-radius-xl);
11
+ --kemet-modal-transition-speed: 0.3s;
12
+ --kemet-modal-dialog-min-width: 0;
13
+ --kemet-modal-dialog-max-width: none;
14
+ --kemet-modal-dialog-mobile-width: calc(100% - 2rem);
15
+ --kemet-modal-dialog-mobile-margin: 0 auto;
16
+ --kemet-modal-dialog-mobile-padding: 1rem;
17
+ --kemet-modal-dialog-background-color: rgb(var(--kemet-color-white));
18
+ --kemet-modal-overlay-background-color: rgb(var(--kemet-color-black) / 20%);
19
+
10
20
  position: fixed;
11
21
  display: flex;
12
22
  top: 0;
@@ -22,21 +32,40 @@ export const stylesBase = css `
22
32
  visibility: visible;
23
33
  }
24
34
 
25
- .content {
35
+ dialog {
36
+ display: block;
26
37
  position: relative;
27
38
  z-index: 3;
28
39
  margin: auto;
29
- min-width: var(--kemet-modal-content-min-width, 0);
30
- max-width: var(--kemet-modal-content-max-width, none);
31
- background-color: var(--kemet-modal-content-background-color, var(--kemet-color-white-to-primary));
40
+ min-width: var(--kemet-modal-dialog-min-width);
41
+ max-width: var(--kemet-modal-dialog-max-width);
42
+ border: 0;
43
+ background: var(--kemet-modal-dialog-background-color);
44
+ }
45
+
46
+ dialog::backdrop {
47
+ background: none;
48
+ }
49
+
50
+ :host([mobile]) dialog {
51
+ margin: var(--kemet-modal-dialog-mobile-margin);
52
+ width: var(--kemet-modal-dialog-mobile-width);
53
+ padding: var(--kemet-modal-dialog-mobile-padding);
54
+ inset-block-start: auto;
55
+ }
56
+
57
+ :host([rounded]) dialog {
58
+ border-radius: var(--kemet-modal-radius);
32
59
  }
33
60
 
34
- :host([mobile]) .content {
35
- min-width: var(--kemet-modal-content-mobile-min-width, 100%);
36
- min-height: var(--kemet-modal-content-mobile-min-height, 80vh);
37
- padding: var(--kemet-modal-content-mobile-padding, 1rem);
61
+ :host([rounded][mobile]) dialog {
62
+ border-top-left-radius: var(--kemet-modal-radius);
63
+ border-top-right-radius: var(--kemet-modal-radius);
64
+ border-bottom-left-radius: 0;
65
+ border-bottom-right-radius: 0;
38
66
  }
39
67
 
68
+
40
69
  .overlay {
41
70
  position: fixed;
42
71
  width: 100%;
@@ -46,8 +75,8 @@ export const stylesBase = css `
46
75
  left: 0;
47
76
  z-index: 1;
48
77
  opacity: 0;
49
- background: var(--kemet-modal-overlay-background-color, rgba(0,0,0,0.2));
50
- transition: all var(--kemet-modal-transition-speed, 0.3s);
78
+ background: var(--kemet-modal-overlay-background-color);
79
+ transition: all var(--kemet-modal-transition-speed);
51
80
  }
52
81
 
53
82
  :host([opened]) .overlay {
@@ -57,49 +86,49 @@ export const stylesBase = css `
57
86
  `;
58
87
  export const stylesEffects = css `
59
88
  /* fadein-scaleup */
60
- :host([effect="fadein-scaleup"]) .content {
89
+ :host([effect="fadein-scaleup"]) dialog {
61
90
  transform: scale(0.7);
62
91
  opacity: 0;
63
- transition: all var(--kemet-modal-transition-speed, 0.3s);
92
+ transition: all var(--kemet-modal-transition-speed);
64
93
  }
65
94
 
66
- :host([effect="fadein-scaleup"][opened]) .content {
95
+ :host([effect="fadein-scaleup"][opened]) dialog {
67
96
  transform: scale(1);
68
97
  opacity: 1;
69
98
  }
70
99
 
71
100
  /* slide-right */
72
- :host([effect="slide-right"]) .content {
101
+ :host([effect="slide-right"]) dialog {
73
102
  transform: translateX(20%);
74
103
  opacity: 0;
75
- transition: all var(--kemet-modal-transition-speed, 0.3s) cubic-bezier(0.25, 0.5, 0.5, 0.9);
104
+ transition: all var(--kemet-modal-transition-speed) cubic-bezier(0.25, 0.5, 0.5, 0.9);
76
105
  }
77
106
 
78
- :host([effect="slide-right"][opened]) .content {
107
+ :host([effect="slide-right"][opened]) dialog {
79
108
  transform: translateX(0);
80
109
  opacity: 1;
81
110
  }
82
111
 
83
112
  /* slide-bottom */
84
- :host([effect="slide-bottom"]) .content {
113
+ :host([effect="slide-bottom"]) dialog {
85
114
  transform: translateY(20%);
86
115
  opacity: 0;
87
- transition: all var(--kemet-modal-transition-speed, 0.3s);
116
+ transition: all var(--kemet-modal-transition-speed);
88
117
  }
89
118
 
90
- :host([effect="slide-bottom"][opened]) .content {
119
+ :host([effect="slide-bottom"][opened]) dialog {
91
120
  transform: translateY(0);
92
121
  opacity: 1;
93
122
  }
94
123
 
95
124
  /* newspaper */
96
- :host([effect="newspaper"]) .content {
125
+ :host([effect="newspaper"]) dialog {
97
126
  transform: scale(0) rotate(720deg);
98
127
  opacity: 0;
99
- transition: all var(--kemet-modal-transition-speed, 0.3s);
128
+ transition: all var(--kemet-modal-transition-speed);
100
129
  }
101
130
 
102
- :host([effect="newspaper"][opened]) .content {
131
+ :host([effect="newspaper"][opened]) dialog {
103
132
  transform: scale(1) rotate(0deg);
104
133
  opacity: 1;
105
134
  }
@@ -109,14 +138,14 @@ export const stylesEffects = css `
109
138
  perspective: 1300px;
110
139
  }
111
140
 
112
- :host([effect="fall"]) .content {
141
+ :host([effect="fall"]) dialog {
113
142
  transform-style: preserve-3d;
114
143
  transform: translateZ(600px) rotateX(20deg);
115
144
  opacity: 0;
116
145
  }
117
146
 
118
- :host([effect="fall"][opened]) .content {
119
- transition: all var(--kemet-modal-transition-speed, 0.3s) ease-in;
147
+ :host([effect="fall"][opened]) dialog {
148
+ transition: all var(--kemet-modal-transition-speed) ease-in;
120
149
  transform: translateZ(0px) rotateX(0deg);
121
150
  opacity: 1;
122
151
  }
@@ -126,14 +155,14 @@ export const stylesEffects = css `
126
155
  perspective: 1300px;
127
156
  }
128
157
 
129
- :host([effect="side-fall"]) .content {
158
+ :host([effect="side-fall"]) dialog {
130
159
  transform-style: preserve-3d;
131
160
  transform: translate(30%) translateZ(600px) rotate(10deg);
132
161
  opacity: 0;
133
162
  }
134
163
 
135
- :host([effect="side-fall"][opened]) .content {
136
- transition: all var(--kemet-modal-transition-speed, 0.3s) ease-in;
164
+ :host([effect="side-fall"][opened]) dialog {
165
+ transition: all var(--kemet-modal-transition-speed) ease-in;
137
166
  transform: translate(0%) translateZ(0) rotate(0deg);
138
167
  opacity: 1;
139
168
  }
@@ -143,14 +172,14 @@ export const stylesEffects = css `
143
172
  perspective: 1300px;
144
173
  }
145
174
 
146
- :host([effect="flip-horizontal"]) .content {
175
+ :host([effect="flip-horizontal"]) dialog {
147
176
  transform-style: preserve-3d;
148
177
  transform: rotateY(-70deg);
149
- transition: all var(--kemet-modal-transition-speed, 0.3s);
178
+ transition: all var(--kemet-modal-transition-speed);
150
179
  opacity: 0;
151
180
  }
152
181
 
153
- :host([effect="flip-horizontal"][opened]) .content {
182
+ :host([effect="flip-horizontal"][opened]) dialog {
154
183
  transform: rotateY(0deg);
155
184
  opacity: 1;
156
185
  }
@@ -160,14 +189,14 @@ export const stylesEffects = css `
160
189
  perspective: 1300px;
161
190
  }
162
191
 
163
- :host([effect="flip-vertical"]) .content {
192
+ :host([effect="flip-vertical"]) dialog {
164
193
  transform-style: preserve-3d;
165
194
  transform: rotateX(-70deg);
166
- transition: all var(--kemet-modal-transition-speed, 0.3s);
195
+ transition: all var(--kemet-modal-transition-speed);
167
196
  opacity: 0;
168
197
  }
169
198
 
170
- :host([effect="flip-vertical"][opened]) .content {
199
+ :host([effect="flip-vertical"][opened]) dialog {
171
200
  transform: rotateX(0deg);
172
201
  opacity: 1;
173
202
  }
@@ -177,27 +206,27 @@ export const stylesEffects = css `
177
206
  perspective: 1300px;
178
207
  }
179
208
 
180
- :host([effect="sign-3d"]) .content {
209
+ :host([effect="sign-3d"]) dialog {
181
210
  transform-style: preserve-3d;
182
211
  transform: rotateX(-60deg);
183
212
  transform-origin: 50% 0;
184
213
  opacity: 0;
185
- transition: all var(--kemet-modal-transition-speed, 0.3s);
214
+ transition: all var(--kemet-modal-transition-speed);
186
215
  }
187
216
 
188
- :host([effect="sign-3d"][opened]) .content {
217
+ :host([effect="sign-3d"][opened]) dialog {
189
218
  transform: rotateX(0deg);
190
219
  opacity: 1;
191
220
  }
192
221
 
193
222
  /* super-scaled */
194
- :host([effect="super-scaled"]) .content {
223
+ :host([effect="super-scaled"]) dialog {
195
224
  transform: scale(2);
196
225
  opacity: 0;
197
- transition: all var(--kemet-modal-transition-speed, 0.3s);
226
+ transition: all var(--kemet-modal-transition-speed);
198
227
  }
199
228
 
200
- :host([effect="super-scaled"][opened]) .content {
229
+ :host([effect="super-scaled"][opened]) dialog {
201
230
  transform: scale(1);
202
231
  opacity: 1;
203
232
  }
@@ -207,13 +236,13 @@ export const stylesEffects = css `
207
236
  perspective: 1300px;
208
237
  }
209
238
 
210
- :host([effect="slit"]) .content {
239
+ :host([effect="slit"]) dialog {
211
240
  transform-style: preserve-3d;
212
241
  transform: translateZ(-3000px) rotateY(90deg);
213
242
  opacity: 0;
214
243
  }
215
244
 
216
- :host([effect="slit"][opened]) .content {
245
+ :host([effect="slit"][opened]) dialog {
217
246
  animation: slit .7s forwards ease-out;
218
247
  }
219
248
 
@@ -233,15 +262,15 @@ export const stylesEffects = css `
233
262
  perspective: 1300px;
234
263
  }
235
264
 
236
- :host([effect="rotate-bottom"]) .content {
265
+ :host([effect="rotate-bottom"]) dialog {
237
266
  transform-style: preserve-3d;
238
267
  transform: translateY(100%) rotateX(90deg);
239
268
  transform-origin: 0 100%;
240
269
  opacity: 0;
241
- transition: all var(--kemet-modal-transition-speed, 0.3s) ease-out;
270
+ transition: all var(--kemet-modal-transition-speed) ease-out;
242
271
  }
243
272
 
244
- :host([effect="rotate-bottom"][opened]) .content {
273
+ :host([effect="rotate-bottom"][opened]) dialog {
245
274
  transform: translateY(0%) rotateX(0deg);
246
275
  opacity: 1;
247
276
  }
@@ -251,15 +280,15 @@ export const stylesEffects = css `
251
280
  perspective: 1300px;
252
281
  }
253
282
 
254
- :host([effect="rotate-left"]) .content {
283
+ :host([effect="rotate-left"]) dialog {
255
284
  transform-style: preserve-3d;
256
285
  transform: translateZ(100px) translateX(-30%) rotateY(90deg);
257
286
  transform-origin: 0 100%;
258
287
  opacity: 0;
259
- transition: all var(--kemet-modal-transition-speed, 0.3s);
288
+ transition: all var(--kemet-modal-transition-speed);
260
289
  }
261
290
 
262
- :host([effect="rotate-left"][opened]) .content {
291
+ :host([effect="rotate-left"][opened]) dialog {
263
292
  transform: translateZ(0px) translateX(0%) rotateY(0deg);
264
293
  opacity: 1;
265
294
  }
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/kemet-modal/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuD5B,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgN/B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const stylesBase = css`\n *,\n *::before,\n *::after {\n box-sizing: border-box;\n }\n\n :host {\n position: fixed;\n display: flex;\n top: 0;\n left: 0;\n z-index: 99;\n width: 100%;\n height: 100vh;\n visibility: hidden;\n backface-visibility: hidden;\n }\n\n :host([opened]) {\n visibility: visible;\n }\n\n .content {\n position: relative;\n z-index: 3;\n margin: auto;\n min-width: var(--kemet-modal-content-min-width, 0);\n max-width: var(--kemet-modal-content-max-width, none);\n background-color: var(--kemet-modal-content-background-color, var(--kemet-color-white-to-primary));\n }\n\n :host([mobile]) .content {\n min-width: var(--kemet-modal-content-mobile-min-width, 100%);\n min-height: var(--kemet-modal-content-mobile-min-height, 80vh);\n padding: var(--kemet-modal-content-mobile-padding, 1rem);\n }\n\n .overlay {\n position: fixed;\n width: 100%;\n height: 100%;\n visibility: hidden;\n top: 0;\n left: 0;\n z-index: 1;\n opacity: 0;\n background: var(--kemet-modal-overlay-background-color, rgba(0,0,0,0.2));\n transition: all var(--kemet-modal-transition-speed, 0.3s);\n }\n\n :host([opened]) .overlay {\n opacity: 1;\n visibility: visible;\n }\n`;\n\nexport const stylesEffects = css`\n /* fadein-scaleup */\n :host([effect=\"fadein-scaleup\"]) .content {\n transform: scale(0.7);\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed, 0.3s);\n }\n\n :host([effect=\"fadein-scaleup\"][opened]) .content {\n transform: scale(1);\n opacity: 1;\n }\n\n /* slide-right */\n :host([effect=\"slide-right\"]) .content {\n transform: translateX(20%);\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed, 0.3s) cubic-bezier(0.25, 0.5, 0.5, 0.9);\n }\n\n :host([effect=\"slide-right\"][opened]) .content {\n transform: translateX(0);\n opacity: 1;\n }\n\n /* slide-bottom */\n :host([effect=\"slide-bottom\"]) .content {\n transform: translateY(20%);\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed, 0.3s);\n }\n\n :host([effect=\"slide-bottom\"][opened]) .content {\n transform: translateY(0);\n opacity: 1;\n }\n\n /* newspaper */\n :host([effect=\"newspaper\"]) .content {\n transform: scale(0) rotate(720deg);\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed, 0.3s);\n }\n\n :host([effect=\"newspaper\"][opened]) .content {\n transform: scale(1) rotate(0deg);\n opacity: 1;\n }\n\n /* fall */\n :host([effect=\"fall\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"fall\"]) .content {\n transform-style: preserve-3d;\n transform: translateZ(600px) rotateX(20deg);\n opacity: 0;\n }\n\n :host([effect=\"fall\"][opened]) .content {\n transition: all var(--kemet-modal-transition-speed, 0.3s) ease-in;\n transform: translateZ(0px) rotateX(0deg);\n opacity: 1;\n }\n\n /* side-fall */\n :host([effect=\"side-fall\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"side-fall\"]) .content {\n transform-style: preserve-3d;\n transform: translate(30%) translateZ(600px) rotate(10deg);\n opacity: 0;\n }\n\n :host([effect=\"side-fall\"][opened]) .content {\n transition: all var(--kemet-modal-transition-speed, 0.3s) ease-in;\n transform: translate(0%) translateZ(0) rotate(0deg);\n opacity: 1;\n }\n\n /* flip-horizontal */\n :host([effect=\"flip-horizontal\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"flip-horizontal\"]) .content {\n transform-style: preserve-3d;\n transform: rotateY(-70deg);\n transition: all var(--kemet-modal-transition-speed, 0.3s);\n opacity: 0;\n }\n\n :host([effect=\"flip-horizontal\"][opened]) .content {\n transform: rotateY(0deg);\n opacity: 1;\n }\n\n /* flip-vertical */\n :host([effect=\"flip-vertical\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"flip-vertical\"]) .content {\n transform-style: preserve-3d;\n transform: rotateX(-70deg);\n transition: all var(--kemet-modal-transition-speed, 0.3s);\n opacity: 0;\n }\n\n :host([effect=\"flip-vertical\"][opened]) .content {\n transform: rotateX(0deg);\n opacity: 1;\n }\n\n /* sign-3d */\n :host([effect=\"sign-3d\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"sign-3d\"]) .content {\n transform-style: preserve-3d;\n transform: rotateX(-60deg);\n transform-origin: 50% 0;\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed, 0.3s);\n }\n\n :host([effect=\"sign-3d\"][opened]) .content {\n transform: rotateX(0deg);\n opacity: 1;\n }\n\n /* super-scaled */\n :host([effect=\"super-scaled\"]) .content {\n transform: scale(2);\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed, 0.3s);\n }\n\n :host([effect=\"super-scaled\"][opened]) .content {\n transform: scale(1);\n opacity: 1;\n }\n\n /* slit */\n :host([effect=\"slit\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"slit\"]) .content {\n transform-style: preserve-3d;\n transform: translateZ(-3000px) rotateY(90deg);\n opacity: 0;\n }\n\n :host([effect=\"slit\"][opened]) .content {\n animation: slit .7s forwards ease-out;\n }\n\n @keyframes slit {\n 50% {\n transform: translateZ(-250px) rotateY(89deg);\n opacity: 1;\n animation-timing-function: ease-in;}\n 100% {\n transform: translateZ(0) rotateY(0deg);\n opacity: 1;\n }\n }\n\n /* rotate-bottom */\n :host([effect=\"rotate-bottom\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"rotate-bottom\"]) .content {\n transform-style: preserve-3d;\n transform: translateY(100%) rotateX(90deg);\n transform-origin: 0 100%;\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed, 0.3s) ease-out;\n }\n\n :host([effect=\"rotate-bottom\"][opened]) .content {\n transform: translateY(0%) rotateX(0deg);\n opacity: 1;\n }\n\n /* rotate-left */\n :host([effect=\"rotate-left\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"rotate-left\"]) .content {\n transform-style: preserve-3d;\n transform: translateZ(100px) translateX(-30%) rotateY(90deg);\n transform-origin: 0 100%;\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed, 0.3s);\n }\n\n :host([effect=\"rotate-left\"][opened]) .content {\n transform: translateZ(0px) translateX(0%) rotateY(0deg);\n opacity: 1;\n }\n`;\n"]}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/kemet-modal/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoF5B,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgN/B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const stylesBase = css`\n *,\n *::before,\n *::after {\n box-sizing: border-box;\n }\n\n :host {\n --kemet-modal-radius: var(--kemet-border-radius-xl);\n --kemet-modal-transition-speed: 0.3s;\n --kemet-modal-dialog-min-width: 0;\n --kemet-modal-dialog-max-width: none;\n --kemet-modal-dialog-mobile-width: calc(100% - 2rem);\n --kemet-modal-dialog-mobile-margin: 0 auto;\n --kemet-modal-dialog-mobile-padding: 1rem;\n --kemet-modal-dialog-background-color: rgb(var(--kemet-color-white));\n --kemet-modal-overlay-background-color: rgb(var(--kemet-color-black) / 20%);\n\n position: fixed;\n display: flex;\n top: 0;\n left: 0;\n z-index: 99;\n width: 100%;\n height: 100vh;\n visibility: hidden;\n backface-visibility: hidden;\n }\n\n :host([opened]) {\n visibility: visible;\n }\n\n dialog {\n display: block;\n position: relative;\n z-index: 3;\n margin: auto;\n min-width: var(--kemet-modal-dialog-min-width);\n max-width: var(--kemet-modal-dialog-max-width);\n border: 0;\n background: var(--kemet-modal-dialog-background-color);\n }\n\n dialog::backdrop {\n background: none;\n }\n\n :host([mobile]) dialog {\n margin: var(--kemet-modal-dialog-mobile-margin);\n width: var(--kemet-modal-dialog-mobile-width);\n padding: var(--kemet-modal-dialog-mobile-padding);\n inset-block-start: auto;\n }\n\n :host([rounded]) dialog {\n border-radius: var(--kemet-modal-radius);\n }\n\n :host([rounded][mobile]) dialog {\n border-top-left-radius: var(--kemet-modal-radius);\n border-top-right-radius: var(--kemet-modal-radius);\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n }\n\n\n .overlay {\n position: fixed;\n width: 100%;\n height: 100%;\n visibility: hidden;\n top: 0;\n left: 0;\n z-index: 1;\n opacity: 0;\n background: var(--kemet-modal-overlay-background-color);\n transition: all var(--kemet-modal-transition-speed);\n }\n\n :host([opened]) .overlay {\n opacity: 1;\n visibility: visible;\n }\n`;\n\nexport const stylesEffects = css`\n /* fadein-scaleup */\n :host([effect=\"fadein-scaleup\"]) dialog {\n transform: scale(0.7);\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed);\n }\n\n :host([effect=\"fadein-scaleup\"][opened]) dialog {\n transform: scale(1);\n opacity: 1;\n }\n\n /* slide-right */\n :host([effect=\"slide-right\"]) dialog {\n transform: translateX(20%);\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed) cubic-bezier(0.25, 0.5, 0.5, 0.9);\n }\n\n :host([effect=\"slide-right\"][opened]) dialog {\n transform: translateX(0);\n opacity: 1;\n }\n\n /* slide-bottom */\n :host([effect=\"slide-bottom\"]) dialog {\n transform: translateY(20%);\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed);\n }\n\n :host([effect=\"slide-bottom\"][opened]) dialog {\n transform: translateY(0);\n opacity: 1;\n }\n\n /* newspaper */\n :host([effect=\"newspaper\"]) dialog {\n transform: scale(0) rotate(720deg);\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed);\n }\n\n :host([effect=\"newspaper\"][opened]) dialog {\n transform: scale(1) rotate(0deg);\n opacity: 1;\n }\n\n /* fall */\n :host([effect=\"fall\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"fall\"]) dialog {\n transform-style: preserve-3d;\n transform: translateZ(600px) rotateX(20deg);\n opacity: 0;\n }\n\n :host([effect=\"fall\"][opened]) dialog {\n transition: all var(--kemet-modal-transition-speed) ease-in;\n transform: translateZ(0px) rotateX(0deg);\n opacity: 1;\n }\n\n /* side-fall */\n :host([effect=\"side-fall\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"side-fall\"]) dialog {\n transform-style: preserve-3d;\n transform: translate(30%) translateZ(600px) rotate(10deg);\n opacity: 0;\n }\n\n :host([effect=\"side-fall\"][opened]) dialog {\n transition: all var(--kemet-modal-transition-speed) ease-in;\n transform: translate(0%) translateZ(0) rotate(0deg);\n opacity: 1;\n }\n\n /* flip-horizontal */\n :host([effect=\"flip-horizontal\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"flip-horizontal\"]) dialog {\n transform-style: preserve-3d;\n transform: rotateY(-70deg);\n transition: all var(--kemet-modal-transition-speed);\n opacity: 0;\n }\n\n :host([effect=\"flip-horizontal\"][opened]) dialog {\n transform: rotateY(0deg);\n opacity: 1;\n }\n\n /* flip-vertical */\n :host([effect=\"flip-vertical\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"flip-vertical\"]) dialog {\n transform-style: preserve-3d;\n transform: rotateX(-70deg);\n transition: all var(--kemet-modal-transition-speed);\n opacity: 0;\n }\n\n :host([effect=\"flip-vertical\"][opened]) dialog {\n transform: rotateX(0deg);\n opacity: 1;\n }\n\n /* sign-3d */\n :host([effect=\"sign-3d\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"sign-3d\"]) dialog {\n transform-style: preserve-3d;\n transform: rotateX(-60deg);\n transform-origin: 50% 0;\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed);\n }\n\n :host([effect=\"sign-3d\"][opened]) dialog {\n transform: rotateX(0deg);\n opacity: 1;\n }\n\n /* super-scaled */\n :host([effect=\"super-scaled\"]) dialog {\n transform: scale(2);\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed);\n }\n\n :host([effect=\"super-scaled\"][opened]) dialog {\n transform: scale(1);\n opacity: 1;\n }\n\n /* slit */\n :host([effect=\"slit\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"slit\"]) dialog {\n transform-style: preserve-3d;\n transform: translateZ(-3000px) rotateY(90deg);\n opacity: 0;\n }\n\n :host([effect=\"slit\"][opened]) dialog {\n animation: slit .7s forwards ease-out;\n }\n\n @keyframes slit {\n 50% {\n transform: translateZ(-250px) rotateY(89deg);\n opacity: 1;\n animation-timing-function: ease-in;}\n 100% {\n transform: translateZ(0) rotateY(0deg);\n opacity: 1;\n }\n }\n\n /* rotate-bottom */\n :host([effect=\"rotate-bottom\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"rotate-bottom\"]) dialog {\n transform-style: preserve-3d;\n transform: translateY(100%) rotateX(90deg);\n transform-origin: 0 100%;\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed) ease-out;\n }\n\n :host([effect=\"rotate-bottom\"][opened]) dialog {\n transform: translateY(0%) rotateX(0deg);\n opacity: 1;\n }\n\n /* rotate-left */\n :host([effect=\"rotate-left\"]) {\n perspective: 1300px;\n }\n\n :host([effect=\"rotate-left\"]) dialog {\n transform-style: preserve-3d;\n transform: translateZ(100px) translateX(-30%) rotateY(90deg);\n transform-origin: 0 100%;\n opacity: 0;\n transition: all var(--kemet-modal-transition-speed);\n }\n\n :host([effect=\"rotate-left\"][opened]) dialog {\n transform: translateZ(0px) translateX(0%) rotateY(0deg);\n opacity: 1;\n }\n`;\n"]}
@@ -7,16 +7,6 @@ import '../../kemet-tabs/kemet-tab-panel';
7
7
  const meta = {
8
8
  title: 'Components / Password',
9
9
  component: 'kemet-password',
10
- };
11
- export default meta;
12
- const Template = ({ rules, message }) => html `
13
- <kemet-field slug="new-password" label="New Password">
14
- <kemet-input slot="input" type="password" name="new-password"></kemet-input>
15
- <kemet-password slot="component" message=${message} .rules=${rules}></kemet-password>
16
- </kemet-field>
17
- `;
18
- export const Standard = {
19
- render: (args) => Template(args),
20
10
  args: {
21
11
  rules: [
22
12
  { pattern: '(?=.{8,}$)', message: 'At least 8 characters long' },
@@ -25,13 +15,15 @@ export const Standard = {
25
15
  ],
26
16
  message: 'Please make sure you meet all the requirements.',
27
17
  },
28
- argTypes: {
29
- rules: {
30
- control: { type: 'array' },
31
- },
32
- message: {
33
- control: { type: 'text' },
34
- },
35
- }
18
+ };
19
+ export default meta;
20
+ const Template = (args) => html `
21
+ <kemet-field slug="new-password" label="New Password">
22
+ <kemet-input slot="input" type="password" name="new-password"></kemet-input>
23
+ <kemet-password slot="component" message=${args.message} .rules=${args.rules}></kemet-password>
24
+ </kemet-field>
25
+ `;
26
+ export const Standard = {
27
+ render: (args) => Template(args),
36
28
  };
37
29
  //# sourceMappingURL=stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../../src/components/kemet-password/docs/stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAG3B,OAAO,mBAAmB,CAAC;AAE3B,OAAO,+BAA+B,CAAC;AACvC,OAAO,6BAA6B,CAAC;AACrC,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAE1C,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,uBAAuB;IAC9B,SAAS,EAAE,gBAAgB;CAC5B,CAAC;AACF,eAAe,IAAI,CAAC;AAIpB,MAAM,QAAQ,GAAG,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,IAAI,CAAA;;;+CAGE,OAAO,WAAW,KAAK;;CAErE,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAU;IAC7B,MAAM,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;IACrC,IAAI,EAAE;QACJ,KAAK,EAAE;YACL,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,4BAA4B,EAAE;YAChE,EAAE,OAAO,EAAE,wBAAwB,EAAE,OAAO,EAAE,yBAAyB,EAAE;YACzE,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,2BAA2B,EAAE;SACjE;QACD,OAAO,EAAE,iDAAiD;KAC3D;IACD,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;SAC3B;QACD,OAAO,EAAE;YACP,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SAC1B;KACF;CACF,CAAC","sourcesContent":["import { html } from 'lit';\nimport type { Meta, StoryObj } from '@storybook/web-components';\n\nimport '../kemet-password';\n\nimport '../../kemet-input/kemet-input';\nimport '../../kemet-tabs/kemet-tabs';\nimport '../../kemet-tabs/kemet-tab';\nimport '../../kemet-tabs/kemet-tab-panel';\n\nconst meta: Meta = {\n title: 'Components / Password',\n component: 'kemet-password',\n};\nexport default meta;\n\ntype Story = StoryObj;\n\nconst Template = ({ rules, message }) => html`\n <kemet-field slug=\"new-password\" label=\"New Password\">\n <kemet-input slot=\"input\" type=\"password\" name=\"new-password\"></kemet-input>\n <kemet-password slot=\"component\" message=${message} .rules=${rules}></kemet-password>\n </kemet-field>\n`;\n\nexport const Standard: Story = {\n render: (args: any) => Template(args),\n args: {\n rules: [\n { pattern: '(?=.{8,}$)', message: 'At least 8 characters long' },\n { pattern: '(?=.*[a-z])(?=.*[A-Z])', message: 'Uppercase and lowercase' },\n { pattern: '(?=.*[0-9])', message: 'At least one number (0-9)' },\n ],\n message: 'Please make sure you meet all the requirements.',\n },\n argTypes: {\n rules: {\n control: { type: 'array' },\n },\n message: {\n control: { type: 'text' },\n },\n }\n};\n"]}
1
+ {"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../../src/components/kemet-password/docs/stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAG3B,OAAO,mBAAmB,CAAC;AAE3B,OAAO,+BAA+B,CAAC;AACvC,OAAO,6BAA6B,CAAC;AACrC,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAE1C,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,uBAAuB;IAC9B,SAAS,EAAE,gBAAgB;IAC3B,IAAI,EAAE;QACJ,KAAK,EAAE;YACL,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,4BAA4B,EAAE;YAChE,EAAE,OAAO,EAAE,wBAAwB,EAAE,OAAO,EAAE,yBAAyB,EAAE;YACzE,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,2BAA2B,EAAE;SACjE;QACD,OAAO,EAAE,iDAAiD;KAC3D;CACF,CAAC;AACF,eAAe,IAAI,CAAC;AAIpB,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAA;;;+CAGgB,IAAI,CAAC,OAAO,WAAW,IAAI,CAAC,KAAK;;CAE/E,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 type { Meta, StoryObj } from '@storybook/web-components';\n\nimport '../kemet-password';\n\nimport '../../kemet-input/kemet-input';\nimport '../../kemet-tabs/kemet-tabs';\nimport '../../kemet-tabs/kemet-tab';\nimport '../../kemet-tabs/kemet-tab-panel';\n\nconst meta: Meta = {\n title: 'Components / Password',\n component: 'kemet-password',\n args: {\n rules: [\n { pattern: '(?=.{8,}$)', message: 'At least 8 characters long' },\n { pattern: '(?=.*[a-z])(?=.*[A-Z])', message: 'Uppercase and lowercase' },\n { pattern: '(?=.*[0-9])', message: 'At least one number (0-9)' },\n ],\n message: 'Please make sure you meet all the requirements.',\n },\n};\nexport default meta;\n\ntype Story = StoryObj;\n\nconst Template = (args) => html`\n <kemet-field slug=\"new-password\" label=\"New Password\">\n <kemet-input slot=\"input\" type=\"password\" name=\"new-password\"></kemet-input>\n <kemet-password slot=\"component\" message=${args.message} .rules=${args.rules}></kemet-password>\n </kemet-field>\n`;\n\nexport const Standard: Story = {\n render: (args: any) => Template(args),\n};\n"]}
@@ -27,11 +27,11 @@ export const stylesBase = css `
27
27
 
28
28
  .status--weak,
29
29
  .status--better {
30
- color: var(--kemet-color-error);
30
+ color: rgb(var(--kemet-color-error));
31
31
  }
32
32
 
33
33
  .status--strong {
34
- color: var(--kemet-color-success);
34
+ color: rgb(var(--kemet-color-success));
35
35
  }
36
36
 
37
37
  .indicator {
@@ -47,20 +47,20 @@ export const stylesBase = css `
47
47
  }
48
48
 
49
49
  .status--weak .indicator li:nth-child(1) {
50
- background-color: var(--kemet-color-error);
50
+ background-color: rgb(var(--kemet-color-error));
51
51
  }
52
52
 
53
53
  .status--better .indicator li:nth-child(1),
54
54
  .status--better .indicator li:nth-child(2) {
55
- background-color: var(--kemet-color-error);
55
+ background-color: rgb(var(--kemet-color-error));
56
56
  }
57
57
 
58
58
  .status--strong .indicator li {
59
- background-color: var(--kemet-color-success);
59
+ background-color: rgb(var(--kemet-color-success));
60
60
  }
61
61
 
62
62
  .rules {
63
- color: var(--kemet-color-background);
63
+ color: rgb(var(--kemet-color-foreground));
64
64
  line-height: 1.5;
65
65
  list-style: none;
66
66
  font-size: 90%;
@@ -72,7 +72,7 @@ export const stylesBase = css `
72
72
  }
73
73
 
74
74
  .rules kemet-icon {
75
- color: var(--kemet-color-success);
75
+ color: rgb(var(--kemet-color-success));
76
76
  position: absolute;
77
77
  left: -2rem;
78
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/kemet-password/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6E5B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const stylesBase = css`\n :host {\n color: inherit;\n display: none;\n }\n\n :host([show]) {\n display: block;\n }\n\n p {\n margin: 1.6rem 0;\n }\n\n .status {\n display: grid;\n align-items: center;\n grid-template-columns: 1fr auto;\n line-height: 1;\n margin-top: 0.8rem;\n }\n\n .status > span {\n text-transform: capitalize;\n }\n\n .status--weak,\n .status--better {\n color: var(--kemet-color-error);\n }\n\n .status--strong {\n color: var(--kemet-color-success);\n }\n\n .indicator {\n display: flex;\n gap: 0.4rem;\n margin: 0;\n list-style: none;\n }\n\n .indicator li {\n width: 1.6rem;\n height: 0.2rem;\n }\n\n .status--weak .indicator li:nth-child(1) {\n background-color: var(--kemet-color-error);\n }\n\n .status--better .indicator li:nth-child(1),\n .status--better .indicator li:nth-child(2) {\n background-color: var(--kemet-color-error);\n }\n\n .status--strong .indicator li {\n background-color: var(--kemet-color-success);\n }\n\n .rules {\n color: var(--kemet-color-background);\n line-height: 1.5;\n list-style: none;\n font-size: 90%;\n padding-left: 2rem;\n }\n\n .rules li {\n position: relative;\n }\n\n .rules kemet-icon {\n color: var(--kemet-color-success);\n position: absolute;\n left: -2rem;\n }\n`;\n"]}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/kemet-password/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6E5B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const stylesBase = css`\n :host {\n color: inherit;\n display: none;\n }\n\n :host([show]) {\n display: block;\n }\n\n p {\n margin: 1.6rem 0;\n }\n\n .status {\n display: grid;\n align-items: center;\n grid-template-columns: 1fr auto;\n line-height: 1;\n margin-top: 0.8rem;\n }\n\n .status > span {\n text-transform: capitalize;\n }\n\n .status--weak,\n .status--better {\n color: rgb(var(--kemet-color-error));\n }\n\n .status--strong {\n color: rgb(var(--kemet-color-success));\n }\n\n .indicator {\n display: flex;\n gap: 0.4rem;\n margin: 0;\n list-style: none;\n }\n\n .indicator li {\n width: 1.6rem;\n height: 0.2rem;\n }\n\n .status--weak .indicator li:nth-child(1) {\n background-color: rgb(var(--kemet-color-error));\n }\n\n .status--better .indicator li:nth-child(1),\n .status--better .indicator li:nth-child(2) {\n background-color: rgb(var(--kemet-color-error));\n }\n\n .status--strong .indicator li {\n background-color: rgb(var(--kemet-color-success));\n }\n\n .rules {\n color: rgb(var(--kemet-color-foreground));\n line-height: 1.5;\n list-style: none;\n font-size: 90%;\n padding-left: 2rem;\n }\n\n .rules li {\n position: relative;\n }\n\n .rules kemet-icon {\n color: rgb(var(--kemet-color-success));\n position: absolute;\n left: -2rem;\n }\n`;\n"]}
@@ -4,7 +4,9 @@ import '../kemet-popper-close';
4
4
  import '../../kemet-tabs/kemet-tabs';
5
5
  import '../../kemet-tabs/kemet-tab';
6
6
  import '../../kemet-tabs/kemet-tab-panel';
7
+ import '../../kemet-button/kemet-button';
7
8
  declare const meta: Meta;
8
9
  export default meta;
9
10
  declare type Story = StoryObj;
10
11
  export declare const Standard: Story;
12
+ export declare const OnClick: Story;
@@ -1,41 +1,19 @@
1
1
  import { html } from 'lit';
2
+ import { ifDefined } from 'lit/directives/if-defined.js';
2
3
  import { unsafeHTML } from 'lit/directives/unsafe-html.js';
3
4
  import '../kemet-popper';
4
5
  import '../kemet-popper-close';
5
6
  import '../../kemet-tabs/kemet-tabs';
6
7
  import '../../kemet-tabs/kemet-tab';
7
8
  import '../../kemet-tabs/kemet-tab-panel';
9
+ import '../../kemet-button/kemet-button';
8
10
  const meta = {
9
11
  title: 'Components / Popper',
10
12
  component: 'kemet-popper',
11
- };
12
- export default meta;
13
- const Template = ({ triggerText, content, canvasPosition, placement, opened, effect, fireOn, strategy, skidding, distance, }) => {
14
- const popper = document.querySelector('kemet-popper');
15
- if (popper)
16
- popper.refresh();
17
- return html `
18
- <div class="storybook__canvas--${canvasPosition}">
19
- <kemet-popper ?opened=${opened} placement=${placement} effect=${effect} fire-on=${fireOn} strategy=${strategy} skidding=${skidding} distance=${distance}>
20
- <kemet-button type="text" slot="trigger">${triggerText}</kemet-button>
21
- <div slot="content">${unsafeHTML(content)}</div>
22
- </kemet-popper>
23
- </div>
24
- `;
25
- };
26
- export const Standard = {
27
- render: (args) => Template(args),
28
13
  args: {
29
- triggerText: 'Click Me',
30
- content: '<kemet-popper-close style="position:absolute; right:1rem;"><kemet-icon icon="x-lg"></kemet-icon></kemet-popper-close><h2 kemet-margin-top="tiny:none">Heading</h2><img width="240" src="https://via.placeholder.com/1920x1080" alt="A placeholder" /><p><a href="https://google.com">This</a> is some <a href="https://google.com">content</a>.</p>',
14
+ triggerText: 'Hover Over Me',
15
+ content: '<kemet-popper-close style="position:absolute; right:1rem;"><kemet-icon icon="x-lg"></kemet-icon></kemet-popper-close><h2 kemet-margin-top="none">Heading</h2><img width="240" src="https://via.placeholder.com/1920x1080" alt="A placeholder" /><p><a href="https://google.com">This</a> is some <a href="https://google.com">content</a>.</p>',
31
16
  canvasPosition: 'middle',
32
- placement: 'top',
33
- opened: false,
34
- effect: 'fade',
35
- fireOn: 'click',
36
- strategy: 'fixed',
37
- skidding: 0,
38
- distance: 0,
39
17
  },
40
18
  argTypes: {
41
19
  canvasPosition: {
@@ -46,13 +24,10 @@ export const Standard = {
46
24
  control: { type: 'select' },
47
25
  options: ['auto', 'auto-start', 'auto-end', 'top', 'top-start', 'top-end', 'bottom', 'bottom-start', 'bottom-end', 'right', 'right-start', 'right-end', 'left', 'left-start', 'left-end'],
48
26
  },
49
- opened: {
50
- control: { type: 'boolean' },
51
- },
52
- effect: {
53
- control: { type: 'select' },
54
- options: ['none', 'fade', 'scale', 'slide', 'fall', 'flip-horizontal', 'flip-vertical', 'sign', 'super-scaled'],
55
- },
27
+ // effect: {
28
+ // control: { type: 'select' },
29
+ // options: ['none', 'fade', 'scale', 'slide', 'fall', 'flip-horizontal', 'flip-vertical', 'sign', 'super-scaled'],
30
+ // },
56
31
  fireOn: {
57
32
  control: { type: 'radio' },
58
33
  options: ['hover', 'click'],
@@ -61,12 +36,30 @@ export const Standard = {
61
36
  control: { type: 'radio' },
62
37
  options: ['fixed', 'absolute'],
63
38
  },
64
- skidding: {
65
- control: { type: 'number' },
66
- },
67
- distance: {
68
- control: { type: 'number' },
69
- },
70
39
  },
71
40
  };
41
+ export default meta;
42
+ const Template = (args) => {
43
+ const popper = document.querySelector('kemet-popper');
44
+ if (popper)
45
+ popper.refresh();
46
+ return html `
47
+ <div class="storybook__canvas--${args.canvasPosition}">
48
+ <kemet-popper ?opened=${args.opened} placement=${ifDefined(args.placement)} effect=${ifDefined(args.effect)} fire-on=${ifDefined(args.fireOn)} strategy=${ifDefined(args.strategy)} skidding=${ifDefined(args.skidding)} distance=${ifDefined(args.distance)}>
49
+ <kemet-button type="text" slot="trigger">${args.triggerText}</kemet-button>
50
+ <div slot="content" kemet-color="gray-950">${unsafeHTML(args.content)}</div>
51
+ </kemet-popper>
52
+ </div>
53
+ `;
54
+ };
55
+ export const Standard = {
56
+ render: (args) => Template(args),
57
+ };
58
+ export const OnClick = {
59
+ render: (args) => Template(args),
60
+ args: {
61
+ triggerText: 'Click Me',
62
+ fireOn: 'click',
63
+ }
64
+ };
72
65
  //# sourceMappingURL=stories.js.map