@mhmo91/schmancy 0.10.24 → 0.10.25

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 (426) hide show
  1. package/dist/agent/{overlay.confirm-body-CvdVfCnN.js → overlay.confirm-body-DozUyDYx.js} +242 -242
  2. package/dist/agent/{overlay.confirm-body-CvdVfCnN.js.map → overlay.confirm-body-DozUyDYx.js.map} +1 -1
  3. package/dist/agent/schmancy.agent.js +5658 -2927
  4. package/dist/agent/schmancy.agent.js.map +1 -1
  5. package/dist/{area-A_oUP4P1.js → area-1EG1LrkX.js} +1 -1
  6. package/dist/{area-A_oUP4P1.js.map → area-1EG1LrkX.js.map} +1 -1
  7. package/dist/{area-BuqdaUpQ.cjs → area-DrVE5pXW.cjs} +1 -1
  8. package/dist/{area-BuqdaUpQ.cjs.map → area-DrVE5pXW.cjs.map} +1 -1
  9. package/dist/area.cjs +1 -1
  10. package/dist/area.js +1 -1
  11. package/dist/{autocomplete-Cy46gJxK.cjs → autocomplete-6pdZxEab.cjs} +1 -1
  12. package/dist/{autocomplete-Cy46gJxK.cjs.map → autocomplete-6pdZxEab.cjs.map} +1 -1
  13. package/dist/{autocomplete-BoCWO26L.js → autocomplete-nrIcCilw.js} +2 -2
  14. package/dist/{autocomplete-BoCWO26L.js.map → autocomplete-nrIcCilw.js.map} +1 -1
  15. package/dist/autocomplete.cjs +1 -1
  16. package/dist/autocomplete.js +1 -1
  17. package/dist/avatar.cjs +2 -2
  18. package/dist/avatar.cjs.map +1 -1
  19. package/dist/avatar.js +3 -3
  20. package/dist/badge.cjs +1 -1
  21. package/dist/badge.js +1 -1
  22. package/dist/{boat-B0h5fuAA.js → boat--fLgbDAE.js} +3 -3
  23. package/dist/{boat-B0h5fuAA.js.map → boat--fLgbDAE.js.map} +1 -1
  24. package/dist/{boat-RRtBhD3x.cjs → boat-BIB-gPqy.cjs} +1 -1
  25. package/dist/{boat-RRtBhD3x.cjs.map → boat-BIB-gPqy.cjs.map} +1 -1
  26. package/dist/boat.cjs +1 -1
  27. package/dist/boat.js +1 -1
  28. package/dist/breadcrumb.cjs +1 -1
  29. package/dist/breadcrumb.js +1 -1
  30. package/dist/{busy-Bn6Pioo8.cjs → busy-DVCIxBVf.cjs} +1 -1
  31. package/dist/{busy-Bn6Pioo8.cjs.map → busy-DVCIxBVf.cjs.map} +1 -1
  32. package/dist/{busy-DObY7lfu.js → busy-DshZcVZ4.js} +1 -1
  33. package/dist/{busy-DObY7lfu.js.map → busy-DshZcVZ4.js.map} +1 -1
  34. package/dist/busy.cjs +1 -1
  35. package/dist/busy.js +1 -1
  36. package/dist/{button-DEi3M2nV.js → button-D9UJ7I6Z.js} +2 -2
  37. package/dist/{button-DEi3M2nV.js.map → button-D9UJ7I6Z.js.map} +1 -1
  38. package/dist/{button-XfdPzfZQ.cjs → button-JrTMzwHY.cjs} +1 -1
  39. package/dist/{button-XfdPzfZQ.cjs.map → button-JrTMzwHY.cjs.map} +1 -1
  40. package/dist/button.cjs +1 -1
  41. package/dist/button.js +1 -1
  42. package/dist/{card-jzUQK0EQ.js → card-BvCFuX3J.js} +2 -2
  43. package/dist/{card-jzUQK0EQ.js.map → card-BvCFuX3J.js.map} +1 -1
  44. package/dist/{card-BjUgRzFh.cjs → card-CTotavhH.cjs} +1 -1
  45. package/dist/{card-BjUgRzFh.cjs.map → card-CTotavhH.cjs.map} +1 -1
  46. package/dist/card.cjs +1 -1
  47. package/dist/card.js +1 -1
  48. package/dist/{checkbox-rskgUBxQ.cjs → checkbox-By4fFmjt.cjs} +1 -1
  49. package/dist/{checkbox-rskgUBxQ.cjs.map → checkbox-By4fFmjt.cjs.map} +1 -1
  50. package/dist/{checkbox-CfCm1vGN.js → checkbox-GPsdCUbs.js} +1 -1
  51. package/dist/{checkbox-CfCm1vGN.js.map → checkbox-GPsdCUbs.js.map} +1 -1
  52. package/dist/checkbox.cjs +1 -1
  53. package/dist/checkbox.js +1 -1
  54. package/dist/{chips-Dfim_tQv.js → chips-27umqnat.js} +4 -4
  55. package/dist/{chips-Dfim_tQv.js.map → chips-27umqnat.js.map} +1 -1
  56. package/dist/{chips-BiNZKu0J.cjs → chips-BZf9sGA8.cjs} +1 -1
  57. package/dist/{chips-BiNZKu0J.cjs.map → chips-BZf9sGA8.cjs.map} +1 -1
  58. package/dist/chips.cjs +1 -1
  59. package/dist/chips.js +2 -2
  60. package/dist/connectivity.cjs +1 -1
  61. package/dist/connectivity.js +1 -1
  62. package/dist/content-drawer.cjs +1 -1
  63. package/dist/content-drawer.js +1 -1
  64. package/dist/{cursor-glow-Cs2XLDB9.js → cursor-glow-Ah7VXSj7.js} +1 -1
  65. package/dist/{cursor-glow-Cs2XLDB9.js.map → cursor-glow-Ah7VXSj7.js.map} +1 -1
  66. package/dist/{cursor-glow-C8LgCxpI.cjs → cursor-glow-Bulq-38P.cjs} +1 -1
  67. package/dist/{cursor-glow-C8LgCxpI.cjs.map → cursor-glow-Bulq-38P.cjs.map} +1 -1
  68. package/dist/{date-range-em7OwhlK.cjs → date-range-BJnLWCRF.cjs} +1 -1
  69. package/dist/{date-range-em7OwhlK.cjs.map → date-range-BJnLWCRF.cjs.map} +1 -1
  70. package/dist/{date-range-inline-DYeqoBIO.cjs → date-range-inline-B6uKUliV.cjs} +1 -1
  71. package/dist/{date-range-inline-DYeqoBIO.cjs.map → date-range-inline-B6uKUliV.cjs.map} +1 -1
  72. package/dist/{date-range-inline-BfUL8_vX.js → date-range-inline-BNbbRfIA.js} +1 -1
  73. package/dist/{date-range-inline-BfUL8_vX.js.map → date-range-inline-BNbbRfIA.js.map} +1 -1
  74. package/dist/date-range-inline.cjs +1 -1
  75. package/dist/date-range-inline.js +1 -1
  76. package/dist/{date-range-B8zoj6Cj.js → date-range-wDVHcr0u.js} +2 -2
  77. package/dist/{date-range-B8zoj6Cj.js.map → date-range-wDVHcr0u.js.map} +1 -1
  78. package/dist/date-range.cjs +1 -1
  79. package/dist/date-range.js +1 -1
  80. package/dist/delay.cjs +1 -1
  81. package/dist/delay.js +2 -2
  82. package/dist/{details-D246xN83.js → details-Ckxpwacj.js} +4 -4
  83. package/dist/{details-D246xN83.js.map → details-Ckxpwacj.js.map} +1 -1
  84. package/dist/{details-CNM1tuma.cjs → details-DNrWIes6.cjs} +1 -1
  85. package/dist/{details-CNM1tuma.cjs.map → details-DNrWIes6.cjs.map} +1 -1
  86. package/dist/details.cjs +1 -1
  87. package/dist/details.js +1 -1
  88. package/dist/directives-BBMqe8x3.js +4082 -0
  89. package/dist/directives-BBMqe8x3.js.map +1 -0
  90. package/dist/directives-F15SJZUR.cjs +348 -0
  91. package/dist/directives-F15SJZUR.cjs.map +1 -0
  92. package/dist/directives.cjs +1 -99
  93. package/dist/directives.js +6 -1363
  94. package/dist/discovery.cjs +1 -1
  95. package/dist/discovery.js +2 -61
  96. package/dist/discovery.service-COmbHaoI.js +61 -0
  97. package/dist/discovery.service-COmbHaoI.js.map +1 -0
  98. package/dist/discovery.service-CVDXO9rH.cjs +1 -0
  99. package/dist/discovery.service-CVDXO9rH.cjs.map +1 -0
  100. package/dist/{divider-CbIp1je9.js → divider-BzcZGo4S.js} +1 -1
  101. package/dist/{divider-CbIp1je9.js.map → divider-BzcZGo4S.js.map} +1 -1
  102. package/dist/{divider-DaKsGNW-.cjs → divider-Cde33ivs.cjs} +1 -1
  103. package/dist/{divider-DaKsGNW-.cjs.map → divider-Cde33ivs.cjs.map} +1 -1
  104. package/dist/divider.cjs +1 -1
  105. package/dist/divider.js +1 -1
  106. package/dist/dropdown.cjs +1 -1
  107. package/dist/dropdown.js +1 -1
  108. package/dist/{expand-DRkiO4vw.js → expand-DI144OzN.js} +3 -3
  109. package/dist/{expand-DRkiO4vw.js.map → expand-DI144OzN.js.map} +1 -1
  110. package/dist/{expand-CQDm3BF3.cjs → expand-Db4V0jj-.cjs} +1 -1
  111. package/dist/{expand-CQDm3BF3.cjs.map → expand-Db4V0jj-.cjs.map} +1 -1
  112. package/dist/expand.cjs +1 -1
  113. package/dist/expand.js +1 -1
  114. package/dist/{float-5O26zNRh.cjs → float--RScf9BZ.cjs} +1 -1
  115. package/dist/{float-5O26zNRh.cjs.map → float--RScf9BZ.cjs.map} +1 -1
  116. package/dist/{float-CZtu8FnO.js → float-DIyzy1c2.js} +1 -1
  117. package/dist/{float-CZtu8FnO.js.map → float-DIyzy1c2.js.map} +1 -1
  118. package/dist/float.cjs +1 -1
  119. package/dist/float.js +1 -1
  120. package/dist/{form-B90CMeqs.cjs → form-DWNpOsIU.cjs} +1 -1
  121. package/dist/{form-B90CMeqs.cjs.map → form-DWNpOsIU.cjs.map} +1 -1
  122. package/dist/{form-CE6Gwz4r.js → form-RtXH8UHQ.js} +8 -8
  123. package/dist/{form-CE6Gwz4r.js.map → form-RtXH8UHQ.js.map} +1 -1
  124. package/dist/form.cjs +1 -1
  125. package/dist/form.js +6 -6
  126. package/dist/handover/agent-runtime-followups.md +1 -1
  127. package/dist/handover/agent-runtime-v1.md +3 -3
  128. package/dist/{hashContent-dJrI-9sc.js.map → hashContent-Dgmzc32o.js.map} +1 -1
  129. package/dist/{hashContent-Ck6laKlk.cjs.map → hashContent-Dh1VzIAb.cjs.map} +1 -1
  130. package/dist/icons-DXanGDZ_.js +52 -0
  131. package/dist/icons-DXanGDZ_.js.map +1 -0
  132. package/dist/icons-bNxlWLlk.cjs +24 -0
  133. package/dist/icons-bNxlWLlk.cjs.map +1 -0
  134. package/dist/icons.cjs +1 -1
  135. package/dist/icons.js +1 -1
  136. package/dist/{iframe-D98csbEo.cjs → iframe-B1XWRaLC.cjs} +1 -1
  137. package/dist/{iframe-D98csbEo.cjs.map → iframe-B1XWRaLC.cjs.map} +1 -1
  138. package/dist/{iframe-C3PMj1MD.js → iframe-BlHK0cjy.js} +1 -1
  139. package/dist/{iframe-C3PMj1MD.js.map → iframe-BlHK0cjy.js.map} +1 -1
  140. package/dist/iframe.cjs +1 -1
  141. package/dist/iframe.js +1 -1
  142. package/dist/index.cjs +1 -1
  143. package/dist/index.js +60 -60
  144. package/dist/{input-_y92Pzon.cjs → input-C-_XU9AX.cjs} +1 -1
  145. package/dist/{input-_y92Pzon.cjs.map → input-C-_XU9AX.cjs.map} +1 -1
  146. package/dist/{input-CCOkeeVM.js → input-CiGa8Dkl.js} +1 -1
  147. package/dist/{input-CCOkeeVM.js.map → input-CiGa8Dkl.js.map} +1 -1
  148. package/dist/{input-chip-CR66MWml.cjs → input-chip-5aYnuRZ_.cjs} +1 -1
  149. package/dist/{input-chip-CR66MWml.cjs.map → input-chip-5aYnuRZ_.cjs.map} +1 -1
  150. package/dist/{input-chip-Bzwr5-XL.js → input-chip-l--zCMGR.js} +1 -1
  151. package/dist/{input-chip-Bzwr5-XL.js.map → input-chip-l--zCMGR.js.map} +1 -1
  152. package/dist/input.cjs +1 -1
  153. package/dist/input.js +1 -1
  154. package/dist/json.cjs +1 -1
  155. package/dist/json.js +2 -2
  156. package/dist/kbd.cjs +1 -1
  157. package/dist/kbd.js +1 -1
  158. package/dist/{layout-Dq2oeOTS.js → layout-DSAjo92m.js} +1 -1
  159. package/dist/{layout-Dq2oeOTS.js.map → layout-DSAjo92m.js.map} +1 -1
  160. package/dist/{layout-BbCIfIgo.cjs → layout-eXb9wjDh.cjs} +1 -1
  161. package/dist/{layout-BbCIfIgo.cjs.map → layout-eXb9wjDh.cjs.map} +1 -1
  162. package/dist/layout.cjs +1 -1
  163. package/dist/layout.js +1 -1
  164. package/dist/{lightbox-Bk3ovcVu.cjs → lightbox-CfRDkeeb.cjs} +2 -2
  165. package/dist/{lightbox-Bk3ovcVu.cjs.map → lightbox-CfRDkeeb.cjs.map} +1 -1
  166. package/dist/{lightbox-Dl--fEbP.js → lightbox-D9oiu1Nv.js} +2 -2
  167. package/dist/{lightbox-Dl--fEbP.js.map → lightbox-D9oiu1Nv.js.map} +1 -1
  168. package/dist/lightbox.cjs +1 -1
  169. package/dist/lightbox.js +1 -1
  170. package/dist/{list-B3WI_Nfs.js → list-BOlRka4v.js} +1 -1
  171. package/dist/{list-B3WI_Nfs.js.map → list-BOlRka4v.js.map} +1 -1
  172. package/dist/{list-DWngbP2X.cjs → list-CDJi3_Ut.cjs} +1 -1
  173. package/dist/{list-DWngbP2X.cjs.map → list-CDJi3_Ut.cjs.map} +1 -1
  174. package/dist/list.cjs +1 -1
  175. package/dist/list.js +1 -1
  176. package/dist/{magnetic-Bgh7aHHI.cjs → magnetic-D-ph029G.cjs} +1 -1
  177. package/dist/{magnetic-Bgh7aHHI.cjs.map → magnetic-D-ph029G.cjs.map} +1 -1
  178. package/dist/{magnetic-DxvoEz8_.js → magnetic-mHXl54Z8.js} +1 -1
  179. package/dist/{magnetic-DxvoEz8_.js.map → magnetic-mHXl54Z8.js.map} +1 -1
  180. package/dist/{menu-CdYjxJqm.cjs → menu-CJaDL2cd.cjs} +1 -1
  181. package/dist/{menu-CdYjxJqm.cjs.map → menu-CJaDL2cd.cjs.map} +1 -1
  182. package/dist/{menu-IDhVp6zm.js → menu-XyrLmCi_.js} +2 -2
  183. package/dist/{menu-IDhVp6zm.js.map → menu-XyrLmCi_.js.map} +1 -1
  184. package/dist/menu.cjs +1 -1
  185. package/dist/menu.js +1 -1
  186. package/dist/mixins-CsYsIJOI.cjs +254 -0
  187. package/dist/mixins-CsYsIJOI.cjs.map +1 -0
  188. package/dist/mixins-DySzfmal.js +642 -0
  189. package/dist/mixins-DySzfmal.js.map +1 -0
  190. package/dist/mixins.cjs +1 -1
  191. package/dist/mixins.js +2 -2
  192. package/dist/nav-drawer.cjs +1 -1
  193. package/dist/nav-drawer.js +1 -1
  194. package/dist/navigation-bar.cjs +1 -1
  195. package/dist/navigation-bar.js +1 -1
  196. package/dist/navigation-rail.cjs +5 -9
  197. package/dist/navigation-rail.cjs.map +1 -1
  198. package/dist/navigation-rail.js +5 -11
  199. package/dist/navigation-rail.js.map +1 -1
  200. package/dist/{notification-CllYkvlR.js → notification-CHrEY4u8.js} +2 -2
  201. package/dist/{notification-CllYkvlR.js.map → notification-CHrEY4u8.js.map} +1 -1
  202. package/dist/{notification-B3wVUC8l.cjs → notification-DKp4tjaB.cjs} +1 -1
  203. package/dist/{notification-B3wVUC8l.cjs.map → notification-DKp4tjaB.cjs.map} +1 -1
  204. package/dist/notification.cjs +1 -1
  205. package/dist/notification.js +1 -1
  206. package/dist/{option-CPOL0nHL.js → option-Vpy4UQ-D.js} +1 -1
  207. package/dist/{option-CPOL0nHL.js.map → option-Vpy4UQ-D.js.map} +1 -1
  208. package/dist/{option-cRsdshy8.cjs → option-nRk4MuXH.cjs} +1 -1
  209. package/dist/{option-cRsdshy8.cjs.map → option-nRk4MuXH.cjs.map} +1 -1
  210. package/dist/option.cjs +1 -1
  211. package/dist/option.js +1 -1
  212. package/dist/{overlay-BnTvnNDc.cjs → overlay-HNrWZ4sB.cjs} +1 -1
  213. package/dist/{overlay-BnTvnNDc.cjs.map → overlay-HNrWZ4sB.cjs.map} +1 -1
  214. package/dist/{overlay-DJ-vlwtR.js → overlay-jlkcrt8F.js} +5 -5
  215. package/dist/{overlay-DJ-vlwtR.js.map → overlay-jlkcrt8F.js.map} +1 -1
  216. package/dist/{overlay-stack-Dk0xETTy.cjs.map → overlay-stack-Bdr9lOqi.cjs.map} +1 -1
  217. package/dist/{overlay-stack-BR4iYivO.js.map → overlay-stack-D2rgxQLh.js.map} +1 -1
  218. package/dist/overlay.cjs +1 -1
  219. package/dist/{overlay.confirm-body-CQ-FwySO.cjs → overlay.confirm-body-B8dFI3cj.cjs} +1 -1
  220. package/dist/{overlay.confirm-body-CQ-FwySO.cjs.map → overlay.confirm-body-B8dFI3cj.cjs.map} +1 -1
  221. package/dist/{overlay.confirm-body-DEb9xw5N.js → overlay.confirm-body-CYShkjI6.js} +1 -1
  222. package/dist/{overlay.confirm-body-DEb9xw5N.js.map → overlay.confirm-body-CYShkjI6.js.map} +1 -1
  223. package/dist/overlay.js +3 -3
  224. package/dist/{overlay.service-CKBCIP2f.cjs → overlay.service-BTPn7Uv7.cjs} +1 -1
  225. package/dist/{overlay.service-CKBCIP2f.cjs.map → overlay.service-BTPn7Uv7.cjs.map} +1 -1
  226. package/dist/{overlay.service-XM1YHkTk.js → overlay.service-BqhhxVJp.js} +2 -2
  227. package/dist/{overlay.service-XM1YHkTk.js.map → overlay.service-BqhhxVJp.js.map} +1 -1
  228. package/dist/{progress-CnMPp-9a.js → progress-8Bn88GK_.js} +1 -1
  229. package/dist/{progress-CnMPp-9a.js.map → progress-8Bn88GK_.js.map} +1 -1
  230. package/dist/{progress-CcfLfHOE.cjs → progress-CAp_4jtq.cjs} +1 -1
  231. package/dist/{progress-CcfLfHOE.cjs.map → progress-CAp_4jtq.cjs.map} +1 -1
  232. package/dist/progress.cjs +1 -1
  233. package/dist/progress.js +1 -1
  234. package/dist/{radio-group-D97hflrE.cjs → radio-group-CN44mAoc.cjs} +1 -1
  235. package/dist/{radio-group-D97hflrE.cjs.map → radio-group-CN44mAoc.cjs.map} +1 -1
  236. package/dist/{radio-group-BUJgfQFi.js → radio-group-GNHA7qJR.js} +1 -1
  237. package/dist/{radio-group-BUJgfQFi.js.map → radio-group-GNHA7qJR.js.map} +1 -1
  238. package/dist/radio-group.cjs +1 -1
  239. package/dist/radio-group.js +1 -1
  240. package/dist/range.cjs +1 -1
  241. package/dist/range.js +1 -1
  242. package/dist/{reduced-motion-D7LqTUMn.js.map → reduced-motion-D-L12p7G.js.map} +1 -1
  243. package/dist/{reduced-motion-Dzfp_w5x.cjs.map → reduced-motion-Ds-HjMzn.cjs.map} +1 -1
  244. package/dist/{rxjs-utils-BK8VMe3K.js.map → rxjs-utils-BXpvHN4-.js.map} +1 -1
  245. package/dist/{rxjs-utils-DhOKenkS.cjs.map → rxjs-utils-CaC-tdot.cjs.map} +1 -1
  246. package/dist/rxjs-utils.cjs +1 -1
  247. package/dist/rxjs-utils.js +1 -1
  248. package/dist/{select-BWEh5nRM.js → select-BnuXRHS4.js} +3 -3
  249. package/dist/{select-BWEh5nRM.js.map → select-BnuXRHS4.js.map} +1 -1
  250. package/dist/{select-Cv5Oev6d.cjs → select-DZNns5Pa.cjs} +2 -2
  251. package/dist/{select-Cv5Oev6d.cjs.map → select-DZNns5Pa.cjs.map} +1 -1
  252. package/dist/select.cjs +1 -1
  253. package/dist/select.js +1 -1
  254. package/dist/skeleton.cjs +1 -1
  255. package/dist/skeleton.js +1 -1
  256. package/dist/skills/INDEX.md +2 -1
  257. package/dist/skills/SKILL.md +33 -23
  258. package/dist/skills/area.md +5 -4
  259. package/dist/skills/connectivity.md +1 -3
  260. package/dist/skills/directives.md +36 -0
  261. package/dist/skills/icons.md +95 -31
  262. package/dist/skills/layout.md +36 -53
  263. package/dist/skills/mixins.md +26 -5
  264. package/dist/skills/schmancy/INDEX.md +2 -1
  265. package/dist/skills/schmancy/SKILL.md +33 -23
  266. package/dist/skills/schmancy/area.md +5 -4
  267. package/dist/skills/schmancy/connectivity.md +1 -3
  268. package/dist/skills/schmancy/directives.md +36 -0
  269. package/dist/skills/schmancy/icons.md +95 -31
  270. package/dist/skills/schmancy/layout.md +36 -53
  271. package/dist/skills/schmancy/mixins.md +26 -5
  272. package/dist/slider.cjs +1 -1
  273. package/dist/slider.js +1 -1
  274. package/dist/{splash-screen-B6w7X2z9.js → splash-screen-CUP_elaT.js} +1 -1
  275. package/dist/{splash-screen-B6w7X2z9.js.map → splash-screen-CUP_elaT.js.map} +1 -1
  276. package/dist/{splash-screen-DFtxtO2D.cjs → splash-screen-DeoPRrOu.cjs} +1 -1
  277. package/dist/{splash-screen-DFtxtO2D.cjs.map → splash-screen-DeoPRrOu.cjs.map} +1 -1
  278. package/dist/splash-screen.cjs +1 -1
  279. package/dist/splash-screen.js +1 -1
  280. package/dist/{src-D_NK-vMA.js → src-B1VkLX3l.js} +153 -153
  281. package/dist/{src-D_NK-vMA.js.map → src-B1VkLX3l.js.map} +1 -1
  282. package/dist/{src-Asw6A018.cjs → src-DQ4wr0qq.cjs} +13 -13
  283. package/dist/{src-Asw6A018.cjs.map → src-DQ4wr0qq.cjs.map} +1 -1
  284. package/dist/steps.cjs +1 -1
  285. package/dist/steps.js +1 -1
  286. package/dist/{surface-B94ka2LY.cjs → surface-LkaZQXZn.cjs} +1 -1
  287. package/dist/{surface-B94ka2LY.cjs.map → surface-LkaZQXZn.cjs.map} +1 -1
  288. package/dist/{surface-ctBcRGSZ.js → surface-hOvkrjGN.js} +1 -1
  289. package/dist/{surface-ctBcRGSZ.js.map → surface-hOvkrjGN.js.map} +1 -1
  290. package/dist/surface.cjs +1 -1
  291. package/dist/surface.js +1 -1
  292. package/dist/switch.cjs +1 -1
  293. package/dist/switch.js +1 -1
  294. package/dist/table.cjs +1 -1
  295. package/dist/table.js +1 -1
  296. package/dist/{tabs-CrMx5z_y.js → tabs-CfwIHhHo.js} +1 -1
  297. package/dist/{tabs-CrMx5z_y.js.map → tabs-CfwIHhHo.js.map} +1 -1
  298. package/dist/{tabs-B7kaZIom.cjs → tabs-bplzstz6.cjs} +1 -1
  299. package/dist/{tabs-B7kaZIom.cjs.map → tabs-bplzstz6.cjs.map} +1 -1
  300. package/dist/tabs.cjs +1 -1
  301. package/dist/tabs.js +1 -1
  302. package/dist/teleport.cjs +1 -1
  303. package/dist/teleport.js +1 -1
  304. package/dist/{textarea-DeHFl80i.js → textarea-C1A5xuw9.js} +1 -1
  305. package/dist/{textarea-DeHFl80i.js.map → textarea-C1A5xuw9.js.map} +1 -1
  306. package/dist/{textarea-D1crj8JD.cjs → textarea-hrDp5gQq.cjs} +1 -1
  307. package/dist/{textarea-D1crj8JD.cjs.map → textarea-hrDp5gQq.cjs.map} +1 -1
  308. package/dist/textarea.cjs +1 -1
  309. package/dist/textarea.js +1 -1
  310. package/dist/{theme-C7Yo33nh.js → theme-BniFOMEo.js} +3 -3
  311. package/dist/{theme-C7Yo33nh.js.map → theme-BniFOMEo.js.map} +1 -1
  312. package/dist/{theme-wE2N7Yu9.cjs → theme-DmR6PKV8.cjs} +2 -2
  313. package/dist/{theme-wE2N7Yu9.cjs.map → theme-DmR6PKV8.cjs.map} +1 -1
  314. package/dist/{theme-button-Cpc_hs2O.js → theme-button--ruZIb0T.js} +1 -1
  315. package/dist/{theme-button-Cpc_hs2O.js.map → theme-button--ruZIb0T.js.map} +1 -1
  316. package/dist/{theme-button-CXSM5We4.cjs → theme-button-a0LgZ7hQ.cjs} +1 -1
  317. package/dist/{theme-button-CXSM5We4.cjs.map → theme-button-a0LgZ7hQ.cjs.map} +1 -1
  318. package/dist/theme-button.cjs +1 -1
  319. package/dist/theme-button.js +1 -1
  320. package/dist/theme.cjs +1 -1
  321. package/dist/{theme.interface-D4NeufQA.cjs.map → theme.interface-B5xjEk74.cjs.map} +1 -1
  322. package/dist/{theme.interface-C2XNgsLB.js.map → theme.interface-DVEw3s8m.js.map} +1 -1
  323. package/dist/theme.js +4 -4
  324. package/dist/{theme.service-CSzNkqBB.js.map → theme.service-Bh08uOSJ.js.map} +1 -1
  325. package/dist/{theme.service-CnFUmUpc.cjs.map → theme.service-Y-e8b331.cjs.map} +1 -1
  326. package/dist/tree.cjs +1 -1
  327. package/dist/tree.js +1 -1
  328. package/dist/typography.cjs +1 -1
  329. package/dist/typography.js +1 -1
  330. package/dist/{utils-Cxg0Kfy5.js → utils-578eFTx4.js} +1 -1
  331. package/dist/{utils-Cxg0Kfy5.js.map → utils-578eFTx4.js.map} +1 -1
  332. package/dist/{utils-aCJYAGUr.cjs → utils-CVWUrECT.cjs} +1 -1
  333. package/dist/{utils-aCJYAGUr.cjs.map → utils-CVWUrECT.cjs.map} +1 -1
  334. package/dist/utils.cjs +1 -1
  335. package/dist/utils.js +2 -2
  336. package/dist/visually-hidden.cjs +1 -1
  337. package/dist/visually-hidden.js +1 -1
  338. package/dist/{window-JtkeHoxS.js → window-BT9JecWy.js} +5 -5
  339. package/dist/{window-JtkeHoxS.js.map → window-BT9JecWy.js.map} +1 -1
  340. package/dist/{window-Ck_zS4bb.cjs → window-Bp7zWZpu.cjs} +1 -1
  341. package/dist/{window-Ck_zS4bb.cjs.map → window-Bp7zWZpu.cjs.map} +1 -1
  342. package/dist/window.cjs +1 -1
  343. package/dist/window.js +1 -1
  344. package/package.json +1 -1
  345. package/skills/schmancy/INDEX.md +2 -1
  346. package/skills/schmancy/SKILL.md +33 -23
  347. package/skills/schmancy/area.md +5 -4
  348. package/skills/schmancy/connectivity.md +1 -3
  349. package/skills/schmancy/directives.md +36 -0
  350. package/skills/schmancy/icons.md +95 -31
  351. package/skills/schmancy/layout.md +36 -53
  352. package/skills/schmancy/mixins.md +26 -5
  353. package/src/directives/ai-badge.ts +95 -0
  354. package/src/directives/art/art.directive.ts +228 -0
  355. package/src/directives/art/effects/error.ts +192 -0
  356. package/src/directives/art/effects/funkhaus.ts +121 -0
  357. package/src/directives/art/effects/howl.ts +203 -0
  358. package/src/directives/art/effects/samwa.ts +228 -0
  359. package/src/directives/art/effects/snow.ts +207 -0
  360. package/src/directives/art/effects/starfield.ts +107 -0
  361. package/src/directives/art/index.ts +2 -0
  362. package/src/directives/art/particle-pool.ts +40 -0
  363. package/src/directives/art/types.ts +129 -0
  364. package/src/directives/art/utils.ts +35 -0
  365. package/src/directives/battery.ts +1014 -0
  366. package/src/directives/beta.ts +44 -0
  367. package/src/directives/fill.ts +32 -60
  368. package/src/directives/fyi.ts +551 -0
  369. package/src/directives/hummingbird.ts +1712 -0
  370. package/src/directives/index.ts +9 -0
  371. package/src/directives/missed-punch.ts +407 -0
  372. package/src/directives/urgent.ts +660 -0
  373. package/src/directives/working-snake.ts +294 -0
  374. package/src/icons/icon.ts +53 -30
  375. package/src/navigation-rail/navigation-rail-item.ts +7 -12
  376. package/src/navigation-rail/navigation-rail.ts +0 -2
  377. package/types/mixins/SchmancyElement.d.ts +31 -0
  378. package/types/src/directives/ai-badge.d.ts +15 -0
  379. package/types/src/directives/art/art.directive.d.ts +19 -0
  380. package/types/src/directives/art/effects/error.d.ts +7 -0
  381. package/types/src/directives/art/effects/funkhaus.d.ts +7 -0
  382. package/types/src/directives/art/effects/howl.d.ts +7 -0
  383. package/types/src/directives/art/effects/samwa.d.ts +7 -0
  384. package/types/src/directives/art/effects/snow.d.ts +7 -0
  385. package/types/src/directives/art/effects/starfield.d.ts +10 -0
  386. package/types/src/directives/art/index.d.ts +2 -0
  387. package/types/src/directives/art/particle-pool.d.ts +16 -0
  388. package/types/src/directives/art/types.d.ts +126 -0
  389. package/types/src/directives/art/utils.d.ts +5 -0
  390. package/types/src/directives/battery.d.ts +96 -0
  391. package/types/src/directives/beta.d.ts +33 -0
  392. package/types/src/directives/fill.d.ts +4 -11
  393. package/types/src/directives/fyi.d.ts +76 -0
  394. package/types/src/directives/hummingbird.d.ts +180 -0
  395. package/types/src/directives/index.d.ts +9 -0
  396. package/types/src/directives/missed-punch.d.ts +28 -0
  397. package/types/src/directives/urgent.d.ts +88 -0
  398. package/types/src/directives/working-snake.d.ts +46 -0
  399. package/types/src/icons/icon.d.ts +22 -0
  400. package/dist/directives.cjs.map +0 -1
  401. package/dist/directives.js.map +0 -1
  402. package/dist/discovery.cjs.map +0 -1
  403. package/dist/discovery.js.map +0 -1
  404. package/dist/icons-B7ppo07M.cjs +0 -33
  405. package/dist/icons-B7ppo07M.cjs.map +0 -1
  406. package/dist/icons-CGhozJ5v.js +0 -48
  407. package/dist/icons-CGhozJ5v.js.map +0 -1
  408. package/dist/mixins-BPUR4Kc4.cjs +0 -254
  409. package/dist/mixins-BPUR4Kc4.cjs.map +0 -1
  410. package/dist/mixins-C42OILRS.js +0 -636
  411. package/dist/mixins-C42OILRS.js.map +0 -1
  412. package/dist/skills/page.md +0 -84
  413. package/dist/skills/schmancy/page.md +0 -84
  414. package/skills/schmancy/page.md +0 -84
  415. /package/dist/{hashContent-dJrI-9sc.js → hashContent-Dgmzc32o.js} +0 -0
  416. /package/dist/{hashContent-Ck6laKlk.cjs → hashContent-Dh1VzIAb.cjs} +0 -0
  417. /package/dist/{overlay-stack-Dk0xETTy.cjs → overlay-stack-Bdr9lOqi.cjs} +0 -0
  418. /package/dist/{overlay-stack-BR4iYivO.js → overlay-stack-D2rgxQLh.js} +0 -0
  419. /package/dist/{reduced-motion-D7LqTUMn.js → reduced-motion-D-L12p7G.js} +0 -0
  420. /package/dist/{reduced-motion-Dzfp_w5x.cjs → reduced-motion-Ds-HjMzn.cjs} +0 -0
  421. /package/dist/{rxjs-utils-BK8VMe3K.js → rxjs-utils-BXpvHN4-.js} +0 -0
  422. /package/dist/{rxjs-utils-DhOKenkS.cjs → rxjs-utils-CaC-tdot.cjs} +0 -0
  423. /package/dist/{theme.interface-D4NeufQA.cjs → theme.interface-B5xjEk74.cjs} +0 -0
  424. /package/dist/{theme.interface-C2XNgsLB.js → theme.interface-DVEw3s8m.js} +0 -0
  425. /package/dist/{theme.service-CSzNkqBB.js → theme.service-Bh08uOSJ.js} +0 -0
  426. /package/dist/{theme.service-CnFUmUpc.cjs → theme.service-Y-e8b331.cjs} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-rskgUBxQ.cjs","names":["isServer","EVENTS","LitElement","isServer","styles","styles","isServer","LitElement","styles","styles","isServer","isServer","LitElement","isServer","nothing"],"sources":["../node_modules/tslib/tslib.es6.mjs","../node_modules/@material/web/internal/controller/attachable-controller.js","../node_modules/@material/web/focus/internal/focus-ring.js","../node_modules/@material/web/focus/internal/focus-ring-styles.js","../node_modules/@material/web/focus/md-focus-ring.js","../node_modules/@material/web/internal/motion/animation.js","../node_modules/@material/web/ripple/internal/ripple.js","../node_modules/@material/web/ripple/internal/ripple-styles.js","../node_modules/@material/web/ripple/ripple.js","../node_modules/@material/web/internal/aria/aria.js","../node_modules/@material/web/internal/aria/delegate.js","../node_modules/@material/web/internal/events/form-label-activation.js","../node_modules/@material/web/internal/events/redispatch-event.js","../node_modules/@material/web/labs/behaviors/element-internals.js","../node_modules/@material/web/labs/behaviors/constraint-validation.js","../node_modules/@material/web/labs/behaviors/form-associated.js","../node_modules/@material/web/labs/behaviors/validators/validator.js","../node_modules/@material/web/labs/behaviors/validators/checkbox-validator.js","../node_modules/@material/web/checkbox/internal/checkbox.js","../node_modules/@material/web/checkbox/internal/checkbox-styles.js","../node_modules/@material/web/checkbox/checkbox.js","../src/form/fields/checkbox/checkbox.ts"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nvar ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\n });\n }\n return path;\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __esDecorate,\n __runInitializers,\n __propKey,\n __setFunctionName,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n __rewriteRelativeImportExtension,\n};\n","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { isServer } from 'lit';\n/**\n * A key to retrieve an `Attachable` element's `AttachableController` from a\n * global `MutationObserver`.\n */\nconst ATTACHABLE_CONTROLLER = Symbol('attachableController');\nlet FOR_ATTRIBUTE_OBSERVER;\nif (!isServer) {\n /**\n * A global `MutationObserver` that reacts to `for` attribute changes on\n * `Attachable` elements. If the `for` attribute changes, the controller will\n * re-attach to the new referenced element.\n */\n FOR_ATTRIBUTE_OBSERVER = new MutationObserver((records) => {\n for (const record of records) {\n // When a control's `for` attribute changes, inform its\n // `AttachableController` to update to a new control.\n record.target[ATTACHABLE_CONTROLLER]?.hostConnected();\n }\n });\n}\n/**\n * A controller that provides an implementation for `Attachable` elements.\n *\n * @example\n * ```ts\n * class MyElement extends LitElement implements Attachable {\n * get control() { return this.attachableController.control; }\n *\n * private readonly attachableController = new AttachableController(\n * this,\n * (previousControl, newControl) => {\n * previousControl?.removeEventListener('click', this.handleClick);\n * newControl?.addEventListener('click', this.handleClick);\n * }\n * );\n *\n * // Implement remaining `Attachable` properties/methods that call the\n * // controller's properties/methods.\n * }\n * ```\n */\nexport class AttachableController {\n get htmlFor() {\n return this.host.getAttribute('for');\n }\n set htmlFor(htmlFor) {\n if (htmlFor === null) {\n this.host.removeAttribute('for');\n }\n else {\n this.host.setAttribute('for', htmlFor);\n }\n }\n get control() {\n if (this.host.hasAttribute('for')) {\n if (!this.htmlFor || !this.host.isConnected) {\n return null;\n }\n return this.host.getRootNode().querySelector(`#${this.htmlFor}`);\n }\n return this.currentControl || this.host.parentElement;\n }\n set control(control) {\n if (control) {\n this.attach(control);\n }\n else {\n this.detach();\n }\n }\n /**\n * Creates a new controller for an `Attachable` element.\n *\n * @param host The `Attachable` element.\n * @param onControlChange A callback with two parameters for the previous and\n * next control. An `Attachable` element may perform setup or teardown\n * logic whenever the control changes.\n */\n constructor(host, onControlChange) {\n this.host = host;\n this.onControlChange = onControlChange;\n this.currentControl = null;\n host.addController(this);\n host[ATTACHABLE_CONTROLLER] = this;\n FOR_ATTRIBUTE_OBSERVER?.observe(host, { attributeFilter: ['for'] });\n }\n attach(control) {\n if (control === this.currentControl) {\n return;\n }\n this.setCurrentControl(control);\n // When imperatively attaching, remove the `for` attribute so\n // that the attached control is used instead of a referenced one.\n this.host.removeAttribute('for');\n }\n detach() {\n this.setCurrentControl(null);\n // When imperatively detaching, add an empty `for=\"\"` attribute. This will\n // ensure the control is `null` rather than the `parentElement`.\n this.host.setAttribute('for', '');\n }\n /** @private */\n hostConnected() {\n this.setCurrentControl(this.control);\n }\n /** @private */\n hostDisconnected() {\n this.setCurrentControl(null);\n }\n setCurrentControl(control) {\n this.onControlChange(this.currentControl, control);\n this.currentControl = control;\n }\n}\n//# sourceMappingURL=attachable-controller.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { isServer, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { AttachableController, } from '../../internal/controller/attachable-controller.js';\n/**\n * Events that the focus ring listens to.\n */\nconst EVENTS = ['focusin', 'focusout', 'pointerdown'];\n/**\n * A focus ring component.\n *\n * @fires visibility-changed {Event} Fired whenever `visible` changes.\n */\nexport class FocusRing extends LitElement {\n constructor() {\n super(...arguments);\n /**\n * Makes the focus ring visible.\n */\n this.visible = false;\n /**\n * Makes the focus ring animate inwards instead of outwards.\n */\n this.inward = false;\n this.attachableController = new AttachableController(this, this.onControlChange.bind(this));\n }\n get htmlFor() {\n return this.attachableController.htmlFor;\n }\n set htmlFor(htmlFor) {\n this.attachableController.htmlFor = htmlFor;\n }\n get control() {\n return this.attachableController.control;\n }\n set control(control) {\n this.attachableController.control = control;\n }\n attach(control) {\n this.attachableController.attach(control);\n }\n detach() {\n this.attachableController.detach();\n }\n connectedCallback() {\n super.connectedCallback();\n // Needed for VoiceOver, which will create a \"group\" if the element is a\n // sibling to other content.\n this.setAttribute('aria-hidden', 'true');\n }\n /** @private */\n handleEvent(event) {\n if (event[HANDLED_BY_FOCUS_RING]) {\n // This ensures the focus ring does not activate when multiple focus rings\n // are used within a single component.\n return;\n }\n switch (event.type) {\n default:\n return;\n case 'focusin':\n this.visible = this.control?.matches(':focus-visible') ?? false;\n break;\n case 'focusout':\n case 'pointerdown':\n this.visible = false;\n break;\n }\n event[HANDLED_BY_FOCUS_RING] = true;\n }\n onControlChange(prev, next) {\n if (isServer)\n return;\n for (const event of EVENTS) {\n prev?.removeEventListener(event, this);\n next?.addEventListener(event, this);\n }\n }\n update(changed) {\n if (changed.has('visible')) {\n // This logic can be removed once the `:has` selector has been introduced\n // to Firefox. This is necessary to allow correct submenu styles.\n this.dispatchEvent(new Event('visibility-changed'));\n }\n super.update(changed);\n }\n}\n__decorate([\n property({ type: Boolean, reflect: true })\n], FocusRing.prototype, \"visible\", void 0);\n__decorate([\n property({ type: Boolean, reflect: true })\n], FocusRing.prototype, \"inward\", void 0);\nconst HANDLED_BY_FOCUS_RING = Symbol('handledByFocusRing');\n//# sourceMappingURL=focus-ring.js.map","/**\n * @license\n * Copyright 2024 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./focus/internal/focus-ring-styles.css.\nimport { css } from 'lit';\nexport const styles = css `:host{animation-delay:0s,calc(var(--md-focus-ring-duration, 600ms)*.25);animation-duration:calc(var(--md-focus-ring-duration, 600ms)*.25),calc(var(--md-focus-ring-duration, 600ms)*.75);animation-timing-function:cubic-bezier(0.2, 0, 0, 1);box-sizing:border-box;color:var(--md-focus-ring-color, var(--md-sys-color-secondary, #625b71));display:none;pointer-events:none;position:absolute}:host([visible]){display:flex}:host(:not([inward])){animation-name:outward-grow,outward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));inset:calc(-1*var(--md-focus-ring-outward-offset, 2px));outline:var(--md-focus-ring-width, 3px) solid currentColor}:host([inward]){animation-name:inward-grow,inward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border:var(--md-focus-ring-width, 3px) solid currentColor;inset:var(--md-focus-ring-inward-offset, 0px)}@keyframes outward-grow{from{outline-width:0}to{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes outward-shrink{from{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-grow{from{border-width:0}to{border-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-shrink{from{border-width:var(--md-focus-ring-active-width, 8px)}}@media(prefers-reduced-motion){:host{animation:none}}\n`;\n//# sourceMappingURL=focus-ring-styles.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { customElement } from 'lit/decorators.js';\nimport { FocusRing } from './internal/focus-ring.js';\nimport { styles } from './internal/focus-ring-styles.js';\n/**\n * TODO(b/267336424): add docs\n *\n * @final\n * @suppress {visibility}\n */\nlet MdFocusRing = class MdFocusRing extends FocusRing {\n};\nMdFocusRing.styles = [styles];\nMdFocusRing = __decorate([\n customElement('md-focus-ring')\n], MdFocusRing);\nexport { MdFocusRing };\n//# sourceMappingURL=md-focus-ring.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * Easing functions to use for web animations.\n *\n * **NOTE:** `EASING.EMPHASIZED` is approximated with unknown accuracy.\n *\n * TODO(b/241113345): replace with tokens\n */\nexport const EASING = {\n STANDARD: 'cubic-bezier(0.2, 0, 0, 1)',\n STANDARD_ACCELERATE: 'cubic-bezier(.3,0,1,1)',\n STANDARD_DECELERATE: 'cubic-bezier(0,0,0,1)',\n EMPHASIZED: 'cubic-bezier(.3,0,0,1)',\n EMPHASIZED_ACCELERATE: 'cubic-bezier(.3,0,.8,.15)',\n EMPHASIZED_DECELERATE: 'cubic-bezier(.05,.7,.1,1)',\n};\n/**\n * Creates an `AnimationSignal` that can be used to cancel a previous task.\n *\n * @example\n * class MyClass {\n * private labelAnimationSignal = createAnimationSignal();\n *\n * private async animateLabel() {\n * // Start of the task. Previous tasks will be canceled.\n * const signal = this.labelAnimationSignal.start();\n *\n * // Do async work...\n * if (signal.aborted) {\n * // Use AbortSignal to check if a request was made to abort after some\n * // asynchronous work.\n * return;\n * }\n *\n * const animation = this.animate(...);\n * // Add event listeners to be notified when the task should be canceled.\n * signal.addEventListener('abort', () => {\n * animation.cancel();\n * });\n *\n * animation.addEventListener('finish', () => {\n * // Tell the signal that the current task is finished.\n * this.labelAnimationSignal.finish();\n * });\n * }\n * }\n *\n * @return An `AnimationSignal`.\n */\nexport function createAnimationSignal() {\n // The current animation's AbortController\n let animationAbortController = null;\n return {\n start() {\n // Tell the previous animation to cancel.\n animationAbortController?.abort();\n // Set up a new AbortController for the current animation.\n animationAbortController = new AbortController();\n // Provide the AbortSignal so that the caller can check aborted status\n // and add listeners.\n return animationAbortController.signal;\n },\n finish() {\n animationAbortController = null;\n },\n };\n}\n/**\n * Returns a function which can be used to throttle function calls\n * mapped to a key via a given function that should produce a promise that\n * determines the throttle amount (defaults to requestAnimationFrame).\n */\nexport function createThrottle() {\n const stack = new Set();\n return async (key = '', cb, timeout = async () => {\n await new Promise(requestAnimationFrame);\n }) => {\n if (!stack.has(key)) {\n stack.add(key);\n await timeout();\n if (stack.has(key)) {\n stack.delete(key);\n cb();\n }\n }\n };\n}\n/**\n * Parses an number in milliseconds from a css time value\n */\nexport function msFromTimeCSSValue(value) {\n const match = value.trim().match(/([\\d.]+)(\\s*s$)?/);\n const time = match?.[1];\n const seconds = match?.[2];\n return Number(time ?? 0) * (seconds ? 1000 : 1);\n}\n//# sourceMappingURL=animation.js.map","/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { html, isServer, LitElement } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { AttachableController, } from '../../internal/controller/attachable-controller.js';\nimport { EASING } from '../../internal/motion/animation.js';\nconst PRESS_GROW_MS = 450;\nconst MINIMUM_PRESS_MS = 225;\nconst INITIAL_ORIGIN_SCALE = 0.2;\nconst PADDING = 10;\nconst SOFT_EDGE_MINIMUM_SIZE = 75;\nconst SOFT_EDGE_CONTAINER_RATIO = 0.35;\nconst PRESS_PSEUDO = '::after';\nconst ANIMATION_FILL = 'forwards';\n/**\n * Interaction states for the ripple.\n *\n * On Touch:\n * - `INACTIVE -> TOUCH_DELAY -> WAITING_FOR_CLICK -> INACTIVE`\n * - `INACTIVE -> TOUCH_DELAY -> HOLDING -> WAITING_FOR_CLICK -> INACTIVE`\n *\n * On Mouse or Pen:\n * - `INACTIVE -> WAITING_FOR_CLICK -> INACTIVE`\n */\nvar State;\n(function (State) {\n /**\n * Initial state of the control, no touch in progress.\n *\n * Transitions:\n * - on touch down: transition to `TOUCH_DELAY`.\n * - on mouse down: transition to `WAITING_FOR_CLICK`.\n */\n State[State[\"INACTIVE\"] = 0] = \"INACTIVE\";\n /**\n * Touch down has been received, waiting to determine if it's a swipe or\n * scroll.\n *\n * Transitions:\n * - on touch up: begin press; transition to `WAITING_FOR_CLICK`.\n * - on cancel: transition to `INACTIVE`.\n * - after `TOUCH_DELAY_MS`: begin press; transition to `HOLDING`.\n */\n State[State[\"TOUCH_DELAY\"] = 1] = \"TOUCH_DELAY\";\n /**\n * A touch has been deemed to be a press\n *\n * Transitions:\n * - on up: transition to `WAITING_FOR_CLICK`.\n */\n State[State[\"HOLDING\"] = 2] = \"HOLDING\";\n /**\n * The user touch has finished, transition into rest state.\n *\n * Transitions:\n * - on click end press; transition to `INACTIVE`.\n */\n State[State[\"WAITING_FOR_CLICK\"] = 3] = \"WAITING_FOR_CLICK\";\n})(State || (State = {}));\n/**\n * Events that the ripple listens to.\n */\nconst EVENTS = [\n 'click',\n 'contextmenu',\n 'pointercancel',\n 'pointerdown',\n 'pointerenter',\n 'pointerleave',\n 'pointerup',\n];\n/**\n * Delay reacting to touch so that we do not show the ripple for a swipe or\n * scroll interaction.\n */\nconst TOUCH_DELAY_MS = 150;\n/**\n * Used to detect if HCM is active. Events do not process during HCM when the\n * ripple is not displayed.\n */\nconst FORCED_COLORS = isServer\n ? null\n : window.matchMedia('(forced-colors: active)');\n/**\n * A ripple component.\n */\nexport class Ripple extends LitElement {\n constructor() {\n super(...arguments);\n /**\n * Disables the ripple.\n */\n this.disabled = false;\n this.hovered = false;\n this.pressed = false;\n this.rippleSize = '';\n this.rippleScale = '';\n this.initialSize = 0;\n this.state = State.INACTIVE;\n this.attachableController = new AttachableController(this, this.onControlChange.bind(this));\n }\n get htmlFor() {\n return this.attachableController.htmlFor;\n }\n set htmlFor(htmlFor) {\n this.attachableController.htmlFor = htmlFor;\n }\n get control() {\n return this.attachableController.control;\n }\n set control(control) {\n this.attachableController.control = control;\n }\n attach(control) {\n this.attachableController.attach(control);\n }\n detach() {\n this.attachableController.detach();\n }\n connectedCallback() {\n super.connectedCallback();\n // Needed for VoiceOver, which will create a \"group\" if the element is a\n // sibling to other content.\n this.setAttribute('aria-hidden', 'true');\n }\n render() {\n const classes = {\n 'hovered': this.hovered,\n 'pressed': this.pressed,\n };\n return html `<div class=\"surface ${classMap(classes)}\"></div>`;\n }\n update(changedProps) {\n if (changedProps.has('disabled') && this.disabled) {\n this.hovered = false;\n this.pressed = false;\n }\n super.update(changedProps);\n }\n /**\n * TODO(b/269799771): make private\n * @private only public for slider\n */\n handlePointerenter(event) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n this.hovered = true;\n }\n /**\n * TODO(b/269799771): make private\n * @private only public for slider\n */\n handlePointerleave(event) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n this.hovered = false;\n // release a held mouse or pen press that moves outside the element\n if (this.state !== State.INACTIVE) {\n this.endPressAnimation();\n }\n }\n handlePointerup(event) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n if (this.state === State.HOLDING) {\n this.state = State.WAITING_FOR_CLICK;\n return;\n }\n if (this.state === State.TOUCH_DELAY) {\n this.state = State.WAITING_FOR_CLICK;\n this.startPressAnimation(this.rippleStartEvent);\n return;\n }\n }\n async handlePointerdown(event) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n this.rippleStartEvent = event;\n if (!this.isTouch(event)) {\n this.state = State.WAITING_FOR_CLICK;\n this.startPressAnimation(event);\n return;\n }\n // Wait for a hold after touch delay\n this.state = State.TOUCH_DELAY;\n await new Promise((resolve) => {\n setTimeout(resolve, TOUCH_DELAY_MS);\n });\n if (this.state !== State.TOUCH_DELAY) {\n return;\n }\n this.state = State.HOLDING;\n this.startPressAnimation(event);\n }\n handleClick() {\n // Click is a MouseEvent in Firefox and Safari, so we cannot use\n // `shouldReactToEvent`\n if (this.disabled) {\n return;\n }\n if (this.state === State.WAITING_FOR_CLICK) {\n this.endPressAnimation();\n return;\n }\n if (this.state === State.INACTIVE) {\n // keyboard synthesized click event\n this.startPressAnimation();\n this.endPressAnimation();\n }\n }\n handlePointercancel(event) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n this.endPressAnimation();\n }\n handleContextmenu() {\n if (this.disabled) {\n return;\n }\n this.endPressAnimation();\n }\n determineRippleSize() {\n const { height, width } = this.getBoundingClientRect();\n const maxDim = Math.max(height, width);\n const softEdgeSize = Math.max(SOFT_EDGE_CONTAINER_RATIO * maxDim, SOFT_EDGE_MINIMUM_SIZE);\n // `?? 1` may be removed once `currentCSSZoom` is widely available.\n const zoom = this.currentCSSZoom ?? 1;\n const initialSize = Math.floor((maxDim * INITIAL_ORIGIN_SCALE) / zoom);\n const hypotenuse = Math.sqrt(width ** 2 + height ** 2);\n const maxRadius = hypotenuse + PADDING;\n this.initialSize = initialSize;\n // The dimensions may be altered by CSS `zoom`, which needs to be\n // compensated for in the final scale() value.\n const maybeZoomedScale = (maxRadius + softEdgeSize) / initialSize;\n this.rippleScale = `${maybeZoomedScale / zoom}`;\n this.rippleSize = `${initialSize}px`;\n }\n getNormalizedPointerEventCoords(pointerEvent) {\n const { scrollX, scrollY } = window;\n const { left, top } = this.getBoundingClientRect();\n const documentX = scrollX + left;\n const documentY = scrollY + top;\n const { pageX, pageY } = pointerEvent;\n // `?? 1` may be removed once `currentCSSZoom` is widely available.\n const zoom = this.currentCSSZoom ?? 1;\n return {\n x: (pageX - documentX) / zoom,\n y: (pageY - documentY) / zoom,\n };\n }\n getTranslationCoordinates(positionEvent) {\n const { height, width } = this.getBoundingClientRect();\n // `?? 1` may be removed once `currentCSSZoom` is widely available.\n const zoom = this.currentCSSZoom ?? 1;\n // end in the center\n const endPoint = {\n x: (width / zoom - this.initialSize) / 2,\n y: (height / zoom - this.initialSize) / 2,\n };\n let startPoint;\n if (positionEvent instanceof PointerEvent) {\n startPoint = this.getNormalizedPointerEventCoords(positionEvent);\n }\n else {\n startPoint = {\n x: width / zoom / 2,\n y: height / zoom / 2,\n };\n }\n // center around start point\n startPoint = {\n x: startPoint.x - this.initialSize / 2,\n y: startPoint.y - this.initialSize / 2,\n };\n return { startPoint, endPoint };\n }\n startPressAnimation(positionEvent) {\n if (!this.mdRoot) {\n return;\n }\n this.pressed = true;\n this.growAnimation?.cancel();\n this.determineRippleSize();\n const { startPoint, endPoint } = this.getTranslationCoordinates(positionEvent);\n const translateStart = `${startPoint.x}px, ${startPoint.y}px`;\n const translateEnd = `${endPoint.x}px, ${endPoint.y}px`;\n this.growAnimation = this.mdRoot.animate({\n top: [0, 0],\n left: [0, 0],\n height: [this.rippleSize, this.rippleSize],\n width: [this.rippleSize, this.rippleSize],\n transform: [\n `translate(${translateStart}) scale(1)`,\n `translate(${translateEnd}) scale(${this.rippleScale})`,\n ],\n }, {\n pseudoElement: PRESS_PSEUDO,\n duration: PRESS_GROW_MS,\n easing: EASING.STANDARD,\n fill: ANIMATION_FILL,\n });\n }\n async endPressAnimation() {\n this.rippleStartEvent = undefined;\n this.state = State.INACTIVE;\n const animation = this.growAnimation;\n let pressAnimationPlayState = Infinity;\n if (typeof animation?.currentTime === 'number') {\n pressAnimationPlayState = animation.currentTime;\n }\n else if (animation?.currentTime) {\n pressAnimationPlayState = animation.currentTime.to('ms').value;\n }\n if (pressAnimationPlayState >= MINIMUM_PRESS_MS) {\n this.pressed = false;\n return;\n }\n await new Promise((resolve) => {\n setTimeout(resolve, MINIMUM_PRESS_MS - pressAnimationPlayState);\n });\n if (this.growAnimation !== animation) {\n // A new press animation was started. The old animation was canceled and\n // should not finish the pressed state.\n return;\n }\n this.pressed = false;\n }\n /**\n * Returns `true` if\n * - the ripple element is enabled\n * - the pointer is primary for the input type\n * - the pointer is the pointer that started the interaction, or will start\n * the interaction\n * - the pointer is a touch, or the pointer state has the primary button\n * held, or the pointer is hovering\n */\n shouldReactToEvent(event) {\n if (this.disabled || !event.isPrimary) {\n return false;\n }\n if (this.rippleStartEvent &&\n this.rippleStartEvent.pointerId !== event.pointerId) {\n return false;\n }\n if (event.type === 'pointerenter' || event.type === 'pointerleave') {\n return !this.isTouch(event);\n }\n const isPrimaryButton = event.buttons === 1;\n return this.isTouch(event) || isPrimaryButton;\n }\n isTouch({ pointerType }) {\n return pointerType === 'touch';\n }\n /** @private */\n async handleEvent(event) {\n if (FORCED_COLORS?.matches) {\n // Skip event logic since the ripple is `display: none`.\n return;\n }\n switch (event.type) {\n case 'click':\n this.handleClick();\n break;\n case 'contextmenu':\n this.handleContextmenu();\n break;\n case 'pointercancel':\n this.handlePointercancel(event);\n break;\n case 'pointerdown':\n await this.handlePointerdown(event);\n break;\n case 'pointerenter':\n this.handlePointerenter(event);\n break;\n case 'pointerleave':\n this.handlePointerleave(event);\n break;\n case 'pointerup':\n this.handlePointerup(event);\n break;\n default:\n break;\n }\n }\n onControlChange(prev, next) {\n if (isServer)\n return;\n for (const event of EVENTS) {\n prev?.removeEventListener(event, this);\n next?.addEventListener(event, this);\n }\n }\n}\n__decorate([\n property({ type: Boolean, reflect: true })\n], Ripple.prototype, \"disabled\", void 0);\n__decorate([\n state()\n], Ripple.prototype, \"hovered\", void 0);\n__decorate([\n state()\n], Ripple.prototype, \"pressed\", void 0);\n__decorate([\n query('.surface')\n], Ripple.prototype, \"mdRoot\", void 0);\n//# sourceMappingURL=ripple.js.map","/**\n * @license\n * Copyright 2024 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./ripple/internal/ripple-styles.css.\nimport { css } from 'lit';\nexport const styles = css `:host{display:flex;margin:auto;pointer-events:none}:host([disabled]){display:none}@media(forced-colors: active){:host{display:none}}:host,.surface{border-radius:inherit;position:absolute;inset:0;overflow:hidden}.surface{-webkit-tap-highlight-color:rgba(0,0,0,0)}.surface::before,.surface::after{content:\"\";opacity:0;position:absolute}.surface::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));inset:0;transition:opacity 15ms linear,background-color 15ms linear}.surface::after{background:radial-gradient(closest-side, var(--md-ripple-pressed-color, var(--md-sys-color-on-surface, #1d1b20)) max(100% - 70px, 65%), transparent 100%);transform-origin:center center;transition:opacity 375ms linear}.hovered::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-ripple-hover-opacity, 0.08)}.pressed::after{opacity:var(--md-ripple-pressed-opacity, 0.12);transition-duration:105ms}\n`;\n//# sourceMappingURL=ripple-styles.js.map","/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { customElement } from 'lit/decorators.js';\nimport { Ripple } from './internal/ripple.js';\nimport { styles } from './internal/ripple-styles.js';\n/**\n * @summary Ripples, also known as state layers, are visual indicators used to\n * communicate the status of a component or interactive element.\n *\n * @description A state layer is a semi-transparent covering on an element that\n * indicates its state. State layers provide a systematic approach to\n * visualizing states by using opacity. A layer can be applied to an entire\n * element or in a circular shape and only one state layer can be applied at a\n * given time.\n *\n * @final\n * @suppress {visibility}\n */\nlet MdRipple = class MdRipple extends Ripple {\n};\nMdRipple.styles = [styles];\nMdRipple = __decorate([\n customElement('md-ripple')\n], MdRipple);\nexport { MdRipple };\n//# sourceMappingURL=ripple.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * Accessibility Object Model reflective aria properties.\n */\nexport const ARIA_PROPERTIES = [\n 'role',\n 'ariaAtomic',\n 'ariaAutoComplete',\n 'ariaBusy',\n 'ariaChecked',\n 'ariaColCount',\n 'ariaColIndex',\n 'ariaColSpan',\n 'ariaCurrent',\n 'ariaDisabled',\n 'ariaExpanded',\n 'ariaHasPopup',\n 'ariaHidden',\n 'ariaInvalid',\n 'ariaKeyShortcuts',\n 'ariaLabel',\n 'ariaLevel',\n 'ariaLive',\n 'ariaModal',\n 'ariaMultiLine',\n 'ariaMultiSelectable',\n 'ariaOrientation',\n 'ariaPlaceholder',\n 'ariaPosInSet',\n 'ariaPressed',\n 'ariaReadOnly',\n 'ariaRequired',\n 'ariaRoleDescription',\n 'ariaRowCount',\n 'ariaRowIndex',\n 'ariaRowSpan',\n 'ariaSelected',\n 'ariaSetSize',\n 'ariaSort',\n 'ariaValueMax',\n 'ariaValueMin',\n 'ariaValueNow',\n 'ariaValueText',\n];\n/**\n * Accessibility Object Model aria attributes.\n */\nexport const ARIA_ATTRIBUTES = ARIA_PROPERTIES.map(ariaPropertyToAttribute);\n/**\n * Checks if an attribute is one of the AOM aria attributes.\n *\n * @example\n * isAriaAttribute('aria-label'); // true\n *\n * @param attribute The attribute to check.\n * @return True if the attribute is an aria attribute, or false if not.\n */\nexport function isAriaAttribute(attribute) {\n return ARIA_ATTRIBUTES.includes(attribute);\n}\n/**\n * Converts an AOM aria property into its corresponding attribute.\n *\n * @example\n * ariaPropertyToAttribute('ariaLabel'); // 'aria-label'\n *\n * @param property The aria property.\n * @return The aria attribute.\n */\nexport function ariaPropertyToAttribute(property) {\n return property\n .replace('aria', 'aria-')\n // IDREF attributes also include an \"Element\" or \"Elements\" suffix\n .replace(/Elements?/g, '')\n .toLowerCase();\n}\n//# sourceMappingURL=aria.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { isServer } from 'lit';\nimport { ARIA_PROPERTIES, ariaPropertyToAttribute, isAriaAttribute, } from './aria.js';\n// Private symbols\nconst privateIgnoreAttributeChangesFor = Symbol('privateIgnoreAttributeChangesFor');\n/**\n * Mixes in aria delegation for elements that delegate focus and aria to inner\n * shadow root elements.\n *\n * This mixin fixes invalid aria announcements with shadow roots, caused by\n * duplicate aria attributes on both the host and the inner shadow root element.\n *\n * Note: this mixin **does not yet support** ID reference attributes, such as\n * `aria-labelledby` or `aria-controls`.\n *\n * @example\n * ```ts\n * class MyButton extends mixinDelegatesAria(LitElement) {\n * static shadowRootOptions = {mode: 'open', delegatesFocus: true};\n *\n * render() {\n * return html`\n * <button aria-label=${this.ariaLabel || nothing}>\n * <slot></slot>\n * </button>\n * `;\n * }\n * }\n * ```\n * ```html\n * <my-button aria-label=\"Plus one\">+1</my-button>\n * ```\n *\n * Use `ARIAMixinStrict` for lit analyzer strict types, such as the \"role\"\n * attribute.\n *\n * @example\n * ```ts\n * return html`\n * <button role=${(this as ARIAMixinStrict).role || nothing}>\n * <slot></slot>\n * </button>\n * `;\n * ```\n *\n * In the future, updates to the Accessibility Object Model (AOM) will provide\n * built-in aria delegation features that will replace this mixin.\n *\n * @param base The class to mix functionality into.\n * @return The provided class with aria delegation mixed in.\n */\nexport function mixinDelegatesAria(base) {\n var _a;\n if (isServer) {\n // Don't shift attributes when running with lit-ssr. The SSR renderer\n // implements a subset of DOM APIs, including the methods this mixin\n // overrides, causing errors. We don't need to shift on the server anyway\n // since elements will shift attributes immediately once they hydrate.\n return base;\n }\n class WithDelegatesAriaElement extends base {\n constructor() {\n super(...arguments);\n this[_a] = new Set();\n }\n attributeChangedCallback(name, oldValue, newValue) {\n if (!isAriaAttribute(name)) {\n super.attributeChangedCallback(name, oldValue, newValue);\n return;\n }\n if (this[privateIgnoreAttributeChangesFor].has(name)) {\n return;\n }\n // Don't trigger another `attributeChangedCallback` once we remove the\n // aria attribute from the host. We check the explicit name of the\n // attribute to ignore since `attributeChangedCallback` can be called\n // multiple times out of an expected order when hydrating an element with\n // multiple attributes.\n this[privateIgnoreAttributeChangesFor].add(name);\n this.removeAttribute(name);\n this[privateIgnoreAttributeChangesFor].delete(name);\n const dataProperty = ariaAttributeToDataProperty(name);\n if (newValue === null) {\n delete this.dataset[dataProperty];\n }\n else {\n this.dataset[dataProperty] = newValue;\n }\n this.requestUpdate(ariaAttributeToDataProperty(name), oldValue);\n }\n getAttribute(name) {\n if (isAriaAttribute(name)) {\n return super.getAttribute(ariaAttributeToDataAttribute(name));\n }\n return super.getAttribute(name);\n }\n removeAttribute(name) {\n super.removeAttribute(name);\n if (isAriaAttribute(name)) {\n super.removeAttribute(ariaAttributeToDataAttribute(name));\n // Since `aria-*` attributes are already removed`, we need to request\n // an update because `attributeChangedCallback` will not be called.\n this.requestUpdate();\n }\n }\n }\n _a = privateIgnoreAttributeChangesFor;\n setupDelegatesAriaProperties(WithDelegatesAriaElement);\n return WithDelegatesAriaElement;\n}\n/**\n * Overrides the constructor's native `ARIAMixin` properties to ensure that\n * aria properties reflect the values that were shifted to a data attribute.\n *\n * @param ctor The `ReactiveElement` constructor to patch.\n */\nfunction setupDelegatesAriaProperties(ctor) {\n for (const ariaProperty of ARIA_PROPERTIES) {\n // The casing between ariaProperty and the dataProperty may be different.\n // ex: aria-haspopup -> ariaHasPopup\n const ariaAttribute = ariaPropertyToAttribute(ariaProperty);\n // ex: aria-haspopup -> data-aria-haspopup\n const dataAttribute = ariaAttributeToDataAttribute(ariaAttribute);\n // ex: aria-haspopup -> dataset.ariaHaspopup\n const dataProperty = ariaAttributeToDataProperty(ariaAttribute);\n // Call `ReactiveElement.createProperty()` so that the `aria-*` and `data-*`\n // attributes are added to the `static observedAttributes` array. This\n // triggers `attributeChangedCallback` for the delegates aria mixin to\n // handle.\n ctor.createProperty(ariaProperty, {\n attribute: ariaAttribute,\n noAccessor: true,\n });\n ctor.createProperty(Symbol(dataAttribute), {\n attribute: dataAttribute,\n noAccessor: true,\n });\n // Re-define the `ARIAMixin` properties to handle data attribute shifting.\n // It is safe to use `Object.defineProperty` here because the properties\n // are native and not renamed.\n // tslint:disable-next-line:ban-unsafe-reflection\n Object.defineProperty(ctor.prototype, ariaProperty, {\n configurable: true,\n enumerable: true,\n get() {\n return this.dataset[dataProperty] ?? null;\n },\n set(value) {\n const prevValue = this.dataset[dataProperty] ?? null;\n if (value === prevValue) {\n return;\n }\n if (value === null) {\n delete this.dataset[dataProperty];\n }\n else {\n this.dataset[dataProperty] = value;\n }\n this.requestUpdate(ariaProperty, prevValue);\n },\n });\n }\n}\nfunction ariaAttributeToDataAttribute(ariaAttribute) {\n // aria-haspopup -> data-aria-haspopup\n return `data-${ariaAttribute}`;\n}\nfunction ariaAttributeToDataProperty(ariaAttribute) {\n // aria-haspopup -> dataset.ariaHaspopup\n return ariaAttribute.replace(/-\\w/, (dashLetter) => dashLetter[1].toUpperCase());\n}\n//# sourceMappingURL=delegate.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * Dispatches a click event to the given element that triggers a native action,\n * but is not composed and therefore is not seen outside the element.\n *\n * This is useful for responding to an external click event on the host element\n * that should trigger an internal action like a button click.\n *\n * Note, a helper is provided because setting this up correctly is a bit tricky.\n * In particular, calling `click` on an element creates a composed event, which\n * is not desirable, and a manually dispatched event must specifically be a\n * `MouseEvent` to trigger a native action.\n *\n * @example\n * hostClickListener = (event: MouseEvent) {\n * if (isActivationClick(event)) {\n * this.dispatchActivationClick(this.buttonElement);\n * }\n * }\n *\n */\nexport function dispatchActivationClick(element) {\n const event = new MouseEvent('click', { bubbles: true });\n element.dispatchEvent(event);\n return event;\n}\n/**\n * Returns true if the click event should trigger an activation behavior. The\n * behavior is defined by the element and is whatever it should do when\n * clicked.\n *\n * Typically when an element needs to handle a click, the click is generated\n * from within the element and an event listener within the element implements\n * the needed behavior; however, it's possible to fire a click directly\n * at the element that the element should handle. This method helps\n * distinguish these \"external\" clicks.\n *\n * An \"external\" click can be triggered in a number of ways: via a click\n * on an associated label for a form associated element, calling\n * `element.click()`, or calling\n * `element.dispatchEvent(new MouseEvent('click', ...))`.\n *\n * Also works around Firefox issue\n * https://bugzilla.mozilla.org/show_bug.cgi?id=1804576 by squelching\n * events for a microtask after called.\n *\n * @example\n * hostClickListener = (event: MouseEvent) {\n * if (isActivationClick(event)) {\n * this.dispatchActivationClick(this.buttonElement);\n * }\n * }\n *\n */\nexport function isActivationClick(event) {\n // Event must start at the event target.\n if (event.currentTarget !== event.target) {\n return false;\n }\n // Event must not be retargeted from shadowRoot.\n if (event.composedPath()[0] !== event.target) {\n return false;\n }\n // Target must not be disabled; this should only occur for a synthetically\n // dispatched click.\n if (event.target.disabled) {\n return false;\n }\n // This is an activation if the event should not be squelched.\n return !squelchEvent(event);\n}\n// TODO(https://bugzilla.mozilla.org/show_bug.cgi?id=1804576)\n// Remove when Firefox bug is addressed.\nfunction squelchEvent(event) {\n const squelched = isSquelchingEvents;\n if (squelched) {\n event.preventDefault();\n event.stopImmediatePropagation();\n }\n squelchEventsForMicrotask();\n return squelched;\n}\n// Ignore events for one microtask only.\nlet isSquelchingEvents = false;\nasync function squelchEventsForMicrotask() {\n isSquelchingEvents = true;\n // Need to pause for just one microtask.\n // tslint:disable-next-line\n await null;\n isSquelchingEvents = false;\n}\n//# sourceMappingURL=form-label-activation.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * Re-dispatches an event from the provided element.\n *\n * This function is useful for forwarding non-composed events, such as `change`\n * events.\n *\n * @example\n * class MyInput extends LitElement {\n * render() {\n * return html`<input @change=${this.redispatchEvent}>`;\n * }\n *\n * protected redispatchEvent(event: Event) {\n * redispatchEvent(this, event);\n * }\n * }\n *\n * @param element The element to dispatch the event from.\n * @param event The event to re-dispatch.\n * @return Whether or not the event was dispatched (if cancelable).\n */\nexport function redispatchEvent(element, event) {\n // For bubbling events in SSR light DOM (or composed), stop their propagation\n // and dispatch the copy.\n if (event.bubbles && (!element.shadowRoot || event.composed)) {\n event.stopPropagation();\n }\n const copy = Reflect.construct(event.constructor, [event.type, event]);\n const dispatched = element.dispatchEvent(copy);\n if (!dispatched) {\n event.preventDefault();\n }\n return dispatched;\n}\n//# sourceMappingURL=redispatch-event.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * A unique symbol used for protected access to an instance's\n * `ElementInternals`.\n *\n * @example\n * ```ts\n * class MyElement extends mixinElementInternals(LitElement) {\n * constructor() {\n * super();\n * this[internals].role = 'button';\n * }\n * }\n * ```\n */\nexport const internals = Symbol('internals');\n// Private symbols\nconst privateInternals = Symbol('privateInternals');\n/**\n * Mixes in an attached `ElementInternals` instance.\n *\n * This mixin is only needed when other shared code needs access to a\n * component's `ElementInternals`, such as form-associated mixins.\n *\n * @param base The class to mix functionality into.\n * @return The provided class with `WithElementInternals` mixed in.\n */\nexport function mixinElementInternals(base) {\n class WithElementInternalsElement extends base {\n get [internals]() {\n // Create internals in getter so that it can be used in methods called on\n // construction in `ReactiveElement`, such as `requestUpdate()`.\n if (!this[privateInternals]) {\n // Cast needed for closure\n this[privateInternals] = this.attachInternals();\n }\n return this[privateInternals];\n }\n }\n return WithElementInternalsElement;\n}\n//# sourceMappingURL=element-internals.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { isServer } from 'lit';\nimport { internals } from './element-internals.js';\n/**\n * A symbol property used to create a constraint validation `Validator`.\n * Required for all `mixinConstraintValidation()` elements.\n */\nexport const createValidator = Symbol('createValidator');\n/**\n * A symbol property used to return an anchor for constraint validation popups.\n * Required for all `mixinConstraintValidation()` elements.\n */\nexport const getValidityAnchor = Symbol('getValidityAnchor');\n// Private symbol members, used to avoid name clashing.\nconst privateValidator = Symbol('privateValidator');\nconst privateSyncValidity = Symbol('privateSyncValidity');\nconst privateCustomValidationMessage = Symbol('privateCustomValidationMessage');\n/**\n * Mixes in constraint validation APIs for an element.\n *\n * See https://developer.mozilla.org/en-US/docs/Web/HTML/Constraint_validation\n * for more details.\n *\n * Implementations must provide a validator to cache and compute its validity,\n * along with a shadow root element to anchor validation popups to.\n *\n * @example\n * ```ts\n * const baseClass = mixinConstraintValidation(\n * mixinFormAssociated(mixinElementInternals(LitElement))\n * );\n *\n * class MyCheckbox extends baseClass {\n * \\@property({type: Boolean}) checked = false;\n * \\@property({type: Boolean}) required = false;\n *\n * [createValidator]() {\n * return new CheckboxValidator(() => this);\n * }\n *\n * [getValidityAnchor]() {\n * return this.renderRoot.querySelector('.root');\n * }\n * }\n * ```\n *\n * @param base The class to mix functionality into.\n * @return The provided class with `ConstraintValidation` mixed in.\n */\nexport function mixinConstraintValidation(base) {\n var _a;\n class ConstraintValidationElement extends base {\n constructor() {\n super(...arguments);\n /**\n * Needed for Safari, see https://bugs.webkit.org/show_bug.cgi?id=261432\n * Replace with this[internals].validity.customError when resolved.\n */\n this[_a] = '';\n }\n get validity() {\n this[privateSyncValidity]();\n return this[internals].validity;\n }\n get validationMessage() {\n this[privateSyncValidity]();\n return this[internals].validationMessage;\n }\n get willValidate() {\n this[privateSyncValidity]();\n return this[internals].willValidate;\n }\n checkValidity() {\n this[privateSyncValidity]();\n return this[internals].checkValidity();\n }\n reportValidity() {\n this[privateSyncValidity]();\n return this[internals].reportValidity();\n }\n setCustomValidity(error) {\n this[privateCustomValidationMessage] = error;\n this[privateSyncValidity]();\n }\n requestUpdate(name, oldValue, options) {\n super.requestUpdate(name, oldValue, options);\n this[privateSyncValidity]();\n }\n firstUpdated(changed) {\n super.firstUpdated(changed);\n // Sync the validity again when the element first renders, since the\n // validity anchor is now available.\n //\n // Elements that `delegatesFocus: true` to an `<input>` will throw an\n // error in Chrome and Safari when a form tries to submit or call\n // `form.reportValidity()`:\n // \"An invalid form control with name='' is not focusable\"\n //\n // The validity anchor MUST be provided in `internals.setValidity()` and\n // MUST be the `<input>` element rendered.\n //\n // See https://lit.dev/playground/#gist=6c26e418e0010f7a5aac15005cde8bde\n // for a reproduction.\n this[privateSyncValidity]();\n }\n [(_a = privateCustomValidationMessage, privateSyncValidity)]() {\n if (isServer) {\n return;\n }\n if (!this[privateValidator]) {\n this[privateValidator] = this[createValidator]();\n }\n const { validity, validationMessage: nonCustomValidationMessage } = this[privateValidator].getValidity();\n const customError = !!this[privateCustomValidationMessage];\n const validationMessage = this[privateCustomValidationMessage] || nonCustomValidationMessage;\n this[internals].setValidity({ ...validity, customError }, validationMessage, this[getValidityAnchor]() ?? undefined);\n }\n [createValidator]() {\n throw new Error('Implement [createValidator]');\n }\n [getValidityAnchor]() {\n throw new Error('Implement [getValidityAnchor]');\n }\n }\n return ConstraintValidationElement;\n}\n//# sourceMappingURL=constraint-validation.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { property } from 'lit/decorators.js';\nimport { internals } from './element-internals.js';\n/**\n * A symbol property to retrieve the form value for an element.\n */\nexport const getFormValue = Symbol('getFormValue');\n/**\n * A symbol property to retrieve the form state for an element.\n */\nexport const getFormState = Symbol('getFormState');\n/**\n * Mixes in form-associated behavior for a class. This allows an element to add\n * values to `<form>` elements.\n *\n * Implementing classes should provide a `[formValue]` to return the current\n * value of the element, as well as reset and restore callbacks.\n *\n * @example\n * ```ts\n * const base = mixinFormAssociated(mixinElementInternals(LitElement));\n *\n * class MyControl extends base {\n * \\@property()\n * value = '';\n *\n * override [getFormValue]() {\n * return this.value;\n * }\n *\n * override formResetCallback() {\n * const defaultValue = this.getAttribute('value');\n * this.value = defaultValue;\n * }\n *\n * override formStateRestoreCallback(state: string) {\n * this.value = state;\n * }\n * }\n * ```\n *\n * Elements may optionally provide a `[formState]` if their values do not\n * represent the state of the component.\n *\n * @example\n * ```ts\n * const base = mixinFormAssociated(mixinElementInternals(LitElement));\n *\n * class MyCheckbox extends base {\n * \\@property()\n * value = 'on';\n *\n * \\@property({type: Boolean})\n * checked = false;\n *\n * override [getFormValue]() {\n * return this.checked ? this.value : null;\n * }\n *\n * override [getFormState]() {\n * return String(this.checked);\n * }\n *\n * override formResetCallback() {\n * const defaultValue = this.hasAttribute('checked');\n * this.checked = defaultValue;\n * }\n *\n * override formStateRestoreCallback(state: string) {\n * this.checked = Boolean(state);\n * }\n * }\n * ```\n *\n * IMPORTANT: Requires declares for lit-analyzer\n * @example\n * ```ts\n * const base = mixinFormAssociated(mixinElementInternals(LitElement));\n * class MyControl extends base {\n * // Writable mixin properties for lit-html binding, needed for lit-analyzer\n * declare disabled: boolean;\n * declare name: string;\n * }\n * ```\n *\n * @param base The class to mix functionality into. The base class must use\n * `mixinElementInternals()`.\n * @return The provided class with `FormAssociated` mixed in.\n */\nexport function mixinFormAssociated(base) {\n class FormAssociatedElement extends base {\n get form() {\n return this[internals].form;\n }\n get labels() {\n return this[internals].labels;\n }\n // Use @property for the `name` and `disabled` properties to add them to the\n // `observedAttributes` array and trigger `attributeChangedCallback()`.\n //\n // We don't use Lit's default getter/setter (`noAccessor: true`) because\n // the attributes need to be updated synchronously to work with synchronous\n // form APIs, and Lit updates attributes async by default.\n get name() {\n return this.getAttribute('name') ?? '';\n }\n set name(name) {\n // Note: setting name to null or empty does not remove the attribute.\n this.setAttribute('name', name);\n // We don't need to call `requestUpdate()` since it's called synchronously\n // in `attributeChangedCallback()`.\n }\n get disabled() {\n return this.hasAttribute('disabled');\n }\n set disabled(disabled) {\n this.toggleAttribute('disabled', disabled);\n // We don't need to call `requestUpdate()` since it's called synchronously\n // in `attributeChangedCallback()`.\n }\n attributeChangedCallback(name, old, value) {\n // Manually `requestUpdate()` for `name` and `disabled` when their\n // attribute or property changes.\n // The properties update their attributes, so this callback is invoked\n // immediately when the properties are set. We call `requestUpdate()` here\n // instead of letting Lit set the properties from the attribute change.\n // That would cause the properties to re-set the attribute and invoke this\n // callback again in a loop. This leads to stale state when Lit tries to\n // determine if a property changed or not.\n if (name === 'name' || name === 'disabled') {\n // Disabled's value is only false if the attribute is missing and null.\n const oldValue = name === 'disabled' ? old !== null : old;\n // Trigger a lit update when the attribute changes.\n this.requestUpdate(name, oldValue);\n return;\n }\n super.attributeChangedCallback(name, old, value);\n }\n requestUpdate(name, oldValue, options) {\n super.requestUpdate(name, oldValue, options);\n // If any properties change, update the form value, which may have changed\n // as well.\n // Update the form value synchronously in `requestUpdate()` rather than\n // `update()` or `updated()`, which are async. This is necessary to ensure\n // that form data is updated in time for synchronous event listeners.\n this[internals].setFormValue(this[getFormValue](), this[getFormState]());\n }\n [getFormValue]() {\n // Closure does not allow abstract symbol members, so a default\n // implementation is needed.\n throw new Error('Implement [getFormValue]');\n }\n [getFormState]() {\n return this[getFormValue]();\n }\n formDisabledCallback(disabled) {\n this.disabled = disabled;\n }\n }\n /** @nocollapse */\n FormAssociatedElement.formAssociated = true;\n __decorate([\n property({ noAccessor: true })\n ], FormAssociatedElement.prototype, \"name\", null);\n __decorate([\n property({ type: Boolean, noAccessor: true })\n ], FormAssociatedElement.prototype, \"disabled\", null);\n return FormAssociatedElement;\n}\n//# sourceMappingURL=form-associated.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * A class that computes and caches `ValidityStateFlags` for a component with\n * a given `State` interface.\n *\n * Cached performance before computing validity is important since constraint\n * validation must be checked frequently and synchronously when properties\n * change.\n *\n * @template State The expected interface of properties relevant to constraint\n * validation.\n */\nexport class Validator {\n /**\n * Creates a new validator.\n *\n * @param getCurrentState A callback that returns the current state of\n * constraint validation-related properties.\n */\n constructor(getCurrentState) {\n this.getCurrentState = getCurrentState;\n /**\n * The current validity state and message. This is cached and returns if\n * constraint validation state does not change.\n */\n this.currentValidity = {\n validity: {},\n validationMessage: '',\n };\n }\n /**\n * Returns the current `ValidityStateFlags` and validation message for the\n * validator.\n *\n * If the constraint validation state has not changed, this will return a\n * cached result. This is important since `getValidity()` can be called\n * frequently in response to synchronous property changes.\n *\n * @return The current validity and validation message.\n */\n getValidity() {\n const state = this.getCurrentState();\n const hasStateChanged = !this.prevState || !this.equals(this.prevState, state);\n if (!hasStateChanged) {\n return this.currentValidity;\n }\n const { validity, validationMessage } = this.computeValidity(state);\n this.prevState = this.copy(state);\n this.currentValidity = {\n validationMessage,\n validity: {\n // Change any `ValidityState` instances into `ValidityStateFlags` since\n // `ValidityState` cannot be easily `{...spread}`.\n badInput: validity.badInput,\n customError: validity.customError,\n patternMismatch: validity.patternMismatch,\n rangeOverflow: validity.rangeOverflow,\n rangeUnderflow: validity.rangeUnderflow,\n stepMismatch: validity.stepMismatch,\n tooLong: validity.tooLong,\n tooShort: validity.tooShort,\n typeMismatch: validity.typeMismatch,\n valueMissing: validity.valueMissing,\n },\n };\n return this.currentValidity;\n }\n}\n//# sourceMappingURL=validator.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { Validator } from './validator.js';\n/**\n * A validator that provides constraint validation that emulates\n * `<input type=\"checkbox\">` validation.\n */\nexport class CheckboxValidator extends Validator {\n computeValidity(state) {\n if (!this.checkboxControl) {\n // Lazily create the platform input\n this.checkboxControl = document.createElement('input');\n this.checkboxControl.type = 'checkbox';\n }\n this.checkboxControl.checked = state.checked;\n this.checkboxControl.required = state.required;\n return {\n validity: this.checkboxControl.validity,\n validationMessage: this.checkboxControl.validationMessage,\n };\n }\n equals(prev, next) {\n return prev.checked === next.checked && prev.required === next.required;\n }\n copy({ checked, required }) {\n return { checked, required };\n }\n}\n//# sourceMappingURL=checkbox-validator.js.map","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport '../../focus/md-focus-ring.js';\nimport '../../ripple/ripple.js';\nimport { html, isServer, LitElement, nothing } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { mixinDelegatesAria } from '../../internal/aria/delegate.js';\nimport { dispatchActivationClick, isActivationClick, } from '../../internal/events/form-label-activation.js';\nimport { redispatchEvent } from '../../internal/events/redispatch-event.js';\nimport { createValidator, getValidityAnchor, mixinConstraintValidation, } from '../../labs/behaviors/constraint-validation.js';\nimport { mixinElementInternals } from '../../labs/behaviors/element-internals.js';\nimport { getFormState, getFormValue, mixinFormAssociated, } from '../../labs/behaviors/form-associated.js';\nimport { CheckboxValidator } from '../../labs/behaviors/validators/checkbox-validator.js';\n// Separate variable needed for closure.\nconst checkboxBaseClass = mixinDelegatesAria(mixinConstraintValidation(mixinFormAssociated(mixinElementInternals(LitElement))));\n/**\n * A checkbox component.\n *\n *\n * @fires change {Event} The native `change` event on\n * [`<input>`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/change_event)\n * --bubbles\n * @fires input {InputEvent} The native `input` event on\n * [`<input>`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/input_event)\n * --bubbles --composed\n */\nexport class Checkbox extends checkboxBaseClass {\n constructor() {\n super();\n /**\n * Whether or not the checkbox is selected.\n */\n this.checked = false;\n /**\n * Whether or not the checkbox is indeterminate.\n *\n * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#indeterminate_state_checkboxes\n */\n this.indeterminate = false;\n /**\n * When true, require the checkbox to be selected when participating in\n * form submission.\n *\n * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#validation\n */\n this.required = false;\n /**\n * The value of the checkbox that is submitted with a form when selected.\n *\n * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#value\n */\n this.value = 'on';\n this.prevChecked = false;\n this.prevDisabled = false;\n this.prevIndeterminate = false;\n if (!isServer) {\n this.addEventListener('click', (event) => {\n if (!isActivationClick(event) || !this.input) {\n return;\n }\n this.focus();\n dispatchActivationClick(this.input);\n });\n }\n }\n update(changed) {\n if (changed.has('checked') ||\n changed.has('disabled') ||\n changed.has('indeterminate')) {\n this.prevChecked = changed.get('checked') ?? this.checked;\n this.prevDisabled = changed.get('disabled') ?? this.disabled;\n this.prevIndeterminate =\n changed.get('indeterminate') ?? this.indeterminate;\n }\n super.update(changed);\n }\n render() {\n const prevNone = !this.prevChecked && !this.prevIndeterminate;\n const prevChecked = this.prevChecked && !this.prevIndeterminate;\n const prevIndeterminate = this.prevIndeterminate;\n const isChecked = this.checked && !this.indeterminate;\n const isIndeterminate = this.indeterminate;\n const containerClasses = classMap({\n 'disabled': this.disabled,\n 'selected': isChecked || isIndeterminate,\n 'unselected': !isChecked && !isIndeterminate,\n 'checked': isChecked,\n 'indeterminate': isIndeterminate,\n 'prev-unselected': prevNone,\n 'prev-checked': prevChecked,\n 'prev-indeterminate': prevIndeterminate,\n 'prev-disabled': this.prevDisabled,\n });\n // Needed for closure conformance\n const { ariaLabel, ariaInvalid } = this;\n // Note: <input> needs to be rendered before the <svg> for\n // form.reportValidity() to work in Chrome.\n return html `\n <div class=\"container ${containerClasses}\">\n <input\n type=\"checkbox\"\n id=\"input\"\n aria-checked=${isIndeterminate ? 'mixed' : nothing}\n aria-label=${ariaLabel || nothing}\n aria-invalid=${ariaInvalid || nothing}\n ?disabled=${this.disabled}\n ?required=${this.required}\n .indeterminate=${this.indeterminate}\n .checked=${this.checked}\n @input=${this.handleInput}\n @change=${this.handleChange} />\n\n <div class=\"outline\"></div>\n <div class=\"background\"></div>\n <md-focus-ring part=\"focus-ring\" for=\"input\"></md-focus-ring>\n <md-ripple for=\"input\" ?disabled=${this.disabled}></md-ripple>\n <svg class=\"icon\" viewBox=\"0 0 18 18\" aria-hidden=\"true\">\n <rect class=\"mark short\" />\n <rect class=\"mark long\" />\n </svg>\n </div>\n `;\n }\n handleInput(event) {\n const target = event.target;\n this.checked = target.checked;\n this.indeterminate = target.indeterminate;\n // <input> 'input' event bubbles and is composed, don't re-dispatch it.\n }\n handleChange(event) {\n // <input> 'change' event is not composed, re-dispatch it.\n redispatchEvent(this, event);\n }\n [getFormValue]() {\n if (!this.checked || this.indeterminate) {\n return null;\n }\n return this.value;\n }\n [getFormState]() {\n return String(this.checked);\n }\n formResetCallback() {\n // The checked property does not reflect, so the original attribute set by\n // the user is used to determine the default value.\n this.checked = this.hasAttribute('checked');\n }\n formStateRestoreCallback(state) {\n this.checked = state === 'true';\n }\n [createValidator]() {\n return new CheckboxValidator(() => this);\n }\n [getValidityAnchor]() {\n return this.input;\n }\n}\n/** @nocollapse */\nCheckbox.shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n};\n__decorate([\n property({ type: Boolean })\n], Checkbox.prototype, \"checked\", void 0);\n__decorate([\n property({ type: Boolean })\n], Checkbox.prototype, \"indeterminate\", void 0);\n__decorate([\n property({ type: Boolean })\n], Checkbox.prototype, \"required\", void 0);\n__decorate([\n property()\n], Checkbox.prototype, \"value\", void 0);\n__decorate([\n state()\n], Checkbox.prototype, \"prevChecked\", void 0);\n__decorate([\n state()\n], Checkbox.prototype, \"prevDisabled\", void 0);\n__decorate([\n state()\n], Checkbox.prototype, \"prevIndeterminate\", void 0);\n__decorate([\n query('input')\n], Checkbox.prototype, \"input\", void 0);\n//# sourceMappingURL=checkbox.js.map","/**\n * @license\n * Copyright 2024 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./checkbox/internal/checkbox-styles.css.\nimport { css } from 'lit';\nexport const styles = css `:host{border-start-start-radius:var(--md-checkbox-container-shape-start-start, var(--md-checkbox-container-shape, 2px));border-start-end-radius:var(--md-checkbox-container-shape-start-end, var(--md-checkbox-container-shape, 2px));border-end-end-radius:var(--md-checkbox-container-shape-end-end, var(--md-checkbox-container-shape, 2px));border-end-start-radius:var(--md-checkbox-container-shape-end-start, var(--md-checkbox-container-shape, 2px));display:inline-flex;height:var(--md-checkbox-container-size, 18px);position:relative;vertical-align:top;width:var(--md-checkbox-container-size, 18px);-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer}:host([disabled]){cursor:default}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--md-checkbox-container-size, 18px))/2)}md-focus-ring{height:44px;inset:unset;width:44px}input{appearance:none;height:48px;margin:0;opacity:0;outline:none;position:absolute;width:48px;z-index:1;cursor:inherit}:host([touch-target=none]) input{height:100%;width:100%}.container{border-radius:inherit;display:flex;height:100%;place-content:center;place-items:center;position:relative;width:100%}.outline,.background,.icon{inset:0;position:absolute}.outline,.background{border-radius:inherit}.outline{border-color:var(--md-checkbox-outline-color, var(--md-sys-color-on-surface-variant, #49454f));border-style:solid;border-width:var(--md-checkbox-outline-width, 2px);box-sizing:border-box}.background{background-color:var(--md-checkbox-selected-container-color, var(--md-sys-color-primary, #6750a4))}.background,.icon{opacity:0;transition-duration:150ms,50ms;transition-property:transform,opacity;transition-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15),linear;transform:scale(0.6)}:where(.selected) :is(.background,.icon){opacity:1;transition-duration:350ms,50ms;transition-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1),linear;transform:scale(1)}md-ripple{border-radius:var(--md-checkbox-state-layer-shape, var(--md-sys-shape-corner-full, 9999px));height:var(--md-checkbox-state-layer-size, 40px);inset:unset;width:var(--md-checkbox-state-layer-size, 40px);--md-ripple-hover-color: var(--md-checkbox-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-checkbox-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-checkbox-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-pressed-opacity: var(--md-checkbox-pressed-state-layer-opacity, 0.12)}.selected md-ripple{--md-ripple-hover-color: var(--md-checkbox-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-hover-opacity: var(--md-checkbox-selected-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-checkbox-selected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-checkbox-selected-pressed-state-layer-opacity, 0.12)}.icon{fill:var(--md-checkbox-selected-icon-color, var(--md-sys-color-on-primary, #fff));height:var(--md-checkbox-icon-size, 18px);width:var(--md-checkbox-icon-size, 18px)}.mark.short{height:2px;transition-property:transform,height;width:2px}.mark.long{height:2px;transition-property:transform,width;width:10px}.mark{animation-duration:150ms;animation-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15);transition-duration:150ms;transition-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15)}.selected .mark{animation-duration:350ms;animation-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1);transition-duration:350ms;transition-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1)}.checked .mark,.prev-checked.unselected .mark{transform:scaleY(-1) translate(7px, -14px) rotate(45deg)}.checked .mark.short,.prev-checked.unselected .mark.short{height:5.6568542495px}.checked .mark.long,.prev-checked.unselected .mark.long{width:11.313708499px}.indeterminate .mark,.prev-indeterminate.unselected .mark{transform:scaleY(-1) translate(4px, -10px) rotate(0deg)}.prev-unselected .mark{transition-property:none}.prev-unselected.checked .mark.long{animation-name:prev-unselected-to-checked}@keyframes prev-unselected-to-checked{from{width:0}}:where(:hover) .outline{border-color:var(--md-checkbox-hover-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-hover-outline-width, 2px)}:where(:hover) .background{background:var(--md-checkbox-selected-hover-container-color, var(--md-sys-color-primary, #6750a4))}:where(:hover) .icon{fill:var(--md-checkbox-selected-hover-icon-color, var(--md-sys-color-on-primary, #fff))}:where(:focus-within) .outline{border-color:var(--md-checkbox-focus-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-focus-outline-width, 2px)}:where(:focus-within) .background{background:var(--md-checkbox-selected-focus-container-color, var(--md-sys-color-primary, #6750a4))}:where(:focus-within) .icon{fill:var(--md-checkbox-selected-focus-icon-color, var(--md-sys-color-on-primary, #fff))}:where(:active) .outline{border-color:var(--md-checkbox-pressed-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-pressed-outline-width, 2px)}:where(:active) .background{background:var(--md-checkbox-selected-pressed-container-color, var(--md-sys-color-primary, #6750a4))}:where(:active) .icon{fill:var(--md-checkbox-selected-pressed-icon-color, var(--md-sys-color-on-primary, #fff))}:where(.disabled,.prev-disabled) :is(.background,.icon,.mark){animation-duration:0s;transition-duration:0s}:where(.disabled) .outline{border-color:var(--md-checkbox-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-disabled-outline-width, 2px);opacity:var(--md-checkbox-disabled-container-opacity, 0.38)}:where(.selected.disabled) .outline{visibility:hidden}:where(.selected.disabled) .background{background:var(--md-checkbox-selected-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-checkbox-selected-disabled-container-opacity, 0.38)}:where(.disabled) .icon{fill:var(--md-checkbox-selected-disabled-icon-color, var(--md-sys-color-surface, #fef7ff))}@media(forced-colors: active){.background{background-color:CanvasText}.selected.disabled .background{background-color:GrayText;opacity:1}.outline{border-color:CanvasText}.disabled .outline{border-color:GrayText;opacity:1}.icon{fill:Canvas}}\n`;\n//# sourceMappingURL=checkbox-styles.js.map","/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { customElement } from 'lit/decorators.js';\nimport { Checkbox } from './internal/checkbox.js';\nimport { styles } from './internal/checkbox-styles.js';\n/**\n * @summary Checkboxes allow users to select one or more items from a set.\n * Checkboxes can turn an option on or off.\n *\n * @description\n * Use checkboxes to:\n * - Select one or more options from a list\n * - Present a list containing sub-selections\n * - Turn an item on or off in a desktop environment\n *\n * @final\n * @suppress {visibility}\n */\nlet MdCheckbox = class MdCheckbox extends Checkbox {\n};\nMdCheckbox.styles = [styles];\nMdCheckbox = __decorate([\n customElement('md-checkbox')\n], MdCheckbox);\nexport { MdCheckbox };\n//# sourceMappingURL=checkbox.js.map","import '@material/web/checkbox/checkbox.js'\nimport { html, LitElement, type PropertyValues } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { when } from 'lit/directives/when.js'\nimport { SchmancyFormField } from '@mixins/index'\n\nexport type schmancyCheckBoxChangeEvent = CustomEvent<{\n\tvalue: boolean\n}>\n\n/**\n * @element schmancy-checkbox\n * @slot - The label for the checkbox.\n * @fires change - Event fired when the checkbox value changes.\n */\n@customElement('schmancy-checkbox')\nclass SchmancyCheckboxElement extends SchmancyFormField() {\n\t// Inner <md-checkbox> is the focusable surface; route host focus to it.\n\tprotected static shadowRootOptions = {\n\t\t...LitElement.shadowRootOptions,\n\t\tdelegatesFocus: true,\n\t}\n\n\t// FACE wiring (formAssociated, internals, attachInternals), `name`,\n\t// `disabled`, `required`, `id`, `label`, `error`, `validationMessage`,\n\t// `validateOn`, touched/dirty/submitted, markTouched/markSubmitted,\n\t// FIELD_CONNECT_EVENT dispatch — all from the mixin.\n\n\t/**\n\t * Boolean checked state. Test contract: `cb.value = true` flips the state.\n\t * The FormData *string* is read from `true-value` attribute (or `'on'`\n\t * default) — kept separate from `value` to keep the boolean-state ergonomic.\n\t */\n\t@property({ type: Boolean, reflect: true })\n\toverride value: boolean = false\n\n\t/** Alias for `value` for read-side ergonomics. */\n\t@property({ type: Boolean })\n\tget checked(): boolean {\n\t\treturn this.value\n\t}\n\tset checked(val: boolean) {\n\t\tthis.value = val\n\t}\n\n\t/**\n\t * M3-aligned sizes: 24dp (xxs) → 32dp (xs) → 40dp (sm) → 48dp (md) → 56dp (lg).\n\t */\n\t@property({ type: String })\n\tsize: 'xxs' | 'xs' | 'sm' | 'md' | 'lg' = 'md'\n\n\tprivate get _trueValue(): string {\n\t\treturn this.getAttribute('true-value') ?? 'on'\n\t}\n\n\toverride willUpdate(changed: PropertyValues): void {\n\t\tsuper.willUpdate(changed)\n\t\tif (changed.has('value') || changed.has('name')) {\n\t\t\tthis.internals?.setFormValue(this.value ? this._trueValue : null)\n\t\t\tif (this.value) this.internals?.states.add('checked')\n\t\t\telse this.internals?.states.delete('checked')\n\t\t\tthis.checkValidity()\n\t\t}\n\t\tif (changed.has('required') || changed.has('disabled')) {\n\t\t\tthis.checkValidity()\n\t\t}\n\t}\n\n\t/** Checkbox validity is `checked === true` when required. */\n\toverride checkValidity(): boolean {\n\t\tif (this.disabled) {\n\t\t\tthis.internals?.setValidity({})\n\t\t\treturn true\n\t\t}\n\t\tconst isValid = !this.required || this.value === true\n\t\tconst message = isValid ? '' : 'Please check this box if you want to proceed.'\n\n\t\tthis.internals?.setValidity(\n\t\t\tisValid ? {} : { valueMissing: true },\n\t\t\tisValid ? undefined : message,\n\t\t)\n\n\t\tif (this._shouldShowError()) {\n\t\t\tthis.error = !isValid\n\t\t\tthis.validationMessage = message\n\t\t}\n\t\treturn isValid\n\t}\n\n\t/** Emit only when checked. */\n\toverride toFormEntries(): Array<[string, FormDataEntryValue]> {\n\t\tif (!this.name || this.disabled || !this.value) return []\n\t\treturn [[this.name, this._trueValue]]\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<label class=\"grid grid-flow-col items-center space-x-2 w-fit\">\n\t\t\t\t<md-checkbox\n\t\t\t\t\t.required=${this.required}\n\t\t\t\t\t.disabled=${this.disabled}\n\t\t\t\t\t?checked=${this.value === true}\n\t\t\t\t\t@change=${(e: Event) => {\n\t\t\t\t\t\tthis.value = (e.target as HTMLInputElement).checked\n\t\t\t\t\t\tthis.markTouched()\n\t\t\t\t\t\tthis.emitChange({ value: this.value })\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t</md-checkbox>\n\t\t\t\t${when(\n\t\t\t\t\tthis.label,\n\t\t\t\t\t() => html`<span>${this.label}</span>`,\n\t\t\t\t\t() => html`<slot></slot>`,\n\t\t\t\t)}\n\t\t\t</label>\n\t\t`\n\t}\n}\n\nexport { SchmancyCheckboxElement as SchmancyCheckbox }\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-checkbox': SchmancyCheckboxElement\n\t}\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],"mappings":"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"}
1
+ {"version":3,"file":"checkbox-By4fFmjt.cjs","names":["isServer","EVENTS","LitElement","isServer","styles","styles","isServer","LitElement","styles","styles","isServer","isServer","LitElement","isServer","nothing"],"sources":["../node_modules/tslib/tslib.es6.mjs","../node_modules/@material/web/internal/controller/attachable-controller.js","../node_modules/@material/web/focus/internal/focus-ring.js","../node_modules/@material/web/focus/internal/focus-ring-styles.js","../node_modules/@material/web/focus/md-focus-ring.js","../node_modules/@material/web/internal/motion/animation.js","../node_modules/@material/web/ripple/internal/ripple.js","../node_modules/@material/web/ripple/internal/ripple-styles.js","../node_modules/@material/web/ripple/ripple.js","../node_modules/@material/web/internal/aria/aria.js","../node_modules/@material/web/internal/aria/delegate.js","../node_modules/@material/web/internal/events/form-label-activation.js","../node_modules/@material/web/internal/events/redispatch-event.js","../node_modules/@material/web/labs/behaviors/element-internals.js","../node_modules/@material/web/labs/behaviors/constraint-validation.js","../node_modules/@material/web/labs/behaviors/form-associated.js","../node_modules/@material/web/labs/behaviors/validators/validator.js","../node_modules/@material/web/labs/behaviors/validators/checkbox-validator.js","../node_modules/@material/web/checkbox/internal/checkbox.js","../node_modules/@material/web/checkbox/internal/checkbox-styles.js","../node_modules/@material/web/checkbox/checkbox.js","../src/form/fields/checkbox/checkbox.ts"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nvar ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\n });\n }\n return path;\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __esDecorate,\n __runInitializers,\n __propKey,\n __setFunctionName,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n __rewriteRelativeImportExtension,\n};\n","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { isServer } from 'lit';\n/**\n * A key to retrieve an `Attachable` element's `AttachableController` from a\n * global `MutationObserver`.\n */\nconst ATTACHABLE_CONTROLLER = Symbol('attachableController');\nlet FOR_ATTRIBUTE_OBSERVER;\nif (!isServer) {\n /**\n * A global `MutationObserver` that reacts to `for` attribute changes on\n * `Attachable` elements. If the `for` attribute changes, the controller will\n * re-attach to the new referenced element.\n */\n FOR_ATTRIBUTE_OBSERVER = new MutationObserver((records) => {\n for (const record of records) {\n // When a control's `for` attribute changes, inform its\n // `AttachableController` to update to a new control.\n record.target[ATTACHABLE_CONTROLLER]?.hostConnected();\n }\n });\n}\n/**\n * A controller that provides an implementation for `Attachable` elements.\n *\n * @example\n * ```ts\n * class MyElement extends LitElement implements Attachable {\n * get control() { return this.attachableController.control; }\n *\n * private readonly attachableController = new AttachableController(\n * this,\n * (previousControl, newControl) => {\n * previousControl?.removeEventListener('click', this.handleClick);\n * newControl?.addEventListener('click', this.handleClick);\n * }\n * );\n *\n * // Implement remaining `Attachable` properties/methods that call the\n * // controller's properties/methods.\n * }\n * ```\n */\nexport class AttachableController {\n get htmlFor() {\n return this.host.getAttribute('for');\n }\n set htmlFor(htmlFor) {\n if (htmlFor === null) {\n this.host.removeAttribute('for');\n }\n else {\n this.host.setAttribute('for', htmlFor);\n }\n }\n get control() {\n if (this.host.hasAttribute('for')) {\n if (!this.htmlFor || !this.host.isConnected) {\n return null;\n }\n return this.host.getRootNode().querySelector(`#${this.htmlFor}`);\n }\n return this.currentControl || this.host.parentElement;\n }\n set control(control) {\n if (control) {\n this.attach(control);\n }\n else {\n this.detach();\n }\n }\n /**\n * Creates a new controller for an `Attachable` element.\n *\n * @param host The `Attachable` element.\n * @param onControlChange A callback with two parameters for the previous and\n * next control. An `Attachable` element may perform setup or teardown\n * logic whenever the control changes.\n */\n constructor(host, onControlChange) {\n this.host = host;\n this.onControlChange = onControlChange;\n this.currentControl = null;\n host.addController(this);\n host[ATTACHABLE_CONTROLLER] = this;\n FOR_ATTRIBUTE_OBSERVER?.observe(host, { attributeFilter: ['for'] });\n }\n attach(control) {\n if (control === this.currentControl) {\n return;\n }\n this.setCurrentControl(control);\n // When imperatively attaching, remove the `for` attribute so\n // that the attached control is used instead of a referenced one.\n this.host.removeAttribute('for');\n }\n detach() {\n this.setCurrentControl(null);\n // When imperatively detaching, add an empty `for=\"\"` attribute. This will\n // ensure the control is `null` rather than the `parentElement`.\n this.host.setAttribute('for', '');\n }\n /** @private */\n hostConnected() {\n this.setCurrentControl(this.control);\n }\n /** @private */\n hostDisconnected() {\n this.setCurrentControl(null);\n }\n setCurrentControl(control) {\n this.onControlChange(this.currentControl, control);\n this.currentControl = control;\n }\n}\n//# sourceMappingURL=attachable-controller.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { isServer, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { AttachableController, } from '../../internal/controller/attachable-controller.js';\n/**\n * Events that the focus ring listens to.\n */\nconst EVENTS = ['focusin', 'focusout', 'pointerdown'];\n/**\n * A focus ring component.\n *\n * @fires visibility-changed {Event} Fired whenever `visible` changes.\n */\nexport class FocusRing extends LitElement {\n constructor() {\n super(...arguments);\n /**\n * Makes the focus ring visible.\n */\n this.visible = false;\n /**\n * Makes the focus ring animate inwards instead of outwards.\n */\n this.inward = false;\n this.attachableController = new AttachableController(this, this.onControlChange.bind(this));\n }\n get htmlFor() {\n return this.attachableController.htmlFor;\n }\n set htmlFor(htmlFor) {\n this.attachableController.htmlFor = htmlFor;\n }\n get control() {\n return this.attachableController.control;\n }\n set control(control) {\n this.attachableController.control = control;\n }\n attach(control) {\n this.attachableController.attach(control);\n }\n detach() {\n this.attachableController.detach();\n }\n connectedCallback() {\n super.connectedCallback();\n // Needed for VoiceOver, which will create a \"group\" if the element is a\n // sibling to other content.\n this.setAttribute('aria-hidden', 'true');\n }\n /** @private */\n handleEvent(event) {\n if (event[HANDLED_BY_FOCUS_RING]) {\n // This ensures the focus ring does not activate when multiple focus rings\n // are used within a single component.\n return;\n }\n switch (event.type) {\n default:\n return;\n case 'focusin':\n this.visible = this.control?.matches(':focus-visible') ?? false;\n break;\n case 'focusout':\n case 'pointerdown':\n this.visible = false;\n break;\n }\n event[HANDLED_BY_FOCUS_RING] = true;\n }\n onControlChange(prev, next) {\n if (isServer)\n return;\n for (const event of EVENTS) {\n prev?.removeEventListener(event, this);\n next?.addEventListener(event, this);\n }\n }\n update(changed) {\n if (changed.has('visible')) {\n // This logic can be removed once the `:has` selector has been introduced\n // to Firefox. This is necessary to allow correct submenu styles.\n this.dispatchEvent(new Event('visibility-changed'));\n }\n super.update(changed);\n }\n}\n__decorate([\n property({ type: Boolean, reflect: true })\n], FocusRing.prototype, \"visible\", void 0);\n__decorate([\n property({ type: Boolean, reflect: true })\n], FocusRing.prototype, \"inward\", void 0);\nconst HANDLED_BY_FOCUS_RING = Symbol('handledByFocusRing');\n//# sourceMappingURL=focus-ring.js.map","/**\n * @license\n * Copyright 2024 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./focus/internal/focus-ring-styles.css.\nimport { css } from 'lit';\nexport const styles = css `:host{animation-delay:0s,calc(var(--md-focus-ring-duration, 600ms)*.25);animation-duration:calc(var(--md-focus-ring-duration, 600ms)*.25),calc(var(--md-focus-ring-duration, 600ms)*.75);animation-timing-function:cubic-bezier(0.2, 0, 0, 1);box-sizing:border-box;color:var(--md-focus-ring-color, var(--md-sys-color-secondary, #625b71));display:none;pointer-events:none;position:absolute}:host([visible]){display:flex}:host(:not([inward])){animation-name:outward-grow,outward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) + var(--md-focus-ring-outward-offset, 2px));inset:calc(-1*var(--md-focus-ring-outward-offset, 2px));outline:var(--md-focus-ring-width, 3px) solid currentColor}:host([inward]){animation-name:inward-grow,inward-shrink;border-end-end-radius:calc(var(--md-focus-ring-shape-end-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-end-start-radius:calc(var(--md-focus-ring-shape-end-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-end-radius:calc(var(--md-focus-ring-shape-start-end, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border-start-start-radius:calc(var(--md-focus-ring-shape-start-start, var(--md-focus-ring-shape, var(--md-sys-shape-corner-full, 9999px))) - var(--md-focus-ring-inward-offset, 0px));border:var(--md-focus-ring-width, 3px) solid currentColor;inset:var(--md-focus-ring-inward-offset, 0px)}@keyframes outward-grow{from{outline-width:0}to{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes outward-shrink{from{outline-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-grow{from{border-width:0}to{border-width:var(--md-focus-ring-active-width, 8px)}}@keyframes inward-shrink{from{border-width:var(--md-focus-ring-active-width, 8px)}}@media(prefers-reduced-motion){:host{animation:none}}\n`;\n//# sourceMappingURL=focus-ring-styles.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { customElement } from 'lit/decorators.js';\nimport { FocusRing } from './internal/focus-ring.js';\nimport { styles } from './internal/focus-ring-styles.js';\n/**\n * TODO(b/267336424): add docs\n *\n * @final\n * @suppress {visibility}\n */\nlet MdFocusRing = class MdFocusRing extends FocusRing {\n};\nMdFocusRing.styles = [styles];\nMdFocusRing = __decorate([\n customElement('md-focus-ring')\n], MdFocusRing);\nexport { MdFocusRing };\n//# sourceMappingURL=md-focus-ring.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * Easing functions to use for web animations.\n *\n * **NOTE:** `EASING.EMPHASIZED` is approximated with unknown accuracy.\n *\n * TODO(b/241113345): replace with tokens\n */\nexport const EASING = {\n STANDARD: 'cubic-bezier(0.2, 0, 0, 1)',\n STANDARD_ACCELERATE: 'cubic-bezier(.3,0,1,1)',\n STANDARD_DECELERATE: 'cubic-bezier(0,0,0,1)',\n EMPHASIZED: 'cubic-bezier(.3,0,0,1)',\n EMPHASIZED_ACCELERATE: 'cubic-bezier(.3,0,.8,.15)',\n EMPHASIZED_DECELERATE: 'cubic-bezier(.05,.7,.1,1)',\n};\n/**\n * Creates an `AnimationSignal` that can be used to cancel a previous task.\n *\n * @example\n * class MyClass {\n * private labelAnimationSignal = createAnimationSignal();\n *\n * private async animateLabel() {\n * // Start of the task. Previous tasks will be canceled.\n * const signal = this.labelAnimationSignal.start();\n *\n * // Do async work...\n * if (signal.aborted) {\n * // Use AbortSignal to check if a request was made to abort after some\n * // asynchronous work.\n * return;\n * }\n *\n * const animation = this.animate(...);\n * // Add event listeners to be notified when the task should be canceled.\n * signal.addEventListener('abort', () => {\n * animation.cancel();\n * });\n *\n * animation.addEventListener('finish', () => {\n * // Tell the signal that the current task is finished.\n * this.labelAnimationSignal.finish();\n * });\n * }\n * }\n *\n * @return An `AnimationSignal`.\n */\nexport function createAnimationSignal() {\n // The current animation's AbortController\n let animationAbortController = null;\n return {\n start() {\n // Tell the previous animation to cancel.\n animationAbortController?.abort();\n // Set up a new AbortController for the current animation.\n animationAbortController = new AbortController();\n // Provide the AbortSignal so that the caller can check aborted status\n // and add listeners.\n return animationAbortController.signal;\n },\n finish() {\n animationAbortController = null;\n },\n };\n}\n/**\n * Returns a function which can be used to throttle function calls\n * mapped to a key via a given function that should produce a promise that\n * determines the throttle amount (defaults to requestAnimationFrame).\n */\nexport function createThrottle() {\n const stack = new Set();\n return async (key = '', cb, timeout = async () => {\n await new Promise(requestAnimationFrame);\n }) => {\n if (!stack.has(key)) {\n stack.add(key);\n await timeout();\n if (stack.has(key)) {\n stack.delete(key);\n cb();\n }\n }\n };\n}\n/**\n * Parses an number in milliseconds from a css time value\n */\nexport function msFromTimeCSSValue(value) {\n const match = value.trim().match(/([\\d.]+)(\\s*s$)?/);\n const time = match?.[1];\n const seconds = match?.[2];\n return Number(time ?? 0) * (seconds ? 1000 : 1);\n}\n//# sourceMappingURL=animation.js.map","/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { html, isServer, LitElement } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { AttachableController, } from '../../internal/controller/attachable-controller.js';\nimport { EASING } from '../../internal/motion/animation.js';\nconst PRESS_GROW_MS = 450;\nconst MINIMUM_PRESS_MS = 225;\nconst INITIAL_ORIGIN_SCALE = 0.2;\nconst PADDING = 10;\nconst SOFT_EDGE_MINIMUM_SIZE = 75;\nconst SOFT_EDGE_CONTAINER_RATIO = 0.35;\nconst PRESS_PSEUDO = '::after';\nconst ANIMATION_FILL = 'forwards';\n/**\n * Interaction states for the ripple.\n *\n * On Touch:\n * - `INACTIVE -> TOUCH_DELAY -> WAITING_FOR_CLICK -> INACTIVE`\n * - `INACTIVE -> TOUCH_DELAY -> HOLDING -> WAITING_FOR_CLICK -> INACTIVE`\n *\n * On Mouse or Pen:\n * - `INACTIVE -> WAITING_FOR_CLICK -> INACTIVE`\n */\nvar State;\n(function (State) {\n /**\n * Initial state of the control, no touch in progress.\n *\n * Transitions:\n * - on touch down: transition to `TOUCH_DELAY`.\n * - on mouse down: transition to `WAITING_FOR_CLICK`.\n */\n State[State[\"INACTIVE\"] = 0] = \"INACTIVE\";\n /**\n * Touch down has been received, waiting to determine if it's a swipe or\n * scroll.\n *\n * Transitions:\n * - on touch up: begin press; transition to `WAITING_FOR_CLICK`.\n * - on cancel: transition to `INACTIVE`.\n * - after `TOUCH_DELAY_MS`: begin press; transition to `HOLDING`.\n */\n State[State[\"TOUCH_DELAY\"] = 1] = \"TOUCH_DELAY\";\n /**\n * A touch has been deemed to be a press\n *\n * Transitions:\n * - on up: transition to `WAITING_FOR_CLICK`.\n */\n State[State[\"HOLDING\"] = 2] = \"HOLDING\";\n /**\n * The user touch has finished, transition into rest state.\n *\n * Transitions:\n * - on click end press; transition to `INACTIVE`.\n */\n State[State[\"WAITING_FOR_CLICK\"] = 3] = \"WAITING_FOR_CLICK\";\n})(State || (State = {}));\n/**\n * Events that the ripple listens to.\n */\nconst EVENTS = [\n 'click',\n 'contextmenu',\n 'pointercancel',\n 'pointerdown',\n 'pointerenter',\n 'pointerleave',\n 'pointerup',\n];\n/**\n * Delay reacting to touch so that we do not show the ripple for a swipe or\n * scroll interaction.\n */\nconst TOUCH_DELAY_MS = 150;\n/**\n * Used to detect if HCM is active. Events do not process during HCM when the\n * ripple is not displayed.\n */\nconst FORCED_COLORS = isServer\n ? null\n : window.matchMedia('(forced-colors: active)');\n/**\n * A ripple component.\n */\nexport class Ripple extends LitElement {\n constructor() {\n super(...arguments);\n /**\n * Disables the ripple.\n */\n this.disabled = false;\n this.hovered = false;\n this.pressed = false;\n this.rippleSize = '';\n this.rippleScale = '';\n this.initialSize = 0;\n this.state = State.INACTIVE;\n this.attachableController = new AttachableController(this, this.onControlChange.bind(this));\n }\n get htmlFor() {\n return this.attachableController.htmlFor;\n }\n set htmlFor(htmlFor) {\n this.attachableController.htmlFor = htmlFor;\n }\n get control() {\n return this.attachableController.control;\n }\n set control(control) {\n this.attachableController.control = control;\n }\n attach(control) {\n this.attachableController.attach(control);\n }\n detach() {\n this.attachableController.detach();\n }\n connectedCallback() {\n super.connectedCallback();\n // Needed for VoiceOver, which will create a \"group\" if the element is a\n // sibling to other content.\n this.setAttribute('aria-hidden', 'true');\n }\n render() {\n const classes = {\n 'hovered': this.hovered,\n 'pressed': this.pressed,\n };\n return html `<div class=\"surface ${classMap(classes)}\"></div>`;\n }\n update(changedProps) {\n if (changedProps.has('disabled') && this.disabled) {\n this.hovered = false;\n this.pressed = false;\n }\n super.update(changedProps);\n }\n /**\n * TODO(b/269799771): make private\n * @private only public for slider\n */\n handlePointerenter(event) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n this.hovered = true;\n }\n /**\n * TODO(b/269799771): make private\n * @private only public for slider\n */\n handlePointerleave(event) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n this.hovered = false;\n // release a held mouse or pen press that moves outside the element\n if (this.state !== State.INACTIVE) {\n this.endPressAnimation();\n }\n }\n handlePointerup(event) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n if (this.state === State.HOLDING) {\n this.state = State.WAITING_FOR_CLICK;\n return;\n }\n if (this.state === State.TOUCH_DELAY) {\n this.state = State.WAITING_FOR_CLICK;\n this.startPressAnimation(this.rippleStartEvent);\n return;\n }\n }\n async handlePointerdown(event) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n this.rippleStartEvent = event;\n if (!this.isTouch(event)) {\n this.state = State.WAITING_FOR_CLICK;\n this.startPressAnimation(event);\n return;\n }\n // Wait for a hold after touch delay\n this.state = State.TOUCH_DELAY;\n await new Promise((resolve) => {\n setTimeout(resolve, TOUCH_DELAY_MS);\n });\n if (this.state !== State.TOUCH_DELAY) {\n return;\n }\n this.state = State.HOLDING;\n this.startPressAnimation(event);\n }\n handleClick() {\n // Click is a MouseEvent in Firefox and Safari, so we cannot use\n // `shouldReactToEvent`\n if (this.disabled) {\n return;\n }\n if (this.state === State.WAITING_FOR_CLICK) {\n this.endPressAnimation();\n return;\n }\n if (this.state === State.INACTIVE) {\n // keyboard synthesized click event\n this.startPressAnimation();\n this.endPressAnimation();\n }\n }\n handlePointercancel(event) {\n if (!this.shouldReactToEvent(event)) {\n return;\n }\n this.endPressAnimation();\n }\n handleContextmenu() {\n if (this.disabled) {\n return;\n }\n this.endPressAnimation();\n }\n determineRippleSize() {\n const { height, width } = this.getBoundingClientRect();\n const maxDim = Math.max(height, width);\n const softEdgeSize = Math.max(SOFT_EDGE_CONTAINER_RATIO * maxDim, SOFT_EDGE_MINIMUM_SIZE);\n // `?? 1` may be removed once `currentCSSZoom` is widely available.\n const zoom = this.currentCSSZoom ?? 1;\n const initialSize = Math.floor((maxDim * INITIAL_ORIGIN_SCALE) / zoom);\n const hypotenuse = Math.sqrt(width ** 2 + height ** 2);\n const maxRadius = hypotenuse + PADDING;\n this.initialSize = initialSize;\n // The dimensions may be altered by CSS `zoom`, which needs to be\n // compensated for in the final scale() value.\n const maybeZoomedScale = (maxRadius + softEdgeSize) / initialSize;\n this.rippleScale = `${maybeZoomedScale / zoom}`;\n this.rippleSize = `${initialSize}px`;\n }\n getNormalizedPointerEventCoords(pointerEvent) {\n const { scrollX, scrollY } = window;\n const { left, top } = this.getBoundingClientRect();\n const documentX = scrollX + left;\n const documentY = scrollY + top;\n const { pageX, pageY } = pointerEvent;\n // `?? 1` may be removed once `currentCSSZoom` is widely available.\n const zoom = this.currentCSSZoom ?? 1;\n return {\n x: (pageX - documentX) / zoom,\n y: (pageY - documentY) / zoom,\n };\n }\n getTranslationCoordinates(positionEvent) {\n const { height, width } = this.getBoundingClientRect();\n // `?? 1` may be removed once `currentCSSZoom` is widely available.\n const zoom = this.currentCSSZoom ?? 1;\n // end in the center\n const endPoint = {\n x: (width / zoom - this.initialSize) / 2,\n y: (height / zoom - this.initialSize) / 2,\n };\n let startPoint;\n if (positionEvent instanceof PointerEvent) {\n startPoint = this.getNormalizedPointerEventCoords(positionEvent);\n }\n else {\n startPoint = {\n x: width / zoom / 2,\n y: height / zoom / 2,\n };\n }\n // center around start point\n startPoint = {\n x: startPoint.x - this.initialSize / 2,\n y: startPoint.y - this.initialSize / 2,\n };\n return { startPoint, endPoint };\n }\n startPressAnimation(positionEvent) {\n if (!this.mdRoot) {\n return;\n }\n this.pressed = true;\n this.growAnimation?.cancel();\n this.determineRippleSize();\n const { startPoint, endPoint } = this.getTranslationCoordinates(positionEvent);\n const translateStart = `${startPoint.x}px, ${startPoint.y}px`;\n const translateEnd = `${endPoint.x}px, ${endPoint.y}px`;\n this.growAnimation = this.mdRoot.animate({\n top: [0, 0],\n left: [0, 0],\n height: [this.rippleSize, this.rippleSize],\n width: [this.rippleSize, this.rippleSize],\n transform: [\n `translate(${translateStart}) scale(1)`,\n `translate(${translateEnd}) scale(${this.rippleScale})`,\n ],\n }, {\n pseudoElement: PRESS_PSEUDO,\n duration: PRESS_GROW_MS,\n easing: EASING.STANDARD,\n fill: ANIMATION_FILL,\n });\n }\n async endPressAnimation() {\n this.rippleStartEvent = undefined;\n this.state = State.INACTIVE;\n const animation = this.growAnimation;\n let pressAnimationPlayState = Infinity;\n if (typeof animation?.currentTime === 'number') {\n pressAnimationPlayState = animation.currentTime;\n }\n else if (animation?.currentTime) {\n pressAnimationPlayState = animation.currentTime.to('ms').value;\n }\n if (pressAnimationPlayState >= MINIMUM_PRESS_MS) {\n this.pressed = false;\n return;\n }\n await new Promise((resolve) => {\n setTimeout(resolve, MINIMUM_PRESS_MS - pressAnimationPlayState);\n });\n if (this.growAnimation !== animation) {\n // A new press animation was started. The old animation was canceled and\n // should not finish the pressed state.\n return;\n }\n this.pressed = false;\n }\n /**\n * Returns `true` if\n * - the ripple element is enabled\n * - the pointer is primary for the input type\n * - the pointer is the pointer that started the interaction, or will start\n * the interaction\n * - the pointer is a touch, or the pointer state has the primary button\n * held, or the pointer is hovering\n */\n shouldReactToEvent(event) {\n if (this.disabled || !event.isPrimary) {\n return false;\n }\n if (this.rippleStartEvent &&\n this.rippleStartEvent.pointerId !== event.pointerId) {\n return false;\n }\n if (event.type === 'pointerenter' || event.type === 'pointerleave') {\n return !this.isTouch(event);\n }\n const isPrimaryButton = event.buttons === 1;\n return this.isTouch(event) || isPrimaryButton;\n }\n isTouch({ pointerType }) {\n return pointerType === 'touch';\n }\n /** @private */\n async handleEvent(event) {\n if (FORCED_COLORS?.matches) {\n // Skip event logic since the ripple is `display: none`.\n return;\n }\n switch (event.type) {\n case 'click':\n this.handleClick();\n break;\n case 'contextmenu':\n this.handleContextmenu();\n break;\n case 'pointercancel':\n this.handlePointercancel(event);\n break;\n case 'pointerdown':\n await this.handlePointerdown(event);\n break;\n case 'pointerenter':\n this.handlePointerenter(event);\n break;\n case 'pointerleave':\n this.handlePointerleave(event);\n break;\n case 'pointerup':\n this.handlePointerup(event);\n break;\n default:\n break;\n }\n }\n onControlChange(prev, next) {\n if (isServer)\n return;\n for (const event of EVENTS) {\n prev?.removeEventListener(event, this);\n next?.addEventListener(event, this);\n }\n }\n}\n__decorate([\n property({ type: Boolean, reflect: true })\n], Ripple.prototype, \"disabled\", void 0);\n__decorate([\n state()\n], Ripple.prototype, \"hovered\", void 0);\n__decorate([\n state()\n], Ripple.prototype, \"pressed\", void 0);\n__decorate([\n query('.surface')\n], Ripple.prototype, \"mdRoot\", void 0);\n//# sourceMappingURL=ripple.js.map","/**\n * @license\n * Copyright 2024 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./ripple/internal/ripple-styles.css.\nimport { css } from 'lit';\nexport const styles = css `:host{display:flex;margin:auto;pointer-events:none}:host([disabled]){display:none}@media(forced-colors: active){:host{display:none}}:host,.surface{border-radius:inherit;position:absolute;inset:0;overflow:hidden}.surface{-webkit-tap-highlight-color:rgba(0,0,0,0)}.surface::before,.surface::after{content:\"\";opacity:0;position:absolute}.surface::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));inset:0;transition:opacity 15ms linear,background-color 15ms linear}.surface::after{background:radial-gradient(closest-side, var(--md-ripple-pressed-color, var(--md-sys-color-on-surface, #1d1b20)) max(100% - 70px, 65%), transparent 100%);transform-origin:center center;transition:opacity 375ms linear}.hovered::before{background-color:var(--md-ripple-hover-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-ripple-hover-opacity, 0.08)}.pressed::after{opacity:var(--md-ripple-pressed-opacity, 0.12);transition-duration:105ms}\n`;\n//# sourceMappingURL=ripple-styles.js.map","/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { customElement } from 'lit/decorators.js';\nimport { Ripple } from './internal/ripple.js';\nimport { styles } from './internal/ripple-styles.js';\n/**\n * @summary Ripples, also known as state layers, are visual indicators used to\n * communicate the status of a component or interactive element.\n *\n * @description A state layer is a semi-transparent covering on an element that\n * indicates its state. State layers provide a systematic approach to\n * visualizing states by using opacity. A layer can be applied to an entire\n * element or in a circular shape and only one state layer can be applied at a\n * given time.\n *\n * @final\n * @suppress {visibility}\n */\nlet MdRipple = class MdRipple extends Ripple {\n};\nMdRipple.styles = [styles];\nMdRipple = __decorate([\n customElement('md-ripple')\n], MdRipple);\nexport { MdRipple };\n//# sourceMappingURL=ripple.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * Accessibility Object Model reflective aria properties.\n */\nexport const ARIA_PROPERTIES = [\n 'role',\n 'ariaAtomic',\n 'ariaAutoComplete',\n 'ariaBusy',\n 'ariaChecked',\n 'ariaColCount',\n 'ariaColIndex',\n 'ariaColSpan',\n 'ariaCurrent',\n 'ariaDisabled',\n 'ariaExpanded',\n 'ariaHasPopup',\n 'ariaHidden',\n 'ariaInvalid',\n 'ariaKeyShortcuts',\n 'ariaLabel',\n 'ariaLevel',\n 'ariaLive',\n 'ariaModal',\n 'ariaMultiLine',\n 'ariaMultiSelectable',\n 'ariaOrientation',\n 'ariaPlaceholder',\n 'ariaPosInSet',\n 'ariaPressed',\n 'ariaReadOnly',\n 'ariaRequired',\n 'ariaRoleDescription',\n 'ariaRowCount',\n 'ariaRowIndex',\n 'ariaRowSpan',\n 'ariaSelected',\n 'ariaSetSize',\n 'ariaSort',\n 'ariaValueMax',\n 'ariaValueMin',\n 'ariaValueNow',\n 'ariaValueText',\n];\n/**\n * Accessibility Object Model aria attributes.\n */\nexport const ARIA_ATTRIBUTES = ARIA_PROPERTIES.map(ariaPropertyToAttribute);\n/**\n * Checks if an attribute is one of the AOM aria attributes.\n *\n * @example\n * isAriaAttribute('aria-label'); // true\n *\n * @param attribute The attribute to check.\n * @return True if the attribute is an aria attribute, or false if not.\n */\nexport function isAriaAttribute(attribute) {\n return ARIA_ATTRIBUTES.includes(attribute);\n}\n/**\n * Converts an AOM aria property into its corresponding attribute.\n *\n * @example\n * ariaPropertyToAttribute('ariaLabel'); // 'aria-label'\n *\n * @param property The aria property.\n * @return The aria attribute.\n */\nexport function ariaPropertyToAttribute(property) {\n return property\n .replace('aria', 'aria-')\n // IDREF attributes also include an \"Element\" or \"Elements\" suffix\n .replace(/Elements?/g, '')\n .toLowerCase();\n}\n//# sourceMappingURL=aria.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { isServer } from 'lit';\nimport { ARIA_PROPERTIES, ariaPropertyToAttribute, isAriaAttribute, } from './aria.js';\n// Private symbols\nconst privateIgnoreAttributeChangesFor = Symbol('privateIgnoreAttributeChangesFor');\n/**\n * Mixes in aria delegation for elements that delegate focus and aria to inner\n * shadow root elements.\n *\n * This mixin fixes invalid aria announcements with shadow roots, caused by\n * duplicate aria attributes on both the host and the inner shadow root element.\n *\n * Note: this mixin **does not yet support** ID reference attributes, such as\n * `aria-labelledby` or `aria-controls`.\n *\n * @example\n * ```ts\n * class MyButton extends mixinDelegatesAria(LitElement) {\n * static shadowRootOptions = {mode: 'open', delegatesFocus: true};\n *\n * render() {\n * return html`\n * <button aria-label=${this.ariaLabel || nothing}>\n * <slot></slot>\n * </button>\n * `;\n * }\n * }\n * ```\n * ```html\n * <my-button aria-label=\"Plus one\">+1</my-button>\n * ```\n *\n * Use `ARIAMixinStrict` for lit analyzer strict types, such as the \"role\"\n * attribute.\n *\n * @example\n * ```ts\n * return html`\n * <button role=${(this as ARIAMixinStrict).role || nothing}>\n * <slot></slot>\n * </button>\n * `;\n * ```\n *\n * In the future, updates to the Accessibility Object Model (AOM) will provide\n * built-in aria delegation features that will replace this mixin.\n *\n * @param base The class to mix functionality into.\n * @return The provided class with aria delegation mixed in.\n */\nexport function mixinDelegatesAria(base) {\n var _a;\n if (isServer) {\n // Don't shift attributes when running with lit-ssr. The SSR renderer\n // implements a subset of DOM APIs, including the methods this mixin\n // overrides, causing errors. We don't need to shift on the server anyway\n // since elements will shift attributes immediately once they hydrate.\n return base;\n }\n class WithDelegatesAriaElement extends base {\n constructor() {\n super(...arguments);\n this[_a] = new Set();\n }\n attributeChangedCallback(name, oldValue, newValue) {\n if (!isAriaAttribute(name)) {\n super.attributeChangedCallback(name, oldValue, newValue);\n return;\n }\n if (this[privateIgnoreAttributeChangesFor].has(name)) {\n return;\n }\n // Don't trigger another `attributeChangedCallback` once we remove the\n // aria attribute from the host. We check the explicit name of the\n // attribute to ignore since `attributeChangedCallback` can be called\n // multiple times out of an expected order when hydrating an element with\n // multiple attributes.\n this[privateIgnoreAttributeChangesFor].add(name);\n this.removeAttribute(name);\n this[privateIgnoreAttributeChangesFor].delete(name);\n const dataProperty = ariaAttributeToDataProperty(name);\n if (newValue === null) {\n delete this.dataset[dataProperty];\n }\n else {\n this.dataset[dataProperty] = newValue;\n }\n this.requestUpdate(ariaAttributeToDataProperty(name), oldValue);\n }\n getAttribute(name) {\n if (isAriaAttribute(name)) {\n return super.getAttribute(ariaAttributeToDataAttribute(name));\n }\n return super.getAttribute(name);\n }\n removeAttribute(name) {\n super.removeAttribute(name);\n if (isAriaAttribute(name)) {\n super.removeAttribute(ariaAttributeToDataAttribute(name));\n // Since `aria-*` attributes are already removed`, we need to request\n // an update because `attributeChangedCallback` will not be called.\n this.requestUpdate();\n }\n }\n }\n _a = privateIgnoreAttributeChangesFor;\n setupDelegatesAriaProperties(WithDelegatesAriaElement);\n return WithDelegatesAriaElement;\n}\n/**\n * Overrides the constructor's native `ARIAMixin` properties to ensure that\n * aria properties reflect the values that were shifted to a data attribute.\n *\n * @param ctor The `ReactiveElement` constructor to patch.\n */\nfunction setupDelegatesAriaProperties(ctor) {\n for (const ariaProperty of ARIA_PROPERTIES) {\n // The casing between ariaProperty and the dataProperty may be different.\n // ex: aria-haspopup -> ariaHasPopup\n const ariaAttribute = ariaPropertyToAttribute(ariaProperty);\n // ex: aria-haspopup -> data-aria-haspopup\n const dataAttribute = ariaAttributeToDataAttribute(ariaAttribute);\n // ex: aria-haspopup -> dataset.ariaHaspopup\n const dataProperty = ariaAttributeToDataProperty(ariaAttribute);\n // Call `ReactiveElement.createProperty()` so that the `aria-*` and `data-*`\n // attributes are added to the `static observedAttributes` array. This\n // triggers `attributeChangedCallback` for the delegates aria mixin to\n // handle.\n ctor.createProperty(ariaProperty, {\n attribute: ariaAttribute,\n noAccessor: true,\n });\n ctor.createProperty(Symbol(dataAttribute), {\n attribute: dataAttribute,\n noAccessor: true,\n });\n // Re-define the `ARIAMixin` properties to handle data attribute shifting.\n // It is safe to use `Object.defineProperty` here because the properties\n // are native and not renamed.\n // tslint:disable-next-line:ban-unsafe-reflection\n Object.defineProperty(ctor.prototype, ariaProperty, {\n configurable: true,\n enumerable: true,\n get() {\n return this.dataset[dataProperty] ?? null;\n },\n set(value) {\n const prevValue = this.dataset[dataProperty] ?? null;\n if (value === prevValue) {\n return;\n }\n if (value === null) {\n delete this.dataset[dataProperty];\n }\n else {\n this.dataset[dataProperty] = value;\n }\n this.requestUpdate(ariaProperty, prevValue);\n },\n });\n }\n}\nfunction ariaAttributeToDataAttribute(ariaAttribute) {\n // aria-haspopup -> data-aria-haspopup\n return `data-${ariaAttribute}`;\n}\nfunction ariaAttributeToDataProperty(ariaAttribute) {\n // aria-haspopup -> dataset.ariaHaspopup\n return ariaAttribute.replace(/-\\w/, (dashLetter) => dashLetter[1].toUpperCase());\n}\n//# sourceMappingURL=delegate.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * Dispatches a click event to the given element that triggers a native action,\n * but is not composed and therefore is not seen outside the element.\n *\n * This is useful for responding to an external click event on the host element\n * that should trigger an internal action like a button click.\n *\n * Note, a helper is provided because setting this up correctly is a bit tricky.\n * In particular, calling `click` on an element creates a composed event, which\n * is not desirable, and a manually dispatched event must specifically be a\n * `MouseEvent` to trigger a native action.\n *\n * @example\n * hostClickListener = (event: MouseEvent) {\n * if (isActivationClick(event)) {\n * this.dispatchActivationClick(this.buttonElement);\n * }\n * }\n *\n */\nexport function dispatchActivationClick(element) {\n const event = new MouseEvent('click', { bubbles: true });\n element.dispatchEvent(event);\n return event;\n}\n/**\n * Returns true if the click event should trigger an activation behavior. The\n * behavior is defined by the element and is whatever it should do when\n * clicked.\n *\n * Typically when an element needs to handle a click, the click is generated\n * from within the element and an event listener within the element implements\n * the needed behavior; however, it's possible to fire a click directly\n * at the element that the element should handle. This method helps\n * distinguish these \"external\" clicks.\n *\n * An \"external\" click can be triggered in a number of ways: via a click\n * on an associated label for a form associated element, calling\n * `element.click()`, or calling\n * `element.dispatchEvent(new MouseEvent('click', ...))`.\n *\n * Also works around Firefox issue\n * https://bugzilla.mozilla.org/show_bug.cgi?id=1804576 by squelching\n * events for a microtask after called.\n *\n * @example\n * hostClickListener = (event: MouseEvent) {\n * if (isActivationClick(event)) {\n * this.dispatchActivationClick(this.buttonElement);\n * }\n * }\n *\n */\nexport function isActivationClick(event) {\n // Event must start at the event target.\n if (event.currentTarget !== event.target) {\n return false;\n }\n // Event must not be retargeted from shadowRoot.\n if (event.composedPath()[0] !== event.target) {\n return false;\n }\n // Target must not be disabled; this should only occur for a synthetically\n // dispatched click.\n if (event.target.disabled) {\n return false;\n }\n // This is an activation if the event should not be squelched.\n return !squelchEvent(event);\n}\n// TODO(https://bugzilla.mozilla.org/show_bug.cgi?id=1804576)\n// Remove when Firefox bug is addressed.\nfunction squelchEvent(event) {\n const squelched = isSquelchingEvents;\n if (squelched) {\n event.preventDefault();\n event.stopImmediatePropagation();\n }\n squelchEventsForMicrotask();\n return squelched;\n}\n// Ignore events for one microtask only.\nlet isSquelchingEvents = false;\nasync function squelchEventsForMicrotask() {\n isSquelchingEvents = true;\n // Need to pause for just one microtask.\n // tslint:disable-next-line\n await null;\n isSquelchingEvents = false;\n}\n//# sourceMappingURL=form-label-activation.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * Re-dispatches an event from the provided element.\n *\n * This function is useful for forwarding non-composed events, such as `change`\n * events.\n *\n * @example\n * class MyInput extends LitElement {\n * render() {\n * return html`<input @change=${this.redispatchEvent}>`;\n * }\n *\n * protected redispatchEvent(event: Event) {\n * redispatchEvent(this, event);\n * }\n * }\n *\n * @param element The element to dispatch the event from.\n * @param event The event to re-dispatch.\n * @return Whether or not the event was dispatched (if cancelable).\n */\nexport function redispatchEvent(element, event) {\n // For bubbling events in SSR light DOM (or composed), stop their propagation\n // and dispatch the copy.\n if (event.bubbles && (!element.shadowRoot || event.composed)) {\n event.stopPropagation();\n }\n const copy = Reflect.construct(event.constructor, [event.type, event]);\n const dispatched = element.dispatchEvent(copy);\n if (!dispatched) {\n event.preventDefault();\n }\n return dispatched;\n}\n//# sourceMappingURL=redispatch-event.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * A unique symbol used for protected access to an instance's\n * `ElementInternals`.\n *\n * @example\n * ```ts\n * class MyElement extends mixinElementInternals(LitElement) {\n * constructor() {\n * super();\n * this[internals].role = 'button';\n * }\n * }\n * ```\n */\nexport const internals = Symbol('internals');\n// Private symbols\nconst privateInternals = Symbol('privateInternals');\n/**\n * Mixes in an attached `ElementInternals` instance.\n *\n * This mixin is only needed when other shared code needs access to a\n * component's `ElementInternals`, such as form-associated mixins.\n *\n * @param base The class to mix functionality into.\n * @return The provided class with `WithElementInternals` mixed in.\n */\nexport function mixinElementInternals(base) {\n class WithElementInternalsElement extends base {\n get [internals]() {\n // Create internals in getter so that it can be used in methods called on\n // construction in `ReactiveElement`, such as `requestUpdate()`.\n if (!this[privateInternals]) {\n // Cast needed for closure\n this[privateInternals] = this.attachInternals();\n }\n return this[privateInternals];\n }\n }\n return WithElementInternalsElement;\n}\n//# sourceMappingURL=element-internals.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { isServer } from 'lit';\nimport { internals } from './element-internals.js';\n/**\n * A symbol property used to create a constraint validation `Validator`.\n * Required for all `mixinConstraintValidation()` elements.\n */\nexport const createValidator = Symbol('createValidator');\n/**\n * A symbol property used to return an anchor for constraint validation popups.\n * Required for all `mixinConstraintValidation()` elements.\n */\nexport const getValidityAnchor = Symbol('getValidityAnchor');\n// Private symbol members, used to avoid name clashing.\nconst privateValidator = Symbol('privateValidator');\nconst privateSyncValidity = Symbol('privateSyncValidity');\nconst privateCustomValidationMessage = Symbol('privateCustomValidationMessage');\n/**\n * Mixes in constraint validation APIs for an element.\n *\n * See https://developer.mozilla.org/en-US/docs/Web/HTML/Constraint_validation\n * for more details.\n *\n * Implementations must provide a validator to cache and compute its validity,\n * along with a shadow root element to anchor validation popups to.\n *\n * @example\n * ```ts\n * const baseClass = mixinConstraintValidation(\n * mixinFormAssociated(mixinElementInternals(LitElement))\n * );\n *\n * class MyCheckbox extends baseClass {\n * \\@property({type: Boolean}) checked = false;\n * \\@property({type: Boolean}) required = false;\n *\n * [createValidator]() {\n * return new CheckboxValidator(() => this);\n * }\n *\n * [getValidityAnchor]() {\n * return this.renderRoot.querySelector('.root');\n * }\n * }\n * ```\n *\n * @param base The class to mix functionality into.\n * @return The provided class with `ConstraintValidation` mixed in.\n */\nexport function mixinConstraintValidation(base) {\n var _a;\n class ConstraintValidationElement extends base {\n constructor() {\n super(...arguments);\n /**\n * Needed for Safari, see https://bugs.webkit.org/show_bug.cgi?id=261432\n * Replace with this[internals].validity.customError when resolved.\n */\n this[_a] = '';\n }\n get validity() {\n this[privateSyncValidity]();\n return this[internals].validity;\n }\n get validationMessage() {\n this[privateSyncValidity]();\n return this[internals].validationMessage;\n }\n get willValidate() {\n this[privateSyncValidity]();\n return this[internals].willValidate;\n }\n checkValidity() {\n this[privateSyncValidity]();\n return this[internals].checkValidity();\n }\n reportValidity() {\n this[privateSyncValidity]();\n return this[internals].reportValidity();\n }\n setCustomValidity(error) {\n this[privateCustomValidationMessage] = error;\n this[privateSyncValidity]();\n }\n requestUpdate(name, oldValue, options) {\n super.requestUpdate(name, oldValue, options);\n this[privateSyncValidity]();\n }\n firstUpdated(changed) {\n super.firstUpdated(changed);\n // Sync the validity again when the element first renders, since the\n // validity anchor is now available.\n //\n // Elements that `delegatesFocus: true` to an `<input>` will throw an\n // error in Chrome and Safari when a form tries to submit or call\n // `form.reportValidity()`:\n // \"An invalid form control with name='' is not focusable\"\n //\n // The validity anchor MUST be provided in `internals.setValidity()` and\n // MUST be the `<input>` element rendered.\n //\n // See https://lit.dev/playground/#gist=6c26e418e0010f7a5aac15005cde8bde\n // for a reproduction.\n this[privateSyncValidity]();\n }\n [(_a = privateCustomValidationMessage, privateSyncValidity)]() {\n if (isServer) {\n return;\n }\n if (!this[privateValidator]) {\n this[privateValidator] = this[createValidator]();\n }\n const { validity, validationMessage: nonCustomValidationMessage } = this[privateValidator].getValidity();\n const customError = !!this[privateCustomValidationMessage];\n const validationMessage = this[privateCustomValidationMessage] || nonCustomValidationMessage;\n this[internals].setValidity({ ...validity, customError }, validationMessage, this[getValidityAnchor]() ?? undefined);\n }\n [createValidator]() {\n throw new Error('Implement [createValidator]');\n }\n [getValidityAnchor]() {\n throw new Error('Implement [getValidityAnchor]');\n }\n }\n return ConstraintValidationElement;\n}\n//# sourceMappingURL=constraint-validation.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { property } from 'lit/decorators.js';\nimport { internals } from './element-internals.js';\n/**\n * A symbol property to retrieve the form value for an element.\n */\nexport const getFormValue = Symbol('getFormValue');\n/**\n * A symbol property to retrieve the form state for an element.\n */\nexport const getFormState = Symbol('getFormState');\n/**\n * Mixes in form-associated behavior for a class. This allows an element to add\n * values to `<form>` elements.\n *\n * Implementing classes should provide a `[formValue]` to return the current\n * value of the element, as well as reset and restore callbacks.\n *\n * @example\n * ```ts\n * const base = mixinFormAssociated(mixinElementInternals(LitElement));\n *\n * class MyControl extends base {\n * \\@property()\n * value = '';\n *\n * override [getFormValue]() {\n * return this.value;\n * }\n *\n * override formResetCallback() {\n * const defaultValue = this.getAttribute('value');\n * this.value = defaultValue;\n * }\n *\n * override formStateRestoreCallback(state: string) {\n * this.value = state;\n * }\n * }\n * ```\n *\n * Elements may optionally provide a `[formState]` if their values do not\n * represent the state of the component.\n *\n * @example\n * ```ts\n * const base = mixinFormAssociated(mixinElementInternals(LitElement));\n *\n * class MyCheckbox extends base {\n * \\@property()\n * value = 'on';\n *\n * \\@property({type: Boolean})\n * checked = false;\n *\n * override [getFormValue]() {\n * return this.checked ? this.value : null;\n * }\n *\n * override [getFormState]() {\n * return String(this.checked);\n * }\n *\n * override formResetCallback() {\n * const defaultValue = this.hasAttribute('checked');\n * this.checked = defaultValue;\n * }\n *\n * override formStateRestoreCallback(state: string) {\n * this.checked = Boolean(state);\n * }\n * }\n * ```\n *\n * IMPORTANT: Requires declares for lit-analyzer\n * @example\n * ```ts\n * const base = mixinFormAssociated(mixinElementInternals(LitElement));\n * class MyControl extends base {\n * // Writable mixin properties for lit-html binding, needed for lit-analyzer\n * declare disabled: boolean;\n * declare name: string;\n * }\n * ```\n *\n * @param base The class to mix functionality into. The base class must use\n * `mixinElementInternals()`.\n * @return The provided class with `FormAssociated` mixed in.\n */\nexport function mixinFormAssociated(base) {\n class FormAssociatedElement extends base {\n get form() {\n return this[internals].form;\n }\n get labels() {\n return this[internals].labels;\n }\n // Use @property for the `name` and `disabled` properties to add them to the\n // `observedAttributes` array and trigger `attributeChangedCallback()`.\n //\n // We don't use Lit's default getter/setter (`noAccessor: true`) because\n // the attributes need to be updated synchronously to work with synchronous\n // form APIs, and Lit updates attributes async by default.\n get name() {\n return this.getAttribute('name') ?? '';\n }\n set name(name) {\n // Note: setting name to null or empty does not remove the attribute.\n this.setAttribute('name', name);\n // We don't need to call `requestUpdate()` since it's called synchronously\n // in `attributeChangedCallback()`.\n }\n get disabled() {\n return this.hasAttribute('disabled');\n }\n set disabled(disabled) {\n this.toggleAttribute('disabled', disabled);\n // We don't need to call `requestUpdate()` since it's called synchronously\n // in `attributeChangedCallback()`.\n }\n attributeChangedCallback(name, old, value) {\n // Manually `requestUpdate()` for `name` and `disabled` when their\n // attribute or property changes.\n // The properties update their attributes, so this callback is invoked\n // immediately when the properties are set. We call `requestUpdate()` here\n // instead of letting Lit set the properties from the attribute change.\n // That would cause the properties to re-set the attribute and invoke this\n // callback again in a loop. This leads to stale state when Lit tries to\n // determine if a property changed or not.\n if (name === 'name' || name === 'disabled') {\n // Disabled's value is only false if the attribute is missing and null.\n const oldValue = name === 'disabled' ? old !== null : old;\n // Trigger a lit update when the attribute changes.\n this.requestUpdate(name, oldValue);\n return;\n }\n super.attributeChangedCallback(name, old, value);\n }\n requestUpdate(name, oldValue, options) {\n super.requestUpdate(name, oldValue, options);\n // If any properties change, update the form value, which may have changed\n // as well.\n // Update the form value synchronously in `requestUpdate()` rather than\n // `update()` or `updated()`, which are async. This is necessary to ensure\n // that form data is updated in time for synchronous event listeners.\n this[internals].setFormValue(this[getFormValue](), this[getFormState]());\n }\n [getFormValue]() {\n // Closure does not allow abstract symbol members, so a default\n // implementation is needed.\n throw new Error('Implement [getFormValue]');\n }\n [getFormState]() {\n return this[getFormValue]();\n }\n formDisabledCallback(disabled) {\n this.disabled = disabled;\n }\n }\n /** @nocollapse */\n FormAssociatedElement.formAssociated = true;\n __decorate([\n property({ noAccessor: true })\n ], FormAssociatedElement.prototype, \"name\", null);\n __decorate([\n property({ type: Boolean, noAccessor: true })\n ], FormAssociatedElement.prototype, \"disabled\", null);\n return FormAssociatedElement;\n}\n//# sourceMappingURL=form-associated.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n/**\n * A class that computes and caches `ValidityStateFlags` for a component with\n * a given `State` interface.\n *\n * Cached performance before computing validity is important since constraint\n * validation must be checked frequently and synchronously when properties\n * change.\n *\n * @template State The expected interface of properties relevant to constraint\n * validation.\n */\nexport class Validator {\n /**\n * Creates a new validator.\n *\n * @param getCurrentState A callback that returns the current state of\n * constraint validation-related properties.\n */\n constructor(getCurrentState) {\n this.getCurrentState = getCurrentState;\n /**\n * The current validity state and message. This is cached and returns if\n * constraint validation state does not change.\n */\n this.currentValidity = {\n validity: {},\n validationMessage: '',\n };\n }\n /**\n * Returns the current `ValidityStateFlags` and validation message for the\n * validator.\n *\n * If the constraint validation state has not changed, this will return a\n * cached result. This is important since `getValidity()` can be called\n * frequently in response to synchronous property changes.\n *\n * @return The current validity and validation message.\n */\n getValidity() {\n const state = this.getCurrentState();\n const hasStateChanged = !this.prevState || !this.equals(this.prevState, state);\n if (!hasStateChanged) {\n return this.currentValidity;\n }\n const { validity, validationMessage } = this.computeValidity(state);\n this.prevState = this.copy(state);\n this.currentValidity = {\n validationMessage,\n validity: {\n // Change any `ValidityState` instances into `ValidityStateFlags` since\n // `ValidityState` cannot be easily `{...spread}`.\n badInput: validity.badInput,\n customError: validity.customError,\n patternMismatch: validity.patternMismatch,\n rangeOverflow: validity.rangeOverflow,\n rangeUnderflow: validity.rangeUnderflow,\n stepMismatch: validity.stepMismatch,\n tooLong: validity.tooLong,\n tooShort: validity.tooShort,\n typeMismatch: validity.typeMismatch,\n valueMissing: validity.valueMissing,\n },\n };\n return this.currentValidity;\n }\n}\n//# sourceMappingURL=validator.js.map","/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { Validator } from './validator.js';\n/**\n * A validator that provides constraint validation that emulates\n * `<input type=\"checkbox\">` validation.\n */\nexport class CheckboxValidator extends Validator {\n computeValidity(state) {\n if (!this.checkboxControl) {\n // Lazily create the platform input\n this.checkboxControl = document.createElement('input');\n this.checkboxControl.type = 'checkbox';\n }\n this.checkboxControl.checked = state.checked;\n this.checkboxControl.required = state.required;\n return {\n validity: this.checkboxControl.validity,\n validationMessage: this.checkboxControl.validationMessage,\n };\n }\n equals(prev, next) {\n return prev.checked === next.checked && prev.required === next.required;\n }\n copy({ checked, required }) {\n return { checked, required };\n }\n}\n//# sourceMappingURL=checkbox-validator.js.map","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport '../../focus/md-focus-ring.js';\nimport '../../ripple/ripple.js';\nimport { html, isServer, LitElement, nothing } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { mixinDelegatesAria } from '../../internal/aria/delegate.js';\nimport { dispatchActivationClick, isActivationClick, } from '../../internal/events/form-label-activation.js';\nimport { redispatchEvent } from '../../internal/events/redispatch-event.js';\nimport { createValidator, getValidityAnchor, mixinConstraintValidation, } from '../../labs/behaviors/constraint-validation.js';\nimport { mixinElementInternals } from '../../labs/behaviors/element-internals.js';\nimport { getFormState, getFormValue, mixinFormAssociated, } from '../../labs/behaviors/form-associated.js';\nimport { CheckboxValidator } from '../../labs/behaviors/validators/checkbox-validator.js';\n// Separate variable needed for closure.\nconst checkboxBaseClass = mixinDelegatesAria(mixinConstraintValidation(mixinFormAssociated(mixinElementInternals(LitElement))));\n/**\n * A checkbox component.\n *\n *\n * @fires change {Event} The native `change` event on\n * [`<input>`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/change_event)\n * --bubbles\n * @fires input {InputEvent} The native `input` event on\n * [`<input>`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/input_event)\n * --bubbles --composed\n */\nexport class Checkbox extends checkboxBaseClass {\n constructor() {\n super();\n /**\n * Whether or not the checkbox is selected.\n */\n this.checked = false;\n /**\n * Whether or not the checkbox is indeterminate.\n *\n * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#indeterminate_state_checkboxes\n */\n this.indeterminate = false;\n /**\n * When true, require the checkbox to be selected when participating in\n * form submission.\n *\n * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#validation\n */\n this.required = false;\n /**\n * The value of the checkbox that is submitted with a form when selected.\n *\n * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#value\n */\n this.value = 'on';\n this.prevChecked = false;\n this.prevDisabled = false;\n this.prevIndeterminate = false;\n if (!isServer) {\n this.addEventListener('click', (event) => {\n if (!isActivationClick(event) || !this.input) {\n return;\n }\n this.focus();\n dispatchActivationClick(this.input);\n });\n }\n }\n update(changed) {\n if (changed.has('checked') ||\n changed.has('disabled') ||\n changed.has('indeterminate')) {\n this.prevChecked = changed.get('checked') ?? this.checked;\n this.prevDisabled = changed.get('disabled') ?? this.disabled;\n this.prevIndeterminate =\n changed.get('indeterminate') ?? this.indeterminate;\n }\n super.update(changed);\n }\n render() {\n const prevNone = !this.prevChecked && !this.prevIndeterminate;\n const prevChecked = this.prevChecked && !this.prevIndeterminate;\n const prevIndeterminate = this.prevIndeterminate;\n const isChecked = this.checked && !this.indeterminate;\n const isIndeterminate = this.indeterminate;\n const containerClasses = classMap({\n 'disabled': this.disabled,\n 'selected': isChecked || isIndeterminate,\n 'unselected': !isChecked && !isIndeterminate,\n 'checked': isChecked,\n 'indeterminate': isIndeterminate,\n 'prev-unselected': prevNone,\n 'prev-checked': prevChecked,\n 'prev-indeterminate': prevIndeterminate,\n 'prev-disabled': this.prevDisabled,\n });\n // Needed for closure conformance\n const { ariaLabel, ariaInvalid } = this;\n // Note: <input> needs to be rendered before the <svg> for\n // form.reportValidity() to work in Chrome.\n return html `\n <div class=\"container ${containerClasses}\">\n <input\n type=\"checkbox\"\n id=\"input\"\n aria-checked=${isIndeterminate ? 'mixed' : nothing}\n aria-label=${ariaLabel || nothing}\n aria-invalid=${ariaInvalid || nothing}\n ?disabled=${this.disabled}\n ?required=${this.required}\n .indeterminate=${this.indeterminate}\n .checked=${this.checked}\n @input=${this.handleInput}\n @change=${this.handleChange} />\n\n <div class=\"outline\"></div>\n <div class=\"background\"></div>\n <md-focus-ring part=\"focus-ring\" for=\"input\"></md-focus-ring>\n <md-ripple for=\"input\" ?disabled=${this.disabled}></md-ripple>\n <svg class=\"icon\" viewBox=\"0 0 18 18\" aria-hidden=\"true\">\n <rect class=\"mark short\" />\n <rect class=\"mark long\" />\n </svg>\n </div>\n `;\n }\n handleInput(event) {\n const target = event.target;\n this.checked = target.checked;\n this.indeterminate = target.indeterminate;\n // <input> 'input' event bubbles and is composed, don't re-dispatch it.\n }\n handleChange(event) {\n // <input> 'change' event is not composed, re-dispatch it.\n redispatchEvent(this, event);\n }\n [getFormValue]() {\n if (!this.checked || this.indeterminate) {\n return null;\n }\n return this.value;\n }\n [getFormState]() {\n return String(this.checked);\n }\n formResetCallback() {\n // The checked property does not reflect, so the original attribute set by\n // the user is used to determine the default value.\n this.checked = this.hasAttribute('checked');\n }\n formStateRestoreCallback(state) {\n this.checked = state === 'true';\n }\n [createValidator]() {\n return new CheckboxValidator(() => this);\n }\n [getValidityAnchor]() {\n return this.input;\n }\n}\n/** @nocollapse */\nCheckbox.shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n};\n__decorate([\n property({ type: Boolean })\n], Checkbox.prototype, \"checked\", void 0);\n__decorate([\n property({ type: Boolean })\n], Checkbox.prototype, \"indeterminate\", void 0);\n__decorate([\n property({ type: Boolean })\n], Checkbox.prototype, \"required\", void 0);\n__decorate([\n property()\n], Checkbox.prototype, \"value\", void 0);\n__decorate([\n state()\n], Checkbox.prototype, \"prevChecked\", void 0);\n__decorate([\n state()\n], Checkbox.prototype, \"prevDisabled\", void 0);\n__decorate([\n state()\n], Checkbox.prototype, \"prevIndeterminate\", void 0);\n__decorate([\n query('input')\n], Checkbox.prototype, \"input\", void 0);\n//# sourceMappingURL=checkbox.js.map","/**\n * @license\n * Copyright 2024 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./checkbox/internal/checkbox-styles.css.\nimport { css } from 'lit';\nexport const styles = css `:host{border-start-start-radius:var(--md-checkbox-container-shape-start-start, var(--md-checkbox-container-shape, 2px));border-start-end-radius:var(--md-checkbox-container-shape-start-end, var(--md-checkbox-container-shape, 2px));border-end-end-radius:var(--md-checkbox-container-shape-end-end, var(--md-checkbox-container-shape, 2px));border-end-start-radius:var(--md-checkbox-container-shape-end-start, var(--md-checkbox-container-shape, 2px));display:inline-flex;height:var(--md-checkbox-container-size, 18px);position:relative;vertical-align:top;width:var(--md-checkbox-container-size, 18px);-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer}:host([disabled]){cursor:default}:host([touch-target=wrapper]){margin:max(0px,(48px - var(--md-checkbox-container-size, 18px))/2)}md-focus-ring{height:44px;inset:unset;width:44px}input{appearance:none;height:48px;margin:0;opacity:0;outline:none;position:absolute;width:48px;z-index:1;cursor:inherit}:host([touch-target=none]) input{height:100%;width:100%}.container{border-radius:inherit;display:flex;height:100%;place-content:center;place-items:center;position:relative;width:100%}.outline,.background,.icon{inset:0;position:absolute}.outline,.background{border-radius:inherit}.outline{border-color:var(--md-checkbox-outline-color, var(--md-sys-color-on-surface-variant, #49454f));border-style:solid;border-width:var(--md-checkbox-outline-width, 2px);box-sizing:border-box}.background{background-color:var(--md-checkbox-selected-container-color, var(--md-sys-color-primary, #6750a4))}.background,.icon{opacity:0;transition-duration:150ms,50ms;transition-property:transform,opacity;transition-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15),linear;transform:scale(0.6)}:where(.selected) :is(.background,.icon){opacity:1;transition-duration:350ms,50ms;transition-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1),linear;transform:scale(1)}md-ripple{border-radius:var(--md-checkbox-state-layer-shape, var(--md-sys-shape-corner-full, 9999px));height:var(--md-checkbox-state-layer-size, 40px);inset:unset;width:var(--md-checkbox-state-layer-size, 40px);--md-ripple-hover-color: var(--md-checkbox-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-hover-opacity: var(--md-checkbox-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-checkbox-pressed-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-pressed-opacity: var(--md-checkbox-pressed-state-layer-opacity, 0.12)}.selected md-ripple{--md-ripple-hover-color: var(--md-checkbox-selected-hover-state-layer-color, var(--md-sys-color-primary, #6750a4));--md-ripple-hover-opacity: var(--md-checkbox-selected-hover-state-layer-opacity, 0.08);--md-ripple-pressed-color: var(--md-checkbox-selected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--md-ripple-pressed-opacity: var(--md-checkbox-selected-pressed-state-layer-opacity, 0.12)}.icon{fill:var(--md-checkbox-selected-icon-color, var(--md-sys-color-on-primary, #fff));height:var(--md-checkbox-icon-size, 18px);width:var(--md-checkbox-icon-size, 18px)}.mark.short{height:2px;transition-property:transform,height;width:2px}.mark.long{height:2px;transition-property:transform,width;width:10px}.mark{animation-duration:150ms;animation-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15);transition-duration:150ms;transition-timing-function:cubic-bezier(0.3, 0, 0.8, 0.15)}.selected .mark{animation-duration:350ms;animation-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1);transition-duration:350ms;transition-timing-function:cubic-bezier(0.05, 0.7, 0.1, 1)}.checked .mark,.prev-checked.unselected .mark{transform:scaleY(-1) translate(7px, -14px) rotate(45deg)}.checked .mark.short,.prev-checked.unselected .mark.short{height:5.6568542495px}.checked .mark.long,.prev-checked.unselected .mark.long{width:11.313708499px}.indeterminate .mark,.prev-indeterminate.unselected .mark{transform:scaleY(-1) translate(4px, -10px) rotate(0deg)}.prev-unselected .mark{transition-property:none}.prev-unselected.checked .mark.long{animation-name:prev-unselected-to-checked}@keyframes prev-unselected-to-checked{from{width:0}}:where(:hover) .outline{border-color:var(--md-checkbox-hover-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-hover-outline-width, 2px)}:where(:hover) .background{background:var(--md-checkbox-selected-hover-container-color, var(--md-sys-color-primary, #6750a4))}:where(:hover) .icon{fill:var(--md-checkbox-selected-hover-icon-color, var(--md-sys-color-on-primary, #fff))}:where(:focus-within) .outline{border-color:var(--md-checkbox-focus-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-focus-outline-width, 2px)}:where(:focus-within) .background{background:var(--md-checkbox-selected-focus-container-color, var(--md-sys-color-primary, #6750a4))}:where(:focus-within) .icon{fill:var(--md-checkbox-selected-focus-icon-color, var(--md-sys-color-on-primary, #fff))}:where(:active) .outline{border-color:var(--md-checkbox-pressed-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-pressed-outline-width, 2px)}:where(:active) .background{background:var(--md-checkbox-selected-pressed-container-color, var(--md-sys-color-primary, #6750a4))}:where(:active) .icon{fill:var(--md-checkbox-selected-pressed-icon-color, var(--md-sys-color-on-primary, #fff))}:where(.disabled,.prev-disabled) :is(.background,.icon,.mark){animation-duration:0s;transition-duration:0s}:where(.disabled) .outline{border-color:var(--md-checkbox-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));border-width:var(--md-checkbox-disabled-outline-width, 2px);opacity:var(--md-checkbox-disabled-container-opacity, 0.38)}:where(.selected.disabled) .outline{visibility:hidden}:where(.selected.disabled) .background{background:var(--md-checkbox-selected-disabled-container-color, var(--md-sys-color-on-surface, #1d1b20));opacity:var(--md-checkbox-selected-disabled-container-opacity, 0.38)}:where(.disabled) .icon{fill:var(--md-checkbox-selected-disabled-icon-color, var(--md-sys-color-surface, #fef7ff))}@media(forced-colors: active){.background{background-color:CanvasText}.selected.disabled .background{background-color:GrayText;opacity:1}.outline{border-color:CanvasText}.disabled .outline{border-color:GrayText;opacity:1}.icon{fill:Canvas}}\n`;\n//# sourceMappingURL=checkbox-styles.js.map","/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { __decorate } from \"tslib\";\nimport { customElement } from 'lit/decorators.js';\nimport { Checkbox } from './internal/checkbox.js';\nimport { styles } from './internal/checkbox-styles.js';\n/**\n * @summary Checkboxes allow users to select one or more items from a set.\n * Checkboxes can turn an option on or off.\n *\n * @description\n * Use checkboxes to:\n * - Select one or more options from a list\n * - Present a list containing sub-selections\n * - Turn an item on or off in a desktop environment\n *\n * @final\n * @suppress {visibility}\n */\nlet MdCheckbox = class MdCheckbox extends Checkbox {\n};\nMdCheckbox.styles = [styles];\nMdCheckbox = __decorate([\n customElement('md-checkbox')\n], MdCheckbox);\nexport { MdCheckbox };\n//# sourceMappingURL=checkbox.js.map","import '@material/web/checkbox/checkbox.js'\nimport { html, LitElement, type PropertyValues } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { when } from 'lit/directives/when.js'\nimport { SchmancyFormField } from '@mixins/index'\n\nexport type schmancyCheckBoxChangeEvent = CustomEvent<{\n\tvalue: boolean\n}>\n\n/**\n * @element schmancy-checkbox\n * @slot - The label for the checkbox.\n * @fires change - Event fired when the checkbox value changes.\n */\n@customElement('schmancy-checkbox')\nclass SchmancyCheckboxElement extends SchmancyFormField() {\n\t// Inner <md-checkbox> is the focusable surface; route host focus to it.\n\tprotected static shadowRootOptions = {\n\t\t...LitElement.shadowRootOptions,\n\t\tdelegatesFocus: true,\n\t}\n\n\t// FACE wiring (formAssociated, internals, attachInternals), `name`,\n\t// `disabled`, `required`, `id`, `label`, `error`, `validationMessage`,\n\t// `validateOn`, touched/dirty/submitted, markTouched/markSubmitted,\n\t// FIELD_CONNECT_EVENT dispatch — all from the mixin.\n\n\t/**\n\t * Boolean checked state. Test contract: `cb.value = true` flips the state.\n\t * The FormData *string* is read from `true-value` attribute (or `'on'`\n\t * default) — kept separate from `value` to keep the boolean-state ergonomic.\n\t */\n\t@property({ type: Boolean, reflect: true })\n\toverride value: boolean = false\n\n\t/** Alias for `value` for read-side ergonomics. */\n\t@property({ type: Boolean })\n\tget checked(): boolean {\n\t\treturn this.value\n\t}\n\tset checked(val: boolean) {\n\t\tthis.value = val\n\t}\n\n\t/**\n\t * M3-aligned sizes: 24dp (xxs) → 32dp (xs) → 40dp (sm) → 48dp (md) → 56dp (lg).\n\t */\n\t@property({ type: String })\n\tsize: 'xxs' | 'xs' | 'sm' | 'md' | 'lg' = 'md'\n\n\tprivate get _trueValue(): string {\n\t\treturn this.getAttribute('true-value') ?? 'on'\n\t}\n\n\toverride willUpdate(changed: PropertyValues): void {\n\t\tsuper.willUpdate(changed)\n\t\tif (changed.has('value') || changed.has('name')) {\n\t\t\tthis.internals?.setFormValue(this.value ? this._trueValue : null)\n\t\t\tif (this.value) this.internals?.states.add('checked')\n\t\t\telse this.internals?.states.delete('checked')\n\t\t\tthis.checkValidity()\n\t\t}\n\t\tif (changed.has('required') || changed.has('disabled')) {\n\t\t\tthis.checkValidity()\n\t\t}\n\t}\n\n\t/** Checkbox validity is `checked === true` when required. */\n\toverride checkValidity(): boolean {\n\t\tif (this.disabled) {\n\t\t\tthis.internals?.setValidity({})\n\t\t\treturn true\n\t\t}\n\t\tconst isValid = !this.required || this.value === true\n\t\tconst message = isValid ? '' : 'Please check this box if you want to proceed.'\n\n\t\tthis.internals?.setValidity(\n\t\t\tisValid ? {} : { valueMissing: true },\n\t\t\tisValid ? undefined : message,\n\t\t)\n\n\t\tif (this._shouldShowError()) {\n\t\t\tthis.error = !isValid\n\t\t\tthis.validationMessage = message\n\t\t}\n\t\treturn isValid\n\t}\n\n\t/** Emit only when checked. */\n\toverride toFormEntries(): Array<[string, FormDataEntryValue]> {\n\t\tif (!this.name || this.disabled || !this.value) return []\n\t\treturn [[this.name, this._trueValue]]\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<label class=\"grid grid-flow-col items-center space-x-2 w-fit\">\n\t\t\t\t<md-checkbox\n\t\t\t\t\t.required=${this.required}\n\t\t\t\t\t.disabled=${this.disabled}\n\t\t\t\t\t?checked=${this.value === true}\n\t\t\t\t\t@change=${(e: Event) => {\n\t\t\t\t\t\tthis.value = (e.target as HTMLInputElement).checked\n\t\t\t\t\t\tthis.markTouched()\n\t\t\t\t\t\tthis.emitChange({ value: this.value })\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t</md-checkbox>\n\t\t\t\t${when(\n\t\t\t\t\tthis.label,\n\t\t\t\t\t() => html`<span>${this.label}</span>`,\n\t\t\t\t\t() => html`<slot></slot>`,\n\t\t\t\t)}\n\t\t\t</label>\n\t\t`\n\t}\n}\n\nexport { SchmancyCheckboxElement as SchmancyCheckbox }\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-checkbox': SchmancyCheckboxElement\n\t}\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { o as e } from "./mixins-C42OILRS.js";
1
+ import { o as e } from "./mixins-DySzfmal.js";
2
2
  import { a as t } from "./active-host-BP0zy_Y9.js";
3
3
  import { classMap as n } from "lit/directives/class-map.js";
4
4
  import { customElement as r, property as i, query as a, state as o } from "lit/decorators.js";