@redvars/peacock 3.1.1 → 3.1.3

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 (411) hide show
  1. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/LoaderUtils.d.ts +0 -1
  2. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/LoaderUtils.js +0 -1
  3. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/LoaderUtils.js.map +1 -1
  4. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/avatar.css.js.map +1 -1
  5. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/avatar.d.ts +20 -1
  6. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/avatar.js +20 -1
  7. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/avatar.js.map +1 -1
  8. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/p-avatar.d.ts +0 -7
  9. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/p-avatar.js +0 -7
  10. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/p-avatar.js.map +1 -1
  11. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/badge/badge.css.js +5 -4
  12. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/badge/badge.css.js.map +1 -1
  13. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/badge/badge.d.ts +16 -2
  14. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/badge/badge.js +28 -11
  15. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/badge/badge.js.map +1 -1
  16. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/badge/p-badge.d.ts +0 -5
  17. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/badge/p-badge.js +0 -5
  18. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/badge/p-badge.js.map +1 -1
  19. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/button/button.d.ts +99 -0
  20. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/button/button.js +292 -0
  21. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/button/button.js.map +1 -0
  22. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/button/index.d.ts +1 -0
  23. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/button/index.js +2 -0
  24. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/button/index.js.map +1 -0
  25. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/ClockController.d.ts +10 -0
  26. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/ClockController.js +22 -0
  27. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/ClockController.js.map +1 -0
  28. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/clock.css.d.ts +1 -0
  29. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/clock.css.js +12 -0
  30. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/clock.css.js.map +1 -0
  31. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/clock.d.ts +25 -0
  32. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/clock.js +41 -0
  33. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/clock.js.map +1 -0
  34. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/index.d.ts +1 -0
  35. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/index.js +2 -0
  36. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/clock/index.js.map +1 -0
  37. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/code-highlighter/code-highlighter.d.ts +26 -0
  38. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/code-highlighter/code-highlighter.js +60 -0
  39. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/code-highlighter/code-highlighter.js.map +1 -0
  40. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/code-highlighter/index.d.ts +1 -0
  41. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/code-highlighter/index.js +2 -0
  42. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/code-highlighter/index.js.map +1 -0
  43. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/code-highlighter/local.d.ts +6 -0
  44. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/code-highlighter/local.js +7 -0
  45. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/code-highlighter/local.js.map +1 -0
  46. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/divider/divider.css.d.ts +1 -0
  47. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/divider/divider.css.js +58 -0
  48. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/divider/divider.css.js.map +1 -0
  49. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/divider/divider.d.ts +27 -0
  50. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/divider/divider.js +61 -0
  51. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/divider/divider.js.map +1 -0
  52. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/divider/index.d.ts +1 -0
  53. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/divider/index.js +2 -0
  54. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/divider/index.js.map +1 -0
  55. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/elevation/elevation.css.d.ts +1 -0
  56. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/elevation/elevation.css.js +47 -0
  57. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/elevation/elevation.css.js.map +1 -0
  58. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/elevation/elevation.d.ts +27 -0
  59. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/elevation/elevation.js +31 -0
  60. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/elevation/elevation.js.map +1 -0
  61. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/elevation/index.d.ts +1 -0
  62. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/elevation/index.js +2 -0
  63. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/elevation/index.js.map +1 -0
  64. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/focus-ring/FocusAttachableController.d.ts +9 -0
  65. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/focus-ring/FocusAttachableController.js +25 -0
  66. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/focus-ring/FocusAttachableController.js.map +1 -0
  67. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/focus-ring/focus-ring.d.ts +35 -0
  68. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/focus-ring/focus-ring.js +81 -0
  69. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/focus-ring/focus-ring.js.map +1 -0
  70. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/focus-ring/index.d.ts +1 -0
  71. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/focus-ring/index.js +2 -0
  72. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/focus-ring/index.js.map +1 -0
  73. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/icon.d.ts +23 -2
  74. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/icon.js +20 -4
  75. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/icon.js.map +1 -1
  76. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/p-icon.d.ts +0 -7
  77. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/p-icon.js +0 -7
  78. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/p-icon.js.map +1 -1
  79. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/index.d.ts +6 -0
  80. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/index.js +6 -0
  81. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/index.js.map +1 -1
  82. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/peacock-loader.js +35 -19
  83. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/peacock-loader.js.map +1 -1
  84. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/ripple/index.d.ts +1 -0
  85. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/ripple/index.js +2 -0
  86. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/ripple/index.js.map +1 -0
  87. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/ripple/ripple.d.ts +9 -0
  88. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/ripple/ripple.js +125 -0
  89. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/ripple/ripple.js.map +1 -0
  90. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/utils.d.ts +5 -0
  91. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/utils.js +54 -1
  92. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/utils.js.map +1 -1
  93. package/.rollup.cache/E/git/redvars/peacock/components/dist/tsconfig.tsbuildinfo +1 -1
  94. package/bin/typedoc-gen.mjs +63 -0
  95. package/custom-elements-manifest.config.mjs +5 -6
  96. package/demo/index.html +45 -42
  97. package/dist/LoaderUtils.d.ts +23 -0
  98. package/dist/LoaderUtils.d.ts.map +1 -0
  99. package/dist/assets/styles/tokens.css +21 -53
  100. package/dist/avatar/avatar.d.ts +28 -0
  101. package/dist/avatar/avatar.d.ts.map +1 -0
  102. package/dist/avatar/index.d.ts +2 -0
  103. package/dist/avatar/index.d.ts.map +1 -0
  104. package/dist/avatar/p-avatar.d.ts +4 -0
  105. package/dist/avatar/p-avatar.d.ts.map +1 -0
  106. package/dist/avatar.js +100 -0
  107. package/dist/avatar.js.map +1 -0
  108. package/dist/badge/badge.d.ts +24 -0
  109. package/dist/badge/badge.d.ts.map +1 -0
  110. package/dist/badge/index.d.ts +2 -0
  111. package/dist/badge/index.d.ts.map +1 -0
  112. package/dist/badge/p-badge.d.ts +4 -0
  113. package/dist/badge/p-badge.d.ts.map +1 -0
  114. package/dist/badge.js +90 -0
  115. package/dist/badge.js.map +1 -0
  116. package/dist/button/button.d.ts +103 -0
  117. package/dist/button/button.d.ts.map +1 -0
  118. package/dist/button/index.d.ts +2 -0
  119. package/dist/button/index.d.ts.map +1 -0
  120. package/dist/button.js +710 -0
  121. package/dist/button.js.map +1 -0
  122. package/dist/class-map-BzIzngvN.js +89 -0
  123. package/dist/class-map-BzIzngvN.js.map +1 -0
  124. package/dist/class-map-CBk4-iMN.js +11 -0
  125. package/dist/class-map-CBk4-iMN.js.map +1 -0
  126. package/dist/class-map-Cavm-B1S.js +11 -0
  127. package/dist/class-map-Cavm-B1S.js.map +1 -0
  128. package/dist/class-map-DL5vM0J2.js +11 -0
  129. package/dist/class-map-DL5vM0J2.js.map +1 -0
  130. package/dist/class-map-DpvLRi0h.js +11 -0
  131. package/dist/class-map-DpvLRi0h.js.map +1 -0
  132. package/dist/class-map-IbP5VjmB.js +11 -0
  133. package/dist/class-map-IbP5VjmB.js.map +1 -0
  134. package/dist/clock/ClockController.d.ts +11 -0
  135. package/dist/clock/ClockController.d.ts.map +1 -0
  136. package/dist/clock/clock.d.ts +26 -0
  137. package/dist/clock/clock.d.ts.map +1 -0
  138. package/dist/clock/index.d.ts +2 -0
  139. package/dist/clock/index.d.ts.map +1 -0
  140. package/dist/clock.js +77 -0
  141. package/dist/clock.js.map +1 -0
  142. package/dist/code-highlighter/code-highlighter.d.ts +27 -0
  143. package/dist/code-highlighter/code-highlighter.d.ts.map +1 -0
  144. package/dist/code-highlighter/index.d.ts +2 -0
  145. package/dist/code-highlighter/index.d.ts.map +1 -0
  146. package/dist/code-highlighter/local.d.ts +7 -0
  147. package/dist/code-highlighter/local.d.ts.map +1 -0
  148. package/dist/code-highlighter.js +66 -0
  149. package/dist/code-highlighter.js.map +1 -0
  150. package/dist/custom-elements-jsdocs.json +1211 -0
  151. package/dist/directive-BKuZRRPO.js +9 -0
  152. package/dist/directive-BKuZRRPO.js.map +1 -0
  153. package/dist/directive-CkFJvUQK.js +45 -0
  154. package/dist/directive-CkFJvUQK.js.map +1 -0
  155. package/dist/divider/divider.d.ts +28 -0
  156. package/dist/divider/divider.d.ts.map +1 -0
  157. package/dist/divider/index.d.ts +2 -0
  158. package/dist/divider/index.d.ts.map +1 -0
  159. package/dist/divider.js +117 -0
  160. package/dist/divider.js.map +1 -0
  161. package/dist/elevation/elevation.d.ts +28 -0
  162. package/dist/elevation/elevation.d.ts.map +1 -0
  163. package/dist/elevation/index.d.ts +2 -0
  164. package/dist/elevation/index.d.ts.map +1 -0
  165. package/dist/elevation-Bl1N6qEq.js +100 -0
  166. package/dist/elevation-Bl1N6qEq.js.map +1 -0
  167. package/dist/elevation-CbF5he8B.js +103 -0
  168. package/dist/elevation-CbF5he8B.js.map +1 -0
  169. package/dist/elevation-D3F6Z1jU.js +100 -0
  170. package/dist/elevation-D3F6Z1jU.js.map +1 -0
  171. package/dist/elevation.js +77 -0
  172. package/dist/elevation.js.map +1 -0
  173. package/dist/focus-ring/FocusAttachableController.d.ts +10 -0
  174. package/dist/focus-ring/FocusAttachableController.d.ts.map +1 -0
  175. package/dist/focus-ring/focus-ring.d.ts +36 -0
  176. package/dist/focus-ring/focus-ring.d.ts.map +1 -0
  177. package/dist/focus-ring/index.d.ts +2 -0
  178. package/dist/focus-ring/index.d.ts.map +1 -0
  179. package/dist/focus-ring.js +105 -0
  180. package/dist/focus-ring.js.map +1 -0
  181. package/dist/icon/datasource.d.ts +3 -0
  182. package/dist/icon/datasource.d.ts.map +1 -0
  183. package/dist/icon/icon.d.ts +42 -0
  184. package/dist/icon/icon.d.ts.map +1 -0
  185. package/dist/icon/index.d.ts +2 -0
  186. package/dist/icon/index.d.ts.map +1 -0
  187. package/dist/icon/p-icon.d.ts +4 -0
  188. package/dist/icon/p-icon.d.ts.map +1 -0
  189. package/dist/{component/icon.js → icon.js} +43 -124
  190. package/dist/icon.js.map +1 -0
  191. package/dist/index.d.ts +9 -0
  192. package/dist/index.d.ts.map +1 -0
  193. package/dist/index.js +15 -67
  194. package/dist/index.js.map +1 -1
  195. package/dist/link/link.css.d.ts +3 -0
  196. package/dist/link/link.css.d.ts.map +1 -0
  197. package/dist/lit-element-B7NX__Gq.js +2851 -0
  198. package/dist/lit-element-B7NX__Gq.js.map +1 -0
  199. package/dist/lit-element-Bq5B2QNv.js +28 -0
  200. package/dist/lit-element-Bq5B2QNv.js.map +1 -0
  201. package/dist/lit-element-CkD27PXL.js +28 -0
  202. package/dist/lit-element-CkD27PXL.js.map +1 -0
  203. package/dist/lit-element-DHH1_Q-3.js +28 -0
  204. package/dist/lit-element-DHH1_Q-3.js.map +1 -0
  205. package/dist/peacock-loader.d.ts +2 -0
  206. package/dist/peacock-loader.d.ts.map +1 -0
  207. package/dist/peacock-loader.js +479 -121
  208. package/dist/peacock-loader.js.map +1 -1
  209. package/dist/property-BXcRN0hQ.js +39 -0
  210. package/dist/property-BXcRN0hQ.js.map +1 -0
  211. package/dist/property-CR1ZrEd9.js +45 -0
  212. package/dist/property-CR1ZrEd9.js.map +1 -0
  213. package/dist/property-CqSbFxyM.js +45 -0
  214. package/dist/property-CqSbFxyM.js.map +1 -0
  215. package/dist/{directive-CKEA2P55.js → property-D4Kn9TsY.js} +6 -13
  216. package/dist/property-D4Kn9TsY.js.map +1 -0
  217. package/dist/property-DNaigT7h.js +39 -0
  218. package/dist/property-DNaigT7h.js.map +1 -0
  219. package/dist/property-yt9tIYgR.js +39 -0
  220. package/dist/property-yt9tIYgR.js.map +1 -0
  221. package/dist/query-CV342L_h.js +189 -0
  222. package/dist/query-CV342L_h.js.map +1 -0
  223. package/dist/ripple-Blc5Rqhb.js +102 -0
  224. package/dist/ripple-Blc5Rqhb.js.map +1 -0
  225. package/dist/ripple-BqTcEQAP.js +102 -0
  226. package/dist/ripple-BqTcEQAP.js.map +1 -0
  227. package/dist/ripple-BqUjb18i.js +105 -0
  228. package/dist/ripple-BqUjb18i.js.map +1 -0
  229. package/dist/ripple-Buzs-MON.js +106 -0
  230. package/dist/ripple-Buzs-MON.js.map +1 -0
  231. package/dist/ripple-Bz5B_LoE.js +102 -0
  232. package/dist/ripple-Bz5B_LoE.js.map +1 -0
  233. package/dist/ripple-CAq7Ix6x.js +106 -0
  234. package/dist/ripple-CAq7Ix6x.js.map +1 -0
  235. package/dist/ripple-CDqSm_Vy.js +106 -0
  236. package/dist/ripple-CDqSm_Vy.js.map +1 -0
  237. package/dist/ripple-CJtPH28B.js +102 -0
  238. package/dist/ripple-CJtPH28B.js.map +1 -0
  239. package/dist/ripple-CKTd8obC.js +92 -0
  240. package/dist/ripple-CKTd8obC.js.map +1 -0
  241. package/dist/ripple-CKnDWTVQ.js +107 -0
  242. package/dist/ripple-CKnDWTVQ.js.map +1 -0
  243. package/dist/ripple-CeR8eLuc.js +93 -0
  244. package/dist/ripple-CeR8eLuc.js.map +1 -0
  245. package/dist/ripple-Czp3eR6w.js +127 -0
  246. package/dist/ripple-Czp3eR6w.js.map +1 -0
  247. package/dist/ripple-DIab1MaY.js +106 -0
  248. package/dist/ripple-DIab1MaY.js.map +1 -0
  249. package/dist/ripple-DUFMimxZ.js +120 -0
  250. package/dist/ripple-DUFMimxZ.js.map +1 -0
  251. package/dist/ripple-DVmDdoNV.js +102 -0
  252. package/dist/ripple-DVmDdoNV.js.map +1 -0
  253. package/dist/ripple-DYnhXK5d.js +118 -0
  254. package/dist/ripple-DYnhXK5d.js.map +1 -0
  255. package/dist/ripple-DnudV47f.js +102 -0
  256. package/dist/ripple-DnudV47f.js.map +1 -0
  257. package/dist/ripple-DsC-h31M.js +119 -0
  258. package/dist/ripple-DsC-h31M.js.map +1 -0
  259. package/dist/ripple-DvM0SPd9.js +128 -0
  260. package/dist/ripple-DvM0SPd9.js.map +1 -0
  261. package/dist/ripple-NWIiDgX2.js +128 -0
  262. package/dist/ripple-NWIiDgX2.js.map +1 -0
  263. package/dist/ripple-X3U_R8lT.js +106 -0
  264. package/dist/ripple-X3U_R8lT.js.map +1 -0
  265. package/dist/ripple.js +128 -0
  266. package/dist/ripple.js.map +1 -0
  267. package/dist/src/LoaderUtils.d.ts +0 -1
  268. package/dist/src/avatar/avatar.d.ts +20 -1
  269. package/dist/src/avatar/p-avatar.d.ts +0 -7
  270. package/dist/src/badge/badge.d.ts +16 -2
  271. package/dist/src/badge/p-badge.d.ts +0 -5
  272. package/dist/src/button/button.d.ts +99 -0
  273. package/dist/src/button/index.d.ts +1 -0
  274. package/dist/src/clock/ClockController.d.ts +10 -0
  275. package/dist/src/clock/clock.css.d.ts +1 -0
  276. package/dist/src/clock/clock.d.ts +25 -0
  277. package/dist/src/clock/index.d.ts +1 -0
  278. package/dist/src/code-highlighter/code-highlighter.d.ts +26 -0
  279. package/dist/src/code-highlighter/index.d.ts +1 -0
  280. package/dist/src/code-highlighter/local.d.ts +6 -0
  281. package/dist/src/divider/divider.css.d.ts +1 -0
  282. package/dist/src/divider/divider.d.ts +27 -0
  283. package/dist/src/divider/index.d.ts +1 -0
  284. package/dist/src/elevation/elevation.css.d.ts +1 -0
  285. package/dist/src/elevation/elevation.d.ts +27 -0
  286. package/dist/src/elevation/index.d.ts +1 -0
  287. package/dist/src/focus-ring/FocusAttachableController.d.ts +9 -0
  288. package/dist/src/focus-ring/focus-ring.d.ts +35 -0
  289. package/dist/src/focus-ring/index.d.ts +1 -0
  290. package/dist/src/icon/icon.d.ts +23 -2
  291. package/dist/src/icon/p-icon.d.ts +0 -7
  292. package/dist/src/index.d.ts +6 -0
  293. package/dist/src/ripple/index.d.ts +1 -0
  294. package/dist/src/ripple/ripple.d.ts +9 -0
  295. package/dist/src/utils.d.ts +5 -0
  296. package/dist/state-BXOdKkbT.js +10 -0
  297. package/dist/state-BXOdKkbT.js.map +1 -0
  298. package/dist/state-BfUul2Gq.js +10 -0
  299. package/dist/state-BfUul2Gq.js.map +1 -0
  300. package/dist/state-CNX6DhqO.js +10 -0
  301. package/dist/state-CNX6DhqO.js.map +1 -0
  302. package/dist/state-Cl3mjeR1.js +10 -0
  303. package/dist/state-Cl3mjeR1.js.map +1 -0
  304. package/dist/state-CxzmLNIi.js +10 -0
  305. package/dist/state-CxzmLNIi.js.map +1 -0
  306. package/dist/state-WDFgnqnd.js +36 -0
  307. package/dist/state-WDFgnqnd.js.map +1 -0
  308. package/dist/style-inject.es--nCJ9F_D.js +55 -0
  309. package/dist/style-inject.es--nCJ9F_D.js.map +1 -0
  310. package/dist/style-inject.es-tgCJW-Cu.js +29 -0
  311. package/dist/style-inject.es-tgCJW-Cu.js.map +1 -0
  312. package/dist/styleMixins.css-0Uq-6ouM.js +14 -0
  313. package/dist/styleMixins.css-0Uq-6ouM.js.map +1 -0
  314. package/dist/styleMixins.css-B8H9wDNA.js +17 -0
  315. package/dist/styleMixins.css-B8H9wDNA.js.map +1 -0
  316. package/dist/styleMixins.css-CivfMYtB.js +17 -0
  317. package/dist/styleMixins.css-CivfMYtB.js.map +1 -0
  318. package/dist/styleMixins.css-DrUsqddl.js +17 -0
  319. package/dist/styleMixins.css-DrUsqddl.js.map +1 -0
  320. package/dist/styleMixins.css-fokZCyF-.js +17 -0
  321. package/dist/styleMixins.css-fokZCyF-.js.map +1 -0
  322. package/dist/styleMixins.css.d.ts +10 -0
  323. package/dist/styleMixins.css.d.ts.map +1 -0
  324. package/dist/text/text.css.d.ts +3 -0
  325. package/dist/text/text.css.d.ts.map +1 -0
  326. package/dist/tsconfig.tsbuildinfo +1 -1
  327. package/dist/typedoc.json +340489 -0
  328. package/dist/utils-BVap5huR.js +157 -0
  329. package/dist/utils-BVap5huR.js.map +1 -0
  330. package/dist/utils-CY3RyfcA.js +157 -0
  331. package/dist/utils-CY3RyfcA.js.map +1 -0
  332. package/dist/utils-CdOdn2dW.js +149 -0
  333. package/dist/utils-CdOdn2dW.js.map +1 -0
  334. package/dist/utils-DD_cg6Ms.js +157 -0
  335. package/dist/utils-DD_cg6Ms.js.map +1 -0
  336. package/dist/utils-_5no4mk7.js +128 -0
  337. package/dist/utils-_5no4mk7.js.map +1 -0
  338. package/dist/utils.d.ts +8 -0
  339. package/dist/utils.d.ts.map +1 -0
  340. package/package.json +11 -9
  341. package/readme.md +5 -17
  342. package/rollup.config.js +79 -37
  343. package/scratch.mjs +0 -0
  344. package/scss/mixin.scss +50 -0
  345. package/src/LoaderUtils.ts +122 -122
  346. package/src/avatar/avatar.scss +38 -0
  347. package/src/avatar/avatar.ts +20 -1
  348. package/src/avatar/p-avatar.ts +0 -7
  349. package/src/badge/badge.scss +31 -0
  350. package/src/badge/badge.ts +31 -9
  351. package/src/badge/demo/index.html +9 -1
  352. package/src/badge/p-badge.ts +0 -5
  353. package/src/button/_button-sizes.scss +59 -0
  354. package/src/button/button.scss +430 -0
  355. package/src/button/button.ts +304 -0
  356. package/src/button/demo/index.html +42 -0
  357. package/src/button/index.ts +1 -0
  358. package/src/clock/ClockController.ts +32 -0
  359. package/src/clock/clock.scss +9 -0
  360. package/src/clock/clock.ts +39 -0
  361. package/{demo/int.html → src/clock/demo/index.html} +7 -10
  362. package/src/clock/index.ts +1 -0
  363. package/src/code-highlighter/code-highlighter.scss +0 -0
  364. package/src/code-highlighter/code-highlighter.ts +58 -0
  365. package/src/code-highlighter/demo/index.html +58 -0
  366. package/src/code-highlighter/index.ts +1 -0
  367. package/src/code-highlighter/local.ts +11 -0
  368. package/src/divider/demo/index.html +58 -0
  369. package/src/divider/divider.scss +56 -0
  370. package/src/divider/divider.ts +59 -0
  371. package/src/divider/index.ts +1 -0
  372. package/src/elevation/demo/index.html +58 -0
  373. package/src/elevation/elevation.scss +61 -0
  374. package/src/elevation/elevation.ts +32 -0
  375. package/src/elevation/index.ts +1 -0
  376. package/src/focus-ring/FocusAttachableController.ts +36 -0
  377. package/src/focus-ring/demo/index.html +58 -0
  378. package/src/focus-ring/focus-ring.scss +22 -0
  379. package/src/focus-ring/focus-ring.ts +83 -0
  380. package/src/focus-ring/index.ts +1 -0
  381. package/src/icon/icon.scss +19 -0
  382. package/src/icon/icon.ts +131 -111
  383. package/src/icon/p-icon.ts +0 -7
  384. package/src/index.ts +9 -3
  385. package/src/link/demo/index.html +34 -0
  386. package/src/link/link.scss +24 -0
  387. package/src/peacock-loader.ts +69 -55
  388. package/src/ripple/index.ts +1 -0
  389. package/src/ripple/ripple.ts +134 -0
  390. package/src/styles.d.ts +3 -1
  391. package/src/text/text.scss +48 -0
  392. package/src/utils.ts +72 -1
  393. package/tsconfig.json +23 -22
  394. package/assets/tokens.css +0 -522
  395. package/copyDesignFiles.js +0 -11
  396. package/custom-elements.md +0 -192
  397. package/dist/avatar-GQwWRGRw.js +0 -418
  398. package/dist/avatar-GQwWRGRw.js.map +0 -1
  399. package/dist/avatar-jfcIDB8G.js +0 -424
  400. package/dist/avatar-jfcIDB8G.js.map +0 -1
  401. package/dist/component/avatar.js +0 -92
  402. package/dist/component/avatar.js.map +0 -1
  403. package/dist/component/icon.js.map +0 -1
  404. package/dist/directive-CKEA2P55.js.map +0 -1
  405. package/dist/utils-CSwoJIcG.js +0 -171
  406. package/dist/utils-CSwoJIcG.js.map +0 -1
  407. package/dist/web-types.json +0 -78
  408. package/readme-gen.mjs +0 -24
  409. package/src/avatar/avatar.css.ts +0 -41
  410. package/src/badge/badge.css.ts +0 -33
  411. package/src/icon/icon.css.ts +0 -22
@@ -0,0 +1,118 @@
1
+ import { i, a as i$1, b } from './style-inject.es--nCJ9F_D.js';
2
+
3
+ class Ripple extends i$1 {
4
+ constructor() {
5
+ super(...arguments);
6
+ // Arrow function to bind 'this' automatically
7
+ this._createRipple = (event) => {
8
+ const parent = this.parentElement;
9
+ if (!parent)
10
+ return;
11
+ const rect = parent.getBoundingClientRect();
12
+ // 1. Calculate diameter (furthest corner)
13
+ const diameter = Math.max(rect.width, rect.height) * 2.5;
14
+ const radius = diameter / 2;
15
+ // 2. Calculate position relative to the parent
16
+ const x = event.clientX - rect.left;
17
+ const y = event.clientY - rect.top;
18
+ // 3. Create the ripple element
19
+ // We create this manually to avoid triggering a full Lit render cycle
20
+ // for a transient, fire-and-forget animation.
21
+ const ripple = document.createElement('div');
22
+ ripple.classList.add('ripple-effect');
23
+ ripple.style.width = `${diameter}px`;
24
+ ripple.style.height = `${diameter}px`;
25
+ ripple.style.left = `${x - radius}px`;
26
+ ripple.style.top = `${y - radius}px`;
27
+ // 4. Append to Shadow DOM
28
+ this.renderRoot.appendChild(ripple);
29
+ // 5. Cleanup
30
+ ripple.addEventListener('animationend', () => {
31
+ ripple.remove();
32
+ });
33
+ };
34
+ }
35
+ connectedCallback() {
36
+ super.connectedCallback();
37
+ // We defer slightly to ensure the parent DOM is ready
38
+ requestAnimationFrame(() => {
39
+ this._setupParent();
40
+ });
41
+ }
42
+ disconnectedCallback() {
43
+ super.disconnectedCallback();
44
+ if (this.parentElement) {
45
+ this.parentElement.removeEventListener('pointerdown', this._createRipple);
46
+ }
47
+ }
48
+ _setupParent() {
49
+ const parent = this.parentElement;
50
+ if (!parent)
51
+ return;
52
+ // 1. Force parent to be relative so we can position absolutely inside it
53
+ const style = window.getComputedStyle(parent);
54
+ if (style.position === 'static') {
55
+ parent.style.position = 'relative';
56
+ }
57
+ // 2. Attach listener to the parent
58
+ parent.addEventListener('pointerdown', this._createRipple);
59
+ }
60
+ render() {
61
+ // No HTML needed in the template, we inject ripples dynamically
62
+ return b `<div class="ripple"></div>`;
63
+ }
64
+ }
65
+ Ripple.styles = i `
66
+ :host {
67
+ position: absolute;
68
+ inset: 0; /* top/left/bottom/right: 0 */
69
+ pointer-events: none; /* Let clicks pass through to parent */
70
+ overflow: hidden;
71
+ border-radius: inherit; /* Inherit parent's rounded corners */
72
+ z-index: 0;
73
+ --ripple-state-opacity: 0;
74
+ --ripple-pressed-color: var(--color-on-surface);
75
+ }
76
+
77
+ .ripple:before {
78
+ content: '';
79
+ opacity: var(--ripple-state-opacity);
80
+ pointer-events: none;
81
+ position: absolute;
82
+
83
+ background-color: var(--ripple-pressed-color);
84
+ inset: 0;
85
+ transition:
86
+ opacity 15ms linear,
87
+ background-color 15ms linear;
88
+ }
89
+
90
+ .ripple:after {
91
+ content: '';
92
+ background: radial-gradient(
93
+ closest-side,
94
+ var(--ripple-pressed-color) max(100% - 70px, 65%),
95
+ transparent 100%
96
+ );
97
+ transform-origin: center center;
98
+ transition: opacity 375ms linear;
99
+ }
100
+
101
+ .ripple-effect {
102
+ position: absolute;
103
+ background-color: var(--ripple-pressed-color);
104
+ opacity: 0.12; /* Material 3 State Layer Opacity */
105
+ transform: scale(0);
106
+ animation: ripple-anim 600ms linear forwards;
107
+ }
108
+
109
+ @keyframes ripple-anim {
110
+ to {
111
+ transform: scale(1);
112
+ opacity: 0;
113
+ }
114
+ }
115
+ `;
116
+
117
+ export { Ripple as R };
118
+ //# sourceMappingURL=ripple-DYnhXK5d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ripple-DYnhXK5d.js","sources":["../../src/ripple/ripple.ts"],"sourcesContent":["import { LitElement, html, css } from 'lit';\n\nexport class Ripple extends LitElement {\n static styles = css`\n :host {\n position: absolute;\n inset: 0; /* top/left/bottom/right: 0 */\n pointer-events: none; /* Let clicks pass through to parent */\n overflow: hidden;\n border-radius: inherit; /* Inherit parent's rounded corners */\n z-index: 0;\n --ripple-state-opacity: 0;\n --ripple-pressed-color: var(--color-on-surface);\n }\n\n .ripple:before {\n content: '';\n opacity: var(--ripple-state-opacity);\n pointer-events: none;\n position: absolute;\n\n background-color: var(--ripple-pressed-color);\n inset: 0;\n transition:\n opacity 15ms linear,\n background-color 15ms linear;\n }\n\n .ripple:after {\n content: '';\n background: radial-gradient(\n closest-side,\n var(--ripple-pressed-color) max(100% - 70px, 65%),\n transparent 100%\n );\n transform-origin: center center;\n transition: opacity 375ms linear;\n }\n\n .ripple-effect {\n position: absolute;\n background-color: var(--ripple-pressed-color);\n opacity: 0.12; /* Material 3 State Layer Opacity */\n transform: scale(0);\n animation: ripple-anim 600ms linear forwards;\n }\n\n @keyframes ripple-anim {\n to {\n transform: scale(1);\n opacity: 0;\n }\n }\n `;\n\n connectedCallback() {\n super.connectedCallback();\n // We defer slightly to ensure the parent DOM is ready\n requestAnimationFrame(() => {\n this._setupParent();\n });\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n if (this.parentElement) {\n this.parentElement.removeEventListener('pointerdown', this._createRipple);\n }\n }\n\n _setupParent() {\n const parent = this.parentElement;\n if (!parent) return;\n\n // 1. Force parent to be relative so we can position absolutely inside it\n const style = window.getComputedStyle(parent);\n if (style.position === 'static') {\n parent.style.position = 'relative';\n }\n\n // 2. Attach listener to the parent\n parent.addEventListener('pointerdown', this._createRipple);\n }\n\n // Arrow function to bind 'this' automatically\n _createRipple = (event: PointerEvent) => {\n const parent = this.parentElement;\n if (!parent) return;\n\n const rect = parent.getBoundingClientRect();\n\n // 1. Calculate diameter (furthest corner)\n const diameter = Math.max(rect.width, rect.height) * 2.5;\n const radius = diameter / 2;\n\n // 2. Calculate position relative to the parent\n const x = event.clientX - rect.left;\n const y = event.clientY - rect.top;\n\n // 3. Create the ripple element\n // We create this manually to avoid triggering a full Lit render cycle\n // for a transient, fire-and-forget animation.\n const ripple = document.createElement('div');\n ripple.classList.add('ripple-effect');\n\n ripple.style.width = `${diameter}px`;\n ripple.style.height = `${diameter}px`;\n ripple.style.left = `${x - radius}px`;\n ripple.style.top = `${y - radius}px`;\n\n // 4. Append to Shadow DOM\n this.renderRoot.appendChild(ripple);\n\n // 5. Cleanup\n ripple.addEventListener('animationend', () => {\n ripple.remove();\n });\n };\n\n render() {\n // No HTML needed in the template, we inject ripples dynamically\n return html`<div class=\"ripple\"></div>`;\n }\n}\n"],"names":["LitElement","html","css"],"mappings":";;AAEM,MAAO,MAAO,SAAQA,GAAU,CAAA;AAAtC,IAAA,WAAA,GAAA;;;AAmFE,QAAA,IAAA,CAAA,aAAa,GAAG,CAAC,KAAmB,KAAI;AACtC,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa;AACjC,YAAA,IAAI,CAAC,MAAM;gBAAE;AAEb,YAAA,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE;;AAG3C,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG;AACxD,YAAA,MAAM,MAAM,GAAG,QAAQ,GAAG,CAAC;;YAG3B,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI;YACnC,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG;;;;YAKlC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;AAC5C,YAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC;YAErC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAA,EAAG,QAAQ,IAAI;YACpC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAA,EAAG,QAAQ,IAAI;YACrC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,MAAM,CAAA,EAAA,CAAI;YACrC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,MAAM,CAAA,EAAA,CAAI;;AAGpC,YAAA,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC;;AAGnC,YAAA,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,MAAK;gBAC3C,MAAM,CAAC,MAAM,EAAE;AACjB,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC;IAMH;IApEE,iBAAiB,GAAA;QACf,KAAK,CAAC,iBAAiB,EAAE;;QAEzB,qBAAqB,CAAC,MAAK;YACzB,IAAI,CAAC,YAAY,EAAE;AACrB,QAAA,CAAC,CAAC;IACJ;IAEA,oBAAoB,GAAA;QAClB,KAAK,CAAC,oBAAoB,EAAE;AAC5B,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;QAC3E;IACF;IAEA,YAAY,GAAA;AACV,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa;AACjC,QAAA,IAAI,CAAC,MAAM;YAAE;;QAGb,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC;AAC7C,QAAA,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;AAC/B,YAAA,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU;QACpC;;QAGA,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;IAC5D;IAqCA,MAAM,GAAA;;QAEJ,OAAOC,CAAI,CAAA,CAAA,0BAAA,CAA4B;IACzC;;AAvHO,MAAA,CAAA,MAAM,GAAGC,CAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkDlB,EAAA,CAlDY;;;;"}
@@ -0,0 +1,102 @@
1
+ import { i, a as i$1, b } from './style-inject.es--nCJ9F_D.js';
2
+
3
+ class Ripple extends i$1 {
4
+ constructor() {
5
+ super(...arguments);
6
+ // Arrow function to bind 'this' automatically
7
+ this._createRipple = (event) => {
8
+ const parent = this.parentElement;
9
+ if (!parent)
10
+ return;
11
+ const rect = parent.getBoundingClientRect();
12
+ // 1. Calculate diameter (furthest corner)
13
+ const diameter = Math.max(rect.width, rect.height) * 2.5;
14
+ const radius = diameter / 2;
15
+ // 2. Calculate position relative to the parent
16
+ const x = event.clientX - rect.left;
17
+ const y = event.clientY - rect.top;
18
+ // 3. Create the ripple element
19
+ // We create this manually to avoid triggering a full Lit render cycle
20
+ // for a transient, fire-and-forget animation.
21
+ const ripple = document.createElement('div');
22
+ ripple.classList.add('ripple-effect');
23
+ ripple.style.width = `${diameter}px`;
24
+ ripple.style.height = `${diameter}px`;
25
+ ripple.style.left = `${x - radius}px`;
26
+ ripple.style.top = `${y - radius}px`;
27
+ // 4. Append to Shadow DOM
28
+ this.renderRoot.appendChild(ripple);
29
+ // 5. Cleanup
30
+ ripple.addEventListener('animationend', () => {
31
+ ripple.remove();
32
+ });
33
+ };
34
+ }
35
+ connectedCallback() {
36
+ super.connectedCallback();
37
+ // We defer slightly to ensure the parent DOM is ready
38
+ requestAnimationFrame(() => {
39
+ this._setupParent();
40
+ });
41
+ }
42
+ disconnectedCallback() {
43
+ super.disconnectedCallback();
44
+ if (this.parentElement) {
45
+ this.parentElement.removeEventListener('pointerdown', this._createRipple);
46
+ }
47
+ }
48
+ _setupParent() {
49
+ const parent = this.parentElement;
50
+ if (!parent)
51
+ return;
52
+ // 1. Force parent to be relative so we can position absolutely inside it
53
+ const style = window.getComputedStyle(parent);
54
+ if (style.position === 'static') {
55
+ parent.style.position = 'relative';
56
+ }
57
+ // 2. Attach listener to the parent
58
+ parent.addEventListener('pointerdown', this._createRipple);
59
+ }
60
+ render() {
61
+ // No HTML needed in the template, we inject ripples dynamically
62
+ return b ``;
63
+ }
64
+ }
65
+ Ripple.styles = i `
66
+ :host {
67
+ position: absolute;
68
+ inset: 0; /* top/left/bottom/right: 0 */
69
+ pointer-events: none; /* Let clicks pass through to parent */
70
+ overflow: hidden;
71
+ border-radius: inherit; /* Inherit parent's rounded corners */
72
+ z-index: 0;
73
+ --ripple-state-opacity: 0;
74
+ }
75
+
76
+ :host(:hover) {
77
+ opacity: var(--ripple-state-opacity);
78
+ background-color: #ffffff;
79
+ inset: 0;
80
+ transition:
81
+ opacity 15ms linear,
82
+ background-color 15ms linear;
83
+ }
84
+
85
+ .ripple-effect {
86
+ position: absolute;
87
+ background-color: currentColor;
88
+ opacity: 0.12; /* Material 3 State Layer Opacity */
89
+ transform: scale(0);
90
+ animation: ripple-anim 600ms linear forwards;
91
+ }
92
+
93
+ @keyframes ripple-anim {
94
+ to {
95
+ transform: scale(1);
96
+ opacity: 0;
97
+ }
98
+ }
99
+ `;
100
+
101
+ export { Ripple as R };
102
+ //# sourceMappingURL=ripple-DnudV47f.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ripple-DnudV47f.js","sources":["../../src/ripple/ripple.ts"],"sourcesContent":["import { LitElement, html, css } from 'lit';\n\nexport class Ripple extends LitElement {\n static styles = css`\n :host {\n position: absolute;\n inset: 0; /* top/left/bottom/right: 0 */\n pointer-events: none; /* Let clicks pass through to parent */\n overflow: hidden;\n border-radius: inherit; /* Inherit parent's rounded corners */\n z-index: 0;\n --ripple-state-opacity: 0;\n }\n\n :host(:hover) {\n opacity: var(--ripple-state-opacity);\n background-color: #ffffff;\n inset: 0;\n transition:\n opacity 15ms linear,\n background-color 15ms linear;\n }\n\n .ripple-effect {\n position: absolute;\n background-color: currentColor;\n opacity: 0.12; /* Material 3 State Layer Opacity */\n transform: scale(0);\n animation: ripple-anim 600ms linear forwards;\n }\n\n @keyframes ripple-anim {\n to {\n transform: scale(1);\n opacity: 0;\n }\n }\n `;\n\n connectedCallback() {\n super.connectedCallback();\n // We defer slightly to ensure the parent DOM is ready\n requestAnimationFrame(() => {\n this._setupParent();\n });\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n if (this.parentElement) {\n this.parentElement.removeEventListener('pointerdown', this._createRipple);\n }\n }\n\n _setupParent() {\n const parent = this.parentElement;\n if (!parent) return;\n\n // 1. Force parent to be relative so we can position absolutely inside it\n const style = window.getComputedStyle(parent);\n if (style.position === 'static') {\n parent.style.position = 'relative';\n }\n\n // 2. Attach listener to the parent\n parent.addEventListener('pointerdown', this._createRipple);\n }\n\n // Arrow function to bind 'this' automatically\n _createRipple = (event: PointerEvent) => {\n const parent = this.parentElement;\n if (!parent) return;\n\n const rect = parent.getBoundingClientRect();\n\n // 1. Calculate diameter (furthest corner)\n const diameter = Math.max(rect.width, rect.height) * 2.5;\n const radius = diameter / 2;\n\n // 2. Calculate position relative to the parent\n const x = event.clientX - rect.left;\n const y = event.clientY - rect.top;\n\n // 3. Create the ripple element\n // We create this manually to avoid triggering a full Lit render cycle\n // for a transient, fire-and-forget animation.\n const ripple = document.createElement('div');\n ripple.classList.add('ripple-effect');\n\n ripple.style.width = `${diameter}px`;\n ripple.style.height = `${diameter}px`;\n ripple.style.left = `${x - radius}px`;\n ripple.style.top = `${y - radius}px`;\n\n // 4. Append to Shadow DOM\n this.renderRoot.appendChild(ripple);\n\n // 5. Cleanup\n ripple.addEventListener('animationend', () => {\n ripple.remove();\n });\n };\n\n render() {\n // No HTML needed in the template, we inject ripples dynamically\n return html``;\n }\n}\n"],"names":["LitElement","html","css"],"mappings":";;AAEM,MAAO,MAAO,SAAQA,GAAU,CAAA;AAAtC,IAAA,WAAA,GAAA;;;AAmEE,QAAA,IAAA,CAAA,aAAa,GAAG,CAAC,KAAmB,KAAI;AACtC,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa;AACjC,YAAA,IAAI,CAAC,MAAM;gBAAE;AAEb,YAAA,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE;;AAG3C,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG;AACxD,YAAA,MAAM,MAAM,GAAG,QAAQ,GAAG,CAAC;;YAG3B,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI;YACnC,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG;;;;YAKlC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;AAC5C,YAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC;YAErC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAA,EAAG,QAAQ,IAAI;YACpC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAA,EAAG,QAAQ,IAAI;YACrC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,MAAM,CAAA,EAAA,CAAI;YACrC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,MAAM,CAAA,EAAA,CAAI;;AAGpC,YAAA,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC;;AAGnC,YAAA,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,MAAK;gBAC3C,MAAM,CAAC,MAAM,EAAE;AACjB,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC;IAMH;IApEE,iBAAiB,GAAA;QACf,KAAK,CAAC,iBAAiB,EAAE;;QAEzB,qBAAqB,CAAC,MAAK;YACzB,IAAI,CAAC,YAAY,EAAE;AACrB,QAAA,CAAC,CAAC;IACJ;IAEA,oBAAoB,GAAA;QAClB,KAAK,CAAC,oBAAoB,EAAE;AAC5B,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;QAC3E;IACF;IAEA,YAAY,GAAA;AACV,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa;AACjC,QAAA,IAAI,CAAC,MAAM;YAAE;;QAGb,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC;AAC7C,QAAA,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;AAC/B,YAAA,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU;QACpC;;QAGA,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;IAC5D;IAqCA,MAAM,GAAA;;QAEJ,OAAOC,CAAI,CAAA,CAAA,CAAE;IACf;;AAvGO,MAAA,CAAA,MAAM,GAAGC,CAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkClB,EAAA,CAlCY;;;;"}
@@ -0,0 +1,119 @@
1
+ import { i, a as i$1, b } from './style-inject.es--nCJ9F_D.js';
2
+
3
+ class Ripple extends i$1 {
4
+ constructor() {
5
+ super(...arguments);
6
+ // Arrow function to bind 'this' automatically
7
+ this._createRipple = (event) => {
8
+ const parent = this.parentElement;
9
+ if (!parent)
10
+ return;
11
+ const rect = parent.getBoundingClientRect();
12
+ // 1. Calculate diameter (furthest corner)
13
+ const diameter = Math.max(rect.width, rect.height) * 2.5;
14
+ const radius = diameter / 2;
15
+ // 2. Calculate position relative to the parent
16
+ const x = event.clientX - rect.left;
17
+ const y = event.clientY - rect.top;
18
+ // 3. Create the ripple element
19
+ // We create this manually to avoid triggering a full Lit render cycle
20
+ // for a transient, fire-and-forget animation.
21
+ const ripple = document.createElement('div');
22
+ ripple.classList.add('ripple-effect');
23
+ ripple.style.width = `${diameter}px`;
24
+ ripple.style.height = `${diameter}px`;
25
+ ripple.style.left = `${x - radius}px`;
26
+ ripple.style.top = `${y - radius}px`;
27
+ // 4. Append to Shadow DOM
28
+ this.renderRoot.appendChild(ripple);
29
+ // 5. Cleanup
30
+ ripple.addEventListener('animationend', () => {
31
+ ripple.remove();
32
+ });
33
+ };
34
+ }
35
+ connectedCallback() {
36
+ super.connectedCallback();
37
+ // We defer slightly to ensure the parent DOM is ready
38
+ requestAnimationFrame(() => {
39
+ this._setupParent();
40
+ });
41
+ }
42
+ disconnectedCallback() {
43
+ super.disconnectedCallback();
44
+ if (this.parentElement) {
45
+ this.parentElement.removeEventListener('pointerdown', this._createRipple);
46
+ }
47
+ }
48
+ _setupParent() {
49
+ const parent = this.parentElement;
50
+ if (!parent)
51
+ return;
52
+ // 1. Force parent to be relative so we can position absolutely inside it
53
+ const style = window.getComputedStyle(parent);
54
+ if (style.position === 'static') {
55
+ parent.style.position = 'relative';
56
+ }
57
+ // 2. Attach listener to the parent
58
+ parent.addEventListener('pointerdown', this._createRipple);
59
+ }
60
+ render() {
61
+ // No HTML needed in the template, we inject ripples dynamically
62
+ return b `<div class="ripple"></div>`;
63
+ }
64
+ }
65
+ Ripple.styles = i `
66
+ :host {
67
+ position: absolute;
68
+ inset: 0; /* top/left/bottom/right: 0 */
69
+ pointer-events: none; /* Let clicks pass through to parent */
70
+ overflow: hidden;
71
+ border-radius: inherit; /* Inherit parent's rounded corners */
72
+ z-index: 0;
73
+ --ripple-state-opacity: 0;
74
+ --ripple-pressed-color: var(--color-on-surface);
75
+ }
76
+
77
+ .ripple:before {
78
+ content: '';
79
+ opacity: var(--ripple-state-opacity);
80
+ pointer-events: none;
81
+ position: absolute;
82
+
83
+ background-color: var(--ripple-pressed-color);
84
+ inset: 0;
85
+ transition:
86
+ opacity 15ms linear,
87
+ background-color 15ms linear;
88
+ }
89
+
90
+ .ripple:after {
91
+ content: '';
92
+ opacity: var(--ripple-state-opacity);
93
+ background: radial-gradient(
94
+ closest-side,
95
+ var(--ripple-pressed-color) max(100% - 70px, 65%),
96
+ transparent 100%
97
+ );
98
+ transform-origin: center center;
99
+ transition: opacity 375ms linear;
100
+ }
101
+
102
+ .ripple-effect {
103
+ position: absolute;
104
+ background-color: var(--ripple-pressed-color);
105
+ opacity: 0.12; /* Material 3 State Layer Opacity */
106
+ transform: scale(0);
107
+ animation: ripple-anim 600ms linear forwards;
108
+ }
109
+
110
+ @keyframes ripple-anim {
111
+ to {
112
+ transform: scale(1);
113
+ opacity: 0;
114
+ }
115
+ }
116
+ `;
117
+
118
+ export { Ripple as R };
119
+ //# sourceMappingURL=ripple-DsC-h31M.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ripple-DsC-h31M.js","sources":["../../src/ripple/ripple.ts"],"sourcesContent":["import { LitElement, html, css } from 'lit';\n\nexport class Ripple extends LitElement {\n static styles = css`\n :host {\n position: absolute;\n inset: 0; /* top/left/bottom/right: 0 */\n pointer-events: none; /* Let clicks pass through to parent */\n overflow: hidden;\n border-radius: inherit; /* Inherit parent's rounded corners */\n z-index: 0;\n --ripple-state-opacity: 0;\n --ripple-pressed-color: var(--color-on-surface);\n }\n\n .ripple:before {\n content: '';\n opacity: var(--ripple-state-opacity);\n pointer-events: none;\n position: absolute;\n\n background-color: var(--ripple-pressed-color);\n inset: 0;\n transition:\n opacity 15ms linear,\n background-color 15ms linear;\n }\n\n .ripple:after {\n content: '';\n opacity: var(--ripple-state-opacity);\n background: radial-gradient(\n closest-side,\n var(--ripple-pressed-color) max(100% - 70px, 65%),\n transparent 100%\n );\n transform-origin: center center;\n transition: opacity 375ms linear;\n }\n\n .ripple-effect {\n position: absolute;\n background-color: var(--ripple-pressed-color);\n opacity: 0.12; /* Material 3 State Layer Opacity */\n transform: scale(0);\n animation: ripple-anim 600ms linear forwards;\n }\n\n @keyframes ripple-anim {\n to {\n transform: scale(1);\n opacity: 0;\n }\n }\n `;\n\n connectedCallback() {\n super.connectedCallback();\n // We defer slightly to ensure the parent DOM is ready\n requestAnimationFrame(() => {\n this._setupParent();\n });\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n if (this.parentElement) {\n this.parentElement.removeEventListener('pointerdown', this._createRipple);\n }\n }\n\n _setupParent() {\n const parent = this.parentElement;\n if (!parent) return;\n\n // 1. Force parent to be relative so we can position absolutely inside it\n const style = window.getComputedStyle(parent);\n if (style.position === 'static') {\n parent.style.position = 'relative';\n }\n\n // 2. Attach listener to the parent\n parent.addEventListener('pointerdown', this._createRipple);\n }\n\n // Arrow function to bind 'this' automatically\n _createRipple = (event: PointerEvent) => {\n const parent = this.parentElement;\n if (!parent) return;\n\n const rect = parent.getBoundingClientRect();\n\n // 1. Calculate diameter (furthest corner)\n const diameter = Math.max(rect.width, rect.height) * 2.5;\n const radius = diameter / 2;\n\n // 2. Calculate position relative to the parent\n const x = event.clientX - rect.left;\n const y = event.clientY - rect.top;\n\n // 3. Create the ripple element\n // We create this manually to avoid triggering a full Lit render cycle\n // for a transient, fire-and-forget animation.\n const ripple = document.createElement('div');\n ripple.classList.add('ripple-effect');\n\n ripple.style.width = `${diameter}px`;\n ripple.style.height = `${diameter}px`;\n ripple.style.left = `${x - radius}px`;\n ripple.style.top = `${y - radius}px`;\n\n // 4. Append to Shadow DOM\n this.renderRoot.appendChild(ripple);\n\n // 5. Cleanup\n ripple.addEventListener('animationend', () => {\n ripple.remove();\n });\n };\n\n render() {\n // No HTML needed in the template, we inject ripples dynamically\n return html`<div class=\"ripple\"></div>`;\n }\n}\n"],"names":["LitElement","html","css"],"mappings":";;AAEM,MAAO,MAAO,SAAQA,GAAU,CAAA;AAAtC,IAAA,WAAA,GAAA;;;AAoFE,QAAA,IAAA,CAAA,aAAa,GAAG,CAAC,KAAmB,KAAI;AACtC,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa;AACjC,YAAA,IAAI,CAAC,MAAM;gBAAE;AAEb,YAAA,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE;;AAG3C,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG;AACxD,YAAA,MAAM,MAAM,GAAG,QAAQ,GAAG,CAAC;;YAG3B,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI;YACnC,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG;;;;YAKlC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;AAC5C,YAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC;YAErC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAA,EAAG,QAAQ,IAAI;YACpC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAA,EAAG,QAAQ,IAAI;YACrC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,MAAM,CAAA,EAAA,CAAI;YACrC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,MAAM,CAAA,EAAA,CAAI;;AAGpC,YAAA,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC;;AAGnC,YAAA,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,MAAK;gBAC3C,MAAM,CAAC,MAAM,EAAE;AACjB,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC;IAMH;IApEE,iBAAiB,GAAA;QACf,KAAK,CAAC,iBAAiB,EAAE;;QAEzB,qBAAqB,CAAC,MAAK;YACzB,IAAI,CAAC,YAAY,EAAE;AACrB,QAAA,CAAC,CAAC;IACJ;IAEA,oBAAoB,GAAA;QAClB,KAAK,CAAC,oBAAoB,EAAE;AAC5B,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;QAC3E;IACF;IAEA,YAAY,GAAA;AACV,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa;AACjC,QAAA,IAAI,CAAC,MAAM;YAAE;;QAGb,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC;AAC7C,QAAA,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;AAC/B,YAAA,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU;QACpC;;QAGA,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;IAC5D;IAqCA,MAAM,GAAA;;QAEJ,OAAOC,CAAI,CAAA,CAAA,0BAAA,CAA4B;IACzC;;AAxHO,MAAA,CAAA,MAAM,GAAGC,CAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDlB,EAAA,CAnDY;;;;"}
@@ -0,0 +1,128 @@
1
+ import { i, a as i$1, b } from './style-inject.es--nCJ9F_D.js';
2
+
3
+ class Ripple extends i$1 {
4
+ constructor() {
5
+ super(...arguments);
6
+ // Arrow function to bind 'this' automatically
7
+ this._createRipple = (event) => {
8
+ const parent = this.parentElement;
9
+ if (!parent)
10
+ return;
11
+ const rect = parent.getBoundingClientRect();
12
+ // 1. Calculate diameter (furthest corner)
13
+ const diameter = Math.max(rect.width, rect.height) * 2.5;
14
+ const radius = diameter / 2;
15
+ // 2. Calculate position relative to the parent
16
+ const x = event.clientX - rect.left;
17
+ const y = event.clientY - rect.top;
18
+ // 3. Create the ripple element
19
+ // We create this manually to avoid triggering a full Lit render cycle
20
+ // for a transient, fire-and-forget animation.
21
+ const ripple = document.createElement('div');
22
+ ripple.classList.add('ripple-effect');
23
+ ripple.style.width = `${diameter}px`;
24
+ ripple.style.height = `${diameter}px`;
25
+ ripple.style.left = `${x - radius}px`;
26
+ ripple.style.top = `${y - radius}px`;
27
+ // 4. Append to Shadow DOM
28
+ this.renderRoot.appendChild(ripple);
29
+ // 5. Cleanup
30
+ ripple.addEventListener('animationend', () => {
31
+ ripple.remove();
32
+ });
33
+ };
34
+ }
35
+ connectedCallback() {
36
+ super.connectedCallback();
37
+ // We defer slightly to ensure the parent DOM is ready
38
+ requestAnimationFrame(() => {
39
+ this._setupParent();
40
+ });
41
+ }
42
+ disconnectedCallback() {
43
+ super.disconnectedCallback();
44
+ if (this.parentElement) {
45
+ this.parentElement.removeEventListener('pointerdown', this._createRipple);
46
+ }
47
+ }
48
+ _setupParent() {
49
+ const parent = this.parentElement;
50
+ if (!parent)
51
+ return;
52
+ // 1. Force parent to be relative so we can position absolutely inside it
53
+ const style = window.getComputedStyle(parent);
54
+ if (style.position === 'static') {
55
+ parent.style.position = 'relative';
56
+ }
57
+ // 2. Attach listener to the parent
58
+ parent.addEventListener('pointerdown', this._createRipple);
59
+ }
60
+ render() {
61
+ // No HTML needed in the template, we inject ripples dynamically
62
+ return b `<div class="ripple"></div>`;
63
+ }
64
+ }
65
+ Ripple.styles = i `
66
+ :host {
67
+ position: absolute;
68
+ inset: 0; /* top/left/bottom/right: 0 */
69
+ pointer-events: none; /* Let clicks pass through to parent */
70
+ overflow: hidden;
71
+ border-radius: inherit; /* Inherit parent's rounded corners */
72
+ z-index: 0;
73
+ --ripple-state-opacity: 0;
74
+ --ripple-pressed-color: var(--color-on-surface);
75
+ }
76
+
77
+ .ripple:before {
78
+ content: '';
79
+ opacity: var(--ripple-state-opacity);
80
+ pointer-events: none;
81
+ position: absolute;
82
+
83
+ background-color: var(--ripple-pressed-color);
84
+ inset: 0;
85
+ transition:
86
+ opacity 15ms linear,
87
+ background-color 15ms linear;
88
+ }
89
+
90
+ .ripple:after {
91
+ content: '';
92
+ border-radius: 50%;
93
+ opacity: var(--ripple-state-opacity);
94
+ pointer-events: none;
95
+ position: absolute;
96
+ background: radial-gradient(
97
+ closest-side,
98
+ var(--ripple-pressed-color) max(100% - 70px, 65%),
99
+ transparent 100%
100
+ );
101
+ transform-origin: center center;
102
+ transition: opacity 375ms linear;
103
+
104
+ width: 25px;
105
+ top: 0px;
106
+ transform: translate(51.4375px, 7.5px) scale(8.75941);
107
+ left: 0px;
108
+ height: 25px;
109
+ }
110
+
111
+ .ripple-effect {
112
+ position: absolute;
113
+ background-color: var(--ripple-pressed-color);
114
+ opacity: 0.12; /* Material 3 State Layer Opacity */
115
+ transform: scale(0);
116
+ animation: ripple-anim 600ms linear forwards;
117
+ }
118
+
119
+ @keyframes ripple-anim {
120
+ to {
121
+ transform: scale(1);
122
+ opacity: 0;
123
+ }
124
+ }
125
+ `;
126
+
127
+ export { Ripple as R };
128
+ //# sourceMappingURL=ripple-DvM0SPd9.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ripple-DvM0SPd9.js","sources":["../../src/ripple/ripple.ts"],"sourcesContent":["import { LitElement, html, css } from 'lit';\n\nexport class Ripple extends LitElement {\n static styles = css`\n :host {\n position: absolute;\n inset: 0; /* top/left/bottom/right: 0 */\n pointer-events: none; /* Let clicks pass through to parent */\n overflow: hidden;\n border-radius: inherit; /* Inherit parent's rounded corners */\n z-index: 0;\n --ripple-state-opacity: 0;\n --ripple-pressed-color: var(--color-on-surface);\n }\n\n .ripple:before {\n content: '';\n opacity: var(--ripple-state-opacity);\n pointer-events: none;\n position: absolute;\n\n background-color: var(--ripple-pressed-color);\n inset: 0;\n transition:\n opacity 15ms linear,\n background-color 15ms linear;\n }\n\n .ripple:after {\n content: '';\n border-radius: 50%;\n opacity: var(--ripple-state-opacity);\n pointer-events: none;\n position: absolute;\n background: radial-gradient(\n closest-side,\n var(--ripple-pressed-color) max(100% - 70px, 65%),\n transparent 100%\n );\n transform-origin: center center;\n transition: opacity 375ms linear;\n\n width: 25px;\n top: 0px;\n transform: translate(51.4375px, 7.5px) scale(8.75941);\n left: 0px;\n height: 25px;\n }\n\n .ripple-effect {\n position: absolute;\n background-color: var(--ripple-pressed-color);\n opacity: 0.12; /* Material 3 State Layer Opacity */\n transform: scale(0);\n animation: ripple-anim 600ms linear forwards;\n }\n\n @keyframes ripple-anim {\n to {\n transform: scale(1);\n opacity: 0;\n }\n }\n `;\n\n connectedCallback() {\n super.connectedCallback();\n // We defer slightly to ensure the parent DOM is ready\n requestAnimationFrame(() => {\n this._setupParent();\n });\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n if (this.parentElement) {\n this.parentElement.removeEventListener('pointerdown', this._createRipple);\n }\n }\n\n _setupParent() {\n const parent = this.parentElement;\n if (!parent) return;\n\n // 1. Force parent to be relative so we can position absolutely inside it\n const style = window.getComputedStyle(parent);\n if (style.position === 'static') {\n parent.style.position = 'relative';\n }\n\n // 2. Attach listener to the parent\n parent.addEventListener('pointerdown', this._createRipple);\n }\n\n // Arrow function to bind 'this' automatically\n _createRipple = (event: PointerEvent) => {\n const parent = this.parentElement;\n if (!parent) return;\n\n const rect = parent.getBoundingClientRect();\n\n // 1. Calculate diameter (furthest corner)\n const diameter = Math.max(rect.width, rect.height) * 2.5;\n const radius = diameter / 2;\n\n // 2. Calculate position relative to the parent\n const x = event.clientX - rect.left;\n const y = event.clientY - rect.top;\n\n // 3. Create the ripple element\n // We create this manually to avoid triggering a full Lit render cycle\n // for a transient, fire-and-forget animation.\n const ripple = document.createElement('div');\n ripple.classList.add('ripple-effect');\n\n ripple.style.width = `${diameter}px`;\n ripple.style.height = `${diameter}px`;\n ripple.style.left = `${x - radius}px`;\n ripple.style.top = `${y - radius}px`;\n\n // 4. Append to Shadow DOM\n this.renderRoot.appendChild(ripple);\n\n // 5. Cleanup\n ripple.addEventListener('animationend', () => {\n ripple.remove();\n });\n };\n\n render() {\n // No HTML needed in the template, we inject ripples dynamically\n return html`<div class=\"ripple\"></div>`;\n }\n}\n"],"names":["LitElement","html","css"],"mappings":";;AAEM,MAAO,MAAO,SAAQA,GAAU,CAAA;AAAtC,IAAA,WAAA,GAAA;;;AA6FE,QAAA,IAAA,CAAA,aAAa,GAAG,CAAC,KAAmB,KAAI;AACtC,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa;AACjC,YAAA,IAAI,CAAC,MAAM;gBAAE;AAEb,YAAA,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE;;AAG3C,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG;AACxD,YAAA,MAAM,MAAM,GAAG,QAAQ,GAAG,CAAC;;YAG3B,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI;YACnC,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG;;;;YAKlC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;AAC5C,YAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC;YAErC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAA,EAAG,QAAQ,IAAI;YACpC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAA,EAAG,QAAQ,IAAI;YACrC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,MAAM,CAAA,EAAA,CAAI;YACrC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,MAAM,CAAA,EAAA,CAAI;;AAGpC,YAAA,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC;;AAGnC,YAAA,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,MAAK;gBAC3C,MAAM,CAAC,MAAM,EAAE;AACjB,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC;IAMH;IApEE,iBAAiB,GAAA;QACf,KAAK,CAAC,iBAAiB,EAAE;;QAEzB,qBAAqB,CAAC,MAAK;YACzB,IAAI,CAAC,YAAY,EAAE;AACrB,QAAA,CAAC,CAAC;IACJ;IAEA,oBAAoB,GAAA;QAClB,KAAK,CAAC,oBAAoB,EAAE;AAC5B,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;QAC3E;IACF;IAEA,YAAY,GAAA;AACV,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa;AACjC,QAAA,IAAI,CAAC,MAAM;YAAE;;QAGb,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC;AAC7C,QAAA,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;AAC/B,YAAA,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU;QACpC;;QAGA,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;IAC5D;IAqCA,MAAM,GAAA;;QAEJ,OAAOC,CAAI,CAAA,CAAA,0BAAA,CAA4B;IACzC;;AAjIO,MAAA,CAAA,MAAM,GAAGC,CAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4DlB,EAAA,CA5DY;;;;"}
@@ -0,0 +1,128 @@
1
+ import { i, a as i$1, b } from './style-inject.es--nCJ9F_D.js';
2
+
3
+ class Ripple extends i$1 {
4
+ constructor() {
5
+ super(...arguments);
6
+ // Arrow function to bind 'this' automatically
7
+ this._createRipple = (event) => {
8
+ const parent = this.parentElement;
9
+ if (!parent)
10
+ return;
11
+ const rect = parent.getBoundingClientRect();
12
+ // 1. Calculate diameter (furthest corner)
13
+ const diameter = Math.max(rect.width, rect.height) * 2.5;
14
+ const radius = diameter / 2;
15
+ // 2. Calculate position relative to the parent
16
+ const x = event.clientX - rect.left;
17
+ const y = event.clientY - rect.top;
18
+ // 3. Create the ripple element
19
+ // We create this manually to avoid triggering a full Lit render cycle
20
+ // for a transient, fire-and-forget animation.
21
+ const ripple = document.createElement('div');
22
+ ripple.classList.add('ripple-effect');
23
+ ripple.style.width = `${diameter}px`;
24
+ ripple.style.height = `${diameter}px`;
25
+ ripple.style.left = `${x - radius}px`;
26
+ ripple.style.top = `${y - radius}px`;
27
+ // 4. Append to Shadow DOM
28
+ this.renderRoot.appendChild(ripple);
29
+ // 5. Cleanup
30
+ ripple.addEventListener('animationend', () => {
31
+ ripple.remove();
32
+ });
33
+ };
34
+ }
35
+ connectedCallback() {
36
+ super.connectedCallback();
37
+ // We defer slightly to ensure the parent DOM is ready
38
+ requestAnimationFrame(() => {
39
+ this._setupParent();
40
+ });
41
+ }
42
+ disconnectedCallback() {
43
+ super.disconnectedCallback();
44
+ if (this.parentElement) {
45
+ this.parentElement.removeEventListener('pointerdown', this._createRipple);
46
+ }
47
+ }
48
+ _setupParent() {
49
+ const parent = this.parentElement;
50
+ if (!parent)
51
+ return;
52
+ // 1. Force parent to be relative so we can position absolutely inside it
53
+ const style = window.getComputedStyle(parent);
54
+ if (style.position === 'static') {
55
+ parent.style.position = 'relative';
56
+ }
57
+ // 2. Attach listener to the parent
58
+ parent.addEventListener('pointerdown', this._createRipple);
59
+ }
60
+ render() {
61
+ // No HTML needed in the template, we inject ripples dynamically
62
+ return b `<div class="ripple"></div>`;
63
+ }
64
+ }
65
+ Ripple.styles = i `
66
+ :host {
67
+ position: absolute;
68
+ inset: 0; /* top/left/bottom/right: 0 */
69
+ pointer-events: none; /* Let clicks pass through to parent */
70
+ overflow: hidden;
71
+ border-radius: inherit; /* Inherit parent's rounded corners */
72
+ z-index: 0;
73
+ --ripple-state-opacity: 0;
74
+ --ripple-pressed-color: var(--color-on-surface);
75
+ }
76
+
77
+ .ripple:before {
78
+ content: '';
79
+ opacity: var(--ripple-state-opacity);
80
+ pointer-events: none;
81
+ position: absolute;
82
+
83
+ background-color: var(--ripple-pressed-color);
84
+ inset: 0;
85
+ transition:
86
+ opacity 15ms linear,
87
+ background-color 15ms linear;
88
+ }
89
+
90
+ .ripple:after {
91
+ content: '';
92
+ opacity: var(--ripple-state-opacity);
93
+ pointer-events: none;
94
+ position: absolute;
95
+ background: radial-gradient(
96
+ closest-side,
97
+ var(--ripple-pressed-color) max(100% - 70px, 65%),
98
+ transparent 100%
99
+ );
100
+ transform-origin: center center;
101
+ transition: opacity 375ms linear;
102
+
103
+ width: 25px;
104
+ top: 0px;
105
+ transform: translate(51.4375px, 7.5px) scale(8.75941);
106
+ left: 0px;
107
+ height: 25px;
108
+ }
109
+
110
+ .ripple-effect {
111
+ position: absolute;
112
+ border-radius: 50%;
113
+ background-color: var(--ripple-pressed-color);
114
+ opacity: 0.12; /* Material 3 State Layer Opacity */
115
+ transform: scale(0);
116
+ animation: ripple-anim 600ms linear forwards;
117
+ }
118
+
119
+ @keyframes ripple-anim {
120
+ to {
121
+ transform: scale(1);
122
+ opacity: 0;
123
+ }
124
+ }
125
+ `;
126
+
127
+ export { Ripple as R };
128
+ //# sourceMappingURL=ripple-NWIiDgX2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ripple-NWIiDgX2.js","sources":["../../src/ripple/ripple.ts"],"sourcesContent":["import { LitElement, html, css } from 'lit';\n\nexport class Ripple extends LitElement {\n static styles = css`\n :host {\n position: absolute;\n inset: 0; /* top/left/bottom/right: 0 */\n pointer-events: none; /* Let clicks pass through to parent */\n overflow: hidden;\n border-radius: inherit; /* Inherit parent's rounded corners */\n z-index: 0;\n --ripple-state-opacity: 0;\n --ripple-pressed-color: var(--color-on-surface);\n }\n\n .ripple:before {\n content: '';\n opacity: var(--ripple-state-opacity);\n pointer-events: none;\n position: absolute;\n\n background-color: var(--ripple-pressed-color);\n inset: 0;\n transition:\n opacity 15ms linear,\n background-color 15ms linear;\n }\n\n .ripple:after {\n content: '';\n opacity: var(--ripple-state-opacity);\n pointer-events: none;\n position: absolute;\n background: radial-gradient(\n closest-side,\n var(--ripple-pressed-color) max(100% - 70px, 65%),\n transparent 100%\n );\n transform-origin: center center;\n transition: opacity 375ms linear;\n\n width: 25px;\n top: 0px;\n transform: translate(51.4375px, 7.5px) scale(8.75941);\n left: 0px;\n height: 25px;\n }\n\n .ripple-effect {\n position: absolute;\n border-radius: 50%;\n background-color: var(--ripple-pressed-color);\n opacity: 0.12; /* Material 3 State Layer Opacity */\n transform: scale(0);\n animation: ripple-anim 600ms linear forwards;\n }\n\n @keyframes ripple-anim {\n to {\n transform: scale(1);\n opacity: 0;\n }\n }\n `;\n\n connectedCallback() {\n super.connectedCallback();\n // We defer slightly to ensure the parent DOM is ready\n requestAnimationFrame(() => {\n this._setupParent();\n });\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n if (this.parentElement) {\n this.parentElement.removeEventListener('pointerdown', this._createRipple);\n }\n }\n\n _setupParent() {\n const parent = this.parentElement;\n if (!parent) return;\n\n // 1. Force parent to be relative so we can position absolutely inside it\n const style = window.getComputedStyle(parent);\n if (style.position === 'static') {\n parent.style.position = 'relative';\n }\n\n // 2. Attach listener to the parent\n parent.addEventListener('pointerdown', this._createRipple);\n }\n\n // Arrow function to bind 'this' automatically\n _createRipple = (event: PointerEvent) => {\n const parent = this.parentElement;\n if (!parent) return;\n\n const rect = parent.getBoundingClientRect();\n\n // 1. Calculate diameter (furthest corner)\n const diameter = Math.max(rect.width, rect.height) * 2.5;\n const radius = diameter / 2;\n\n // 2. Calculate position relative to the parent\n const x = event.clientX - rect.left;\n const y = event.clientY - rect.top;\n\n // 3. Create the ripple element\n // We create this manually to avoid triggering a full Lit render cycle\n // for a transient, fire-and-forget animation.\n const ripple = document.createElement('div');\n ripple.classList.add('ripple-effect');\n\n ripple.style.width = `${diameter}px`;\n ripple.style.height = `${diameter}px`;\n ripple.style.left = `${x - radius}px`;\n ripple.style.top = `${y - radius}px`;\n\n // 4. Append to Shadow DOM\n this.renderRoot.appendChild(ripple);\n\n // 5. Cleanup\n ripple.addEventListener('animationend', () => {\n ripple.remove();\n });\n };\n\n render() {\n // No HTML needed in the template, we inject ripples dynamically\n return html`<div class=\"ripple\"></div>`;\n }\n}\n"],"names":["LitElement","html","css"],"mappings":";;AAEM,MAAO,MAAO,SAAQA,GAAU,CAAA;AAAtC,IAAA,WAAA,GAAA;;;AA6FE,QAAA,IAAA,CAAA,aAAa,GAAG,CAAC,KAAmB,KAAI;AACtC,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa;AACjC,YAAA,IAAI,CAAC,MAAM;gBAAE;AAEb,YAAA,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE;;AAG3C,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG;AACxD,YAAA,MAAM,MAAM,GAAG,QAAQ,GAAG,CAAC;;YAG3B,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI;YACnC,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG;;;;YAKlC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;AAC5C,YAAA,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC;YAErC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAA,EAAG,QAAQ,IAAI;YACpC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAA,EAAG,QAAQ,IAAI;YACrC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,MAAM,CAAA,EAAA,CAAI;YACrC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,MAAM,CAAA,EAAA,CAAI;;AAGpC,YAAA,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC;;AAGnC,YAAA,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,MAAK;gBAC3C,MAAM,CAAC,MAAM,EAAE;AACjB,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC;IAMH;IApEE,iBAAiB,GAAA;QACf,KAAK,CAAC,iBAAiB,EAAE;;QAEzB,qBAAqB,CAAC,MAAK;YACzB,IAAI,CAAC,YAAY,EAAE;AACrB,QAAA,CAAC,CAAC;IACJ;IAEA,oBAAoB,GAAA;QAClB,KAAK,CAAC,oBAAoB,EAAE;AAC5B,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;QAC3E;IACF;IAEA,YAAY,GAAA;AACV,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa;AACjC,QAAA,IAAI,CAAC,MAAM;YAAE;;QAGb,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC;AAC7C,QAAA,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;AAC/B,YAAA,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU;QACpC;;QAGA,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;IAC5D;IAqCA,MAAM,GAAA;;QAEJ,OAAOC,CAAI,CAAA,CAAA,0BAAA,CAA4B;IACzC;;AAjIO,MAAA,CAAA,MAAM,GAAGC,CAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4DlB,EAAA,CA5DY;;;;"}