placer-toolkit 0.5.1 → 1.0.0-alpha.2

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 (1392) hide show
  1. package/LICENSE.md +1 -1
  2. package/README.md +18 -22
  3. package/cdn/animations/attention_seekers/bounce.js +1 -0
  4. package/cdn/animations/attention_seekers/flash.js +1 -0
  5. package/cdn/animations/attention_seekers/headShake.js +1 -0
  6. package/cdn/animations/attention_seekers/heartBeat.js +1 -0
  7. package/cdn/animations/attention_seekers/jello.js +1 -0
  8. package/cdn/animations/attention_seekers/pulse.js +1 -0
  9. package/cdn/animations/attention_seekers/rubberBand.js +1 -0
  10. package/cdn/animations/attention_seekers/shake.js +1 -0
  11. package/cdn/animations/attention_seekers/shakeX.js +1 -0
  12. package/cdn/animations/attention_seekers/shakeY.js +1 -0
  13. package/cdn/animations/attention_seekers/swing.js +1 -0
  14. package/cdn/animations/attention_seekers/tada.js +1 -0
  15. package/cdn/animations/attention_seekers/wobble.js +1 -0
  16. package/cdn/animations/back_entrances/backInDown.js +1 -0
  17. package/cdn/animations/back_entrances/backInLeft.js +1 -0
  18. package/cdn/animations/back_entrances/backInRight.js +1 -0
  19. package/cdn/animations/back_entrances/backInUp.js +1 -0
  20. package/cdn/animations/back_exits/backOutDown.js +1 -0
  21. package/cdn/animations/back_exits/backOutLeft.js +1 -0
  22. package/cdn/animations/back_exits/backOutRight.js +1 -0
  23. package/cdn/animations/back_exits/backOutUp.js +1 -0
  24. package/cdn/animations/bouncing_entrances/bounceIn.js +1 -0
  25. package/cdn/animations/bouncing_entrances/bounceInDown.js +1 -0
  26. package/cdn/animations/bouncing_entrances/bounceInLeft.js +1 -0
  27. package/cdn/animations/bouncing_entrances/bounceInRight.js +1 -0
  28. package/cdn/animations/bouncing_entrances/bounceInUp.js +1 -0
  29. package/cdn/animations/bouncing_exits/bounceOut.js +1 -0
  30. package/cdn/animations/bouncing_exits/bounceOutDown.js +1 -0
  31. package/cdn/animations/bouncing_exits/bounceOutLeft.js +1 -0
  32. package/cdn/animations/bouncing_exits/bounceOutRight.js +1 -0
  33. package/cdn/animations/bouncing_exits/bounceOutUp.js +1 -0
  34. package/cdn/animations/easings/easings.js +1 -0
  35. package/cdn/animations/fading_entrances/fadeIn.js +1 -0
  36. package/cdn/animations/fading_entrances/fadeInBottomLeft.js +1 -0
  37. package/cdn/animations/fading_entrances/fadeInBottomRight.js +1 -0
  38. package/cdn/animations/fading_entrances/fadeInDown.js +1 -0
  39. package/cdn/animations/fading_entrances/fadeInDownBig.js +1 -0
  40. package/cdn/animations/fading_entrances/fadeInLeft.js +1 -0
  41. package/cdn/animations/fading_entrances/fadeInLeftBig.js +1 -0
  42. package/cdn/animations/fading_entrances/fadeInRight.js +1 -0
  43. package/cdn/animations/fading_entrances/fadeInRightBig.js +1 -0
  44. package/cdn/animations/fading_entrances/fadeInTopLeft.js +1 -0
  45. package/cdn/animations/fading_entrances/fadeInTopRight.js +1 -0
  46. package/cdn/animations/fading_entrances/fadeInUp.js +1 -0
  47. package/cdn/animations/fading_entrances/fadeInUpBig.js +1 -0
  48. package/cdn/animations/fading_exits/fadeOut.js +1 -0
  49. package/cdn/animations/fading_exits/fadeOutBottomLeft.js +1 -0
  50. package/cdn/animations/fading_exits/fadeOutBottomRight.js +1 -0
  51. package/cdn/animations/fading_exits/fadeOutDown.js +1 -0
  52. package/cdn/animations/fading_exits/fadeOutDownBig.js +1 -0
  53. package/cdn/animations/fading_exits/fadeOutLeft.js +1 -0
  54. package/cdn/animations/fading_exits/fadeOutLeftBig.js +1 -0
  55. package/cdn/animations/fading_exits/fadeOutRight.js +1 -0
  56. package/cdn/animations/fading_exits/fadeOutRightBig.js +1 -0
  57. package/cdn/animations/fading_exits/fadeOutTopLeft.js +1 -0
  58. package/cdn/animations/fading_exits/fadeOutTopRight.js +1 -0
  59. package/cdn/animations/fading_exits/fadeOutUp.js +1 -0
  60. package/cdn/animations/fading_exits/fadeOutUpBig.js +1 -0
  61. package/cdn/animations/flippers/flip.js +1 -0
  62. package/cdn/animations/flippers/flipInX.js +1 -0
  63. package/cdn/animations/flippers/flipInY.js +1 -0
  64. package/cdn/animations/flippers/flipOutX.js +1 -0
  65. package/cdn/animations/flippers/flipOutY.js +1 -0
  66. package/cdn/animations/index.js +1 -0
  67. package/cdn/animations/lightspeed/lightSpeedInLeft.js +1 -0
  68. package/cdn/animations/lightspeed/lightSpeedInRight.js +1 -0
  69. package/cdn/animations/lightspeed/lightSpeedOutLeft.js +1 -0
  70. package/cdn/animations/lightspeed/lightSpeedOutRight.js +1 -0
  71. package/cdn/animations/rotating_entrances/rotateIn.js +1 -0
  72. package/cdn/animations/rotating_entrances/rotateInDownLeft.js +1 -0
  73. package/cdn/animations/rotating_entrances/rotateInDownRight.js +1 -0
  74. package/cdn/animations/rotating_entrances/rotateInUpLeft.js +1 -0
  75. package/cdn/animations/rotating_entrances/rotateInUpRight.js +1 -0
  76. package/cdn/animations/rotating_exits/rotateOut.js +1 -0
  77. package/cdn/animations/rotating_exits/rotateOutDownLeft.js +1 -0
  78. package/cdn/animations/rotating_exits/rotateOutDownRight.js +1 -0
  79. package/cdn/animations/rotating_exits/rotateOutUpLeft.js +1 -0
  80. package/cdn/animations/rotating_exits/rotateOutUpRight.js +1 -0
  81. package/cdn/animations/sliding_entrances/slideInDown.js +1 -0
  82. package/cdn/animations/sliding_entrances/slideInLeft.js +1 -0
  83. package/cdn/animations/sliding_entrances/slideInRight.js +1 -0
  84. package/cdn/animations/sliding_entrances/slideInUp.js +1 -0
  85. package/cdn/animations/sliding_exits/slideOutDown.js +1 -0
  86. package/cdn/animations/sliding_exits/slideOutLeft.js +1 -0
  87. package/cdn/animations/sliding_exits/slideOutRight.js +1 -0
  88. package/cdn/animations/sliding_exits/slideOutUp.js +1 -0
  89. package/cdn/animations/specials/hinge.js +1 -0
  90. package/cdn/animations/specials/jackInTheBox.js +1 -0
  91. package/cdn/animations/specials/rollIn.js +1 -0
  92. package/cdn/animations/specials/rollOut.js +1 -0
  93. package/cdn/animations/zooming_entrances/zoomIn.js +1 -0
  94. package/cdn/animations/zooming_entrances/zoomInDown.js +1 -0
  95. package/cdn/animations/zooming_entrances/zoomInLeft.js +1 -0
  96. package/cdn/animations/zooming_entrances/zoomInRight.js +1 -0
  97. package/cdn/animations/zooming_entrances/zoomInUp.js +1 -0
  98. package/cdn/animations/zooming_exits/zoomOut.js +1 -0
  99. package/cdn/animations/zooming_exits/zoomOutDown.js +1 -0
  100. package/cdn/animations/zooming_exits/zoomOutLeft.js +1 -0
  101. package/cdn/animations/zooming_exits/zoomOutRight.js +1 -0
  102. package/cdn/animations/zooming_exits/zoomOutUp.js +1 -0
  103. package/cdn/chunks/chunk.22DZRUGL.js +1 -0
  104. package/cdn/chunks/chunk.2K4PNLGV.js +1 -0
  105. package/cdn/chunks/chunk.2KWTNKGQ.js +74 -0
  106. package/cdn/chunks/chunk.2N5ZK4F4.js +28 -0
  107. package/cdn/chunks/chunk.2SM5MTG6.js +1 -0
  108. package/cdn/chunks/chunk.2SQLMTYR.js +1 -0
  109. package/cdn/chunks/chunk.3EUMG6CL.js +112 -0
  110. package/cdn/chunks/chunk.3U3NAHEY.js +1 -0
  111. package/cdn/chunks/chunk.4CAEAIFN.js +1 -0
  112. package/cdn/chunks/chunk.4GFJDCKO.js +1 -0
  113. package/cdn/chunks/chunk.4NL2VE5O.js +1 -0
  114. package/cdn/chunks/chunk.4VMSMOA5.js +1 -0
  115. package/cdn/chunks/chunk.4W3OJG5Y.js +1 -0
  116. package/cdn/chunks/chunk.4X4XH4O2.js +1 -0
  117. package/cdn/chunks/chunk.4ZFWIEG2.js +1 -0
  118. package/cdn/chunks/chunk.5G3DFRPP.js +1 -0
  119. package/cdn/chunks/chunk.5HIUPHOM.js +1 -0
  120. package/cdn/chunks/chunk.5MJRUHKK.js +1 -0
  121. package/cdn/chunks/chunk.5OTOOMMJ.js +223 -0
  122. package/cdn/chunks/chunk.5PONJGRH.js +1 -0
  123. package/cdn/chunks/chunk.5WAFFOC5.js +1 -0
  124. package/cdn/chunks/chunk.5YXXLUP2.js +111 -0
  125. package/cdn/chunks/chunk.63PFEC3G.js +47 -0
  126. package/cdn/chunks/chunk.63YZ2OGJ.js +179 -0
  127. package/cdn/chunks/chunk.6C4VTMLQ.js +1 -0
  128. package/cdn/chunks/chunk.6RYC5FEW.js +1 -0
  129. package/cdn/chunks/chunk.6SP3MLBX.js +1 -0
  130. package/cdn/chunks/chunk.6T73D5OE.js +94 -0
  131. package/cdn/chunks/chunk.75KPG5ZW.js +73 -0
  132. package/cdn/chunks/chunk.75Y77XUI.js +288 -0
  133. package/cdn/chunks/chunk.7IRWTX4A.js +27 -0
  134. package/cdn/chunks/chunk.7QYDQTBC.js +1 -0
  135. package/cdn/chunks/chunk.7SJBQWSL.js +1 -0
  136. package/cdn/chunks/chunk.7UGLJJM6.js +1 -0
  137. package/cdn/chunks/chunk.7UYSBZLK.js +33 -0
  138. package/cdn/chunks/chunk.7XLP7ZNP.js +0 -0
  139. package/cdn/chunks/chunk.7YEJIK24.js +1 -0
  140. package/cdn/chunks/chunk.ADVDY32Z.js +1 -0
  141. package/cdn/chunks/chunk.AMJDSJZ5.js +130 -0
  142. package/cdn/chunks/chunk.B27E7VEZ.js +1 -0
  143. package/cdn/chunks/chunk.BGH5L7N6.js +1 -0
  144. package/cdn/chunks/chunk.BHNAOKFP.js +4 -0
  145. package/cdn/chunks/chunk.BSQP4EKW.js +17 -0
  146. package/cdn/chunks/chunk.C2RXDH23.js +12 -0
  147. package/cdn/chunks/chunk.CQPLNRNB.js +1 -0
  148. package/cdn/chunks/chunk.D5CFOPIE.js +1 -0
  149. package/cdn/chunks/chunk.DG6SQOFC.js +1 -0
  150. package/cdn/chunks/chunk.DNS43PE3.js +1 -0
  151. package/cdn/chunks/chunk.DQ2EFEM7.js +1 -0
  152. package/cdn/chunks/chunk.DRJDBJ6E.js +1 -0
  153. package/cdn/chunks/chunk.E4QLFQIH.js +1 -0
  154. package/cdn/chunks/chunk.E6MOE4FE.js +1 -0
  155. package/cdn/chunks/chunk.ECBLO7D3.js +1 -0
  156. package/cdn/chunks/chunk.EDLGCMPJ.js +1 -0
  157. package/cdn/chunks/chunk.ELYXTKTB.js +1 -0
  158. package/cdn/chunks/chunk.EMVTQD7Z.js +1 -0
  159. package/cdn/chunks/chunk.ESSED3D6.js +1 -0
  160. package/cdn/chunks/chunk.EZBCPDK5.js +1 -0
  161. package/cdn/chunks/chunk.EZBP4Q35.js +1 -0
  162. package/cdn/chunks/chunk.F7P64TTE.js +1 -0
  163. package/cdn/chunks/chunk.F7QM26VX.js +1 -0
  164. package/cdn/chunks/chunk.G3WMDHXU.js +1 -0
  165. package/cdn/chunks/chunk.G443HDU2.js +1 -0
  166. package/cdn/chunks/chunk.G4SAKBPC.js +1 -0
  167. package/cdn/chunks/chunk.GMD2IG67.js +1 -0
  168. package/cdn/chunks/chunk.GQIBOT7V.js +1 -0
  169. package/cdn/chunks/chunk.GRSW4YMQ.js +157 -0
  170. package/cdn/chunks/chunk.GUYJ76FZ.js +1 -0
  171. package/cdn/chunks/chunk.H2EOXVSZ.js +1 -0
  172. package/cdn/chunks/chunk.HAL7R4WT.js +0 -0
  173. package/cdn/chunks/chunk.HGR2N7GN.js +1 -0
  174. package/cdn/chunks/chunk.HNKZJPU5.js +1 -0
  175. package/cdn/chunks/chunk.HTBAOVSV.js +1 -0
  176. package/cdn/chunks/chunk.IFDHHGOU.js +1 -0
  177. package/cdn/chunks/chunk.IGMWK7NZ.js +1 -0
  178. package/cdn/chunks/chunk.IIHX5LOR.js +1 -0
  179. package/cdn/chunks/chunk.IJB4PCJH.js +1 -0
  180. package/cdn/chunks/chunk.IJMKJLO7.js +1 -0
  181. package/cdn/chunks/chunk.IJXVLI7F.js +1 -0
  182. package/cdn/chunks/chunk.ITURS4YZ.js +68 -0
  183. package/cdn/chunks/chunk.IUL3BHES.js +18 -0
  184. package/cdn/chunks/chunk.IX4OV3X6.js +63 -0
  185. package/cdn/chunks/chunk.J35PXB2V.js +204 -0
  186. package/cdn/chunks/chunk.JE6IZBGI.js +10 -0
  187. package/cdn/chunks/chunk.JTEIIDTY.js +106 -0
  188. package/cdn/chunks/chunk.KDTLVKSZ.js +127 -0
  189. package/cdn/chunks/chunk.KKVT4LHX.js +10 -0
  190. package/cdn/chunks/chunk.KPQGFV2T.js +1 -0
  191. package/cdn/chunks/chunk.KWVZRE3E.js +10 -0
  192. package/cdn/chunks/chunk.KYRT75BX.js +1 -0
  193. package/cdn/chunks/chunk.L2CNBOZJ.js +1 -0
  194. package/cdn/chunks/chunk.L4UUK6G4.js +1 -0
  195. package/cdn/chunks/chunk.LCCA4ADE.js +174 -0
  196. package/cdn/chunks/chunk.LDRHXIYA.js +1 -0
  197. package/cdn/chunks/chunk.LGGEB3IB.js +1 -0
  198. package/cdn/chunks/chunk.LHYUHRTC.js +1 -0
  199. package/cdn/chunks/chunk.LI6ACV6L.js +1 -0
  200. package/cdn/chunks/chunk.LIZVMFP3.js +1 -0
  201. package/cdn/chunks/chunk.LVUPLZGE.js +1 -0
  202. package/cdn/chunks/chunk.LWZCSGTE.js +1 -0
  203. package/cdn/chunks/chunk.M256MZ2P.js +1 -0
  204. package/cdn/chunks/chunk.M2NVAC3Z.js +1 -0
  205. package/cdn/chunks/chunk.MAQ3AU52.js +1 -0
  206. package/cdn/chunks/chunk.MM4THVKJ.js +1 -0
  207. package/cdn/chunks/chunk.MO7QMIH2.js +1 -0
  208. package/cdn/chunks/chunk.MV54FYCN.js +1 -0
  209. package/cdn/chunks/chunk.N5AZOOIZ.js +1 -0
  210. package/cdn/chunks/chunk.N72C3VU3.js +1 -0
  211. package/cdn/chunks/chunk.NE3XXRZM.js +1 -0
  212. package/cdn/chunks/chunk.NPYG3KBW.js +1 -0
  213. package/cdn/chunks/chunk.NTFNGAOW.js +117 -0
  214. package/cdn/chunks/chunk.NU2STAMX.js +1 -0
  215. package/cdn/chunks/chunk.NYIRGEA7.js +1 -0
  216. package/cdn/chunks/chunk.NYYTSWQF.js +38 -0
  217. package/cdn/chunks/chunk.O537LU5E.js +1 -0
  218. package/cdn/chunks/chunk.OD26IPSI.js +1 -0
  219. package/cdn/chunks/chunk.OI4TZZJC.js +305 -0
  220. package/cdn/chunks/chunk.OOQOIJSK.js +1 -0
  221. package/cdn/chunks/chunk.OQDGIWGZ.js +196 -0
  222. package/cdn/chunks/chunk.ORA34WZP.js +1 -0
  223. package/cdn/chunks/chunk.P4UE3S5U.js +1 -0
  224. package/cdn/chunks/chunk.P7GBRX2Q.js +1 -0
  225. package/cdn/chunks/chunk.P7X6ERDI.js +1 -0
  226. package/cdn/chunks/chunk.PBL2P7GX.js +1 -0
  227. package/cdn/chunks/chunk.PCTA7J6C.js +1 -0
  228. package/cdn/chunks/chunk.POW4JBEN.js +79 -0
  229. package/cdn/chunks/chunk.PP72VCB4.js +1 -0
  230. package/cdn/chunks/chunk.PSDD6Q4W.js +1 -0
  231. package/cdn/chunks/chunk.QCISI32Q.js +4 -0
  232. package/cdn/chunks/chunk.QE6C2GEL.js +1 -0
  233. package/cdn/chunks/chunk.QL5C2XOW.js +0 -0
  234. package/cdn/chunks/chunk.QPQZP354.js +208 -0
  235. package/cdn/chunks/chunk.QY5QOZRE.js +1 -0
  236. package/cdn/chunks/chunk.R2GXUKDX.js +1 -0
  237. package/cdn/chunks/chunk.R4FKXVN2.js +1 -0
  238. package/cdn/chunks/chunk.RFDMVIMA.js +1 -0
  239. package/cdn/chunks/chunk.RQ34LIU5.js +1 -0
  240. package/cdn/chunks/chunk.RWQ2HCYN.js +297 -0
  241. package/cdn/chunks/chunk.RYPVSVQS.js +326 -0
  242. package/cdn/chunks/chunk.RZZMGXAZ.js +1 -0
  243. package/cdn/chunks/chunk.SEIDC2AV.js +1 -0
  244. package/cdn/chunks/chunk.SMFJUIOR.js +10 -0
  245. package/cdn/chunks/chunk.SPURF5RT.js +4 -0
  246. package/cdn/chunks/chunk.STH7HATQ.js +142 -0
  247. package/cdn/chunks/chunk.SUPXW5XU.js +1 -0
  248. package/cdn/chunks/chunk.SXVGSAUS.js +4 -0
  249. package/cdn/chunks/chunk.TARXG5U3.js +1 -0
  250. package/cdn/chunks/chunk.TMAMLCL3.js +1 -0
  251. package/cdn/chunks/chunk.TMMJRXEV.js +1 -0
  252. package/cdn/chunks/chunk.TRVVBQVV.js +481 -0
  253. package/cdn/chunks/chunk.TSGCOVAS.js +1 -0
  254. package/cdn/chunks/chunk.TSZI2CPF.js +1 -0
  255. package/cdn/chunks/chunk.U2DNK7H4.js +1 -0
  256. package/cdn/chunks/chunk.U3MA3RIB.js +1 -0
  257. package/cdn/chunks/chunk.U3P5JBYR.js +250 -0
  258. package/cdn/chunks/chunk.U4YNKCI4.js +1 -0
  259. package/cdn/chunks/chunk.U7RBI2DC.js +1 -0
  260. package/cdn/chunks/chunk.UDGTTCHU.js +660 -0
  261. package/cdn/chunks/chunk.UJQFNBOE.js +1 -0
  262. package/cdn/chunks/chunk.UY4REGW5.js +1 -0
  263. package/cdn/chunks/chunk.V3AEPIKH.js +1 -0
  264. package/cdn/chunks/chunk.V4EXVX5U.js +1 -0
  265. package/cdn/chunks/chunk.V4LKFSOV.js +1 -0
  266. package/cdn/chunks/chunk.V7QO7LZ4.js +1 -0
  267. package/cdn/chunks/chunk.VVTMOSN2.js +170 -0
  268. package/cdn/chunks/chunk.W5PM7F34.js +34 -0
  269. package/cdn/chunks/chunk.WLREBMFL.js +1 -0
  270. package/cdn/chunks/chunk.X2UEAQ7T.js +1 -0
  271. package/cdn/chunks/chunk.XDLJVU4W.js +3 -0
  272. package/cdn/chunks/chunk.XESREUP5.js +10 -0
  273. package/cdn/chunks/chunk.XGNJKW3A.js +111 -0
  274. package/cdn/chunks/chunk.XNUSDBIN.js +1 -0
  275. package/cdn/chunks/chunk.XSSNRCMY.js +1 -0
  276. package/cdn/chunks/chunk.Y4QDLYQS.js +1 -0
  277. package/cdn/chunks/chunk.YDM7FW42.js +100 -0
  278. package/cdn/chunks/chunk.YEQLZR6M.js +1 -0
  279. package/cdn/chunks/chunk.YPCDSPNA.js +1 -0
  280. package/cdn/chunks/chunk.YUNTZWZZ.js +73 -0
  281. package/cdn/chunks/chunk.YVZPSF4R.js +1 -0
  282. package/cdn/chunks/chunk.YWY7M46V.js +1 -0
  283. package/cdn/chunks/chunk.Z6NCEETZ.js +1 -0
  284. package/cdn/chunks/chunk.ZDVLHLRA.js +1 -0
  285. package/cdn/chunks/chunk.ZE2WQTE4.js +1 -0
  286. package/cdn/chunks/chunk.ZJK5UEUE.js +1 -0
  287. package/cdn/chunks/chunk.ZRRFT6U7.js +1 -0
  288. package/cdn/chunks/chunk.ZS4GILCB.js +1 -0
  289. package/cdn/chunks/chunk.ZVANQQXU.js +1 -0
  290. package/cdn/chunks/chunk.ZY64ASSW.js +1 -0
  291. package/cdn/chunks/chunk.ZZIEMICG.js +11 -0
  292. package/cdn/components/animation/animation.js +1 -0
  293. package/cdn/components/animation/animations.js +1 -0
  294. package/cdn/components/avatar/avatar.js +1 -0
  295. package/cdn/components/badge/badge.js +1 -0
  296. package/cdn/components/button/button.js +1 -0
  297. package/cdn/components/button-group/button-group.js +1 -0
  298. package/cdn/components/callout/callout.js +1 -0
  299. package/cdn/components/card/card.js +1 -0
  300. package/cdn/components/checkbox/checkbox.js +1 -0
  301. package/cdn/components/color-picker/color-picker.js +1 -0
  302. package/cdn/components/comparer/comparer.js +1 -0
  303. package/cdn/components/copy-button/copy-button.js +1 -0
  304. package/cdn/components/details/details.js +1 -0
  305. package/cdn/components/dialog/dialog.js +1 -0
  306. package/cdn/components/divider/divider.js +1 -0
  307. package/cdn/components/drawer/drawer.js +1 -0
  308. package/cdn/components/dropdown/dropdown.js +1 -0
  309. package/cdn/components/dropdown-item/dropdown-item.js +1 -0
  310. package/cdn/components/format-bytes/format-bytes.js +1 -0
  311. package/cdn/components/format-date/format-date.js +1 -0
  312. package/cdn/components/format-number/format-number.js +1 -0
  313. package/cdn/components/icon/icon.js +1 -0
  314. package/cdn/components/icon/library.default.js +1 -0
  315. package/cdn/components/icon/library.js +1 -0
  316. package/cdn/components/icon/library.system.js +1 -0
  317. package/cdn/components/input/input.js +1 -0
  318. package/cdn/components/mutation-observer/mutation-observer.js +1 -0
  319. package/cdn/components/option/option.js +1 -0
  320. package/cdn/components/popup/popup.js +1 -0
  321. package/cdn/components/qr-code/qr-code.js +1 -0
  322. package/cdn/components/radio/radio.js +1 -0
  323. package/cdn/components/radio-group/radio-group.js +1 -0
  324. package/cdn/components/rating/rating.js +1 -0
  325. package/cdn/components/resize-observer/resize-observer.js +1 -0
  326. package/cdn/components/scroller/scroller.js +1 -0
  327. package/cdn/components/select/select.js +1 -0
  328. package/cdn/components/spinner/spinner.js +1 -0
  329. package/cdn/components/switch/switch.js +1 -0
  330. package/cdn/components/tab/tab.js +1 -0
  331. package/cdn/components/tab-group/tab-group.js +1 -0
  332. package/cdn/components/tab-panel/tab-panel.js +1 -0
  333. package/cdn/components/tag/tag.js +1 -0
  334. package/cdn/components/textarea/textarea.js +1 -0
  335. package/cdn/components/tooltip/tooltip.js +1 -0
  336. package/cdn/custom-elements.json +13055 -0
  337. package/cdn/events/events.js +1 -0
  338. package/cdn/events/pc-after-collapse.js +0 -0
  339. package/cdn/events/pc-after-expand.js +0 -0
  340. package/cdn/events/pc-after-hide.js +0 -0
  341. package/cdn/events/pc-after-show.js +0 -0
  342. package/cdn/events/pc-blur.js +0 -0
  343. package/cdn/events/pc-cancel.js +0 -0
  344. package/cdn/events/pc-change.js +0 -0
  345. package/cdn/events/pc-clear.js +0 -0
  346. package/cdn/events/pc-close.js +0 -0
  347. package/cdn/events/pc-collapse.js +0 -0
  348. package/cdn/events/pc-copy.js +0 -0
  349. package/cdn/events/pc-error.js +0 -0
  350. package/cdn/events/pc-expand.js +0 -0
  351. package/cdn/events/pc-finish.js +0 -0
  352. package/cdn/events/pc-focus.js +0 -0
  353. package/cdn/events/pc-hide.js +0 -0
  354. package/cdn/events/pc-hover.js +0 -0
  355. package/cdn/events/pc-initial-focus.js +0 -0
  356. package/cdn/events/pc-input.js +0 -0
  357. package/cdn/events/pc-invalid.js +0 -0
  358. package/cdn/events/pc-lazy-change.js +0 -0
  359. package/cdn/events/pc-lazy-load.js +0 -0
  360. package/cdn/events/pc-load.js +0 -0
  361. package/cdn/events/pc-mutation.js +0 -0
  362. package/cdn/events/pc-remove.js +0 -0
  363. package/cdn/events/pc-reposition.js +0 -0
  364. package/cdn/events/pc-resize.js +0 -0
  365. package/cdn/events/pc-select.js +0 -0
  366. package/cdn/events/pc-selection-change.js +0 -0
  367. package/cdn/events/pc-show.js +0 -0
  368. package/cdn/events/pc-slide-change.js +0 -0
  369. package/cdn/events/pc-start.js +0 -0
  370. package/cdn/events/pc-tab-hide.js +0 -0
  371. package/cdn/events/pc-tab-show.js +0 -0
  372. package/cdn/global-shims.js +1 -0
  373. package/cdn/internal/active-elements.js +1 -0
  374. package/cdn/internal/animate.js +1 -0
  375. package/cdn/internal/close-active-element.js +1 -0
  376. package/cdn/internal/debounce.js +1 -0
  377. package/cdn/internal/default-value.js +1 -0
  378. package/cdn/internal/drag.js +1 -0
  379. package/cdn/internal/emit.js +1 -0
  380. package/cdn/internal/event.js +1 -0
  381. package/cdn/internal/form.js +1 -0
  382. package/cdn/internal/math.js +1 -0
  383. package/cdn/internal/offset.js +1 -0
  384. package/cdn/internal/parse.js +1 -0
  385. package/cdn/internal/placer-element.js +1 -0
  386. package/cdn/internal/placer-form-control.js +0 -0
  387. package/cdn/internal/scroll.js +1 -0
  388. package/cdn/internal/scrollend-polyfill.js +1 -0
  389. package/cdn/internal/slot.js +1 -0
  390. package/cdn/internal/string.js +1 -0
  391. package/cdn/internal/tabbable.js +1 -0
  392. package/cdn/internal/watch.js +1 -0
  393. package/cdn/placer-autoloader.js +1 -0
  394. package/cdn/placer.js +1 -0
  395. package/cdn/styles/component-styles/form-control.css +33 -0
  396. package/cdn/styles/component-styles/host.css +13 -0
  397. package/cdn/styles/native.css +451 -0
  398. package/cdn/styles/palette/base.css +100 -0
  399. package/cdn/styles/palette/default.css +227 -0
  400. package/cdn/styles/palette/muted.css +227 -0
  401. package/cdn/styles/palette/vibrant.css +227 -0
  402. package/cdn/styles/placer.css +10 -0
  403. package/cdn/styles/themes/default.css +445 -0
  404. package/cdn/styles/themes/serene.css +454 -0
  405. package/cdn/styles/themes/utility.css +544 -0
  406. package/cdn/styles/utilities/align-items.css +21 -0
  407. package/cdn/styles/utilities/appearance.css +62 -0
  408. package/cdn/styles/utilities/border-radius.css +29 -0
  409. package/cdn/styles/utilities/fouce.css +11 -0
  410. package/cdn/styles/utilities/gap.css +66 -0
  411. package/cdn/styles/utilities/layout.css +162 -0
  412. package/cdn/styles/utilities/scroll-lock.css +21 -0
  413. package/cdn/styles/utilities/size.css +16 -0
  414. package/cdn/styles/utilities/text.css +156 -0
  415. package/cdn/styles/utilities/visually-hidden.css +16 -0
  416. package/cdn/styles/utilities.css +13 -0
  417. package/cdn/translations/ar.js +1 -0
  418. package/cdn/translations/bg.js +1 -0
  419. package/cdn/translations/bn.js +1 -0
  420. package/cdn/translations/bs.js +1 -0
  421. package/cdn/translations/ca.js +1 -0
  422. package/cdn/translations/cs.js +1 -0
  423. package/cdn/translations/cy.js +1 -0
  424. package/cdn/translations/da.js +1 -0
  425. package/cdn/translations/de-at.js +1 -0
  426. package/cdn/translations/de-ch.js +1 -0
  427. package/cdn/translations/de.js +1 -0
  428. package/cdn/translations/el.js +1 -0
  429. package/cdn/translations/en-gb.js +1 -0
  430. package/cdn/translations/en.js +1 -0
  431. package/cdn/translations/es-es.js +1 -0
  432. package/cdn/translations/es.js +1 -0
  433. package/cdn/translations/et.js +1 -0
  434. package/cdn/translations/eu.js +1 -0
  435. package/cdn/translations/fa.js +1 -0
  436. package/cdn/translations/fi.js +1 -0
  437. package/cdn/translations/fil.js +1 -0
  438. package/cdn/translations/fo.js +1 -0
  439. package/cdn/translations/fr-ca.js +1 -0
  440. package/cdn/translations/fr.js +1 -0
  441. package/cdn/translations/ga.js +1 -0
  442. package/cdn/translations/gu.js +1 -0
  443. package/cdn/translations/he.js +1 -0
  444. package/cdn/translations/hi.js +1 -0
  445. package/cdn/translations/hr.js +1 -0
  446. package/cdn/translations/hu.js +1 -0
  447. package/cdn/translations/id.js +1 -0
  448. package/cdn/translations/index.js +1 -0
  449. package/cdn/translations/is.js +1 -0
  450. package/cdn/translations/it.js +1 -0
  451. package/cdn/translations/ja.js +1 -0
  452. package/cdn/translations/ko.js +1 -0
  453. package/cdn/translations/lb.js +1 -0
  454. package/cdn/translations/lo.js +1 -0
  455. package/cdn/translations/lt.js +1 -0
  456. package/cdn/translations/lv.js +1 -0
  457. package/cdn/translations/mr.js +1 -0
  458. package/cdn/translations/ms.js +1 -0
  459. package/cdn/translations/mt.js +1 -0
  460. package/cdn/translations/nb.js +1 -0
  461. package/cdn/translations/nl-be.js +1 -0
  462. package/cdn/translations/nl.js +1 -0
  463. package/cdn/translations/nn.js +1 -0
  464. package/cdn/translations/pa-guru.js +1 -0
  465. package/cdn/translations/pa.js +1 -0
  466. package/cdn/translations/pl.js +1 -0
  467. package/cdn/translations/ps.js +1 -0
  468. package/cdn/translations/pt-br.js +1 -0
  469. package/cdn/translations/pt-pt.js +1 -0
  470. package/cdn/translations/pt.js +1 -0
  471. package/cdn/translations/ro.js +1 -0
  472. package/cdn/translations/ru.js +1 -0
  473. package/cdn/translations/sk.js +1 -0
  474. package/cdn/translations/sl.js +1 -0
  475. package/cdn/translations/sq.js +1 -0
  476. package/cdn/translations/sr.js +1 -0
  477. package/cdn/translations/sv.js +1 -0
  478. package/cdn/translations/sw.js +1 -0
  479. package/cdn/translations/te.js +1 -0
  480. package/cdn/translations/th.js +1 -0
  481. package/cdn/translations/tl.js +1 -0
  482. package/cdn/translations/tr.js +1 -0
  483. package/cdn/translations/uk.js +1 -0
  484. package/cdn/translations/ur.js +1 -0
  485. package/cdn/translations/vi.js +1 -0
  486. package/cdn/translations/zh-cn.js +1 -0
  487. package/cdn/translations/zh-hk.js +1 -0
  488. package/cdn/translations/zh-tw.js +1 -0
  489. package/cdn/utilities/animation-registry.js +1 -0
  490. package/cdn/utilities/animation.js +1 -0
  491. package/cdn/utilities/form.js +1 -0
  492. package/cdn/utilities/icon-library.js +1 -0
  493. package/cdn/utilities/kit-code.js +1 -0
  494. package/cdn/utilities/localize.js +1 -0
  495. package/dist/animations/attention_seekers/bounce.js +46 -44
  496. package/dist/animations/attention_seekers/flash.js +10 -8
  497. package/dist/animations/attention_seekers/headShake.js +11 -9
  498. package/dist/animations/attention_seekers/heartBeat.js +10 -8
  499. package/dist/animations/attention_seekers/jello.js +18 -16
  500. package/dist/animations/attention_seekers/pulse.js +8 -6
  501. package/dist/animations/attention_seekers/rubberBand.js +12 -10
  502. package/dist/animations/attention_seekers/shake.js +16 -14
  503. package/dist/animations/attention_seekers/shakeX.js +16 -14
  504. package/dist/animations/attention_seekers/shakeY.js +16 -14
  505. package/dist/animations/attention_seekers/swing.js +10 -8
  506. package/dist/animations/attention_seekers/tada.js +43 -41
  507. package/dist/animations/attention_seekers/wobble.js +27 -25
  508. package/dist/animations/back_entrances/backInDown.js +8 -6
  509. package/dist/animations/back_entrances/backInLeft.js +8 -6
  510. package/dist/animations/back_entrances/backInRight.js +8 -6
  511. package/dist/animations/back_entrances/backInUp.js +8 -6
  512. package/dist/animations/back_exits/backOutDown.js +8 -6
  513. package/dist/animations/back_exits/backOutLeft.js +8 -6
  514. package/dist/animations/back_exits/backOutRight.js +8 -6
  515. package/dist/animations/back_exits/backOutUp.js +8 -6
  516. package/dist/animations/bouncing_entrances/bounceIn.js +17 -15
  517. package/dist/animations/bouncing_entrances/bounceInDown.js +23 -21
  518. package/dist/animations/bouncing_entrances/bounceInLeft.js +23 -21
  519. package/dist/animations/bouncing_entrances/bounceInRight.js +23 -21
  520. package/dist/animations/bouncing_entrances/bounceInUp.js +23 -21
  521. package/dist/animations/bouncing_exits/bounceOut.js +9 -7
  522. package/dist/animations/bouncing_exits/bounceOutDown.js +21 -19
  523. package/dist/animations/bouncing_exits/bounceOutLeft.js +15 -13
  524. package/dist/animations/bouncing_exits/bounceOutRight.js +15 -13
  525. package/dist/animations/bouncing_exits/bounceOutUp.js +21 -19
  526. package/dist/animations/easings/easings.js +34 -32
  527. package/dist/animations/fading_entrances/fadeIn.js +7 -5
  528. package/dist/animations/fading_entrances/fadeInBottomLeft.js +7 -5
  529. package/dist/animations/fading_entrances/fadeInBottomRight.js +7 -5
  530. package/dist/animations/fading_entrances/fadeInDown.js +7 -5
  531. package/dist/animations/fading_entrances/fadeInDownBig.js +7 -5
  532. package/dist/animations/fading_entrances/fadeInLeft.js +7 -5
  533. package/dist/animations/fading_entrances/fadeInLeftBig.js +7 -5
  534. package/dist/animations/fading_entrances/fadeInRight.js +7 -5
  535. package/dist/animations/fading_entrances/fadeInRightBig.js +7 -5
  536. package/dist/animations/fading_entrances/fadeInTopLeft.js +7 -5
  537. package/dist/animations/fading_entrances/fadeInTopRight.js +7 -5
  538. package/dist/animations/fading_entrances/fadeInUp.js +7 -5
  539. package/dist/animations/fading_entrances/fadeInUpBig.js +7 -5
  540. package/dist/animations/fading_exits/fadeOut.js +7 -5
  541. package/dist/animations/fading_exits/fadeOutBottomLeft.js +7 -5
  542. package/dist/animations/fading_exits/fadeOutBottomRight.js +7 -5
  543. package/dist/animations/fading_exits/fadeOutDown.js +7 -5
  544. package/dist/animations/fading_exits/fadeOutDownBig.js +7 -5
  545. package/dist/animations/fading_exits/fadeOutLeft.js +7 -5
  546. package/dist/animations/fading_exits/fadeOutLeftBig.js +7 -5
  547. package/dist/animations/fading_exits/fadeOutRight.js +7 -5
  548. package/dist/animations/fading_exits/fadeOutRightBig.js +7 -5
  549. package/dist/animations/fading_exits/fadeOutTopLeft.js +7 -5
  550. package/dist/animations/fading_exits/fadeOutTopRight.js +7 -5
  551. package/dist/animations/fading_exits/fadeOutUp.js +7 -5
  552. package/dist/animations/fading_exits/fadeOutUpBig.js +7 -5
  553. package/dist/animations/flippers/flip.js +30 -28
  554. package/dist/animations/flippers/flipInX.js +23 -21
  555. package/dist/animations/flippers/flipInY.js +23 -21
  556. package/dist/animations/flippers/flipOutX.js +16 -14
  557. package/dist/animations/flippers/flipOutY.js +16 -14
  558. package/dist/animations/index.js +1208 -101
  559. package/dist/animations/lightspeed/lightSpeedInLeft.js +13 -11
  560. package/dist/animations/lightspeed/lightSpeedInRight.js +13 -11
  561. package/dist/animations/lightspeed/lightSpeedOutLeft.js +11 -9
  562. package/dist/animations/lightspeed/lightSpeedOutRight.js +11 -9
  563. package/dist/animations/rotating_entrances/rotateIn.js +7 -5
  564. package/dist/animations/rotating_entrances/rotateInDownLeft.js +7 -5
  565. package/dist/animations/rotating_entrances/rotateInDownRight.js +7 -5
  566. package/dist/animations/rotating_entrances/rotateInUpLeft.js +7 -5
  567. package/dist/animations/rotating_entrances/rotateInUpRight.js +7 -5
  568. package/dist/animations/rotating_exits/rotateOut.js +7 -5
  569. package/dist/animations/rotating_exits/rotateOutDownLeft.js +7 -5
  570. package/dist/animations/rotating_exits/rotateOutDownRight.js +7 -5
  571. package/dist/animations/rotating_exits/rotateOutUpLeft.js +7 -5
  572. package/dist/animations/rotating_exits/rotateOutUpRight.js +7 -5
  573. package/dist/animations/sliding_entrances/slideInDown.js +7 -5
  574. package/dist/animations/sliding_entrances/slideInLeft.js +7 -5
  575. package/dist/animations/sliding_entrances/slideInRight.js +7 -5
  576. package/dist/animations/sliding_entrances/slideInUp.js +7 -5
  577. package/dist/animations/sliding_exits/slideOutDown.js +7 -5
  578. package/dist/animations/sliding_exits/slideOutLeft.js +7 -5
  579. package/dist/animations/sliding_exits/slideOutRight.js +7 -5
  580. package/dist/animations/sliding_exits/slideOutUp.js +7 -5
  581. package/dist/animations/specials/hinge.js +29 -27
  582. package/dist/animations/specials/jackInTheBox.js +14 -12
  583. package/dist/animations/specials/rollIn.js +11 -9
  584. package/dist/animations/specials/rollOut.js +11 -9
  585. package/dist/animations/zooming_entrances/zoomIn.js +7 -5
  586. package/dist/animations/zooming_entrances/zoomInDown.js +17 -15
  587. package/dist/animations/zooming_entrances/zoomInLeft.js +17 -15
  588. package/dist/animations/zooming_entrances/zoomInRight.js +17 -15
  589. package/dist/animations/zooming_entrances/zoomInUp.js +17 -15
  590. package/dist/animations/zooming_exits/zoomOut.js +8 -6
  591. package/dist/animations/zooming_exits/zoomOutDown.js +17 -15
  592. package/dist/animations/zooming_exits/zoomOutLeft.js +15 -13
  593. package/dist/animations/zooming_exits/zoomOutRight.js +15 -13
  594. package/dist/animations/zooming_exits/zoomOutUp.js +17 -15
  595. package/dist/components/animation/animation.d.ts +65 -3
  596. package/dist/components/animation/animation.js +2185 -3
  597. package/dist/components/animation/animations.js +1225 -8
  598. package/dist/components/avatar/avatar.d.ts +43 -3
  599. package/dist/components/avatar/avatar.js +1323 -3
  600. package/dist/components/badge/badge.d.ts +23 -3
  601. package/dist/components/badge/badge.js +754 -3
  602. package/dist/components/button/button.d.ts +102 -3
  603. package/dist/components/button/button.js +1516 -3
  604. package/dist/components/button-group/button-group.d.ts +28 -3
  605. package/dist/components/button-group/button-group.js +898 -3
  606. package/dist/components/callout/callout.d.ts +24 -3
  607. package/dist/components/callout/callout.js +763 -3
  608. package/dist/components/card/card.d.ts +27 -3
  609. package/dist/components/card/card.js +866 -3
  610. package/dist/components/checkbox/checkbox.d.ts +93 -3
  611. package/dist/components/checkbox/checkbox.js +1920 -3
  612. package/dist/components/color-picker/color-picker.d.ts +206 -0
  613. package/dist/components/color-picker/color-picker.js +7014 -0
  614. package/dist/components/comparer/comparer.d.ts +44 -3
  615. package/dist/components/comparer/comparer.js +1631 -3
  616. package/dist/components/copy-button/copy-button.d.ts +74 -3
  617. package/dist/components/copy-button/copy-button.js +3936 -3
  618. package/dist/components/details/details.d.ts +64 -3
  619. package/dist/components/details/details.js +1735 -3
  620. package/dist/components/dialog/dialog.d.ts +71 -3
  621. package/dist/components/dialog/dialog.js +2062 -3
  622. package/dist/components/divider/divider.d.ts +19 -3
  623. package/dist/components/divider/divider.js +778 -3
  624. package/dist/components/drawer/drawer.d.ts +79 -3
  625. package/dist/components/drawer/drawer.js +2150 -3
  626. package/dist/components/dropdown/dropdown.d.ts +103 -3
  627. package/dist/components/dropdown/dropdown.js +3755 -3
  628. package/dist/components/dropdown-item/dropdown-item.d.ts +84 -0
  629. package/dist/components/dropdown-item/dropdown-item.js +1771 -0
  630. package/dist/components/format-bytes/format-bytes.d.ts +24 -0
  631. package/dist/components/format-bytes/format-bytes.js +960 -0
  632. package/dist/components/format-date/format-date.d.ts +40 -0
  633. package/dist/components/format-date/format-date.js +963 -0
  634. package/dist/components/format-number/format-number.d.ts +39 -0
  635. package/dist/components/format-number/format-number.js +1001 -0
  636. package/dist/components/icon/icon.d.ts +49 -3
  637. package/dist/components/icon/icon.js +1175 -3
  638. package/dist/components/icon/library.d.ts +3 -2
  639. package/dist/components/icon/library.default.js +63 -7
  640. package/dist/components/icon/library.js +230 -23
  641. package/dist/components/icon/library.system.js +134 -119
  642. package/dist/components/input/input.d.ts +165 -3
  643. package/dist/components/input/input.js +2303 -3
  644. package/dist/components/mutation-observer/mutation-observer.d.ts +37 -0
  645. package/dist/components/mutation-observer/mutation-observer.js +873 -0
  646. package/dist/components/option/option.d.ts +53 -3
  647. package/dist/components/option/option.js +1352 -3
  648. package/dist/components/popup/popup.d.ts +87 -3
  649. package/dist/components/popup/popup.js +2934 -3
  650. package/dist/components/qr-code/qr-code.d.ts +32 -3
  651. package/dist/components/qr-code/qr-code.js +1533 -3
  652. package/dist/components/radio/radio.d.ts +42 -3
  653. package/dist/components/radio/radio.js +925 -3
  654. package/dist/components/radio-group/radio-group.d.ts +79 -3
  655. package/dist/components/radio-group/radio-group.js +1519 -3
  656. package/dist/components/rating/rating.d.ts +67 -3
  657. package/dist/components/rating/rating.js +1757 -3
  658. package/dist/components/resize-observer/resize-observer.d.ts +26 -3
  659. package/dist/components/resize-observer/resize-observer.js +835 -3
  660. package/dist/components/scroller/scroller.d.ts +35 -0
  661. package/dist/components/scroller/scroller.js +1072 -0
  662. package/dist/components/select/select.d.ts +179 -3
  663. package/dist/components/select/select.js +5107 -3
  664. package/dist/components/spinner/spinner.d.ts +19 -3
  665. package/dist/components/spinner/spinner.js +917 -3
  666. package/dist/components/switch/switch.d.ts +85 -3
  667. package/dist/components/switch/switch.js +1479 -3
  668. package/dist/components/tab/tab.d.ts +47 -3
  669. package/dist/components/tab/tab.js +1788 -3
  670. package/dist/components/tab-group/tab-group.d.ts +91 -3
  671. package/dist/components/tab-group/tab-group.js +2385 -3
  672. package/dist/components/tab-panel/tab-panel.d.ts +24 -3
  673. package/dist/components/tab-panel/tab-panel.js +847 -3
  674. package/dist/components/tag/tag.d.ts +38 -3
  675. package/dist/components/tag/tag.js +1750 -3
  676. package/dist/components/textarea/textarea.d.ts +137 -0
  677. package/dist/components/textarea/textarea.js +1630 -0
  678. package/dist/components/tooltip/tooltip.d.ts +80 -3
  679. package/dist/components/tooltip/tooltip.js +3298 -3
  680. package/dist/custom-elements.json +13055 -0
  681. package/dist/events/events.d.ts +0 -1
  682. package/dist/events/events.js +0 -1
  683. package/dist/events/pc-after-collapse.js +0 -1
  684. package/dist/events/pc-after-expand.js +0 -1
  685. package/dist/events/pc-after-hide.js +0 -1
  686. package/dist/events/pc-after-show.js +0 -1
  687. package/dist/events/pc-blur.js +0 -1
  688. package/dist/events/pc-cancel.js +0 -1
  689. package/dist/events/pc-change.js +0 -1
  690. package/dist/events/pc-clear.js +0 -1
  691. package/dist/events/pc-close.js +0 -1
  692. package/dist/events/pc-collapse.js +0 -1
  693. package/dist/events/pc-copy.js +0 -1
  694. package/dist/events/pc-error.js +0 -1
  695. package/dist/events/pc-expand.js +0 -1
  696. package/dist/events/pc-finish.js +0 -1
  697. package/dist/events/pc-focus.js +0 -1
  698. package/dist/events/pc-hide.js +0 -1
  699. package/dist/events/pc-hover.js +0 -1
  700. package/dist/events/pc-initial-focus.js +0 -1
  701. package/dist/events/pc-input.js +0 -1
  702. package/dist/events/pc-invalid.js +0 -1
  703. package/dist/events/pc-lazy-change.js +0 -1
  704. package/dist/events/pc-lazy-load.js +0 -1
  705. package/dist/events/pc-load.js +0 -1
  706. package/dist/events/pc-mutation.js +0 -1
  707. package/dist/events/pc-remove.js +0 -1
  708. package/dist/events/pc-reposition.js +0 -1
  709. package/dist/events/pc-resize.js +0 -1
  710. package/dist/events/pc-select.d.ts +2 -2
  711. package/dist/events/pc-select.js +0 -1
  712. package/dist/events/pc-selection-change.d.ts +0 -0
  713. package/dist/events/pc-selection-change.js +0 -1
  714. package/dist/events/pc-show.js +0 -1
  715. package/dist/events/pc-slide-change.d.ts +0 -0
  716. package/dist/events/pc-slide-change.js +0 -1
  717. package/dist/events/pc-start.js +0 -1
  718. package/dist/events/pc-tab-hide.js +0 -1
  719. package/dist/events/pc-tab-show.js +0 -1
  720. package/dist/global-shims.js +84 -83
  721. package/dist/internal/active-elements.d.ts +16 -0
  722. package/dist/internal/active-elements.js +13 -12
  723. package/dist/internal/animate.d.ts +6 -6
  724. package/dist/internal/animate.js +45 -33
  725. package/dist/internal/close-active-element.d.ts +5 -0
  726. package/dist/internal/close-active-element.js +9 -7
  727. package/dist/internal/debounce.js +14 -12
  728. package/dist/internal/default-value.js +582 -22
  729. package/dist/internal/drag.d.ts +4 -0
  730. package/dist/internal/drag.js +25 -23
  731. package/dist/internal/emit.d.ts +1 -0
  732. package/dist/internal/emit.js +14 -12
  733. package/dist/internal/event.d.ts +1 -0
  734. package/dist/internal/event.js +13 -11
  735. package/dist/internal/form.d.ts +31 -13
  736. package/dist/internal/form.js +294 -262
  737. package/dist/internal/math.d.ts +3 -0
  738. package/dist/internal/math.js +29 -10
  739. package/dist/internal/offset.d.ts +1 -0
  740. package/dist/internal/offset.js +12 -8
  741. package/dist/internal/parse.d.ts +2 -0
  742. package/dist/internal/parse.js +7 -0
  743. package/dist/internal/placer-element.d.ts +30 -0
  744. package/dist/internal/placer-element.js +712 -0
  745. package/dist/internal/placer-form-control.d.ts +23 -0
  746. package/dist/internal/placer-form-control.js +0 -0
  747. package/dist/internal/scroll.d.ts +3 -0
  748. package/dist/internal/scroll.js +78 -56
  749. package/dist/internal/scrollend-polyfill.js +68 -60
  750. package/dist/internal/slot.d.ts +3 -0
  751. package/dist/internal/slot.js +74 -68
  752. package/dist/internal/string.d.ts +1 -0
  753. package/dist/internal/string.js +5 -3
  754. package/dist/internal/tabbable.d.ts +1 -0
  755. package/dist/internal/tabbable.js +128 -131
  756. package/dist/internal/watch.d.ts +12 -6
  757. package/dist/internal/watch.js +29 -29
  758. package/dist/placer-autoloader.js +45 -33
  759. package/dist/placer.d.ts +42 -38
  760. package/dist/placer.js +16097 -43
  761. package/dist/styles/component-styles/form-control.css +33 -0
  762. package/dist/styles/component-styles/host.css +13 -0
  763. package/dist/styles/native.css +451 -0
  764. package/dist/styles/palette/base.css +100 -0
  765. package/dist/styles/palette/default.css +227 -0
  766. package/dist/styles/palette/muted.css +227 -0
  767. package/dist/styles/palette/vibrant.css +227 -0
  768. package/dist/styles/placer.css +10 -0
  769. package/dist/styles/themes/default.css +445 -0
  770. package/dist/styles/themes/serene.css +454 -0
  771. package/dist/styles/themes/utility.css +544 -0
  772. package/dist/styles/utilities/align-items.css +21 -0
  773. package/dist/styles/utilities/appearance.css +62 -0
  774. package/dist/styles/utilities/border-radius.css +29 -0
  775. package/dist/styles/utilities/fouce.css +11 -0
  776. package/dist/styles/utilities/gap.css +66 -0
  777. package/dist/styles/utilities/layout.css +162 -0
  778. package/dist/styles/utilities/scroll-lock.css +21 -0
  779. package/dist/styles/utilities/size.css +16 -0
  780. package/dist/styles/utilities/text.css +156 -0
  781. package/dist/styles/utilities/visually-hidden.css +16 -0
  782. package/dist/styles/utilities.css +13 -0
  783. package/dist/translations/ar.d.ts +3 -0
  784. package/dist/translations/ar.js +655 -0
  785. package/dist/translations/bg.d.ts +3 -0
  786. package/dist/translations/bg.js +651 -0
  787. package/dist/translations/bn.d.ts +3 -0
  788. package/dist/translations/bn.js +651 -0
  789. package/dist/translations/bs.d.ts +3 -0
  790. package/dist/translations/bs.js +655 -0
  791. package/dist/translations/ca.d.ts +3 -0
  792. package/dist/translations/ca.js +651 -0
  793. package/dist/translations/cs.d.ts +3 -0
  794. package/dist/translations/cs.js +653 -0
  795. package/dist/translations/cy.d.ts +3 -0
  796. package/dist/translations/cy.js +651 -0
  797. package/dist/translations/da.d.ts +3 -0
  798. package/dist/translations/da.js +651 -0
  799. package/dist/translations/de-at.d.ts +3 -0
  800. package/dist/translations/de-at.js +661 -0
  801. package/dist/translations/de-ch.d.ts +3 -0
  802. package/dist/translations/de-ch.js +662 -0
  803. package/dist/translations/de.d.ts +3 -0
  804. package/dist/translations/de.js +651 -0
  805. package/dist/translations/el.d.ts +3 -0
  806. package/dist/translations/el.js +651 -0
  807. package/dist/translations/en-gb.d.ts +3 -0
  808. package/dist/translations/en-gb.js +664 -0
  809. package/dist/translations/en.d.ts +3 -0
  810. package/dist/translations/en.js +651 -0
  811. package/dist/translations/es-es.d.ts +3 -0
  812. package/dist/translations/es-es.js +664 -0
  813. package/dist/translations/es.d.ts +3 -0
  814. package/dist/translations/es.js +651 -0
  815. package/dist/translations/et.d.ts +3 -0
  816. package/dist/translations/et.js +651 -0
  817. package/dist/translations/eu.d.ts +3 -0
  818. package/dist/translations/eu.js +651 -0
  819. package/dist/translations/fa.d.ts +3 -0
  820. package/dist/translations/fa.js +651 -0
  821. package/dist/translations/fi.d.ts +3 -0
  822. package/dist/translations/fi.js +651 -0
  823. package/dist/translations/fil.d.ts +3 -0
  824. package/dist/translations/fil.js +651 -0
  825. package/dist/translations/fo.d.ts +3 -0
  826. package/dist/translations/fo.js +651 -0
  827. package/dist/translations/fr-ca.d.ts +3 -0
  828. package/dist/translations/fr-ca.js +662 -0
  829. package/dist/translations/fr.d.ts +3 -0
  830. package/dist/translations/fr.js +651 -0
  831. package/dist/translations/ga.d.ts +3 -0
  832. package/dist/translations/ga.js +651 -0
  833. package/dist/translations/gu.d.ts +3 -0
  834. package/dist/translations/gu.js +651 -0
  835. package/dist/translations/he.d.ts +3 -0
  836. package/dist/translations/he.js +651 -0
  837. package/dist/translations/hi.d.ts +3 -0
  838. package/dist/translations/hi.js +651 -0
  839. package/dist/translations/hr.d.ts +3 -0
  840. package/dist/translations/hr.js +655 -0
  841. package/dist/translations/hu.d.ts +3 -0
  842. package/dist/translations/hu.js +651 -0
  843. package/dist/translations/id.d.ts +3 -0
  844. package/dist/translations/id.js +651 -0
  845. package/dist/translations/index.d.ts +62 -0
  846. package/dist/translations/index.js +693 -0
  847. package/dist/translations/is.d.ts +3 -0
  848. package/dist/translations/is.js +651 -0
  849. package/dist/translations/it.d.ts +3 -0
  850. package/dist/translations/it.js +651 -0
  851. package/dist/translations/ja.d.ts +3 -0
  852. package/dist/translations/ja.js +649 -0
  853. package/dist/translations/ko.d.ts +3 -0
  854. package/dist/translations/ko.js +649 -0
  855. package/dist/translations/lb.d.ts +3 -0
  856. package/dist/translations/lb.js +651 -0
  857. package/dist/translations/lo.d.ts +3 -0
  858. package/dist/translations/lo.js +643 -0
  859. package/dist/translations/lt.d.ts +3 -0
  860. package/dist/translations/lt.js +651 -0
  861. package/dist/translations/lv.d.ts +3 -0
  862. package/dist/translations/lv.js +651 -0
  863. package/dist/translations/mr.d.ts +3 -0
  864. package/dist/translations/mr.js +651 -0
  865. package/dist/translations/ms.d.ts +3 -0
  866. package/dist/translations/ms.js +643 -0
  867. package/dist/translations/mt.d.ts +3 -0
  868. package/dist/translations/mt.js +651 -0
  869. package/dist/translations/nb.d.ts +3 -0
  870. package/dist/translations/nb.js +651 -0
  871. package/dist/translations/nl-be.d.ts +3 -0
  872. package/dist/translations/nl-be.js +664 -0
  873. package/dist/translations/nl.d.ts +3 -0
  874. package/dist/translations/nl.js +651 -0
  875. package/dist/translations/nn.d.ts +3 -0
  876. package/dist/translations/nn.js +677 -0
  877. package/dist/translations/pa-guru.d.ts +3 -0
  878. package/dist/translations/pa-guru.js +651 -0
  879. package/dist/translations/pa.d.ts +3 -0
  880. package/dist/translations/pa.js +651 -0
  881. package/dist/translations/pl.d.ts +3 -0
  882. package/dist/translations/pl.js +655 -0
  883. package/dist/translations/ps.d.ts +3 -0
  884. package/dist/translations/ps.js +651 -0
  885. package/dist/translations/pt-br.d.ts +3 -0
  886. package/dist/translations/pt-br.js +664 -0
  887. package/dist/translations/pt-pt.d.ts +3 -0
  888. package/dist/translations/pt-pt.js +685 -0
  889. package/dist/translations/pt.d.ts +3 -0
  890. package/dist/translations/pt.js +651 -0
  891. package/dist/translations/ro.d.ts +3 -0
  892. package/dist/translations/ro.js +651 -0
  893. package/dist/translations/ru.d.ts +3 -0
  894. package/dist/translations/ru.js +657 -0
  895. package/dist/translations/sk.d.ts +3 -0
  896. package/dist/translations/sk.js +653 -0
  897. package/dist/translations/sl.d.ts +3 -0
  898. package/dist/translations/sl.js +655 -0
  899. package/dist/translations/sq.d.ts +3 -0
  900. package/dist/translations/sq.js +651 -0
  901. package/dist/translations/sr.d.ts +3 -0
  902. package/dist/translations/sr.js +655 -0
  903. package/dist/translations/sv.d.ts +3 -0
  904. package/dist/translations/sv.js +651 -0
  905. package/dist/translations/sw.d.ts +3 -0
  906. package/dist/translations/sw.js +651 -0
  907. package/dist/translations/te.d.ts +3 -0
  908. package/dist/translations/te.js +651 -0
  909. package/dist/translations/th.d.ts +3 -0
  910. package/dist/translations/th.js +643 -0
  911. package/dist/translations/tl.d.ts +3 -0
  912. package/dist/translations/tl.js +651 -0
  913. package/dist/translations/tr.d.ts +3 -0
  914. package/dist/translations/tr.js +651 -0
  915. package/dist/translations/uk.d.ts +3 -0
  916. package/dist/translations/uk.js +655 -0
  917. package/dist/translations/ur.d.ts +3 -0
  918. package/dist/translations/ur.js +651 -0
  919. package/dist/translations/vi.d.ts +3 -0
  920. package/dist/translations/vi.js +651 -0
  921. package/dist/translations/zh-cn.d.ts +3 -0
  922. package/dist/translations/zh-cn.js +651 -0
  923. package/dist/translations/zh-hk.d.ts +3 -0
  924. package/dist/translations/zh-hk.js +649 -0
  925. package/dist/translations/zh-tw.d.ts +3 -0
  926. package/dist/translations/zh-tw.js +674 -0
  927. package/dist/utilities/animation-registry.js +33 -29
  928. package/dist/utilities/animation.js +1229 -1
  929. package/dist/utilities/form.js +61 -34
  930. package/dist/utilities/icon-library.js +229 -1
  931. package/dist/utilities/kit-code.d.ts +2 -0
  932. package/dist/utilities/kit-code.js +18 -0
  933. package/dist/utilities/localize.d.ts +35 -0
  934. package/dist/utilities/localize.js +739 -0
  935. package/package.json +86 -79
  936. package/dist/components/animation/animation.component.d.ts +0 -65
  937. package/dist/components/animation/animation.component.js +0 -247
  938. package/dist/components/animation/animation.styles.d.ts +0 -1
  939. package/dist/components/animation/animation.styles.js +0 -9
  940. package/dist/components/avatar/avatar.component.d.ts +0 -43
  941. package/dist/components/avatar/avatar.component.js +0 -137
  942. package/dist/components/avatar/avatar.styles.d.ts +0 -1
  943. package/dist/components/avatar/avatar.styles.js +0 -68
  944. package/dist/components/badge/badge.component.d.ts +0 -21
  945. package/dist/components/badge/badge.component.js +0 -64
  946. package/dist/components/badge/badge.styles.d.ts +0 -1
  947. package/dist/components/badge/badge.styles.js +0 -76
  948. package/dist/components/button/button.component.d.ts +0 -104
  949. package/dist/components/button/button.component.js +0 -346
  950. package/dist/components/button/button.styles.d.ts +0 -1
  951. package/dist/components/button/button.styles.js +0 -322
  952. package/dist/components/button-group/button-group.component.d.ts +0 -26
  953. package/dist/components/button-group/button-group.component.js +0 -93
  954. package/dist/components/button-group/button-group.styles.d.ts +0 -1
  955. package/dist/components/button-group/button-group.styles.js +0 -14
  956. package/dist/components/callout/callout.component.d.ts +0 -22
  957. package/dist/components/callout/callout.component.js +0 -63
  958. package/dist/components/callout/callout.styles.d.ts +0 -1
  959. package/dist/components/callout/callout.styles.js +0 -68
  960. package/dist/components/card/card.component.d.ts +0 -29
  961. package/dist/components/card/card.component.js +0 -59
  962. package/dist/components/card/card.styles.d.ts +0 -1
  963. package/dist/components/card/card.styles.js +0 -65
  964. package/dist/components/checkbox/checkbox.component.d.ts +0 -44
  965. package/dist/components/checkbox/checkbox.component.js +0 -287
  966. package/dist/components/checkbox/checkbox.styles.d.ts +0 -1
  967. package/dist/components/checkbox/checkbox.styles.js +0 -166
  968. package/dist/components/comparer/comparer.component.d.ts +0 -43
  969. package/dist/components/comparer/comparer.component.js +0 -181
  970. package/dist/components/comparer/comparer.styles.d.ts +0 -1
  971. package/dist/components/comparer/comparer.styles.js +0 -75
  972. package/dist/components/copy-button/copy-button.component.d.ts +0 -75
  973. package/dist/components/copy-button/copy-button.component.js +0 -289
  974. package/dist/components/copy-button/copy-button.styles.d.ts +0 -1
  975. package/dist/components/copy-button/copy-button.styles.js +0 -61
  976. package/dist/components/details/details.component.d.ts +0 -25
  977. package/dist/components/details/details.component.js +0 -243
  978. package/dist/components/details/details.styles.d.ts +0 -1
  979. package/dist/components/details/details.styles.js +0 -86
  980. package/dist/components/dialog/dialog.component.d.ts +0 -84
  981. package/dist/components/dialog/dialog.component.js +0 -362
  982. package/dist/components/dialog/dialog.styles.d.ts +0 -1
  983. package/dist/components/dialog/dialog.styles.js +0 -123
  984. package/dist/components/divider/divider.component.d.ts +0 -20
  985. package/dist/components/divider/divider.component.js +0 -51
  986. package/dist/components/divider/divider.styles.d.ts +0 -1
  987. package/dist/components/divider/divider.styles.js +0 -29
  988. package/dist/components/drawer/drawer.component.d.ts +0 -95
  989. package/dist/components/drawer/drawer.component.js +0 -509
  990. package/dist/components/drawer/drawer.styles.d.ts +0 -1
  991. package/dist/components/drawer/drawer.styles.js +0 -157
  992. package/dist/components/dropdown/dropdown.component.d.ts +0 -44
  993. package/dist/components/dropdown/dropdown.component.js +0 -385
  994. package/dist/components/dropdown/dropdown.styles.d.ts +0 -1
  995. package/dist/components/dropdown/dropdown.styles.js +0 -52
  996. package/dist/components/icon/icon.component.d.ts +0 -47
  997. package/dist/components/icon/icon.component.js +0 -225
  998. package/dist/components/icon/icon.styles.d.ts +0 -1
  999. package/dist/components/icon/icon.styles.js +0 -49
  1000. package/dist/components/icon-button/icon-button.component.d.ts +0 -27
  1001. package/dist/components/icon-button/icon-button.component.js +0 -151
  1002. package/dist/components/icon-button/icon-button.d.ts +0 -8
  1003. package/dist/components/icon-button/icon-button.js +0 -5
  1004. package/dist/components/icon-button/icon-button.styles.d.ts +0 -1
  1005. package/dist/components/icon-button/icon-button.styles.js +0 -53
  1006. package/dist/components/input/input.component.d.ts +0 -78
  1007. package/dist/components/input/input.component.js +0 -513
  1008. package/dist/components/input/input.styles.d.ts +0 -1
  1009. package/dist/components/input/input.styles.js +0 -308
  1010. package/dist/components/menu/menu.component.d.ts +0 -20
  1011. package/dist/components/menu/menu.component.js +0 -123
  1012. package/dist/components/menu/menu.d.ts +0 -8
  1013. package/dist/components/menu/menu.js +0 -5
  1014. package/dist/components/menu/menu.styles.d.ts +0 -1
  1015. package/dist/components/menu/menu.styles.js +0 -20
  1016. package/dist/components/menu-item/menu-item.component.d.ts +0 -34
  1017. package/dist/components/menu-item/menu-item.component.js +0 -211
  1018. package/dist/components/menu-item/menu-item.d.ts +0 -8
  1019. package/dist/components/menu-item/menu-item.js +0 -5
  1020. package/dist/components/menu-item/menu-item.styles.d.ts +0 -1
  1021. package/dist/components/menu-item/menu-item.styles.js +0 -157
  1022. package/dist/components/menu-item/submenu-controller.d.ts +0 -34
  1023. package/dist/components/menu-item/submenu-controller.js +0 -246
  1024. package/dist/components/menu-label/menu-label.component.d.ts +0 -15
  1025. package/dist/components/menu-label/menu-label.component.js +0 -25
  1026. package/dist/components/menu-label/menu-label.d.ts +0 -8
  1027. package/dist/components/menu-label/menu-label.js +0 -5
  1028. package/dist/components/menu-label/menu-label.styles.d.ts +0 -1
  1029. package/dist/components/menu-label/menu-label.styles.js +0 -22
  1030. package/dist/components/option/option.component.d.ts +0 -42
  1031. package/dist/components/option/option.component.js +0 -161
  1032. package/dist/components/option/option.styles.d.ts +0 -1
  1033. package/dist/components/option/option.styles.js +0 -108
  1034. package/dist/components/popup/popup.component.d.ts +0 -44
  1035. package/dist/components/popup/popup.component.js +0 -483
  1036. package/dist/components/popup/popup.styles.d.ts +0 -1
  1037. package/dist/components/popup/popup.styles.js +0 -64
  1038. package/dist/components/qr-code/qr-code.component.d.ts +0 -16
  1039. package/dist/components/qr-code/qr-code.component.js +0 -94
  1040. package/dist/components/qr-code/qr-code.styles.d.ts +0 -1
  1041. package/dist/components/qr-code/qr-code.styles.js +0 -9
  1042. package/dist/components/radio/radio.component.d.ts +0 -19
  1043. package/dist/components/radio/radio.component.js +0 -120
  1044. package/dist/components/radio/radio.styles.d.ts +0 -1
  1045. package/dist/components/radio/radio.styles.js +0 -132
  1046. package/dist/components/radio-button/radio-button.component.d.ts +0 -22
  1047. package/dist/components/radio-button/radio-button.component.js +0 -131
  1048. package/dist/components/radio-button/radio-button.d.ts +0 -8
  1049. package/dist/components/radio-button/radio-button.js +0 -5
  1050. package/dist/components/radio-button/radio-button.styles.d.ts +0 -1
  1051. package/dist/components/radio-button/radio-button.styles.js +0 -25
  1052. package/dist/components/radio-group/radio-group.component.d.ts +0 -46
  1053. package/dist/components/radio-group/radio-group.component.js +0 -379
  1054. package/dist/components/radio-group/radio-group.styles.d.ts +0 -1
  1055. package/dist/components/radio-group/radio-group.styles.js +0 -42
  1056. package/dist/components/rating/rating.component.d.ts +0 -37
  1057. package/dist/components/rating/rating.component.js +0 -308
  1058. package/dist/components/rating/rating.styles.d.ts +0 -1
  1059. package/dist/components/rating/rating.styles.js +0 -94
  1060. package/dist/components/resize-observer/resize-observer.component.d.ts +0 -26
  1061. package/dist/components/resize-observer/resize-observer.component.js +0 -89
  1062. package/dist/components/resize-observer/resize-observer.styles.d.ts +0 -1
  1063. package/dist/components/resize-observer/resize-observer.styles.js +0 -9
  1064. package/dist/components/select/select.component.d.ts +0 -174
  1065. package/dist/components/select/select.component.js +0 -960
  1066. package/dist/components/select/select.styles.d.ts +0 -1
  1067. package/dist/components/select/select.styles.js +0 -363
  1068. package/dist/components/spinner/spinner.component.d.ts +0 -20
  1069. package/dist/components/spinner/spinner.component.js +0 -47
  1070. package/dist/components/spinner/spinner.styles.d.ts +0 -1
  1071. package/dist/components/spinner/spinner.styles.js +0 -61
  1072. package/dist/components/switch/switch.component.d.ts +0 -84
  1073. package/dist/components/switch/switch.component.js +0 -281
  1074. package/dist/components/switch/switch.styles.d.ts +0 -1
  1075. package/dist/components/switch/switch.styles.js +0 -178
  1076. package/dist/components/tab/tab.component.d.ts +0 -22
  1077. package/dist/components/tab/tab.component.js +0 -112
  1078. package/dist/components/tab/tab.styles.d.ts +0 -1
  1079. package/dist/components/tab/tab.styles.js +0 -85
  1080. package/dist/components/tab-group/tab-group.component.d.ts +0 -51
  1081. package/dist/components/tab-group/tab-group.component.js +0 -513
  1082. package/dist/components/tab-group/tab-group.styles.d.ts +0 -1
  1083. package/dist/components/tab-group/tab-group.styles.js +0 -219
  1084. package/dist/components/tab-panel/tab-panel.component.d.ts +0 -12
  1085. package/dist/components/tab-panel/tab-panel.component.js +0 -56
  1086. package/dist/components/tab-panel/tab-panel.styles.d.ts +0 -1
  1087. package/dist/components/tab-panel/tab-panel.styles.js +0 -18
  1088. package/dist/components/tag/tag.component.d.ts +0 -38
  1089. package/dist/components/tag/tag.component.js +0 -109
  1090. package/dist/components/tag/tag.styles.d.ts +0 -1
  1091. package/dist/components/tag/tag.styles.js +0 -155
  1092. package/dist/components/tooltip/tooltip.component.d.ts +0 -38
  1093. package/dist/components/tooltip/tooltip.component.js +0 -267
  1094. package/dist/components/tooltip/tooltip.styles.d.ts +0 -1
  1095. package/dist/components/tooltip/tooltip.styles.js +0 -59
  1096. package/dist/default.css +0 -1005
  1097. package/dist/events/pc-request-close.d.ts +0 -8
  1098. package/dist/events/pc-request-close.js +0 -1
  1099. package/dist/internal/modal.d.ts +0 -19
  1100. package/dist/internal/modal.js +0 -116
  1101. package/dist/native-styles.css +0 -261
  1102. package/dist/style-utilities/fouce.css +0 -13
  1103. package/dist/style-utilities/style-utilities.css +0 -2
  1104. package/dist/style-utilities/visually-hidden.css +0 -12
  1105. package/dist/utilities/base-path.d.ts +0 -2
  1106. package/dist/utilities/base-path.js +0 -8
  1107. package/dist/utility.css +0 -41
  1108. package/src/animations/attention_seekers/bounce.ts +0 -43
  1109. package/src/animations/attention_seekers/flash.ts +0 -7
  1110. package/src/animations/attention_seekers/headShake.ts +0 -8
  1111. package/src/animations/attention_seekers/heartBeat.ts +0 -7
  1112. package/src/animations/attention_seekers/jello.ts +0 -15
  1113. package/src/animations/attention_seekers/pulse.ts +0 -5
  1114. package/src/animations/attention_seekers/rubberBand.ts +0 -9
  1115. package/src/animations/attention_seekers/shake.ts +0 -13
  1116. package/src/animations/attention_seekers/shakeX.ts +0 -13
  1117. package/src/animations/attention_seekers/shakeY.ts +0 -13
  1118. package/src/animations/attention_seekers/swing.ts +0 -7
  1119. package/src/animations/attention_seekers/tada.ts +0 -40
  1120. package/src/animations/attention_seekers/wobble.ts +0 -24
  1121. package/src/animations/back_entrances/backInDown.ts +0 -5
  1122. package/src/animations/back_entrances/backInLeft.ts +0 -5
  1123. package/src/animations/back_entrances/backInRight.ts +0 -5
  1124. package/src/animations/back_entrances/backInUp.ts +0 -5
  1125. package/src/animations/back_exits/backOutDown.ts +0 -5
  1126. package/src/animations/back_exits/backOutLeft.ts +0 -5
  1127. package/src/animations/back_exits/backOutRight.ts +0 -5
  1128. package/src/animations/back_exits/backOutUp.ts +0 -5
  1129. package/src/animations/bouncing_entrances/bounceIn.ts +0 -14
  1130. package/src/animations/bouncing_entrances/bounceInDown.ts +0 -20
  1131. package/src/animations/bouncing_entrances/bounceInLeft.ts +0 -20
  1132. package/src/animations/bouncing_entrances/bounceInRight.ts +0 -20
  1133. package/src/animations/bouncing_entrances/bounceInUp.ts +0 -20
  1134. package/src/animations/bouncing_exits/bounceOut.ts +0 -6
  1135. package/src/animations/bouncing_exits/bounceOutDown.ts +0 -18
  1136. package/src/animations/bouncing_exits/bounceOutLeft.ts +0 -12
  1137. package/src/animations/bouncing_exits/bounceOutRight.ts +0 -12
  1138. package/src/animations/bouncing_exits/bounceOutUp.ts +0 -18
  1139. package/src/animations/easings/easings.ts +0 -31
  1140. package/src/animations/fading_entrances/fadeIn.ts +0 -4
  1141. package/src/animations/fading_entrances/fadeInBottomLeft.ts +0 -4
  1142. package/src/animations/fading_entrances/fadeInBottomRight.ts +0 -4
  1143. package/src/animations/fading_entrances/fadeInDown.ts +0 -4
  1144. package/src/animations/fading_entrances/fadeInDownBig.ts +0 -4
  1145. package/src/animations/fading_entrances/fadeInLeft.ts +0 -4
  1146. package/src/animations/fading_entrances/fadeInLeftBig.ts +0 -4
  1147. package/src/animations/fading_entrances/fadeInRight.ts +0 -4
  1148. package/src/animations/fading_entrances/fadeInRightBig.ts +0 -4
  1149. package/src/animations/fading_entrances/fadeInTopLeft.ts +0 -4
  1150. package/src/animations/fading_entrances/fadeInTopRight.ts +0 -4
  1151. package/src/animations/fading_entrances/fadeInUp.ts +0 -4
  1152. package/src/animations/fading_entrances/fadeInUpBig.ts +0 -4
  1153. package/src/animations/fading_exits/fadeOut.ts +0 -4
  1154. package/src/animations/fading_exits/fadeOutBottomLeft.ts +0 -4
  1155. package/src/animations/fading_exits/fadeOutBottomRight.ts +0 -4
  1156. package/src/animations/fading_exits/fadeOutDown.ts +0 -4
  1157. package/src/animations/fading_exits/fadeOutDownBig.ts +0 -4
  1158. package/src/animations/fading_exits/fadeOutLeft.ts +0 -4
  1159. package/src/animations/fading_exits/fadeOutLeftBig.ts +0 -4
  1160. package/src/animations/fading_exits/fadeOutRight.ts +0 -4
  1161. package/src/animations/fading_exits/fadeOutRightBig.ts +0 -4
  1162. package/src/animations/fading_exits/fadeOutTopLeft.ts +0 -4
  1163. package/src/animations/fading_exits/fadeOutTopRight.ts +0 -4
  1164. package/src/animations/fading_exits/fadeOutUp.ts +0 -4
  1165. package/src/animations/fading_exits/fadeOutUpBig.ts +0 -4
  1166. package/src/animations/flippers/flip.ts +0 -32
  1167. package/src/animations/flippers/flipInX.ts +0 -20
  1168. package/src/animations/flippers/flipInY.ts +0 -20
  1169. package/src/animations/flippers/flipOutX.ts +0 -13
  1170. package/src/animations/flippers/flipOutY.ts +0 -13
  1171. package/src/animations/index.ts +0 -101
  1172. package/src/animations/lightspeed/lightSpeedInLeft.ts +0 -10
  1173. package/src/animations/lightspeed/lightSpeedInRight.ts +0 -10
  1174. package/src/animations/lightspeed/lightSpeedOutLeft.ts +0 -8
  1175. package/src/animations/lightspeed/lightSpeedOutRight.ts +0 -8
  1176. package/src/animations/rotating_entrances/rotateIn.ts +0 -4
  1177. package/src/animations/rotating_entrances/rotateInDownLeft.ts +0 -4
  1178. package/src/animations/rotating_entrances/rotateInDownRight.ts +0 -4
  1179. package/src/animations/rotating_entrances/rotateInUpLeft.ts +0 -4
  1180. package/src/animations/rotating_entrances/rotateInUpRight.ts +0 -4
  1181. package/src/animations/rotating_exits/rotateOut.ts +0 -4
  1182. package/src/animations/rotating_exits/rotateOutDownLeft.ts +0 -4
  1183. package/src/animations/rotating_exits/rotateOutDownRight.ts +0 -4
  1184. package/src/animations/rotating_exits/rotateOutUpLeft.ts +0 -4
  1185. package/src/animations/rotating_exits/rotateOutUpRight.ts +0 -4
  1186. package/src/animations/sliding_entrances/slideInDown.ts +0 -4
  1187. package/src/animations/sliding_entrances/slideInLeft.ts +0 -4
  1188. package/src/animations/sliding_entrances/slideInRight.ts +0 -4
  1189. package/src/animations/sliding_entrances/slideInUp.ts +0 -4
  1190. package/src/animations/sliding_exits/slideOutDown.ts +0 -4
  1191. package/src/animations/sliding_exits/slideOutLeft.ts +0 -4
  1192. package/src/animations/sliding_exits/slideOutRight.ts +0 -4
  1193. package/src/animations/sliding_exits/slideOutUp.ts +0 -4
  1194. package/src/animations/specials/hinge.ts +0 -26
  1195. package/src/animations/specials/jackInTheBox.ts +0 -11
  1196. package/src/animations/specials/rollIn.ts +0 -8
  1197. package/src/animations/specials/rollOut.ts +0 -8
  1198. package/src/animations/zooming_entrances/zoomIn.ts +0 -4
  1199. package/src/animations/zooming_entrances/zoomInDown.ts +0 -14
  1200. package/src/animations/zooming_entrances/zoomInLeft.ts +0 -14
  1201. package/src/animations/zooming_entrances/zoomInRight.ts +0 -14
  1202. package/src/animations/zooming_entrances/zoomInUp.ts +0 -14
  1203. package/src/animations/zooming_exits/zoomOut.ts +0 -5
  1204. package/src/animations/zooming_exits/zoomOutDown.ts +0 -14
  1205. package/src/animations/zooming_exits/zoomOutLeft.ts +0 -12
  1206. package/src/animations/zooming_exits/zoomOutRight.ts +0 -12
  1207. package/src/animations/zooming_exits/zoomOutUp.ts +0 -14
  1208. package/src/components/animation/animation.component.ts +0 -224
  1209. package/src/components/animation/animation.styles.ts +0 -7
  1210. package/src/components/animation/animation.ts +0 -10
  1211. package/src/components/animation/animations.ts +0 -13
  1212. package/src/components/avatar/avatar.component.ts +0 -113
  1213. package/src/components/avatar/avatar.styles.ts +0 -66
  1214. package/src/components/avatar/avatar.ts +0 -10
  1215. package/src/components/badge/badge.component.ts +0 -54
  1216. package/src/components/badge/badge.styles.ts +0 -74
  1217. package/src/components/badge/badge.ts +0 -10
  1218. package/src/components/button/button.component.ts +0 -335
  1219. package/src/components/button/button.styles.ts +0 -320
  1220. package/src/components/button/button.ts +0 -10
  1221. package/src/components/button-group/button-group.component.ts +0 -101
  1222. package/src/components/button-group/button-group.styles.ts +0 -12
  1223. package/src/components/button-group/button-group.ts +0 -10
  1224. package/src/components/callout/callout.component.ts +0 -60
  1225. package/src/components/callout/callout.styles.ts +0 -66
  1226. package/src/components/callout/callout.ts +0 -10
  1227. package/src/components/card/card.component.ts +0 -59
  1228. package/src/components/card/card.styles.ts +0 -63
  1229. package/src/components/card/card.ts +0 -10
  1230. package/src/components/checkbox/checkbox.component.ts +0 -244
  1231. package/src/components/checkbox/checkbox.styles.ts +0 -164
  1232. package/src/components/checkbox/checkbox.ts +0 -10
  1233. package/src/components/comparer/comparer.component.ts +0 -188
  1234. package/src/components/comparer/comparer.styles.ts +0 -73
  1235. package/src/components/comparer/comparer.ts +0 -10
  1236. package/src/components/copy-button/copy-button.component.ts +0 -272
  1237. package/src/components/copy-button/copy-button.styles.ts +0 -59
  1238. package/src/components/copy-button/copy-button.ts +0 -10
  1239. package/src/components/details/details.component.ts +0 -259
  1240. package/src/components/details/details.styles.ts +0 -84
  1241. package/src/components/details/details.ts +0 -10
  1242. package/src/components/dialog/dialog.component.ts +0 -403
  1243. package/src/components/dialog/dialog.styles.ts +0 -121
  1244. package/src/components/dialog/dialog.ts +0 -10
  1245. package/src/components/divider/divider.component.ts +0 -42
  1246. package/src/components/divider/divider.styles.ts +0 -27
  1247. package/src/components/divider/divider.ts +0 -10
  1248. package/src/components/drawer/drawer.component.ts +0 -565
  1249. package/src/components/drawer/drawer.styles.ts +0 -155
  1250. package/src/components/drawer/drawer.ts +0 -10
  1251. package/src/components/dropdown/dropdown.component.ts +0 -430
  1252. package/src/components/dropdown/dropdown.styles.ts +0 -50
  1253. package/src/components/dropdown/dropdown.ts +0 -10
  1254. package/src/components/icon/icon.component.ts +0 -239
  1255. package/src/components/icon/icon.styles.ts +0 -47
  1256. package/src/components/icon/icon.ts +0 -10
  1257. package/src/components/icon/library.default.ts +0 -10
  1258. package/src/components/icon/library.system.ts +0 -136
  1259. package/src/components/icon/library.ts +0 -54
  1260. package/src/components/icon-button/icon-button.component.ts +0 -129
  1261. package/src/components/icon-button/icon-button.styles.ts +0 -51
  1262. package/src/components/icon-button/icon-button.ts +0 -10
  1263. package/src/components/input/input.component.ts +0 -496
  1264. package/src/components/input/input.styles.ts +0 -306
  1265. package/src/components/input/input.ts +0 -10
  1266. package/src/components/menu/menu.component.ts +0 -161
  1267. package/src/components/menu/menu.styles.ts +0 -18
  1268. package/src/components/menu/menu.ts +0 -10
  1269. package/src/components/menu-item/menu-item.component.ts +0 -190
  1270. package/src/components/menu-item/menu-item.styles.ts +0 -155
  1271. package/src/components/menu-item/menu-item.ts +0 -10
  1272. package/src/components/menu-item/submenu-controller.ts +0 -337
  1273. package/src/components/menu-label/menu-label.component.ts +0 -22
  1274. package/src/components/menu-label/menu-label.styles.ts +0 -20
  1275. package/src/components/menu-label/menu-label.ts +0 -10
  1276. package/src/components/option/option.component.ts +0 -141
  1277. package/src/components/option/option.styles.ts +0 -106
  1278. package/src/components/option/option.ts +0 -10
  1279. package/src/components/popup/popup.component.ts +0 -540
  1280. package/src/components/popup/popup.styles.ts +0 -63
  1281. package/src/components/popup/popup.ts +0 -12
  1282. package/src/components/qr-code/qr-code.component.ts +0 -70
  1283. package/src/components/qr-code/qr-code.styles.ts +0 -7
  1284. package/src/components/qr-code/qr-code.ts +0 -10
  1285. package/src/components/radio/radio.component.ts +0 -100
  1286. package/src/components/radio/radio.styles.ts +0 -130
  1287. package/src/components/radio/radio.ts +0 -10
  1288. package/src/components/radio-button/radio-button.component.ts +0 -116
  1289. package/src/components/radio-button/radio-button.styles.ts +0 -23
  1290. package/src/components/radio-button/radio-button.ts +0 -10
  1291. package/src/components/radio-group/radio-group.component.ts +0 -404
  1292. package/src/components/radio-group/radio-group.styles.ts +0 -40
  1293. package/src/components/radio-group/radio-group.ts +0 -10
  1294. package/src/components/rating/rating.component.ts +0 -319
  1295. package/src/components/rating/rating.styles.ts +0 -92
  1296. package/src/components/rating/rating.ts +0 -10
  1297. package/src/components/resize-observer/resize-observer.component.ts +0 -91
  1298. package/src/components/resize-observer/resize-observer.styles.ts +0 -7
  1299. package/src/components/resize-observer/resize-observer.ts +0 -10
  1300. package/src/components/select/select.component.ts +0 -1013
  1301. package/src/components/select/select.styles.ts +0 -361
  1302. package/src/components/select/select.ts +0 -10
  1303. package/src/components/spinner/spinner.component.ts +0 -38
  1304. package/src/components/spinner/spinner.styles.ts +0 -59
  1305. package/src/components/spinner/spinner.ts +0 -10
  1306. package/src/components/switch/switch.component.ts +0 -253
  1307. package/src/components/switch/switch.styles.ts +0 -176
  1308. package/src/components/switch/switch.ts +0 -10
  1309. package/src/components/tab/tab.component.ts +0 -87
  1310. package/src/components/tab/tab.styles.ts +0 -83
  1311. package/src/components/tab/tab.ts +0 -10
  1312. package/src/components/tab-group/tab-group.component.ts +0 -607
  1313. package/src/components/tab-group/tab-group.styles.ts +0 -217
  1314. package/src/components/tab-group/tab-group.ts +0 -10
  1315. package/src/components/tab-panel/tab-panel.component.ts +0 -43
  1316. package/src/components/tab-panel/tab-panel.styles.ts +0 -16
  1317. package/src/components/tab-panel/tab-panel.ts +0 -10
  1318. package/src/components/tag/tag.component.ts +0 -94
  1319. package/src/components/tag/tag.styles.ts +0 -153
  1320. package/src/components/tag/tag.ts +0 -10
  1321. package/src/components/tooltip/tooltip.component.ts +0 -276
  1322. package/src/components/tooltip/tooltip.styles.ts +0 -57
  1323. package/src/components/tooltip/tooltip.ts +0 -10
  1324. package/src/default.css +0 -1005
  1325. package/src/events/events.ts +0 -35
  1326. package/src/events/pc-after-collapse.ts +0 -7
  1327. package/src/events/pc-after-expand.ts +0 -7
  1328. package/src/events/pc-after-hide.ts +0 -7
  1329. package/src/events/pc-after-show.ts +0 -7
  1330. package/src/events/pc-blur.ts +0 -7
  1331. package/src/events/pc-cancel.ts +0 -7
  1332. package/src/events/pc-change.ts +0 -7
  1333. package/src/events/pc-clear.ts +0 -7
  1334. package/src/events/pc-close.ts +0 -7
  1335. package/src/events/pc-collapse.ts +0 -7
  1336. package/src/events/pc-copy.ts +0 -7
  1337. package/src/events/pc-error.ts +0 -7
  1338. package/src/events/pc-expand.ts +0 -7
  1339. package/src/events/pc-finish.ts +0 -7
  1340. package/src/events/pc-focus.ts +0 -7
  1341. package/src/events/pc-hide.ts +0 -7
  1342. package/src/events/pc-hover.ts +0 -10
  1343. package/src/events/pc-initial-focus.ts +0 -7
  1344. package/src/events/pc-input.ts +0 -7
  1345. package/src/events/pc-invalid.ts +0 -7
  1346. package/src/events/pc-lazy-change.ts +0 -7
  1347. package/src/events/pc-lazy-load.ts +0 -7
  1348. package/src/events/pc-load.ts +0 -7
  1349. package/src/events/pc-mutation.ts +0 -7
  1350. package/src/events/pc-remove.ts +0 -7
  1351. package/src/events/pc-reposition.ts +0 -7
  1352. package/src/events/pc-request-close.ts +0 -9
  1353. package/src/events/pc-resize.ts +0 -7
  1354. package/src/events/pc-select.ts +0 -9
  1355. package/src/events/pc-selection-change.ts +0 -10
  1356. package/src/events/pc-show.ts +0 -7
  1357. package/src/events/pc-slide-change.ts +0 -13
  1358. package/src/events/pc-start.ts +0 -7
  1359. package/src/events/pc-tab-hide.ts +0 -7
  1360. package/src/events/pc-tab-show.ts +0 -7
  1361. package/src/global-shims.ts +0 -126
  1362. package/src/global.d.ts +0 -31
  1363. package/src/internal/active-elements.ts +0 -21
  1364. package/src/internal/animate.ts +0 -62
  1365. package/src/internal/close-active-element.ts +0 -7
  1366. package/src/internal/debounce.ts +0 -25
  1367. package/src/internal/default-value.ts +0 -40
  1368. package/src/internal/drag.ts +0 -36
  1369. package/src/internal/emit.ts +0 -19
  1370. package/src/internal/event.ts +0 -12
  1371. package/src/internal/form.ts +0 -389
  1372. package/src/internal/math.ts +0 -14
  1373. package/src/internal/modal.ts +0 -157
  1374. package/src/internal/offset.ts +0 -12
  1375. package/src/internal/scroll.ts +0 -95
  1376. package/src/internal/scrollend-polyfill.ts +0 -99
  1377. package/src/internal/slot.ts +0 -110
  1378. package/src/internal/string.ts +0 -3
  1379. package/src/internal/tabbable.ts +0 -207
  1380. package/src/internal/watch.ts +0 -58
  1381. package/src/native-styles.css +0 -261
  1382. package/src/placer-autoloader.ts +0 -53
  1383. package/src/placer.ts +0 -53
  1384. package/src/style-utilities/fouce.css +0 -13
  1385. package/src/style-utilities/style-utilities.css +0 -2
  1386. package/src/style-utilities/visually-hidden.css +0 -12
  1387. package/src/utilities/animation-registry.ts +0 -72
  1388. package/src/utilities/animation.ts +0 -4
  1389. package/src/utilities/base-path.ts +0 -39
  1390. package/src/utilities/form.ts +0 -41
  1391. package/src/utilities/icon-library.ts +0 -4
  1392. package/src/utility.css +0 -41
@@ -1,5 +1,3757 @@
1
- import { PcDropdown as PcDropdown$1 } from './dropdown.component.js';
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __decorateClass = (decorators, target, key, kind) => {
4
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
5
+ for (var i7 = decorators.length - 1, decorator; i7 >= 0; i7--)
6
+ if (decorator = decorators[i7])
7
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
8
+ if (kind && result) __defProp(target, key, result);
9
+ return result;
10
+ };
2
11
 
3
- var PcDropdown = PcDropdown$1;
12
+ // node_modules/@lit/reactive-element/css-tag.js
13
+ var t = globalThis;
14
+ var e = t.ShadowRoot && (void 0 === t.ShadyCSS || t.ShadyCSS.nativeShadow) && "adoptedStyleSheets" in Document.prototype && "replace" in CSSStyleSheet.prototype;
15
+ var s = Symbol();
16
+ var o = /* @__PURE__ */ new WeakMap();
17
+ var n = class {
18
+ constructor(t5, e9, o6) {
19
+ if (this._$cssResult$ = true, o6 !== s) throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");
20
+ this.cssText = t5, this.t = e9;
21
+ }
22
+ get styleSheet() {
23
+ let t5 = this.o;
24
+ const s4 = this.t;
25
+ if (e && void 0 === t5) {
26
+ const e9 = void 0 !== s4 && 1 === s4.length;
27
+ e9 && (t5 = o.get(s4)), void 0 === t5 && ((this.o = t5 = new CSSStyleSheet()).replaceSync(this.cssText), e9 && o.set(s4, t5));
28
+ }
29
+ return t5;
30
+ }
31
+ toString() {
32
+ return this.cssText;
33
+ }
34
+ };
35
+ var r = (t5) => new n("string" == typeof t5 ? t5 : t5 + "", void 0, s);
36
+ var S = (s4, o6) => {
37
+ if (e) s4.adoptedStyleSheets = o6.map(((t5) => t5 instanceof CSSStyleSheet ? t5 : t5.styleSheet));
38
+ else for (const e9 of o6) {
39
+ const o7 = document.createElement("style"), n5 = t.litNonce;
40
+ void 0 !== n5 && o7.setAttribute("nonce", n5), o7.textContent = e9.cssText, s4.appendChild(o7);
41
+ }
42
+ };
43
+ var c = e ? (t5) => t5 : (t5) => t5 instanceof CSSStyleSheet ? ((t6) => {
44
+ let e9 = "";
45
+ for (const s4 of t6.cssRules) e9 += s4.cssText;
46
+ return r(e9);
47
+ })(t5) : t5;
4
48
 
5
- export { PcDropdown$1 as PcDropdown, PcDropdown as default };
49
+ // node_modules/@lit/reactive-element/reactive-element.js
50
+ var { is: i2, defineProperty: e2, getOwnPropertyDescriptor: h, getOwnPropertyNames: r2, getOwnPropertySymbols: o2, getPrototypeOf: n2 } = Object;
51
+ var a = globalThis;
52
+ var c2 = a.trustedTypes;
53
+ var l = c2 ? c2.emptyScript : "";
54
+ var p = a.reactiveElementPolyfillSupport;
55
+ var d = (t5, s4) => t5;
56
+ var u = { toAttribute(t5, s4) {
57
+ switch (s4) {
58
+ case Boolean:
59
+ t5 = t5 ? l : null;
60
+ break;
61
+ case Object:
62
+ case Array:
63
+ t5 = null == t5 ? t5 : JSON.stringify(t5);
64
+ }
65
+ return t5;
66
+ }, fromAttribute(t5, s4) {
67
+ let i7 = t5;
68
+ switch (s4) {
69
+ case Boolean:
70
+ i7 = null !== t5;
71
+ break;
72
+ case Number:
73
+ i7 = null === t5 ? null : Number(t5);
74
+ break;
75
+ case Object:
76
+ case Array:
77
+ try {
78
+ i7 = JSON.parse(t5);
79
+ } catch (t6) {
80
+ i7 = null;
81
+ }
82
+ }
83
+ return i7;
84
+ } };
85
+ var f = (t5, s4) => !i2(t5, s4);
86
+ var b = { attribute: true, type: String, converter: u, reflect: false, useDefault: false, hasChanged: f };
87
+ Symbol.metadata ?? (Symbol.metadata = Symbol("metadata")), a.litPropertyMetadata ?? (a.litPropertyMetadata = /* @__PURE__ */ new WeakMap());
88
+ var y = class extends HTMLElement {
89
+ static addInitializer(t5) {
90
+ this._$Ei(), (this.l ?? (this.l = [])).push(t5);
91
+ }
92
+ static get observedAttributes() {
93
+ return this.finalize(), this._$Eh && [...this._$Eh.keys()];
94
+ }
95
+ static createProperty(t5, s4 = b) {
96
+ if (s4.state && (s4.attribute = false), this._$Ei(), this.prototype.hasOwnProperty(t5) && ((s4 = Object.create(s4)).wrapped = true), this.elementProperties.set(t5, s4), !s4.noAccessor) {
97
+ const i7 = Symbol(), h3 = this.getPropertyDescriptor(t5, i7, s4);
98
+ void 0 !== h3 && e2(this.prototype, t5, h3);
99
+ }
100
+ }
101
+ static getPropertyDescriptor(t5, s4, i7) {
102
+ const { get: e9, set: r6 } = h(this.prototype, t5) ?? { get() {
103
+ return this[s4];
104
+ }, set(t6) {
105
+ this[s4] = t6;
106
+ } };
107
+ return { get: e9, set(s5) {
108
+ const h3 = e9?.call(this);
109
+ r6?.call(this, s5), this.requestUpdate(t5, h3, i7);
110
+ }, configurable: true, enumerable: true };
111
+ }
112
+ static getPropertyOptions(t5) {
113
+ return this.elementProperties.get(t5) ?? b;
114
+ }
115
+ static _$Ei() {
116
+ if (this.hasOwnProperty(d("elementProperties"))) return;
117
+ const t5 = n2(this);
118
+ t5.finalize(), void 0 !== t5.l && (this.l = [...t5.l]), this.elementProperties = new Map(t5.elementProperties);
119
+ }
120
+ static finalize() {
121
+ if (this.hasOwnProperty(d("finalized"))) return;
122
+ if (this.finalized = true, this._$Ei(), this.hasOwnProperty(d("properties"))) {
123
+ const t6 = this.properties, s4 = [...r2(t6), ...o2(t6)];
124
+ for (const i7 of s4) this.createProperty(i7, t6[i7]);
125
+ }
126
+ const t5 = this[Symbol.metadata];
127
+ if (null !== t5) {
128
+ const s4 = litPropertyMetadata.get(t5);
129
+ if (void 0 !== s4) for (const [t6, i7] of s4) this.elementProperties.set(t6, i7);
130
+ }
131
+ this._$Eh = /* @__PURE__ */ new Map();
132
+ for (const [t6, s4] of this.elementProperties) {
133
+ const i7 = this._$Eu(t6, s4);
134
+ void 0 !== i7 && this._$Eh.set(i7, t6);
135
+ }
136
+ this.elementStyles = this.finalizeStyles(this.styles);
137
+ }
138
+ static finalizeStyles(s4) {
139
+ const i7 = [];
140
+ if (Array.isArray(s4)) {
141
+ const e9 = new Set(s4.flat(1 / 0).reverse());
142
+ for (const s5 of e9) i7.unshift(c(s5));
143
+ } else void 0 !== s4 && i7.push(c(s4));
144
+ return i7;
145
+ }
146
+ static _$Eu(t5, s4) {
147
+ const i7 = s4.attribute;
148
+ return false === i7 ? void 0 : "string" == typeof i7 ? i7 : "string" == typeof t5 ? t5.toLowerCase() : void 0;
149
+ }
150
+ constructor() {
151
+ super(), this._$Ep = void 0, this.isUpdatePending = false, this.hasUpdated = false, this._$Em = null, this._$Ev();
152
+ }
153
+ _$Ev() {
154
+ this._$ES = new Promise(((t5) => this.enableUpdating = t5)), this._$AL = /* @__PURE__ */ new Map(), this._$E_(), this.requestUpdate(), this.constructor.l?.forEach(((t5) => t5(this)));
155
+ }
156
+ addController(t5) {
157
+ (this._$EO ?? (this._$EO = /* @__PURE__ */ new Set())).add(t5), void 0 !== this.renderRoot && this.isConnected && t5.hostConnected?.();
158
+ }
159
+ removeController(t5) {
160
+ this._$EO?.delete(t5);
161
+ }
162
+ _$E_() {
163
+ const t5 = /* @__PURE__ */ new Map(), s4 = this.constructor.elementProperties;
164
+ for (const i7 of s4.keys()) this.hasOwnProperty(i7) && (t5.set(i7, this[i7]), delete this[i7]);
165
+ t5.size > 0 && (this._$Ep = t5);
166
+ }
167
+ createRenderRoot() {
168
+ const t5 = this.shadowRoot ?? this.attachShadow(this.constructor.shadowRootOptions);
169
+ return S(t5, this.constructor.elementStyles), t5;
170
+ }
171
+ connectedCallback() {
172
+ this.renderRoot ?? (this.renderRoot = this.createRenderRoot()), this.enableUpdating(true), this._$EO?.forEach(((t5) => t5.hostConnected?.()));
173
+ }
174
+ enableUpdating(t5) {
175
+ }
176
+ disconnectedCallback() {
177
+ this._$EO?.forEach(((t5) => t5.hostDisconnected?.()));
178
+ }
179
+ attributeChangedCallback(t5, s4, i7) {
180
+ this._$AK(t5, i7);
181
+ }
182
+ _$ET(t5, s4) {
183
+ const i7 = this.constructor.elementProperties.get(t5), e9 = this.constructor._$Eu(t5, i7);
184
+ if (void 0 !== e9 && true === i7.reflect) {
185
+ const h3 = (void 0 !== i7.converter?.toAttribute ? i7.converter : u).toAttribute(s4, i7.type);
186
+ this._$Em = t5, null == h3 ? this.removeAttribute(e9) : this.setAttribute(e9, h3), this._$Em = null;
187
+ }
188
+ }
189
+ _$AK(t5, s4) {
190
+ const i7 = this.constructor, e9 = i7._$Eh.get(t5);
191
+ if (void 0 !== e9 && this._$Em !== e9) {
192
+ const t6 = i7.getPropertyOptions(e9), h3 = "function" == typeof t6.converter ? { fromAttribute: t6.converter } : void 0 !== t6.converter?.fromAttribute ? t6.converter : u;
193
+ this._$Em = e9, this[e9] = h3.fromAttribute(s4, t6.type) ?? this._$Ej?.get(e9) ?? null, this._$Em = null;
194
+ }
195
+ }
196
+ requestUpdate(t5, s4, i7) {
197
+ if (void 0 !== t5) {
198
+ const e9 = this.constructor, h3 = this[t5];
199
+ if (i7 ?? (i7 = e9.getPropertyOptions(t5)), !((i7.hasChanged ?? f)(h3, s4) || i7.useDefault && i7.reflect && h3 === this._$Ej?.get(t5) && !this.hasAttribute(e9._$Eu(t5, i7)))) return;
200
+ this.C(t5, s4, i7);
201
+ }
202
+ false === this.isUpdatePending && (this._$ES = this._$EP());
203
+ }
204
+ C(t5, s4, { useDefault: i7, reflect: e9, wrapped: h3 }, r6) {
205
+ i7 && !(this._$Ej ?? (this._$Ej = /* @__PURE__ */ new Map())).has(t5) && (this._$Ej.set(t5, r6 ?? s4 ?? this[t5]), true !== h3 || void 0 !== r6) || (this._$AL.has(t5) || (this.hasUpdated || i7 || (s4 = void 0), this._$AL.set(t5, s4)), true === e9 && this._$Em !== t5 && (this._$Eq ?? (this._$Eq = /* @__PURE__ */ new Set())).add(t5));
206
+ }
207
+ async _$EP() {
208
+ this.isUpdatePending = true;
209
+ try {
210
+ await this._$ES;
211
+ } catch (t6) {
212
+ Promise.reject(t6);
213
+ }
214
+ const t5 = this.scheduleUpdate();
215
+ return null != t5 && await t5, !this.isUpdatePending;
216
+ }
217
+ scheduleUpdate() {
218
+ return this.performUpdate();
219
+ }
220
+ performUpdate() {
221
+ if (!this.isUpdatePending) return;
222
+ if (!this.hasUpdated) {
223
+ if (this.renderRoot ?? (this.renderRoot = this.createRenderRoot()), this._$Ep) {
224
+ for (const [t7, s5] of this._$Ep) this[t7] = s5;
225
+ this._$Ep = void 0;
226
+ }
227
+ const t6 = this.constructor.elementProperties;
228
+ if (t6.size > 0) for (const [s5, i7] of t6) {
229
+ const { wrapped: t7 } = i7, e9 = this[s5];
230
+ true !== t7 || this._$AL.has(s5) || void 0 === e9 || this.C(s5, void 0, i7, e9);
231
+ }
232
+ }
233
+ let t5 = false;
234
+ const s4 = this._$AL;
235
+ try {
236
+ t5 = this.shouldUpdate(s4), t5 ? (this.willUpdate(s4), this._$EO?.forEach(((t6) => t6.hostUpdate?.())), this.update(s4)) : this._$EM();
237
+ } catch (s5) {
238
+ throw t5 = false, this._$EM(), s5;
239
+ }
240
+ t5 && this._$AE(s4);
241
+ }
242
+ willUpdate(t5) {
243
+ }
244
+ _$AE(t5) {
245
+ this._$EO?.forEach(((t6) => t6.hostUpdated?.())), this.hasUpdated || (this.hasUpdated = true, this.firstUpdated(t5)), this.updated(t5);
246
+ }
247
+ _$EM() {
248
+ this._$AL = /* @__PURE__ */ new Map(), this.isUpdatePending = false;
249
+ }
250
+ get updateComplete() {
251
+ return this.getUpdateComplete();
252
+ }
253
+ getUpdateComplete() {
254
+ return this._$ES;
255
+ }
256
+ shouldUpdate(t5) {
257
+ return true;
258
+ }
259
+ update(t5) {
260
+ this._$Eq && (this._$Eq = this._$Eq.forEach(((t6) => this._$ET(t6, this[t6])))), this._$EM();
261
+ }
262
+ updated(t5) {
263
+ }
264
+ firstUpdated(t5) {
265
+ }
266
+ };
267
+ y.elementStyles = [], y.shadowRootOptions = { mode: "open" }, y[d("elementProperties")] = /* @__PURE__ */ new Map(), y[d("finalized")] = /* @__PURE__ */ new Map(), p?.({ ReactiveElement: y }), (a.reactiveElementVersions ?? (a.reactiveElementVersions = [])).push("2.1.0");
268
+
269
+ // node_modules/lit-html/lit-html.js
270
+ var t2 = globalThis;
271
+ var i3 = t2.trustedTypes;
272
+ var s2 = i3 ? i3.createPolicy("lit-html", { createHTML: (t5) => t5 }) : void 0;
273
+ var e3 = "$lit$";
274
+ var h2 = `lit$${Math.random().toFixed(9).slice(2)}$`;
275
+ var o3 = "?" + h2;
276
+ var n3 = `<${o3}>`;
277
+ var r3 = document;
278
+ var l2 = () => r3.createComment("");
279
+ var c3 = (t5) => null === t5 || "object" != typeof t5 && "function" != typeof t5;
280
+ var a2 = Array.isArray;
281
+ var u2 = (t5) => a2(t5) || "function" == typeof t5?.[Symbol.iterator];
282
+ var d2 = "[ \n\f\r]";
283
+ var f2 = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g;
284
+ var v = /-->/g;
285
+ var _ = />/g;
286
+ var m = RegExp(`>|${d2}(?:([^\\s"'>=/]+)(${d2}*=${d2}*(?:[^
287
+ \f\r"'\`<>=]|("|')|))|$)`, "g");
288
+ var p2 = /'/g;
289
+ var g = /"/g;
290
+ var $ = /^(?:script|style|textarea|title)$/i;
291
+ var y2 = (t5) => (i7, ...s4) => ({ _$litType$: t5, strings: i7, values: s4 });
292
+ var x = y2(1);
293
+ var b2 = y2(2);
294
+ var w = y2(3);
295
+ var T = Symbol.for("lit-noChange");
296
+ var E = Symbol.for("lit-nothing");
297
+ var A = /* @__PURE__ */ new WeakMap();
298
+ var C = r3.createTreeWalker(r3, 129);
299
+ function P(t5, i7) {
300
+ if (!a2(t5) || !t5.hasOwnProperty("raw")) throw Error("invalid template strings array");
301
+ return void 0 !== s2 ? s2.createHTML(i7) : i7;
302
+ }
303
+ var V = (t5, i7) => {
304
+ const s4 = t5.length - 1, o6 = [];
305
+ let r6, l3 = 2 === i7 ? "<svg>" : 3 === i7 ? "<math>" : "", c4 = f2;
306
+ for (let i8 = 0; i8 < s4; i8++) {
307
+ const s5 = t5[i8];
308
+ let a3, u3, d3 = -1, y3 = 0;
309
+ for (; y3 < s5.length && (c4.lastIndex = y3, u3 = c4.exec(s5), null !== u3); ) y3 = c4.lastIndex, c4 === f2 ? "!--" === u3[1] ? c4 = v : void 0 !== u3[1] ? c4 = _ : void 0 !== u3[2] ? ($.test(u3[2]) && (r6 = RegExp("</" + u3[2], "g")), c4 = m) : void 0 !== u3[3] && (c4 = m) : c4 === m ? ">" === u3[0] ? (c4 = r6 ?? f2, d3 = -1) : void 0 === u3[1] ? d3 = -2 : (d3 = c4.lastIndex - u3[2].length, a3 = u3[1], c4 = void 0 === u3[3] ? m : '"' === u3[3] ? g : p2) : c4 === g || c4 === p2 ? c4 = m : c4 === v || c4 === _ ? c4 = f2 : (c4 = m, r6 = void 0);
310
+ const x2 = c4 === m && t5[i8 + 1].startsWith("/>") ? " " : "";
311
+ l3 += c4 === f2 ? s5 + n3 : d3 >= 0 ? (o6.push(a3), s5.slice(0, d3) + e3 + s5.slice(d3) + h2 + x2) : s5 + h2 + (-2 === d3 ? i8 : x2);
312
+ }
313
+ return [P(t5, l3 + (t5[s4] || "<?>") + (2 === i7 ? "</svg>" : 3 === i7 ? "</math>" : "")), o6];
314
+ };
315
+ var N = class _N {
316
+ constructor({ strings: t5, _$litType$: s4 }, n5) {
317
+ let r6;
318
+ this.parts = [];
319
+ let c4 = 0, a3 = 0;
320
+ const u3 = t5.length - 1, d3 = this.parts, [f3, v2] = V(t5, s4);
321
+ if (this.el = _N.createElement(f3, n5), C.currentNode = this.el.content, 2 === s4 || 3 === s4) {
322
+ const t6 = this.el.content.firstChild;
323
+ t6.replaceWith(...t6.childNodes);
324
+ }
325
+ for (; null !== (r6 = C.nextNode()) && d3.length < u3; ) {
326
+ if (1 === r6.nodeType) {
327
+ if (r6.hasAttributes()) for (const t6 of r6.getAttributeNames()) if (t6.endsWith(e3)) {
328
+ const i7 = v2[a3++], s5 = r6.getAttribute(t6).split(h2), e9 = /([.?@])?(.*)/.exec(i7);
329
+ d3.push({ type: 1, index: c4, name: e9[2], strings: s5, ctor: "." === e9[1] ? H : "?" === e9[1] ? I : "@" === e9[1] ? L : k }), r6.removeAttribute(t6);
330
+ } else t6.startsWith(h2) && (d3.push({ type: 6, index: c4 }), r6.removeAttribute(t6));
331
+ if ($.test(r6.tagName)) {
332
+ const t6 = r6.textContent.split(h2), s5 = t6.length - 1;
333
+ if (s5 > 0) {
334
+ r6.textContent = i3 ? i3.emptyScript : "";
335
+ for (let i7 = 0; i7 < s5; i7++) r6.append(t6[i7], l2()), C.nextNode(), d3.push({ type: 2, index: ++c4 });
336
+ r6.append(t6[s5], l2());
337
+ }
338
+ }
339
+ } else if (8 === r6.nodeType) if (r6.data === o3) d3.push({ type: 2, index: c4 });
340
+ else {
341
+ let t6 = -1;
342
+ for (; -1 !== (t6 = r6.data.indexOf(h2, t6 + 1)); ) d3.push({ type: 7, index: c4 }), t6 += h2.length - 1;
343
+ }
344
+ c4++;
345
+ }
346
+ }
347
+ static createElement(t5, i7) {
348
+ const s4 = r3.createElement("template");
349
+ return s4.innerHTML = t5, s4;
350
+ }
351
+ };
352
+ function S2(t5, i7, s4 = t5, e9) {
353
+ if (i7 === T) return i7;
354
+ let h3 = void 0 !== e9 ? s4._$Co?.[e9] : s4._$Cl;
355
+ const o6 = c3(i7) ? void 0 : i7._$litDirective$;
356
+ return h3?.constructor !== o6 && (h3?._$AO?.(false), void 0 === o6 ? h3 = void 0 : (h3 = new o6(t5), h3._$AT(t5, s4, e9)), void 0 !== e9 ? (s4._$Co ?? (s4._$Co = []))[e9] = h3 : s4._$Cl = h3), void 0 !== h3 && (i7 = S2(t5, h3._$AS(t5, i7.values), h3, e9)), i7;
357
+ }
358
+ var M = class {
359
+ constructor(t5, i7) {
360
+ this._$AV = [], this._$AN = void 0, this._$AD = t5, this._$AM = i7;
361
+ }
362
+ get parentNode() {
363
+ return this._$AM.parentNode;
364
+ }
365
+ get _$AU() {
366
+ return this._$AM._$AU;
367
+ }
368
+ u(t5) {
369
+ const { el: { content: i7 }, parts: s4 } = this._$AD, e9 = (t5?.creationScope ?? r3).importNode(i7, true);
370
+ C.currentNode = e9;
371
+ let h3 = C.nextNode(), o6 = 0, n5 = 0, l3 = s4[0];
372
+ for (; void 0 !== l3; ) {
373
+ if (o6 === l3.index) {
374
+ let i8;
375
+ 2 === l3.type ? i8 = new R(h3, h3.nextSibling, this, t5) : 1 === l3.type ? i8 = new l3.ctor(h3, l3.name, l3.strings, this, t5) : 6 === l3.type && (i8 = new z(h3, this, t5)), this._$AV.push(i8), l3 = s4[++n5];
376
+ }
377
+ o6 !== l3?.index && (h3 = C.nextNode(), o6++);
378
+ }
379
+ return C.currentNode = r3, e9;
380
+ }
381
+ p(t5) {
382
+ let i7 = 0;
383
+ for (const s4 of this._$AV) void 0 !== s4 && (void 0 !== s4.strings ? (s4._$AI(t5, s4, i7), i7 += s4.strings.length - 2) : s4._$AI(t5[i7])), i7++;
384
+ }
385
+ };
386
+ var R = class _R {
387
+ get _$AU() {
388
+ return this._$AM?._$AU ?? this._$Cv;
389
+ }
390
+ constructor(t5, i7, s4, e9) {
391
+ this.type = 2, this._$AH = E, this._$AN = void 0, this._$AA = t5, this._$AB = i7, this._$AM = s4, this.options = e9, this._$Cv = e9?.isConnected ?? true;
392
+ }
393
+ get parentNode() {
394
+ let t5 = this._$AA.parentNode;
395
+ const i7 = this._$AM;
396
+ return void 0 !== i7 && 11 === t5?.nodeType && (t5 = i7.parentNode), t5;
397
+ }
398
+ get startNode() {
399
+ return this._$AA;
400
+ }
401
+ get endNode() {
402
+ return this._$AB;
403
+ }
404
+ _$AI(t5, i7 = this) {
405
+ t5 = S2(this, t5, i7), c3(t5) ? t5 === E || null == t5 || "" === t5 ? (this._$AH !== E && this._$AR(), this._$AH = E) : t5 !== this._$AH && t5 !== T && this._(t5) : void 0 !== t5._$litType$ ? this.$(t5) : void 0 !== t5.nodeType ? this.T(t5) : u2(t5) ? this.k(t5) : this._(t5);
406
+ }
407
+ O(t5) {
408
+ return this._$AA.parentNode.insertBefore(t5, this._$AB);
409
+ }
410
+ T(t5) {
411
+ this._$AH !== t5 && (this._$AR(), this._$AH = this.O(t5));
412
+ }
413
+ _(t5) {
414
+ this._$AH !== E && c3(this._$AH) ? this._$AA.nextSibling.data = t5 : this.T(r3.createTextNode(t5)), this._$AH = t5;
415
+ }
416
+ $(t5) {
417
+ const { values: i7, _$litType$: s4 } = t5, e9 = "number" == typeof s4 ? this._$AC(t5) : (void 0 === s4.el && (s4.el = N.createElement(P(s4.h, s4.h[0]), this.options)), s4);
418
+ if (this._$AH?._$AD === e9) this._$AH.p(i7);
419
+ else {
420
+ const t6 = new M(e9, this), s5 = t6.u(this.options);
421
+ t6.p(i7), this.T(s5), this._$AH = t6;
422
+ }
423
+ }
424
+ _$AC(t5) {
425
+ let i7 = A.get(t5.strings);
426
+ return void 0 === i7 && A.set(t5.strings, i7 = new N(t5)), i7;
427
+ }
428
+ k(t5) {
429
+ a2(this._$AH) || (this._$AH = [], this._$AR());
430
+ const i7 = this._$AH;
431
+ let s4, e9 = 0;
432
+ for (const h3 of t5) e9 === i7.length ? i7.push(s4 = new _R(this.O(l2()), this.O(l2()), this, this.options)) : s4 = i7[e9], s4._$AI(h3), e9++;
433
+ e9 < i7.length && (this._$AR(s4 && s4._$AB.nextSibling, e9), i7.length = e9);
434
+ }
435
+ _$AR(t5 = this._$AA.nextSibling, i7) {
436
+ for (this._$AP?.(false, true, i7); t5 && t5 !== this._$AB; ) {
437
+ const i8 = t5.nextSibling;
438
+ t5.remove(), t5 = i8;
439
+ }
440
+ }
441
+ setConnected(t5) {
442
+ void 0 === this._$AM && (this._$Cv = t5, this._$AP?.(t5));
443
+ }
444
+ };
445
+ var k = class {
446
+ get tagName() {
447
+ return this.element.tagName;
448
+ }
449
+ get _$AU() {
450
+ return this._$AM._$AU;
451
+ }
452
+ constructor(t5, i7, s4, e9, h3) {
453
+ this.type = 1, this._$AH = E, this._$AN = void 0, this.element = t5, this.name = i7, this._$AM = e9, this.options = h3, s4.length > 2 || "" !== s4[0] || "" !== s4[1] ? (this._$AH = Array(s4.length - 1).fill(new String()), this.strings = s4) : this._$AH = E;
454
+ }
455
+ _$AI(t5, i7 = this, s4, e9) {
456
+ const h3 = this.strings;
457
+ let o6 = false;
458
+ if (void 0 === h3) t5 = S2(this, t5, i7, 0), o6 = !c3(t5) || t5 !== this._$AH && t5 !== T, o6 && (this._$AH = t5);
459
+ else {
460
+ const e10 = t5;
461
+ let n5, r6;
462
+ for (t5 = h3[0], n5 = 0; n5 < h3.length - 1; n5++) r6 = S2(this, e10[s4 + n5], i7, n5), r6 === T && (r6 = this._$AH[n5]), o6 || (o6 = !c3(r6) || r6 !== this._$AH[n5]), r6 === E ? t5 = E : t5 !== E && (t5 += (r6 ?? "") + h3[n5 + 1]), this._$AH[n5] = r6;
463
+ }
464
+ o6 && !e9 && this.j(t5);
465
+ }
466
+ j(t5) {
467
+ t5 === E ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t5 ?? "");
468
+ }
469
+ };
470
+ var H = class extends k {
471
+ constructor() {
472
+ super(...arguments), this.type = 3;
473
+ }
474
+ j(t5) {
475
+ this.element[this.name] = t5 === E ? void 0 : t5;
476
+ }
477
+ };
478
+ var I = class extends k {
479
+ constructor() {
480
+ super(...arguments), this.type = 4;
481
+ }
482
+ j(t5) {
483
+ this.element.toggleAttribute(this.name, !!t5 && t5 !== E);
484
+ }
485
+ };
486
+ var L = class extends k {
487
+ constructor(t5, i7, s4, e9, h3) {
488
+ super(t5, i7, s4, e9, h3), this.type = 5;
489
+ }
490
+ _$AI(t5, i7 = this) {
491
+ if ((t5 = S2(this, t5, i7, 0) ?? E) === T) return;
492
+ const s4 = this._$AH, e9 = t5 === E && s4 !== E || t5.capture !== s4.capture || t5.once !== s4.once || t5.passive !== s4.passive, h3 = t5 !== E && (s4 === E || e9);
493
+ e9 && this.element.removeEventListener(this.name, this, s4), h3 && this.element.addEventListener(this.name, this, t5), this._$AH = t5;
494
+ }
495
+ handleEvent(t5) {
496
+ "function" == typeof this._$AH ? this._$AH.call(this.options?.host ?? this.element, t5) : this._$AH.handleEvent(t5);
497
+ }
498
+ };
499
+ var z = class {
500
+ constructor(t5, i7, s4) {
501
+ this.element = t5, this.type = 6, this._$AN = void 0, this._$AM = i7, this.options = s4;
502
+ }
503
+ get _$AU() {
504
+ return this._$AM._$AU;
505
+ }
506
+ _$AI(t5) {
507
+ S2(this, t5);
508
+ }
509
+ };
510
+ var j = t2.litHtmlPolyfillSupport;
511
+ j?.(N, R), (t2.litHtmlVersions ?? (t2.litHtmlVersions = [])).push("3.3.0");
512
+ var B = (t5, i7, s4) => {
513
+ const e9 = s4?.renderBefore ?? i7;
514
+ let h3 = e9._$litPart$;
515
+ if (void 0 === h3) {
516
+ const t6 = s4?.renderBefore ?? null;
517
+ e9._$litPart$ = h3 = new R(i7.insertBefore(l2(), t6), t6, void 0, s4 ?? {});
518
+ }
519
+ return h3._$AI(t5), h3;
520
+ };
521
+
522
+ // node_modules/lit-element/lit-element.js
523
+ var s3 = globalThis;
524
+ var i4 = class extends y {
525
+ constructor() {
526
+ super(...arguments), this.renderOptions = { host: this }, this._$Do = void 0;
527
+ }
528
+ createRenderRoot() {
529
+ var _a;
530
+ const t5 = super.createRenderRoot();
531
+ return (_a = this.renderOptions).renderBefore ?? (_a.renderBefore = t5.firstChild), t5;
532
+ }
533
+ update(t5) {
534
+ const r6 = this.render();
535
+ this.hasUpdated || (this.renderOptions.isConnected = this.isConnected), super.update(t5), this._$Do = B(r6, this.renderRoot, this.renderOptions);
536
+ }
537
+ connectedCallback() {
538
+ super.connectedCallback(), this._$Do?.setConnected(true);
539
+ }
540
+ disconnectedCallback() {
541
+ super.disconnectedCallback(), this._$Do?.setConnected(false);
542
+ }
543
+ render() {
544
+ return T;
545
+ }
546
+ };
547
+ i4._$litElement$ = true, i4["finalized"] = true, s3.litElementHydrateSupport?.({ LitElement: i4 });
548
+ var o4 = s3.litElementPolyfillSupport;
549
+ o4?.({ LitElement: i4 });
550
+ (s3.litElementVersions ?? (s3.litElementVersions = [])).push("4.2.0");
551
+
552
+ // node_modules/@lit/reactive-element/decorators/custom-element.js
553
+ var t3 = (t5) => (e9, o6) => {
554
+ void 0 !== o6 ? o6.addInitializer((() => {
555
+ customElements.define(t5, e9);
556
+ })) : customElements.define(t5, e9);
557
+ };
558
+
559
+ // node_modules/@lit/reactive-element/decorators/property.js
560
+ var o5 = { attribute: true, type: String, converter: u, reflect: false, hasChanged: f };
561
+ var r4 = (t5 = o5, e9, r6) => {
562
+ const { kind: n5, metadata: i7 } = r6;
563
+ let s4 = globalThis.litPropertyMetadata.get(i7);
564
+ if (void 0 === s4 && globalThis.litPropertyMetadata.set(i7, s4 = /* @__PURE__ */ new Map()), "setter" === n5 && ((t5 = Object.create(t5)).wrapped = true), s4.set(r6.name, t5), "accessor" === n5) {
565
+ const { name: o6 } = r6;
566
+ return { set(r7) {
567
+ const n6 = e9.get.call(this);
568
+ e9.set.call(this, r7), this.requestUpdate(o6, n6, t5);
569
+ }, init(e10) {
570
+ return void 0 !== e10 && this.C(o6, void 0, t5, e10), e10;
571
+ } };
572
+ }
573
+ if ("setter" === n5) {
574
+ const { name: o6 } = r6;
575
+ return function(r7) {
576
+ const n6 = this[o6];
577
+ e9.call(this, r7), this.requestUpdate(o6, n6, t5);
578
+ };
579
+ }
580
+ throw Error("Unsupported decorator location: " + n5);
581
+ };
582
+ function n4(t5) {
583
+ return (e9, o6) => "object" == typeof o6 ? r4(t5, e9, o6) : ((t6, e10, o7) => {
584
+ const r6 = e10.hasOwnProperty(o7);
585
+ return e10.constructor.createProperty(o7, t6), r6 ? Object.getOwnPropertyDescriptor(e10, o7) : void 0;
586
+ })(t5, e9, o6);
587
+ }
588
+
589
+ // node_modules/@lit/reactive-element/decorators/base.js
590
+ var e4 = (e9, t5, c4) => (c4.configurable = true, c4.enumerable = true, Reflect.decorate && "object" != typeof t5 && Object.defineProperty(e9, t5, c4), c4);
591
+
592
+ // node_modules/@lit/reactive-element/decorators/query.js
593
+ function e5(e9, r6) {
594
+ return (n5, s4, i7) => {
595
+ const o6 = (t5) => t5.renderRoot?.querySelector(e9) ?? null;
596
+ if (r6) {
597
+ const { get: e10, set: r7 } = "object" == typeof s4 ? n5 : i7 ?? (() => {
598
+ const t5 = Symbol();
599
+ return { get() {
600
+ return this[t5];
601
+ }, set(e11) {
602
+ this[t5] = e11;
603
+ } };
604
+ })();
605
+ return e4(n5, s4, { get() {
606
+ let t5 = e10.call(this);
607
+ return void 0 === t5 && (t5 = o6(this), (null !== t5 || this.hasUpdated) && r7.call(this, t5)), t5;
608
+ } });
609
+ }
610
+ return e4(n5, s4, { get() {
611
+ return o6(this);
612
+ } });
613
+ };
614
+ }
615
+
616
+ // src/styles/component-styles/host.css
617
+ var host_default = ":host {\n box-sizing: border-box !important;\n}\n\n:host *,\n:host *::before,\n:host *::after {\n box-sizing: inherit !important;\n}\n\n[hidden] {\n display: none !important;\n}\n";
618
+
619
+ // src/internal/placer-element.ts
620
+ var PlacerElement = class extends i4 {
621
+ constructor() {
622
+ super();
623
+ this.hasRecordedInitialProperties = false;
624
+ this.initialReflectedProperties = /* @__PURE__ */ new Map();
625
+ /** A method to set and check custom states. */
626
+ this.customStates = {
627
+ /** Adds or removes the specified custom state. */
628
+ set: (customState, active) => {
629
+ if (!Boolean(this.internals?.states)) {
630
+ return;
631
+ }
632
+ if (active) {
633
+ this.internals.states.add(customState);
634
+ } else {
635
+ this.internals.states.delete(customState);
636
+ }
637
+ },
638
+ /** Determines whether or not the element currently has the specified state. */
639
+ has: (customState) => {
640
+ if (!Boolean(this.internals?.states)) {
641
+ return false;
642
+ }
643
+ return this.internals.states.has(customState);
644
+ }
645
+ };
646
+ try {
647
+ this.internals = this.attachInternals();
648
+ } catch {
649
+ console.error(
650
+ "Element internals are not supported in your browser. Consider using a polyfill."
651
+ );
652
+ }
653
+ this.customStates.set("pc-defined", true);
654
+ let Self = this.constructor;
655
+ for (let [property, spec] of Self.elementProperties) {
656
+ if (spec.default === "inherit" && spec.initial !== void 0 && typeof property === "string") {
657
+ this.customStates.set(
658
+ `initial-${property}-${spec.initial}`,
659
+ true
660
+ );
661
+ }
662
+ }
663
+ }
664
+ /** Override the default `styles` property to fetch and convert string CSS files. Components can override this behavior by setting their own `static styles = []` property. */
665
+ static get styles() {
666
+ const styles = Array.isArray(this.css) ? this.css : this.css ? [this.css] : [];
667
+ return [host_default, ...styles].map(
668
+ (style) => typeof style === "string" ? r(style) : style
669
+ );
670
+ }
671
+ attributeChangedCallback(name, oldValue, newValue) {
672
+ if (!this.hasRecordedInitialProperties) {
673
+ this.constructor.elementProperties.forEach((object, property) => {
674
+ if (typeof property === "string" && object.reflect) {
675
+ const value = this[property];
676
+ if (value != null) {
677
+ this.initialReflectedProperties.set(property, value);
678
+ }
679
+ }
680
+ });
681
+ this.hasRecordedInitialProperties = true;
682
+ }
683
+ super.attributeChangedCallback(name, oldValue, newValue);
684
+ }
685
+ willUpdate(changedProperties) {
686
+ super.willUpdate(changedProperties);
687
+ this.initialReflectedProperties.forEach((value, prop) => {
688
+ if (changedProperties.has(prop) && this[prop] == null) {
689
+ this[prop] = value;
690
+ }
691
+ });
692
+ }
693
+ firstUpdated(changedProperties) {
694
+ super.firstUpdated(changedProperties);
695
+ }
696
+ };
697
+ __decorateClass([
698
+ n4()
699
+ ], PlacerElement.prototype, "lang", 2);
700
+ __decorateClass([
701
+ n4()
702
+ ], PlacerElement.prototype, "dir", 2);
703
+
704
+ // src/internal/animate.ts
705
+ function animateTo(element, keyframes, options) {
706
+ return new Promise((resolve) => {
707
+ if (options?.duration === Infinity) {
708
+ throw new Error("Promise\u2010based animations must be finite.");
709
+ }
710
+ const animation = element.animate(keyframes, {
711
+ ...options,
712
+ duration: prefersReducedMotion() ? 0 : options.duration
713
+ });
714
+ animation.addEventListener("cancel", resolve, { once: true });
715
+ animation.addEventListener("finish", resolve, { once: true });
716
+ });
717
+ }
718
+ function prefersReducedMotion() {
719
+ const query = window.matchMedia("(prefers-reduced-motion: reduce)");
720
+ return query.matches;
721
+ }
722
+ function stopAnimations(element) {
723
+ return Promise.all(
724
+ element.getAnimations().map((animation) => {
725
+ return new Promise((resolve) => {
726
+ animation.cancel();
727
+ requestAnimationFrame(resolve);
728
+ });
729
+ })
730
+ );
731
+ }
732
+
733
+ // src/utilities/animation-registry.ts
734
+ var defaultAnimationRegistry = /* @__PURE__ */ new Map();
735
+ var customAnimationRegistry = /* @__PURE__ */ new WeakMap();
736
+ function ensureAnimation(animation) {
737
+ return animation ?? { keyframes: [], options: { duration: 0 } };
738
+ }
739
+ function getLogicalAnimation(animation, dir) {
740
+ if (dir.toLowerCase() === "rtl") {
741
+ return {
742
+ keyframes: animation.rtlKeyframes || animation.keyframes,
743
+ options: animation.options
744
+ };
745
+ }
746
+ return animation;
747
+ }
748
+ function setDefaultAnimation(animationName, animation) {
749
+ defaultAnimationRegistry.set(animationName, ensureAnimation(animation));
750
+ }
751
+ function getAnimation(element, animationName, options) {
752
+ const customAnimation = customAnimationRegistry.get(element);
753
+ if (customAnimation?.[animationName]) {
754
+ return getLogicalAnimation(customAnimation[animationName], options.dir);
755
+ }
756
+ const defaultAnimation = defaultAnimationRegistry.get(animationName);
757
+ if (defaultAnimation) {
758
+ return getLogicalAnimation(defaultAnimation, options.dir);
759
+ }
760
+ return {
761
+ keyframes: [],
762
+ options: { duration: 0 }
763
+ };
764
+ }
765
+
766
+ // src/translations/index.ts
767
+ var connectedElements = /* @__PURE__ */ new Set();
768
+ var translations = /* @__PURE__ */ new Map();
769
+ var fallback;
770
+ var documentDirection = "ltr";
771
+ var documentLanguage = "en";
772
+ var isClient = typeof MutationObserver !== "undefined" && typeof document !== "undefined" && typeof document.documentElement !== "undefined";
773
+ if (isClient) {
774
+ const documentElementObserver = new MutationObserver(update);
775
+ documentDirection = document.documentElement.dir || "ltr";
776
+ documentLanguage = document.documentElement.lang || navigator.language;
777
+ documentElementObserver.observe(document.documentElement, {
778
+ attributes: true,
779
+ attributeFilter: ["dir", "lang"]
780
+ });
781
+ }
782
+ function registerTranslation(...translation2) {
783
+ translation2.map((t5) => {
784
+ const code = t5.$code.toLowerCase();
785
+ if (translations.has(code)) {
786
+ translations.set(code, { ...translations.get(code), ...t5 });
787
+ } else {
788
+ translations.set(code, t5);
789
+ }
790
+ if (!fallback) {
791
+ fallback = t5;
792
+ }
793
+ });
794
+ update();
795
+ }
796
+ function update() {
797
+ if (isClient) {
798
+ documentDirection = document.documentElement.dir || "ltr";
799
+ documentLanguage = document.documentElement.lang || navigator.language;
800
+ }
801
+ [...connectedElements.keys()].map((element) => {
802
+ if (element instanceof i4 && typeof element.requestUpdate === "function") {
803
+ element.requestUpdate();
804
+ }
805
+ });
806
+ }
807
+ var LocalizeController = class {
808
+ constructor(host) {
809
+ this.host = host;
810
+ this.host.addController(this);
811
+ }
812
+ hostConnected() {
813
+ connectedElements.add(this.host);
814
+ }
815
+ hostDisconnected() {
816
+ connectedElements.delete(this.host);
817
+ }
818
+ /** Gets the host element’s direction as determined by the `dir` attribute. The returned value is lowercase. */
819
+ dir() {
820
+ return `${this.host.dir || documentDirection}`.toLowerCase();
821
+ }
822
+ /** Gets the host element’s language as determined by the `lang` attribute. The returned value is lowercase. */
823
+ lang() {
824
+ return `${this.host.lang || documentLanguage}`.toLowerCase();
825
+ }
826
+ getTranslationData(lang) {
827
+ const locale = new Intl.Locale(lang.replace(/_/g, "-"));
828
+ const language = locale?.language.toLowerCase();
829
+ const region = locale?.region?.toLowerCase() ?? "";
830
+ const primary = translations.get(`${language}-${region}`);
831
+ const secondary = translations.get(language);
832
+ return { locale, language, region, primary, secondary };
833
+ }
834
+ /** Determines if the specified term exists, optionally checking the fallback translation. */
835
+ exists(key, options) {
836
+ const { primary, secondary } = this.getTranslationData(
837
+ options.lang ?? this.lang()
838
+ );
839
+ options = {
840
+ includeFallback: false,
841
+ ...options
842
+ };
843
+ if (primary && primary[key] || secondary && secondary[key] || options.includeFallback && fallback && fallback[key]) {
844
+ return true;
845
+ }
846
+ return false;
847
+ }
848
+ /** Outputs a translated term. */
849
+ term(key, ...args) {
850
+ const { primary, secondary } = this.getTranslationData(this.lang());
851
+ let term;
852
+ if (primary && primary[key]) {
853
+ term = primary[key];
854
+ } else if (secondary && secondary[key]) {
855
+ term = secondary[key];
856
+ } else if (fallback && fallback[key]) {
857
+ term = fallback[key];
858
+ } else {
859
+ console.error(`No translation was found for \u201C${String(key)}\u201D.`);
860
+ return String(key);
861
+ }
862
+ if (typeof term === "function") {
863
+ return term(...args);
864
+ }
865
+ return term;
866
+ }
867
+ /** Outputs a localised date in the specified format. */
868
+ date(dateToFormat, options) {
869
+ dateToFormat = new Date(dateToFormat);
870
+ return new Intl.DateTimeFormat(this.lang(), options).format(
871
+ dateToFormat
872
+ );
873
+ }
874
+ /** Outputs a localised number in the specified format. */
875
+ number(numberToFormat, options) {
876
+ numberToFormat = Number(numberToFormat);
877
+ return isNaN(numberToFormat) ? "" : new Intl.NumberFormat(this.lang(), options).format(
878
+ numberToFormat
879
+ );
880
+ }
881
+ /** Outputs a localised time in relative format. */
882
+ relativeTime(value, unit, options) {
883
+ return new Intl.RelativeTimeFormat(this.lang(), options).format(
884
+ value,
885
+ unit
886
+ );
887
+ }
888
+ };
889
+
890
+ // src/translations/en.ts
891
+ var translation = {
892
+ $code: "en",
893
+ $name: "English",
894
+ $dir: "ltr",
895
+ carousel: "Carousel",
896
+ clearEntry: "Clear entry",
897
+ close: "Close",
898
+ copied: "Copied!",
899
+ copy: "Copy",
900
+ currentValue: "Current value",
901
+ error: "Error",
902
+ goToSlide: (slide, count) => `Go to slide ${slide} of ${count}`,
903
+ hidePassword: "Hide password",
904
+ hue: "Hue",
905
+ loading: "Loading\u2026",
906
+ nextSlide: "Next slide",
907
+ numOptionsSelected: (number) => {
908
+ if (number === 0) {
909
+ return "No options selected";
910
+ } else if (number === 1) {
911
+ return "One option selected";
912
+ } else {
913
+ return `${number} options selected`;
914
+ }
915
+ },
916
+ opacity: "Opacity",
917
+ pickAColorFromTheScreen: "Pick a color from the screen",
918
+ previousSlide: "Previous slide",
919
+ progress: "Progress",
920
+ remove: "Remove",
921
+ resize: "Resize",
922
+ scrollableRegion: "Scrollable region",
923
+ scrollToEnd: "Scroll to end",
924
+ scrollToStart: "Scroll to start",
925
+ showPassword: "Show password",
926
+ slideNum: (slide) => `Slide ${slide}`,
927
+ toggleColorFormat: "Toggle color format"
928
+ };
929
+ registerTranslation(translation);
930
+ var en_default = translation;
931
+
932
+ // src/utilities/localize.ts
933
+ var LocalizeController2 = class extends LocalizeController {
934
+ };
935
+ registerTranslation(en_default);
936
+
937
+ // node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs
938
+ var min = Math.min;
939
+ var max = Math.max;
940
+ var round = Math.round;
941
+ var floor = Math.floor;
942
+ var createCoords = (v2) => ({
943
+ x: v2,
944
+ y: v2
945
+ });
946
+ var oppositeSideMap = {
947
+ left: "right",
948
+ right: "left",
949
+ bottom: "top",
950
+ top: "bottom"
951
+ };
952
+ var oppositeAlignmentMap = {
953
+ start: "end",
954
+ end: "start"
955
+ };
956
+ function clamp(start, value, end) {
957
+ return max(start, min(value, end));
958
+ }
959
+ function evaluate(value, param) {
960
+ return typeof value === "function" ? value(param) : value;
961
+ }
962
+ function getSide(placement) {
963
+ return placement.split("-")[0];
964
+ }
965
+ function getAlignment(placement) {
966
+ return placement.split("-")[1];
967
+ }
968
+ function getOppositeAxis(axis) {
969
+ return axis === "x" ? "y" : "x";
970
+ }
971
+ function getAxisLength(axis) {
972
+ return axis === "y" ? "height" : "width";
973
+ }
974
+ var yAxisSides = /* @__PURE__ */ new Set(["top", "bottom"]);
975
+ function getSideAxis(placement) {
976
+ return yAxisSides.has(getSide(placement)) ? "y" : "x";
977
+ }
978
+ function getAlignmentAxis(placement) {
979
+ return getOppositeAxis(getSideAxis(placement));
980
+ }
981
+ function getAlignmentSides(placement, rects, rtl) {
982
+ if (rtl === void 0) {
983
+ rtl = false;
984
+ }
985
+ const alignment = getAlignment(placement);
986
+ const alignmentAxis = getAlignmentAxis(placement);
987
+ const length = getAxisLength(alignmentAxis);
988
+ let mainAlignmentSide = alignmentAxis === "x" ? alignment === (rtl ? "end" : "start") ? "right" : "left" : alignment === "start" ? "bottom" : "top";
989
+ if (rects.reference[length] > rects.floating[length]) {
990
+ mainAlignmentSide = getOppositePlacement(mainAlignmentSide);
991
+ }
992
+ return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];
993
+ }
994
+ function getExpandedPlacements(placement) {
995
+ const oppositePlacement = getOppositePlacement(placement);
996
+ return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
997
+ }
998
+ function getOppositeAlignmentPlacement(placement) {
999
+ return placement.replace(/start|end/g, (alignment) => oppositeAlignmentMap[alignment]);
1000
+ }
1001
+ var lrPlacement = ["left", "right"];
1002
+ var rlPlacement = ["right", "left"];
1003
+ var tbPlacement = ["top", "bottom"];
1004
+ var btPlacement = ["bottom", "top"];
1005
+ function getSideList(side, isStart, rtl) {
1006
+ switch (side) {
1007
+ case "top":
1008
+ case "bottom":
1009
+ if (rtl) return isStart ? rlPlacement : lrPlacement;
1010
+ return isStart ? lrPlacement : rlPlacement;
1011
+ case "left":
1012
+ case "right":
1013
+ return isStart ? tbPlacement : btPlacement;
1014
+ default:
1015
+ return [];
1016
+ }
1017
+ }
1018
+ function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
1019
+ const alignment = getAlignment(placement);
1020
+ let list = getSideList(getSide(placement), direction === "start", rtl);
1021
+ if (alignment) {
1022
+ list = list.map((side) => side + "-" + alignment);
1023
+ if (flipAlignment) {
1024
+ list = list.concat(list.map(getOppositeAlignmentPlacement));
1025
+ }
1026
+ }
1027
+ return list;
1028
+ }
1029
+ function getOppositePlacement(placement) {
1030
+ return placement.replace(/left|right|bottom|top/g, (side) => oppositeSideMap[side]);
1031
+ }
1032
+ function expandPaddingObject(padding) {
1033
+ return {
1034
+ top: 0,
1035
+ right: 0,
1036
+ bottom: 0,
1037
+ left: 0,
1038
+ ...padding
1039
+ };
1040
+ }
1041
+ function getPaddingObject(padding) {
1042
+ return typeof padding !== "number" ? expandPaddingObject(padding) : {
1043
+ top: padding,
1044
+ right: padding,
1045
+ bottom: padding,
1046
+ left: padding
1047
+ };
1048
+ }
1049
+ function rectToClientRect(rect) {
1050
+ const {
1051
+ x: x2,
1052
+ y: y3,
1053
+ width,
1054
+ height
1055
+ } = rect;
1056
+ return {
1057
+ width,
1058
+ height,
1059
+ top: y3,
1060
+ left: x2,
1061
+ right: x2 + width,
1062
+ bottom: y3 + height,
1063
+ x: x2,
1064
+ y: y3
1065
+ };
1066
+ }
1067
+
1068
+ // node_modules/@floating-ui/core/dist/floating-ui.core.mjs
1069
+ function computeCoordsFromPlacement(_ref, placement, rtl) {
1070
+ let {
1071
+ reference,
1072
+ floating
1073
+ } = _ref;
1074
+ const sideAxis = getSideAxis(placement);
1075
+ const alignmentAxis = getAlignmentAxis(placement);
1076
+ const alignLength = getAxisLength(alignmentAxis);
1077
+ const side = getSide(placement);
1078
+ const isVertical = sideAxis === "y";
1079
+ const commonX = reference.x + reference.width / 2 - floating.width / 2;
1080
+ const commonY = reference.y + reference.height / 2 - floating.height / 2;
1081
+ const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;
1082
+ let coords;
1083
+ switch (side) {
1084
+ case "top":
1085
+ coords = {
1086
+ x: commonX,
1087
+ y: reference.y - floating.height
1088
+ };
1089
+ break;
1090
+ case "bottom":
1091
+ coords = {
1092
+ x: commonX,
1093
+ y: reference.y + reference.height
1094
+ };
1095
+ break;
1096
+ case "right":
1097
+ coords = {
1098
+ x: reference.x + reference.width,
1099
+ y: commonY
1100
+ };
1101
+ break;
1102
+ case "left":
1103
+ coords = {
1104
+ x: reference.x - floating.width,
1105
+ y: commonY
1106
+ };
1107
+ break;
1108
+ default:
1109
+ coords = {
1110
+ x: reference.x,
1111
+ y: reference.y
1112
+ };
1113
+ }
1114
+ switch (getAlignment(placement)) {
1115
+ case "start":
1116
+ coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);
1117
+ break;
1118
+ case "end":
1119
+ coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);
1120
+ break;
1121
+ }
1122
+ return coords;
1123
+ }
1124
+ var computePosition = async (reference, floating, config) => {
1125
+ const {
1126
+ placement = "bottom",
1127
+ strategy = "absolute",
1128
+ middleware = [],
1129
+ platform: platform2
1130
+ } = config;
1131
+ const validMiddleware = middleware.filter(Boolean);
1132
+ const rtl = await (platform2.isRTL == null ? void 0 : platform2.isRTL(floating));
1133
+ let rects = await platform2.getElementRects({
1134
+ reference,
1135
+ floating,
1136
+ strategy
1137
+ });
1138
+ let {
1139
+ x: x2,
1140
+ y: y3
1141
+ } = computeCoordsFromPlacement(rects, placement, rtl);
1142
+ let statefulPlacement = placement;
1143
+ let middlewareData = {};
1144
+ let resetCount = 0;
1145
+ for (let i7 = 0; i7 < validMiddleware.length; i7++) {
1146
+ const {
1147
+ name,
1148
+ fn
1149
+ } = validMiddleware[i7];
1150
+ const {
1151
+ x: nextX,
1152
+ y: nextY,
1153
+ data,
1154
+ reset
1155
+ } = await fn({
1156
+ x: x2,
1157
+ y: y3,
1158
+ initialPlacement: placement,
1159
+ placement: statefulPlacement,
1160
+ strategy,
1161
+ middlewareData,
1162
+ rects,
1163
+ platform: platform2,
1164
+ elements: {
1165
+ reference,
1166
+ floating
1167
+ }
1168
+ });
1169
+ x2 = nextX != null ? nextX : x2;
1170
+ y3 = nextY != null ? nextY : y3;
1171
+ middlewareData = {
1172
+ ...middlewareData,
1173
+ [name]: {
1174
+ ...middlewareData[name],
1175
+ ...data
1176
+ }
1177
+ };
1178
+ if (reset && resetCount <= 50) {
1179
+ resetCount++;
1180
+ if (typeof reset === "object") {
1181
+ if (reset.placement) {
1182
+ statefulPlacement = reset.placement;
1183
+ }
1184
+ if (reset.rects) {
1185
+ rects = reset.rects === true ? await platform2.getElementRects({
1186
+ reference,
1187
+ floating,
1188
+ strategy
1189
+ }) : reset.rects;
1190
+ }
1191
+ ({
1192
+ x: x2,
1193
+ y: y3
1194
+ } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));
1195
+ }
1196
+ i7 = -1;
1197
+ }
1198
+ }
1199
+ return {
1200
+ x: x2,
1201
+ y: y3,
1202
+ placement: statefulPlacement,
1203
+ strategy,
1204
+ middlewareData
1205
+ };
1206
+ };
1207
+ async function detectOverflow(state, options) {
1208
+ var _await$platform$isEle;
1209
+ if (options === void 0) {
1210
+ options = {};
1211
+ }
1212
+ const {
1213
+ x: x2,
1214
+ y: y3,
1215
+ platform: platform2,
1216
+ rects,
1217
+ elements,
1218
+ strategy
1219
+ } = state;
1220
+ const {
1221
+ boundary = "clippingAncestors",
1222
+ rootBoundary = "viewport",
1223
+ elementContext = "floating",
1224
+ altBoundary = false,
1225
+ padding = 0
1226
+ } = evaluate(options, state);
1227
+ const paddingObject = getPaddingObject(padding);
1228
+ const altContext = elementContext === "floating" ? "reference" : "floating";
1229
+ const element = elements[altBoundary ? altContext : elementContext];
1230
+ const clippingClientRect = rectToClientRect(await platform2.getClippingRect({
1231
+ element: ((_await$platform$isEle = await (platform2.isElement == null ? void 0 : platform2.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || await (platform2.getDocumentElement == null ? void 0 : platform2.getDocumentElement(elements.floating)),
1232
+ boundary,
1233
+ rootBoundary,
1234
+ strategy
1235
+ }));
1236
+ const rect = elementContext === "floating" ? {
1237
+ x: x2,
1238
+ y: y3,
1239
+ width: rects.floating.width,
1240
+ height: rects.floating.height
1241
+ } : rects.reference;
1242
+ const offsetParent = await (platform2.getOffsetParent == null ? void 0 : platform2.getOffsetParent(elements.floating));
1243
+ const offsetScale = await (platform2.isElement == null ? void 0 : platform2.isElement(offsetParent)) ? await (platform2.getScale == null ? void 0 : platform2.getScale(offsetParent)) || {
1244
+ x: 1,
1245
+ y: 1
1246
+ } : {
1247
+ x: 1,
1248
+ y: 1
1249
+ };
1250
+ const elementClientRect = rectToClientRect(platform2.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform2.convertOffsetParentRelativeRectToViewportRelativeRect({
1251
+ elements,
1252
+ rect,
1253
+ offsetParent,
1254
+ strategy
1255
+ }) : rect);
1256
+ return {
1257
+ top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,
1258
+ bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,
1259
+ left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,
1260
+ right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x
1261
+ };
1262
+ }
1263
+ var arrow = (options) => ({
1264
+ name: "arrow",
1265
+ options,
1266
+ async fn(state) {
1267
+ const {
1268
+ x: x2,
1269
+ y: y3,
1270
+ placement,
1271
+ rects,
1272
+ platform: platform2,
1273
+ elements,
1274
+ middlewareData
1275
+ } = state;
1276
+ const {
1277
+ element,
1278
+ padding = 0
1279
+ } = evaluate(options, state) || {};
1280
+ if (element == null) {
1281
+ return {};
1282
+ }
1283
+ const paddingObject = getPaddingObject(padding);
1284
+ const coords = {
1285
+ x: x2,
1286
+ y: y3
1287
+ };
1288
+ const axis = getAlignmentAxis(placement);
1289
+ const length = getAxisLength(axis);
1290
+ const arrowDimensions = await platform2.getDimensions(element);
1291
+ const isYAxis = axis === "y";
1292
+ const minProp = isYAxis ? "top" : "left";
1293
+ const maxProp = isYAxis ? "bottom" : "right";
1294
+ const clientProp = isYAxis ? "clientHeight" : "clientWidth";
1295
+ const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];
1296
+ const startDiff = coords[axis] - rects.reference[axis];
1297
+ const arrowOffsetParent = await (platform2.getOffsetParent == null ? void 0 : platform2.getOffsetParent(element));
1298
+ let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;
1299
+ if (!clientSize || !await (platform2.isElement == null ? void 0 : platform2.isElement(arrowOffsetParent))) {
1300
+ clientSize = elements.floating[clientProp] || rects.floating[length];
1301
+ }
1302
+ const centerToReference = endDiff / 2 - startDiff / 2;
1303
+ const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;
1304
+ const minPadding = min(paddingObject[minProp], largestPossiblePadding);
1305
+ const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);
1306
+ const min$1 = minPadding;
1307
+ const max2 = clientSize - arrowDimensions[length] - maxPadding;
1308
+ const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;
1309
+ const offset3 = clamp(min$1, center, max2);
1310
+ const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset3 && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;
1311
+ const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max2 : 0;
1312
+ return {
1313
+ [axis]: coords[axis] + alignmentOffset,
1314
+ data: {
1315
+ [axis]: offset3,
1316
+ centerOffset: center - offset3 - alignmentOffset,
1317
+ ...shouldAddOffset && {
1318
+ alignmentOffset
1319
+ }
1320
+ },
1321
+ reset: shouldAddOffset
1322
+ };
1323
+ }
1324
+ });
1325
+ var flip = function(options) {
1326
+ if (options === void 0) {
1327
+ options = {};
1328
+ }
1329
+ return {
1330
+ name: "flip",
1331
+ options,
1332
+ async fn(state) {
1333
+ var _middlewareData$arrow, _middlewareData$flip;
1334
+ const {
1335
+ placement,
1336
+ middlewareData,
1337
+ rects,
1338
+ initialPlacement,
1339
+ platform: platform2,
1340
+ elements
1341
+ } = state;
1342
+ const {
1343
+ mainAxis: checkMainAxis = true,
1344
+ crossAxis: checkCrossAxis = true,
1345
+ fallbackPlacements: specifiedFallbackPlacements,
1346
+ fallbackStrategy = "bestFit",
1347
+ fallbackAxisSideDirection = "none",
1348
+ flipAlignment = true,
1349
+ ...detectOverflowOptions
1350
+ } = evaluate(options, state);
1351
+ if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {
1352
+ return {};
1353
+ }
1354
+ const side = getSide(placement);
1355
+ const initialSideAxis = getSideAxis(initialPlacement);
1356
+ const isBasePlacement = getSide(initialPlacement) === initialPlacement;
1357
+ const rtl = await (platform2.isRTL == null ? void 0 : platform2.isRTL(elements.floating));
1358
+ const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));
1359
+ const hasFallbackAxisSideDirection = fallbackAxisSideDirection !== "none";
1360
+ if (!specifiedFallbackPlacements && hasFallbackAxisSideDirection) {
1361
+ fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
1362
+ }
1363
+ const placements2 = [initialPlacement, ...fallbackPlacements];
1364
+ const overflow = await detectOverflow(state, detectOverflowOptions);
1365
+ const overflows = [];
1366
+ let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];
1367
+ if (checkMainAxis) {
1368
+ overflows.push(overflow[side]);
1369
+ }
1370
+ if (checkCrossAxis) {
1371
+ const sides2 = getAlignmentSides(placement, rects, rtl);
1372
+ overflows.push(overflow[sides2[0]], overflow[sides2[1]]);
1373
+ }
1374
+ overflowsData = [...overflowsData, {
1375
+ placement,
1376
+ overflows
1377
+ }];
1378
+ if (!overflows.every((side2) => side2 <= 0)) {
1379
+ var _middlewareData$flip2, _overflowsData$filter;
1380
+ const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;
1381
+ const nextPlacement = placements2[nextIndex];
1382
+ if (nextPlacement) {
1383
+ const ignoreCrossAxisOverflow = checkCrossAxis === "alignment" ? initialSideAxis !== getSideAxis(nextPlacement) : false;
1384
+ if (!ignoreCrossAxisOverflow || // We leave the current main axis only if every placement on that axis
1385
+ // overflows the main axis.
1386
+ overflowsData.every((d3) => getSideAxis(d3.placement) === initialSideAxis ? d3.overflows[0] > 0 : true)) {
1387
+ return {
1388
+ data: {
1389
+ index: nextIndex,
1390
+ overflows: overflowsData
1391
+ },
1392
+ reset: {
1393
+ placement: nextPlacement
1394
+ }
1395
+ };
1396
+ }
1397
+ }
1398
+ let resetPlacement = (_overflowsData$filter = overflowsData.filter((d3) => d3.overflows[0] <= 0).sort((a3, b3) => a3.overflows[1] - b3.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;
1399
+ if (!resetPlacement) {
1400
+ switch (fallbackStrategy) {
1401
+ case "bestFit": {
1402
+ var _overflowsData$filter2;
1403
+ const placement2 = (_overflowsData$filter2 = overflowsData.filter((d3) => {
1404
+ if (hasFallbackAxisSideDirection) {
1405
+ const currentSideAxis = getSideAxis(d3.placement);
1406
+ return currentSideAxis === initialSideAxis || // Create a bias to the `y` side axis due to horizontal
1407
+ // reading directions favoring greater width.
1408
+ currentSideAxis === "y";
1409
+ }
1410
+ return true;
1411
+ }).map((d3) => [d3.placement, d3.overflows.filter((overflow2) => overflow2 > 0).reduce((acc, overflow2) => acc + overflow2, 0)]).sort((a3, b3) => a3[1] - b3[1])[0]) == null ? void 0 : _overflowsData$filter2[0];
1412
+ if (placement2) {
1413
+ resetPlacement = placement2;
1414
+ }
1415
+ break;
1416
+ }
1417
+ case "initialPlacement":
1418
+ resetPlacement = initialPlacement;
1419
+ break;
1420
+ }
1421
+ }
1422
+ if (placement !== resetPlacement) {
1423
+ return {
1424
+ reset: {
1425
+ placement: resetPlacement
1426
+ }
1427
+ };
1428
+ }
1429
+ }
1430
+ return {};
1431
+ }
1432
+ };
1433
+ };
1434
+ var originSides = /* @__PURE__ */ new Set(["left", "top"]);
1435
+ async function convertValueToCoords(state, options) {
1436
+ const {
1437
+ placement,
1438
+ platform: platform2,
1439
+ elements
1440
+ } = state;
1441
+ const rtl = await (platform2.isRTL == null ? void 0 : platform2.isRTL(elements.floating));
1442
+ const side = getSide(placement);
1443
+ const alignment = getAlignment(placement);
1444
+ const isVertical = getSideAxis(placement) === "y";
1445
+ const mainAxisMulti = originSides.has(side) ? -1 : 1;
1446
+ const crossAxisMulti = rtl && isVertical ? -1 : 1;
1447
+ const rawValue = evaluate(options, state);
1448
+ let {
1449
+ mainAxis,
1450
+ crossAxis,
1451
+ alignmentAxis
1452
+ } = typeof rawValue === "number" ? {
1453
+ mainAxis: rawValue,
1454
+ crossAxis: 0,
1455
+ alignmentAxis: null
1456
+ } : {
1457
+ mainAxis: rawValue.mainAxis || 0,
1458
+ crossAxis: rawValue.crossAxis || 0,
1459
+ alignmentAxis: rawValue.alignmentAxis
1460
+ };
1461
+ if (alignment && typeof alignmentAxis === "number") {
1462
+ crossAxis = alignment === "end" ? alignmentAxis * -1 : alignmentAxis;
1463
+ }
1464
+ return isVertical ? {
1465
+ x: crossAxis * crossAxisMulti,
1466
+ y: mainAxis * mainAxisMulti
1467
+ } : {
1468
+ x: mainAxis * mainAxisMulti,
1469
+ y: crossAxis * crossAxisMulti
1470
+ };
1471
+ }
1472
+ var offset = function(options) {
1473
+ if (options === void 0) {
1474
+ options = 0;
1475
+ }
1476
+ return {
1477
+ name: "offset",
1478
+ options,
1479
+ async fn(state) {
1480
+ var _middlewareData$offse, _middlewareData$arrow;
1481
+ const {
1482
+ x: x2,
1483
+ y: y3,
1484
+ placement,
1485
+ middlewareData
1486
+ } = state;
1487
+ const diffCoords = await convertValueToCoords(state, options);
1488
+ if (placement === ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse.placement) && (_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {
1489
+ return {};
1490
+ }
1491
+ return {
1492
+ x: x2 + diffCoords.x,
1493
+ y: y3 + diffCoords.y,
1494
+ data: {
1495
+ ...diffCoords,
1496
+ placement
1497
+ }
1498
+ };
1499
+ }
1500
+ };
1501
+ };
1502
+ var shift = function(options) {
1503
+ if (options === void 0) {
1504
+ options = {};
1505
+ }
1506
+ return {
1507
+ name: "shift",
1508
+ options,
1509
+ async fn(state) {
1510
+ const {
1511
+ x: x2,
1512
+ y: y3,
1513
+ placement
1514
+ } = state;
1515
+ const {
1516
+ mainAxis: checkMainAxis = true,
1517
+ crossAxis: checkCrossAxis = false,
1518
+ limiter = {
1519
+ fn: (_ref) => {
1520
+ let {
1521
+ x: x3,
1522
+ y: y4
1523
+ } = _ref;
1524
+ return {
1525
+ x: x3,
1526
+ y: y4
1527
+ };
1528
+ }
1529
+ },
1530
+ ...detectOverflowOptions
1531
+ } = evaluate(options, state);
1532
+ const coords = {
1533
+ x: x2,
1534
+ y: y3
1535
+ };
1536
+ const overflow = await detectOverflow(state, detectOverflowOptions);
1537
+ const crossAxis = getSideAxis(getSide(placement));
1538
+ const mainAxis = getOppositeAxis(crossAxis);
1539
+ let mainAxisCoord = coords[mainAxis];
1540
+ let crossAxisCoord = coords[crossAxis];
1541
+ if (checkMainAxis) {
1542
+ const minSide = mainAxis === "y" ? "top" : "left";
1543
+ const maxSide = mainAxis === "y" ? "bottom" : "right";
1544
+ const min2 = mainAxisCoord + overflow[minSide];
1545
+ const max2 = mainAxisCoord - overflow[maxSide];
1546
+ mainAxisCoord = clamp(min2, mainAxisCoord, max2);
1547
+ }
1548
+ if (checkCrossAxis) {
1549
+ const minSide = crossAxis === "y" ? "top" : "left";
1550
+ const maxSide = crossAxis === "y" ? "bottom" : "right";
1551
+ const min2 = crossAxisCoord + overflow[minSide];
1552
+ const max2 = crossAxisCoord - overflow[maxSide];
1553
+ crossAxisCoord = clamp(min2, crossAxisCoord, max2);
1554
+ }
1555
+ const limitedCoords = limiter.fn({
1556
+ ...state,
1557
+ [mainAxis]: mainAxisCoord,
1558
+ [crossAxis]: crossAxisCoord
1559
+ });
1560
+ return {
1561
+ ...limitedCoords,
1562
+ data: {
1563
+ x: limitedCoords.x - x2,
1564
+ y: limitedCoords.y - y3,
1565
+ enabled: {
1566
+ [mainAxis]: checkMainAxis,
1567
+ [crossAxis]: checkCrossAxis
1568
+ }
1569
+ }
1570
+ };
1571
+ }
1572
+ };
1573
+ };
1574
+ var size = function(options) {
1575
+ if (options === void 0) {
1576
+ options = {};
1577
+ }
1578
+ return {
1579
+ name: "size",
1580
+ options,
1581
+ async fn(state) {
1582
+ var _state$middlewareData, _state$middlewareData2;
1583
+ const {
1584
+ placement,
1585
+ rects,
1586
+ platform: platform2,
1587
+ elements
1588
+ } = state;
1589
+ const {
1590
+ apply = () => {
1591
+ },
1592
+ ...detectOverflowOptions
1593
+ } = evaluate(options, state);
1594
+ const overflow = await detectOverflow(state, detectOverflowOptions);
1595
+ const side = getSide(placement);
1596
+ const alignment = getAlignment(placement);
1597
+ const isYAxis = getSideAxis(placement) === "y";
1598
+ const {
1599
+ width,
1600
+ height
1601
+ } = rects.floating;
1602
+ let heightSide;
1603
+ let widthSide;
1604
+ if (side === "top" || side === "bottom") {
1605
+ heightSide = side;
1606
+ widthSide = alignment === (await (platform2.isRTL == null ? void 0 : platform2.isRTL(elements.floating)) ? "start" : "end") ? "left" : "right";
1607
+ } else {
1608
+ widthSide = side;
1609
+ heightSide = alignment === "end" ? "top" : "bottom";
1610
+ }
1611
+ const maximumClippingHeight = height - overflow.top - overflow.bottom;
1612
+ const maximumClippingWidth = width - overflow.left - overflow.right;
1613
+ const overflowAvailableHeight = min(height - overflow[heightSide], maximumClippingHeight);
1614
+ const overflowAvailableWidth = min(width - overflow[widthSide], maximumClippingWidth);
1615
+ const noShift = !state.middlewareData.shift;
1616
+ let availableHeight = overflowAvailableHeight;
1617
+ let availableWidth = overflowAvailableWidth;
1618
+ if ((_state$middlewareData = state.middlewareData.shift) != null && _state$middlewareData.enabled.x) {
1619
+ availableWidth = maximumClippingWidth;
1620
+ }
1621
+ if ((_state$middlewareData2 = state.middlewareData.shift) != null && _state$middlewareData2.enabled.y) {
1622
+ availableHeight = maximumClippingHeight;
1623
+ }
1624
+ if (noShift && !alignment) {
1625
+ const xMin = max(overflow.left, 0);
1626
+ const xMax = max(overflow.right, 0);
1627
+ const yMin = max(overflow.top, 0);
1628
+ const yMax = max(overflow.bottom, 0);
1629
+ if (isYAxis) {
1630
+ availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));
1631
+ } else {
1632
+ availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));
1633
+ }
1634
+ }
1635
+ await apply({
1636
+ ...state,
1637
+ availableWidth,
1638
+ availableHeight
1639
+ });
1640
+ const nextDimensions = await platform2.getDimensions(elements.floating);
1641
+ if (width !== nextDimensions.width || height !== nextDimensions.height) {
1642
+ return {
1643
+ reset: {
1644
+ rects: true
1645
+ }
1646
+ };
1647
+ }
1648
+ return {};
1649
+ }
1650
+ };
1651
+ };
1652
+
1653
+ // node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs
1654
+ function hasWindow() {
1655
+ return typeof window !== "undefined";
1656
+ }
1657
+ function getNodeName(node) {
1658
+ if (isNode(node)) {
1659
+ return (node.nodeName || "").toLowerCase();
1660
+ }
1661
+ return "#document";
1662
+ }
1663
+ function getWindow(node) {
1664
+ var _node$ownerDocument;
1665
+ return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;
1666
+ }
1667
+ function getDocumentElement(node) {
1668
+ var _ref;
1669
+ return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;
1670
+ }
1671
+ function isNode(value) {
1672
+ if (!hasWindow()) {
1673
+ return false;
1674
+ }
1675
+ return value instanceof Node || value instanceof getWindow(value).Node;
1676
+ }
1677
+ function isElement(value) {
1678
+ if (!hasWindow()) {
1679
+ return false;
1680
+ }
1681
+ return value instanceof Element || value instanceof getWindow(value).Element;
1682
+ }
1683
+ function isHTMLElement(value) {
1684
+ if (!hasWindow()) {
1685
+ return false;
1686
+ }
1687
+ return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;
1688
+ }
1689
+ function isShadowRoot(value) {
1690
+ if (!hasWindow() || typeof ShadowRoot === "undefined") {
1691
+ return false;
1692
+ }
1693
+ return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
1694
+ }
1695
+ var invalidOverflowDisplayValues = /* @__PURE__ */ new Set(["inline", "contents"]);
1696
+ function isOverflowElement(element) {
1697
+ const {
1698
+ overflow,
1699
+ overflowX,
1700
+ overflowY,
1701
+ display
1702
+ } = getComputedStyle2(element);
1703
+ return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !invalidOverflowDisplayValues.has(display);
1704
+ }
1705
+ var tableElements = /* @__PURE__ */ new Set(["table", "td", "th"]);
1706
+ function isTableElement(element) {
1707
+ return tableElements.has(getNodeName(element));
1708
+ }
1709
+ var topLayerSelectors = [":popover-open", ":modal"];
1710
+ function isTopLayer(element) {
1711
+ return topLayerSelectors.some((selector) => {
1712
+ try {
1713
+ return element.matches(selector);
1714
+ } catch (_e) {
1715
+ return false;
1716
+ }
1717
+ });
1718
+ }
1719
+ var transformProperties = ["transform", "translate", "scale", "rotate", "perspective"];
1720
+ var willChangeValues = ["transform", "translate", "scale", "rotate", "perspective", "filter"];
1721
+ var containValues = ["paint", "layout", "strict", "content"];
1722
+ function isContainingBlock(elementOrCss) {
1723
+ const webkit = isWebKit();
1724
+ const css = isElement(elementOrCss) ? getComputedStyle2(elementOrCss) : elementOrCss;
1725
+ return transformProperties.some((value) => css[value] ? css[value] !== "none" : false) || (css.containerType ? css.containerType !== "normal" : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== "none" : false) || !webkit && (css.filter ? css.filter !== "none" : false) || willChangeValues.some((value) => (css.willChange || "").includes(value)) || containValues.some((value) => (css.contain || "").includes(value));
1726
+ }
1727
+ function getContainingBlock(element) {
1728
+ let currentNode = getParentNode(element);
1729
+ while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
1730
+ if (isContainingBlock(currentNode)) {
1731
+ return currentNode;
1732
+ } else if (isTopLayer(currentNode)) {
1733
+ return null;
1734
+ }
1735
+ currentNode = getParentNode(currentNode);
1736
+ }
1737
+ return null;
1738
+ }
1739
+ function isWebKit() {
1740
+ if (typeof CSS === "undefined" || !CSS.supports) return false;
1741
+ return CSS.supports("-webkit-backdrop-filter", "none");
1742
+ }
1743
+ var lastTraversableNodeNames = /* @__PURE__ */ new Set(["html", "body", "#document"]);
1744
+ function isLastTraversableNode(node) {
1745
+ return lastTraversableNodeNames.has(getNodeName(node));
1746
+ }
1747
+ function getComputedStyle2(element) {
1748
+ return getWindow(element).getComputedStyle(element);
1749
+ }
1750
+ function getNodeScroll(element) {
1751
+ if (isElement(element)) {
1752
+ return {
1753
+ scrollLeft: element.scrollLeft,
1754
+ scrollTop: element.scrollTop
1755
+ };
1756
+ }
1757
+ return {
1758
+ scrollLeft: element.scrollX,
1759
+ scrollTop: element.scrollY
1760
+ };
1761
+ }
1762
+ function getParentNode(node) {
1763
+ if (getNodeName(node) === "html") {
1764
+ return node;
1765
+ }
1766
+ const result = (
1767
+ // Step into the shadow DOM of the parent of a slotted node.
1768
+ node.assignedSlot || // DOM Element detected.
1769
+ node.parentNode || // ShadowRoot detected.
1770
+ isShadowRoot(node) && node.host || // Fallback.
1771
+ getDocumentElement(node)
1772
+ );
1773
+ return isShadowRoot(result) ? result.host : result;
1774
+ }
1775
+ function getNearestOverflowAncestor(node) {
1776
+ const parentNode = getParentNode(node);
1777
+ if (isLastTraversableNode(parentNode)) {
1778
+ return node.ownerDocument ? node.ownerDocument.body : node.body;
1779
+ }
1780
+ if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {
1781
+ return parentNode;
1782
+ }
1783
+ return getNearestOverflowAncestor(parentNode);
1784
+ }
1785
+ function getOverflowAncestors(node, list, traverseIframes) {
1786
+ var _node$ownerDocument2;
1787
+ if (list === void 0) {
1788
+ list = [];
1789
+ }
1790
+ if (traverseIframes === void 0) {
1791
+ traverseIframes = true;
1792
+ }
1793
+ const scrollableAncestor = getNearestOverflowAncestor(node);
1794
+ const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);
1795
+ const win = getWindow(scrollableAncestor);
1796
+ if (isBody) {
1797
+ const frameElement = getFrameElement(win);
1798
+ return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);
1799
+ }
1800
+ return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));
1801
+ }
1802
+ function getFrameElement(win) {
1803
+ return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;
1804
+ }
1805
+
1806
+ // node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs
1807
+ function getCssDimensions(element) {
1808
+ const css = getComputedStyle2(element);
1809
+ let width = parseFloat(css.width) || 0;
1810
+ let height = parseFloat(css.height) || 0;
1811
+ const hasOffset = isHTMLElement(element);
1812
+ const offsetWidth = hasOffset ? element.offsetWidth : width;
1813
+ const offsetHeight = hasOffset ? element.offsetHeight : height;
1814
+ const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
1815
+ if (shouldFallback) {
1816
+ width = offsetWidth;
1817
+ height = offsetHeight;
1818
+ }
1819
+ return {
1820
+ width,
1821
+ height,
1822
+ $: shouldFallback
1823
+ };
1824
+ }
1825
+ function unwrapElement(element) {
1826
+ return !isElement(element) ? element.contextElement : element;
1827
+ }
1828
+ function getScale(element) {
1829
+ const domElement = unwrapElement(element);
1830
+ if (!isHTMLElement(domElement)) {
1831
+ return createCoords(1);
1832
+ }
1833
+ const rect = domElement.getBoundingClientRect();
1834
+ const {
1835
+ width,
1836
+ height,
1837
+ $: $2
1838
+ } = getCssDimensions(domElement);
1839
+ let x2 = ($2 ? round(rect.width) : rect.width) / width;
1840
+ let y3 = ($2 ? round(rect.height) : rect.height) / height;
1841
+ if (!x2 || !Number.isFinite(x2)) {
1842
+ x2 = 1;
1843
+ }
1844
+ if (!y3 || !Number.isFinite(y3)) {
1845
+ y3 = 1;
1846
+ }
1847
+ return {
1848
+ x: x2,
1849
+ y: y3
1850
+ };
1851
+ }
1852
+ var noOffsets = /* @__PURE__ */ createCoords(0);
1853
+ function getVisualOffsets(element) {
1854
+ const win = getWindow(element);
1855
+ if (!isWebKit() || !win.visualViewport) {
1856
+ return noOffsets;
1857
+ }
1858
+ return {
1859
+ x: win.visualViewport.offsetLeft,
1860
+ y: win.visualViewport.offsetTop
1861
+ };
1862
+ }
1863
+ function shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {
1864
+ if (isFixed === void 0) {
1865
+ isFixed = false;
1866
+ }
1867
+ if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {
1868
+ return false;
1869
+ }
1870
+ return isFixed;
1871
+ }
1872
+ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {
1873
+ if (includeScale === void 0) {
1874
+ includeScale = false;
1875
+ }
1876
+ if (isFixedStrategy === void 0) {
1877
+ isFixedStrategy = false;
1878
+ }
1879
+ const clientRect = element.getBoundingClientRect();
1880
+ const domElement = unwrapElement(element);
1881
+ let scale = createCoords(1);
1882
+ if (includeScale) {
1883
+ if (offsetParent) {
1884
+ if (isElement(offsetParent)) {
1885
+ scale = getScale(offsetParent);
1886
+ }
1887
+ } else {
1888
+ scale = getScale(element);
1889
+ }
1890
+ }
1891
+ const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
1892
+ let x2 = (clientRect.left + visualOffsets.x) / scale.x;
1893
+ let y3 = (clientRect.top + visualOffsets.y) / scale.y;
1894
+ let width = clientRect.width / scale.x;
1895
+ let height = clientRect.height / scale.y;
1896
+ if (domElement) {
1897
+ const win = getWindow(domElement);
1898
+ const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
1899
+ let currentWin = win;
1900
+ let currentIFrame = getFrameElement(currentWin);
1901
+ while (currentIFrame && offsetParent && offsetWin !== currentWin) {
1902
+ const iframeScale = getScale(currentIFrame);
1903
+ const iframeRect = currentIFrame.getBoundingClientRect();
1904
+ const css = getComputedStyle2(currentIFrame);
1905
+ const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
1906
+ const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
1907
+ x2 *= iframeScale.x;
1908
+ y3 *= iframeScale.y;
1909
+ width *= iframeScale.x;
1910
+ height *= iframeScale.y;
1911
+ x2 += left;
1912
+ y3 += top;
1913
+ currentWin = getWindow(currentIFrame);
1914
+ currentIFrame = getFrameElement(currentWin);
1915
+ }
1916
+ }
1917
+ return rectToClientRect({
1918
+ width,
1919
+ height,
1920
+ x: x2,
1921
+ y: y3
1922
+ });
1923
+ }
1924
+ function getWindowScrollBarX(element, rect) {
1925
+ const leftScroll = getNodeScroll(element).scrollLeft;
1926
+ if (!rect) {
1927
+ return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;
1928
+ }
1929
+ return rect.left + leftScroll;
1930
+ }
1931
+ function getHTMLOffset(documentElement, scroll) {
1932
+ const htmlRect = documentElement.getBoundingClientRect();
1933
+ const x2 = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);
1934
+ const y3 = htmlRect.top + scroll.scrollTop;
1935
+ return {
1936
+ x: x2,
1937
+ y: y3
1938
+ };
1939
+ }
1940
+ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
1941
+ let {
1942
+ elements,
1943
+ rect,
1944
+ offsetParent,
1945
+ strategy
1946
+ } = _ref;
1947
+ const isFixed = strategy === "fixed";
1948
+ const documentElement = getDocumentElement(offsetParent);
1949
+ const topLayer = elements ? isTopLayer(elements.floating) : false;
1950
+ if (offsetParent === documentElement || topLayer && isFixed) {
1951
+ return rect;
1952
+ }
1953
+ let scroll = {
1954
+ scrollLeft: 0,
1955
+ scrollTop: 0
1956
+ };
1957
+ let scale = createCoords(1);
1958
+ const offsets = createCoords(0);
1959
+ const isOffsetParentAnElement = isHTMLElement(offsetParent);
1960
+ if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
1961
+ if (getNodeName(offsetParent) !== "body" || isOverflowElement(documentElement)) {
1962
+ scroll = getNodeScroll(offsetParent);
1963
+ }
1964
+ if (isHTMLElement(offsetParent)) {
1965
+ const offsetRect = getBoundingClientRect(offsetParent);
1966
+ scale = getScale(offsetParent);
1967
+ offsets.x = offsetRect.x + offsetParent.clientLeft;
1968
+ offsets.y = offsetRect.y + offsetParent.clientTop;
1969
+ }
1970
+ }
1971
+ const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
1972
+ return {
1973
+ width: rect.width * scale.x,
1974
+ height: rect.height * scale.y,
1975
+ x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x + htmlOffset.x,
1976
+ y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y + htmlOffset.y
1977
+ };
1978
+ }
1979
+ function getClientRects(element) {
1980
+ return Array.from(element.getClientRects());
1981
+ }
1982
+ function getDocumentRect(element) {
1983
+ const html = getDocumentElement(element);
1984
+ const scroll = getNodeScroll(element);
1985
+ const body = element.ownerDocument.body;
1986
+ const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
1987
+ const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
1988
+ let x2 = -scroll.scrollLeft + getWindowScrollBarX(element);
1989
+ const y3 = -scroll.scrollTop;
1990
+ if (getComputedStyle2(body).direction === "rtl") {
1991
+ x2 += max(html.clientWidth, body.clientWidth) - width;
1992
+ }
1993
+ return {
1994
+ width,
1995
+ height,
1996
+ x: x2,
1997
+ y: y3
1998
+ };
1999
+ }
2000
+ var SCROLLBAR_MAX = 25;
2001
+ function getViewportRect(element, strategy) {
2002
+ const win = getWindow(element);
2003
+ const html = getDocumentElement(element);
2004
+ const visualViewport = win.visualViewport;
2005
+ let width = html.clientWidth;
2006
+ let height = html.clientHeight;
2007
+ let x2 = 0;
2008
+ let y3 = 0;
2009
+ if (visualViewport) {
2010
+ width = visualViewport.width;
2011
+ height = visualViewport.height;
2012
+ const visualViewportBased = isWebKit();
2013
+ if (!visualViewportBased || visualViewportBased && strategy === "fixed") {
2014
+ x2 = visualViewport.offsetLeft;
2015
+ y3 = visualViewport.offsetTop;
2016
+ }
2017
+ }
2018
+ const windowScrollbarX = getWindowScrollBarX(html);
2019
+ if (windowScrollbarX <= 0) {
2020
+ const doc = html.ownerDocument;
2021
+ const body = doc.body;
2022
+ const bodyStyles = getComputedStyle(body);
2023
+ const bodyMarginInline = doc.compatMode === "CSS1Compat" ? parseFloat(bodyStyles.marginLeft) + parseFloat(bodyStyles.marginRight) || 0 : 0;
2024
+ const clippingStableScrollbarWidth = Math.abs(html.clientWidth - body.clientWidth - bodyMarginInline);
2025
+ if (clippingStableScrollbarWidth <= SCROLLBAR_MAX) {
2026
+ width -= clippingStableScrollbarWidth;
2027
+ }
2028
+ } else if (windowScrollbarX <= SCROLLBAR_MAX) {
2029
+ width += windowScrollbarX;
2030
+ }
2031
+ return {
2032
+ width,
2033
+ height,
2034
+ x: x2,
2035
+ y: y3
2036
+ };
2037
+ }
2038
+ var absoluteOrFixed = /* @__PURE__ */ new Set(["absolute", "fixed"]);
2039
+ function getInnerBoundingClientRect(element, strategy) {
2040
+ const clientRect = getBoundingClientRect(element, true, strategy === "fixed");
2041
+ const top = clientRect.top + element.clientTop;
2042
+ const left = clientRect.left + element.clientLeft;
2043
+ const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);
2044
+ const width = element.clientWidth * scale.x;
2045
+ const height = element.clientHeight * scale.y;
2046
+ const x2 = left * scale.x;
2047
+ const y3 = top * scale.y;
2048
+ return {
2049
+ width,
2050
+ height,
2051
+ x: x2,
2052
+ y: y3
2053
+ };
2054
+ }
2055
+ function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
2056
+ let rect;
2057
+ if (clippingAncestor === "viewport") {
2058
+ rect = getViewportRect(element, strategy);
2059
+ } else if (clippingAncestor === "document") {
2060
+ rect = getDocumentRect(getDocumentElement(element));
2061
+ } else if (isElement(clippingAncestor)) {
2062
+ rect = getInnerBoundingClientRect(clippingAncestor, strategy);
2063
+ } else {
2064
+ const visualOffsets = getVisualOffsets(element);
2065
+ rect = {
2066
+ x: clippingAncestor.x - visualOffsets.x,
2067
+ y: clippingAncestor.y - visualOffsets.y,
2068
+ width: clippingAncestor.width,
2069
+ height: clippingAncestor.height
2070
+ };
2071
+ }
2072
+ return rectToClientRect(rect);
2073
+ }
2074
+ function hasFixedPositionAncestor(element, stopNode) {
2075
+ const parentNode = getParentNode(element);
2076
+ if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {
2077
+ return false;
2078
+ }
2079
+ return getComputedStyle2(parentNode).position === "fixed" || hasFixedPositionAncestor(parentNode, stopNode);
2080
+ }
2081
+ function getClippingElementAncestors(element, cache) {
2082
+ const cachedResult = cache.get(element);
2083
+ if (cachedResult) {
2084
+ return cachedResult;
2085
+ }
2086
+ let result = getOverflowAncestors(element, [], false).filter((el) => isElement(el) && getNodeName(el) !== "body");
2087
+ let currentContainingBlockComputedStyle = null;
2088
+ const elementIsFixed = getComputedStyle2(element).position === "fixed";
2089
+ let currentNode = elementIsFixed ? getParentNode(element) : element;
2090
+ while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
2091
+ const computedStyle = getComputedStyle2(currentNode);
2092
+ const currentNodeIsContaining = isContainingBlock(currentNode);
2093
+ if (!currentNodeIsContaining && computedStyle.position === "fixed") {
2094
+ currentContainingBlockComputedStyle = null;
2095
+ }
2096
+ const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === "static" && !!currentContainingBlockComputedStyle && absoluteOrFixed.has(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);
2097
+ if (shouldDropCurrentNode) {
2098
+ result = result.filter((ancestor) => ancestor !== currentNode);
2099
+ } else {
2100
+ currentContainingBlockComputedStyle = computedStyle;
2101
+ }
2102
+ currentNode = getParentNode(currentNode);
2103
+ }
2104
+ cache.set(element, result);
2105
+ return result;
2106
+ }
2107
+ function getClippingRect(_ref) {
2108
+ let {
2109
+ element,
2110
+ boundary,
2111
+ rootBoundary,
2112
+ strategy
2113
+ } = _ref;
2114
+ const elementClippingAncestors = boundary === "clippingAncestors" ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);
2115
+ const clippingAncestors = [...elementClippingAncestors, rootBoundary];
2116
+ const firstClippingAncestor = clippingAncestors[0];
2117
+ const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {
2118
+ const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);
2119
+ accRect.top = max(rect.top, accRect.top);
2120
+ accRect.right = min(rect.right, accRect.right);
2121
+ accRect.bottom = min(rect.bottom, accRect.bottom);
2122
+ accRect.left = max(rect.left, accRect.left);
2123
+ return accRect;
2124
+ }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));
2125
+ return {
2126
+ width: clippingRect.right - clippingRect.left,
2127
+ height: clippingRect.bottom - clippingRect.top,
2128
+ x: clippingRect.left,
2129
+ y: clippingRect.top
2130
+ };
2131
+ }
2132
+ function getDimensions(element) {
2133
+ const {
2134
+ width,
2135
+ height
2136
+ } = getCssDimensions(element);
2137
+ return {
2138
+ width,
2139
+ height
2140
+ };
2141
+ }
2142
+ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
2143
+ const isOffsetParentAnElement = isHTMLElement(offsetParent);
2144
+ const documentElement = getDocumentElement(offsetParent);
2145
+ const isFixed = strategy === "fixed";
2146
+ const rect = getBoundingClientRect(element, true, isFixed, offsetParent);
2147
+ let scroll = {
2148
+ scrollLeft: 0,
2149
+ scrollTop: 0
2150
+ };
2151
+ const offsets = createCoords(0);
2152
+ function setLeftRTLScrollbarOffset() {
2153
+ offsets.x = getWindowScrollBarX(documentElement);
2154
+ }
2155
+ if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
2156
+ if (getNodeName(offsetParent) !== "body" || isOverflowElement(documentElement)) {
2157
+ scroll = getNodeScroll(offsetParent);
2158
+ }
2159
+ if (isOffsetParentAnElement) {
2160
+ const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);
2161
+ offsets.x = offsetRect.x + offsetParent.clientLeft;
2162
+ offsets.y = offsetRect.y + offsetParent.clientTop;
2163
+ } else if (documentElement) {
2164
+ setLeftRTLScrollbarOffset();
2165
+ }
2166
+ }
2167
+ if (isFixed && !isOffsetParentAnElement && documentElement) {
2168
+ setLeftRTLScrollbarOffset();
2169
+ }
2170
+ const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
2171
+ const x2 = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;
2172
+ const y3 = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;
2173
+ return {
2174
+ x: x2,
2175
+ y: y3,
2176
+ width: rect.width,
2177
+ height: rect.height
2178
+ };
2179
+ }
2180
+ function isStaticPositioned(element) {
2181
+ return getComputedStyle2(element).position === "static";
2182
+ }
2183
+ function getTrueOffsetParent(element, polyfill) {
2184
+ if (!isHTMLElement(element) || getComputedStyle2(element).position === "fixed") {
2185
+ return null;
2186
+ }
2187
+ if (polyfill) {
2188
+ return polyfill(element);
2189
+ }
2190
+ let rawOffsetParent = element.offsetParent;
2191
+ if (getDocumentElement(element) === rawOffsetParent) {
2192
+ rawOffsetParent = rawOffsetParent.ownerDocument.body;
2193
+ }
2194
+ return rawOffsetParent;
2195
+ }
2196
+ function getOffsetParent(element, polyfill) {
2197
+ const win = getWindow(element);
2198
+ if (isTopLayer(element)) {
2199
+ return win;
2200
+ }
2201
+ if (!isHTMLElement(element)) {
2202
+ let svgOffsetParent = getParentNode(element);
2203
+ while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {
2204
+ if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {
2205
+ return svgOffsetParent;
2206
+ }
2207
+ svgOffsetParent = getParentNode(svgOffsetParent);
2208
+ }
2209
+ return win;
2210
+ }
2211
+ let offsetParent = getTrueOffsetParent(element, polyfill);
2212
+ while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {
2213
+ offsetParent = getTrueOffsetParent(offsetParent, polyfill);
2214
+ }
2215
+ if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {
2216
+ return win;
2217
+ }
2218
+ return offsetParent || getContainingBlock(element) || win;
2219
+ }
2220
+ var getElementRects = async function(data) {
2221
+ const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
2222
+ const getDimensionsFn = this.getDimensions;
2223
+ const floatingDimensions = await getDimensionsFn(data.floating);
2224
+ return {
2225
+ reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),
2226
+ floating: {
2227
+ x: 0,
2228
+ y: 0,
2229
+ width: floatingDimensions.width,
2230
+ height: floatingDimensions.height
2231
+ }
2232
+ };
2233
+ };
2234
+ function isRTL(element) {
2235
+ return getComputedStyle2(element).direction === "rtl";
2236
+ }
2237
+ var platform = {
2238
+ convertOffsetParentRelativeRectToViewportRelativeRect,
2239
+ getDocumentElement,
2240
+ getClippingRect,
2241
+ getOffsetParent,
2242
+ getElementRects,
2243
+ getClientRects,
2244
+ getDimensions,
2245
+ getScale,
2246
+ isElement,
2247
+ isRTL
2248
+ };
2249
+ function rectsAreEqual(a3, b3) {
2250
+ return a3.x === b3.x && a3.y === b3.y && a3.width === b3.width && a3.height === b3.height;
2251
+ }
2252
+ function observeMove(element, onMove) {
2253
+ let io = null;
2254
+ let timeoutId;
2255
+ const root = getDocumentElement(element);
2256
+ function cleanup() {
2257
+ var _io;
2258
+ clearTimeout(timeoutId);
2259
+ (_io = io) == null || _io.disconnect();
2260
+ io = null;
2261
+ }
2262
+ function refresh(skip, threshold) {
2263
+ if (skip === void 0) {
2264
+ skip = false;
2265
+ }
2266
+ if (threshold === void 0) {
2267
+ threshold = 1;
2268
+ }
2269
+ cleanup();
2270
+ const elementRectForRootMargin = element.getBoundingClientRect();
2271
+ const {
2272
+ left,
2273
+ top,
2274
+ width,
2275
+ height
2276
+ } = elementRectForRootMargin;
2277
+ if (!skip) {
2278
+ onMove();
2279
+ }
2280
+ if (!width || !height) {
2281
+ return;
2282
+ }
2283
+ const insetTop = floor(top);
2284
+ const insetRight = floor(root.clientWidth - (left + width));
2285
+ const insetBottom = floor(root.clientHeight - (top + height));
2286
+ const insetLeft = floor(left);
2287
+ const rootMargin = -insetTop + "px " + -insetRight + "px " + -insetBottom + "px " + -insetLeft + "px";
2288
+ const options = {
2289
+ rootMargin,
2290
+ threshold: max(0, min(1, threshold)) || 1
2291
+ };
2292
+ let isFirstUpdate = true;
2293
+ function handleObserve(entries) {
2294
+ const ratio = entries[0].intersectionRatio;
2295
+ if (ratio !== threshold) {
2296
+ if (!isFirstUpdate) {
2297
+ return refresh();
2298
+ }
2299
+ if (!ratio) {
2300
+ timeoutId = setTimeout(() => {
2301
+ refresh(false, 1e-7);
2302
+ }, 1e3);
2303
+ } else {
2304
+ refresh(false, ratio);
2305
+ }
2306
+ }
2307
+ if (ratio === 1 && !rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) {
2308
+ refresh();
2309
+ }
2310
+ isFirstUpdate = false;
2311
+ }
2312
+ try {
2313
+ io = new IntersectionObserver(handleObserve, {
2314
+ ...options,
2315
+ // Handle <iframe>s
2316
+ root: root.ownerDocument
2317
+ });
2318
+ } catch (_e) {
2319
+ io = new IntersectionObserver(handleObserve, options);
2320
+ }
2321
+ io.observe(element);
2322
+ }
2323
+ refresh(true);
2324
+ return cleanup;
2325
+ }
2326
+ function autoUpdate(reference, floating, update2, options) {
2327
+ if (options === void 0) {
2328
+ options = {};
2329
+ }
2330
+ const {
2331
+ ancestorScroll = true,
2332
+ ancestorResize = true,
2333
+ elementResize = typeof ResizeObserver === "function",
2334
+ layoutShift = typeof IntersectionObserver === "function",
2335
+ animationFrame = false
2336
+ } = options;
2337
+ const referenceEl = unwrapElement(reference);
2338
+ const ancestors = ancestorScroll || ancestorResize ? [...referenceEl ? getOverflowAncestors(referenceEl) : [], ...getOverflowAncestors(floating)] : [];
2339
+ ancestors.forEach((ancestor) => {
2340
+ ancestorScroll && ancestor.addEventListener("scroll", update2, {
2341
+ passive: true
2342
+ });
2343
+ ancestorResize && ancestor.addEventListener("resize", update2);
2344
+ });
2345
+ const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update2) : null;
2346
+ let reobserveFrame = -1;
2347
+ let resizeObserver = null;
2348
+ if (elementResize) {
2349
+ resizeObserver = new ResizeObserver((_ref) => {
2350
+ let [firstEntry] = _ref;
2351
+ if (firstEntry && firstEntry.target === referenceEl && resizeObserver) {
2352
+ resizeObserver.unobserve(floating);
2353
+ cancelAnimationFrame(reobserveFrame);
2354
+ reobserveFrame = requestAnimationFrame(() => {
2355
+ var _resizeObserver;
2356
+ (_resizeObserver = resizeObserver) == null || _resizeObserver.observe(floating);
2357
+ });
2358
+ }
2359
+ update2();
2360
+ });
2361
+ if (referenceEl && !animationFrame) {
2362
+ resizeObserver.observe(referenceEl);
2363
+ }
2364
+ resizeObserver.observe(floating);
2365
+ }
2366
+ let frameId;
2367
+ let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;
2368
+ if (animationFrame) {
2369
+ frameLoop();
2370
+ }
2371
+ function frameLoop() {
2372
+ const nextRefRect = getBoundingClientRect(reference);
2373
+ if (prevRefRect && !rectsAreEqual(prevRefRect, nextRefRect)) {
2374
+ update2();
2375
+ }
2376
+ prevRefRect = nextRefRect;
2377
+ frameId = requestAnimationFrame(frameLoop);
2378
+ }
2379
+ update2();
2380
+ return () => {
2381
+ var _resizeObserver2;
2382
+ ancestors.forEach((ancestor) => {
2383
+ ancestorScroll && ancestor.removeEventListener("scroll", update2);
2384
+ ancestorResize && ancestor.removeEventListener("resize", update2);
2385
+ });
2386
+ cleanupIo == null || cleanupIo();
2387
+ (_resizeObserver2 = resizeObserver) == null || _resizeObserver2.disconnect();
2388
+ resizeObserver = null;
2389
+ if (animationFrame) {
2390
+ cancelAnimationFrame(frameId);
2391
+ }
2392
+ };
2393
+ }
2394
+ var offset2 = offset;
2395
+ var shift2 = shift;
2396
+ var flip2 = flip;
2397
+ var size2 = size;
2398
+ var arrow2 = arrow;
2399
+ var computePosition2 = (reference, floating, options) => {
2400
+ const cache = /* @__PURE__ */ new Map();
2401
+ const mergedOptions = {
2402
+ platform,
2403
+ ...options
2404
+ };
2405
+ const platformWithCache = {
2406
+ ...mergedOptions.platform,
2407
+ _c: cache
2408
+ };
2409
+ return computePosition(reference, floating, {
2410
+ ...mergedOptions,
2411
+ platform: platformWithCache
2412
+ });
2413
+ };
2414
+
2415
+ // src/internal/active-elements.ts
2416
+ function* activeElements(activeElement = document.activeElement) {
2417
+ if (activeElement === null || activeElement === void 0) {
2418
+ return;
2419
+ }
2420
+ yield activeElement;
2421
+ if ("shadowRoot" in activeElement && activeElement.shadowRoot && activeElement.shadowRoot.mode !== "closed") {
2422
+ yield* activeElements(activeElement.shadowRoot.activeElement);
2423
+ }
2424
+ }
2425
+
2426
+ // node_modules/nanoid/url-alphabet/index.js
2427
+ var urlAlphabet = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
2428
+
2429
+ // node_modules/nanoid/index.browser.js
2430
+ var nanoid = (size3 = 21) => {
2431
+ let id = "";
2432
+ let bytes = crypto.getRandomValues(new Uint8Array(size3 |= 0));
2433
+ while (size3--) {
2434
+ id += urlAlphabet[bytes[size3] & 63];
2435
+ }
2436
+ return id;
2437
+ };
2438
+
2439
+ // src/internal/math.ts
2440
+ function uniqueID(prefix = "") {
2441
+ return `${prefix}${nanoid()}`;
2442
+ }
2443
+
2444
+ // src/internal/emit.ts
2445
+ function emit(target, eventName, eventDetail) {
2446
+ const { detail, cancelable, ...options } = eventDetail || {};
2447
+ const event = new CustomEvent(eventName, {
2448
+ bubbles: true,
2449
+ cancelable: cancelable !== void 0 ? cancelable : false,
2450
+ composed: true,
2451
+ detail,
2452
+ ...options
2453
+ });
2454
+ target.dispatchEvent(event);
2455
+ return event;
2456
+ }
2457
+
2458
+ // node_modules/lit-html/directive.js
2459
+ var t4 = { ATTRIBUTE: 1, CHILD: 2, PROPERTY: 3, BOOLEAN_ATTRIBUTE: 4, EVENT: 5, ELEMENT: 6 };
2460
+ var e6 = (t5) => (...e9) => ({ _$litDirective$: t5, values: e9 });
2461
+ var i5 = class {
2462
+ constructor(t5) {
2463
+ }
2464
+ get _$AU() {
2465
+ return this._$AM._$AU;
2466
+ }
2467
+ _$AT(t5, e9, i7) {
2468
+ this._$Ct = t5, this._$AM = e9, this._$Ci = i7;
2469
+ }
2470
+ _$AS(t5, e9) {
2471
+ return this.update(t5, e9);
2472
+ }
2473
+ update(t5, e9) {
2474
+ return this.render(...e9);
2475
+ }
2476
+ };
2477
+
2478
+ // node_modules/lit-html/directives/class-map.js
2479
+ var e7 = e6(class extends i5 {
2480
+ constructor(t5) {
2481
+ if (super(t5), t5.type !== t4.ATTRIBUTE || "class" !== t5.name || t5.strings?.length > 2) throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.");
2482
+ }
2483
+ render(t5) {
2484
+ return " " + Object.keys(t5).filter(((s4) => t5[s4])).join(" ") + " ";
2485
+ }
2486
+ update(s4, [i7]) {
2487
+ if (void 0 === this.st) {
2488
+ this.st = /* @__PURE__ */ new Set(), void 0 !== s4.strings && (this.nt = new Set(s4.strings.join(" ").split(/\s/).filter(((t5) => "" !== t5))));
2489
+ for (const t5 in i7) i7[t5] && !this.nt?.has(t5) && this.st.add(t5);
2490
+ return this.render(i7);
2491
+ }
2492
+ const r6 = s4.element.classList;
2493
+ for (const t5 of this.st) t5 in i7 || (r6.remove(t5), this.st.delete(t5));
2494
+ for (const t5 in i7) {
2495
+ const s5 = !!i7[t5];
2496
+ s5 === this.st.has(t5) || this.nt?.has(t5) || (s5 ? (r6.add(t5), this.st.add(t5)) : (r6.remove(t5), this.st.delete(t5)));
2497
+ }
2498
+ return T;
2499
+ }
2500
+ });
2501
+
2502
+ // node_modules/composed-offset-position/dist/composed-offset-position.browser.min.mjs
2503
+ function e8(t5) {
2504
+ return i6(t5);
2505
+ }
2506
+ function r5(t5) {
2507
+ return t5.assignedSlot ? t5.assignedSlot : t5.parentNode instanceof ShadowRoot ? t5.parentNode.host : t5.parentNode;
2508
+ }
2509
+ function i6(e9) {
2510
+ for (let t5 = e9; t5; t5 = r5(t5)) if (t5 instanceof Element && "none" === getComputedStyle(t5).display) return null;
2511
+ for (let n5 = r5(e9); n5; n5 = r5(n5)) {
2512
+ if (!(n5 instanceof Element)) continue;
2513
+ const e10 = getComputedStyle(n5);
2514
+ if ("contents" !== e10.display) {
2515
+ if ("static" !== e10.position || isContainingBlock(e10)) return n5;
2516
+ if ("BODY" === n5.tagName) return n5;
2517
+ }
2518
+ }
2519
+ return null;
2520
+ }
2521
+
2522
+ // src/components/popup/popup.css
2523
+ var popup_default = '/*! Popup is a low\u2010level utility built specifically for positioning elements. Do not mistake it for a tooltip or similar because it does not facilitate an accessible experience! Almost every correct usage of it will involve building other components. It should rarely, if ever, occur directly in your HTML. */\n\n:host {\n --arrow-color: var(--pc-color-neutral-fill-normal);\n --arrow-size: var(--pc-tooltip-arrow-size);\n\n /* These properties are computed to account for the arrow\u2019s dimensions\n after being rotated 45\xB0. The constant 0,7071 is derived from sin(45\xB0),\n which is the diagonal size of the arrow\u2019s container after rotating. */\n --arrow-size-diagonal: calc(var(--arrow-size) * 0.7071);\n --arrow-padding-offset: calc(\n var(--arrow-size-diagonal) - var(--arrow-size)\n );\n\n display: contents;\n}\n\n.popup {\n position: absolute;\n isolation: isolate;\n max-inline-size: var(--auto-size-available-width, none);\n max-block-size: var(--auto-size-available-height, none);\n will-change: transform, top, left;\n\n /* Reset user agent styles for the popover attribute. */\n :where(&) {\n inset: unset;\n margin: unset;\n padding: unset;\n inline-size: unset;\n block-size: unset;\n /* inline-size and block-size do not affect the width and height\n properties. This is redefined to be sure it is also unset. */\n width: unset;\n height: unset;\n background: unset;\n border: unset;\n overflow: unset;\n }\n}\n\n.fixed {\n position: fixed;\n}\n\n.popup:not(.active) {\n display: none;\n}\n\n.arrow {\n position: absolute;\n inline-size: calc(var(--arrow-size-diagonal) * 2);\n block-size: calc(var(--arrow-size-diagonal) * 2);\n background-color: var(--arrow-color);\n rotate: 45deg;\n z-index: 3;\n}\n\n:host([data-current-placement~="left"]) .arrow {\n rotate: -45deg;\n}\n\n:host([data-current-placement~="right"]) .arrow {\n rotate: 135deg;\n}\n\n:host([data-current-placement~="bottom"]) .arrow {\n rotate: 225deg;\n}\n\n.hover-bridge:not(.hover-bridge-visible) {\n display: none;\n}\n\n.hover-bridge {\n position: fixed;\n inset: 0;\n clip-path: polygon(\n var(--hover-bridge-top-left-x, 0) var(--hover-bridge-top-left-y, 0),\n var(--hover-bridge-top-right-x, 0) var(--hover-bridge-top-right-y, 0),\n var(--hover-bridge-bottom-right-x, 0)\n var(--hover-bridge-bottom-right-y, 0),\n var(--hover-bridge-bottom-left-x, 0)\n var(--hover-bridge-bottom-left-y, 0)\n );\n z-index: 899;\n}\n';
2524
+
2525
+ // src/components/popup/popup.ts
2526
+ function isVirtualElement(element) {
2527
+ return element !== null && typeof element === "object" && "getBoundingClientRect" in element && ("contextElement" in element ? element instanceof Element : true);
2528
+ }
2529
+ var supportsPopover = globalThis?.HTMLElement?.prototype.hasOwnProperty("popover");
2530
+ var PcPopup = class extends PlacerElement {
2531
+ constructor() {
2532
+ super(...arguments);
2533
+ this.localize = new LocalizeController2(this);
2534
+ this.active = false;
2535
+ this.placement = "top";
2536
+ this.boundary = "viewport";
2537
+ this.distance = 0;
2538
+ this.skidding = 0;
2539
+ this.arrow = false;
2540
+ this.arrowPlacement = "anchor";
2541
+ this.arrowPadding = 10;
2542
+ this.flip = false;
2543
+ this.flipFallbackPlacements = "";
2544
+ this.flipFallbackStrategy = "best-fit";
2545
+ this.flipPadding = 0;
2546
+ this.shift = false;
2547
+ this.shiftPadding = 0;
2548
+ this.autoSizePadding = 0;
2549
+ this.hoverBridge = false;
2550
+ this.updateHoverBridge = () => {
2551
+ if (this.hoverBridge && this.anchorElement) {
2552
+ const anchorRect = this.anchorElement.getBoundingClientRect();
2553
+ const popupRect = this.popup.getBoundingClientRect();
2554
+ const isVertical = this.placement.includes("top") || this.placement.includes("bottom");
2555
+ let topLeftX = 0;
2556
+ let topLeftY = 0;
2557
+ let topRightX = 0;
2558
+ let topRightY = 0;
2559
+ let bottomLeftX = 0;
2560
+ let bottomLeftY = 0;
2561
+ let bottomRightX = 0;
2562
+ let bottomRightY = 0;
2563
+ if (isVertical) {
2564
+ if (anchorRect.top < popupRect.top) {
2565
+ topLeftX = anchorRect.left;
2566
+ topLeftY = anchorRect.bottom;
2567
+ topRightX = anchorRect.right;
2568
+ topRightY = anchorRect.bottom;
2569
+ bottomLeftX = popupRect.left;
2570
+ bottomLeftY = popupRect.top;
2571
+ bottomRightX = popupRect.right;
2572
+ bottomRightY = popupRect.top;
2573
+ } else {
2574
+ topLeftX = popupRect.left;
2575
+ topLeftY = popupRect.bottom;
2576
+ topRightX = popupRect.right;
2577
+ topRightY = popupRect.bottom;
2578
+ bottomLeftX = anchorRect.left;
2579
+ bottomLeftY = anchorRect.top;
2580
+ bottomRightX = anchorRect.right;
2581
+ bottomRightY = anchorRect.top;
2582
+ }
2583
+ } else {
2584
+ if (anchorRect.left < popupRect.left) {
2585
+ topLeftX = anchorRect.right;
2586
+ topLeftY = anchorRect.top;
2587
+ topRightX = popupRect.left;
2588
+ topRightY = popupRect.top;
2589
+ bottomLeftX = anchorRect.right;
2590
+ bottomLeftY = anchorRect.bottom;
2591
+ bottomRightX = popupRect.left;
2592
+ bottomRightY = popupRect.bottom;
2593
+ } else {
2594
+ topLeftX = popupRect.right;
2595
+ topLeftY = popupRect.top;
2596
+ topRightX = anchorRect.left;
2597
+ topRightY = anchorRect.top;
2598
+ bottomLeftX = popupRect.right;
2599
+ bottomLeftY = popupRect.bottom;
2600
+ bottomRightX = anchorRect.left;
2601
+ bottomRightY = anchorRect.bottom;
2602
+ }
2603
+ }
2604
+ this.style.setProperty(
2605
+ "--hover-bridge-top-left-x",
2606
+ `${topLeftX}px`
2607
+ );
2608
+ this.style.setProperty(
2609
+ "--hover-bridge-top-left-y",
2610
+ `${topLeftY}px`
2611
+ );
2612
+ this.style.setProperty(
2613
+ "--hover-bridge-top-right-x",
2614
+ `${topRightX}px`
2615
+ );
2616
+ this.style.setProperty(
2617
+ "--hover-bridge-top-right-y",
2618
+ `${topRightY}px`
2619
+ );
2620
+ this.style.setProperty(
2621
+ "--hover-bridge-bottom-left-x",
2622
+ `${bottomLeftX}px`
2623
+ );
2624
+ this.style.setProperty(
2625
+ "--hover-bridge-bottom-left-y",
2626
+ `${bottomLeftY}px`
2627
+ );
2628
+ this.style.setProperty(
2629
+ "--hover-bridge-bottom-right-x",
2630
+ `${bottomRightX}px`
2631
+ );
2632
+ this.style.setProperty(
2633
+ "--hover-bridge-bottom-right-y",
2634
+ `${bottomRightY}px`
2635
+ );
2636
+ }
2637
+ };
2638
+ }
2639
+ async connectedCallback() {
2640
+ super.connectedCallback();
2641
+ await this.updateComplete;
2642
+ this.start();
2643
+ }
2644
+ disconnectedCallback() {
2645
+ super.disconnectedCallback();
2646
+ this.stop();
2647
+ }
2648
+ async updated(changedProperties) {
2649
+ super.updated(changedProperties);
2650
+ if (changedProperties.has("active")) {
2651
+ if (this.active) {
2652
+ this.start();
2653
+ } else {
2654
+ this.stop();
2655
+ }
2656
+ }
2657
+ if (changedProperties.has("anchor")) {
2658
+ this.handleAnchorChange();
2659
+ }
2660
+ if (this.active) {
2661
+ await this.updateComplete;
2662
+ this.reposition();
2663
+ }
2664
+ }
2665
+ async handleAnchorChange() {
2666
+ await this.stop();
2667
+ if (this.anchor && typeof this.anchor === "string") {
2668
+ const root = this.getRootNode();
2669
+ this.anchorElement = root.getElementById(this.anchor);
2670
+ } else if (this.anchor instanceof Element || isVirtualElement(this.anchor)) {
2671
+ this.anchorElement = this.anchor;
2672
+ } else {
2673
+ this.anchorElement = this.querySelector('[slot="anchor"]');
2674
+ }
2675
+ if (this.anchorElement instanceof HTMLSlotElement) {
2676
+ this.anchorElement = this.anchorElement.assignedElements({
2677
+ flatten: true
2678
+ })[0];
2679
+ }
2680
+ if (this.anchorElement) {
2681
+ this.start();
2682
+ }
2683
+ }
2684
+ start() {
2685
+ if (!this.anchorElement || !this.active) {
2686
+ return;
2687
+ }
2688
+ this.popup.showPopover?.();
2689
+ this.cleanup = autoUpdate(this.anchorElement, this.popup, () => {
2690
+ this.reposition();
2691
+ });
2692
+ }
2693
+ async stop() {
2694
+ return new Promise((resolve) => {
2695
+ this.popup.hidePopover?.();
2696
+ if (this.cleanup) {
2697
+ this.cleanup();
2698
+ this.cleanup = void 0;
2699
+ this.removeAttribute("data-current-placement");
2700
+ this.style.removeProperty("--auto-size-available-width");
2701
+ this.style.removeProperty("--auto-size-available-height");
2702
+ requestAnimationFrame(() => resolve());
2703
+ } else {
2704
+ resolve();
2705
+ }
2706
+ });
2707
+ }
2708
+ /** Forces the popup to recalculate and reposition itself. */
2709
+ reposition() {
2710
+ if (!this.active || !this.anchorElement) {
2711
+ return;
2712
+ }
2713
+ const middleware = [
2714
+ offset2({ mainAxis: this.distance, crossAxis: this.skidding })
2715
+ ];
2716
+ if (this.sync) {
2717
+ middleware.push(
2718
+ size2({
2719
+ apply: ({ rects }) => {
2720
+ const syncWidth = this.sync === "width" || this.sync === "both";
2721
+ const syncHeight = this.sync === "height" || this.sync === "both";
2722
+ this.popup.style.inlineSize = syncWidth ? `${rects.reference.width}px` : "";
2723
+ this.popup.style.blockSize = syncHeight ? `${rects.reference.height}px` : "";
2724
+ }
2725
+ })
2726
+ );
2727
+ } else {
2728
+ this.popup.style.inlineSize = "";
2729
+ this.popup.style.blockSize = "";
2730
+ }
2731
+ let defaultBoundary;
2732
+ if (supportsPopover && !isVirtualElement(this.anchor) && this.boundary === "scroll") {
2733
+ defaultBoundary = getOverflowAncestors(
2734
+ this.anchorElement
2735
+ ).filter((element) => element instanceof Element);
2736
+ }
2737
+ if (this.flip) {
2738
+ middleware.push(
2739
+ flip2({
2740
+ boundary: this.flipBoundary || defaultBoundary,
2741
+ // @ts-expect-error — We’re converting the property type of “fallbackPlacements” from a string to an array
2742
+ fallbackPlacements: this.flipFallbackPlacements,
2743
+ fallbackStrategy: this.flipFallbackStrategy === "best-fit" ? "bestFit" : "initialPlacement",
2744
+ padding: this.flipPadding
2745
+ })
2746
+ );
2747
+ }
2748
+ if (this.shift) {
2749
+ middleware.push(
2750
+ shift2({
2751
+ boundary: this.shiftBoundary || defaultBoundary,
2752
+ padding: this.shiftPadding
2753
+ })
2754
+ );
2755
+ }
2756
+ if (this.autoSize) {
2757
+ middleware.push(
2758
+ size2({
2759
+ boundary: this.autoSizeBoundary || defaultBoundary,
2760
+ padding: this.autoSizePadding,
2761
+ apply: ({ availableWidth, availableHeight }) => {
2762
+ if (this.autoSize === "vertical" || this.autoSize === "both") {
2763
+ this.style.setProperty(
2764
+ "--auto-size-available-height",
2765
+ `${availableHeight}px`
2766
+ );
2767
+ } else {
2768
+ this.style.removeProperty(
2769
+ "--auto-size-available-height"
2770
+ );
2771
+ }
2772
+ if (this.autoSize === "horizontal" || this.autoSize === "both") {
2773
+ this.style.setProperty(
2774
+ "--auto-size-available-width",
2775
+ `${availableWidth}px`
2776
+ );
2777
+ } else {
2778
+ this.style.removeProperty(
2779
+ "--auto-size-available-width"
2780
+ );
2781
+ }
2782
+ }
2783
+ })
2784
+ );
2785
+ } else {
2786
+ this.style.removeProperty("--auto-size-available-width");
2787
+ this.style.removeProperty("--auto-size-available-height");
2788
+ }
2789
+ if (this.arrow) {
2790
+ middleware.push(
2791
+ arrow2({
2792
+ element: this.arrowElement,
2793
+ padding: this.arrowPadding
2794
+ })
2795
+ );
2796
+ }
2797
+ const getOffsetParent2 = supportsPopover ? (element) => platform.getOffsetParent(element, e8) : platform.getOffsetParent;
2798
+ computePosition2(this.anchorElement, this.popup, {
2799
+ placement: this.placement,
2800
+ middleware,
2801
+ strategy: supportsPopover ? "absolute" : "fixed",
2802
+ platform: {
2803
+ ...platform,
2804
+ getOffsetParent: getOffsetParent2
2805
+ }
2806
+ }).then(({ x: x2, y: y3, middlewareData, placement }) => {
2807
+ const isRTL2 = this.localize.dir() === "rtl";
2808
+ const staticSide = {
2809
+ top: "bottom",
2810
+ right: "left",
2811
+ bottom: "top",
2812
+ left: "right"
2813
+ }[placement.split("-")[0]];
2814
+ this.setAttribute("data-current-placement", placement);
2815
+ Object.assign(this.popup.style, {
2816
+ left: `${x2}px`,
2817
+ top: `${y3}px`
2818
+ });
2819
+ if (this.arrow) {
2820
+ const arrowX = middlewareData.arrow.x;
2821
+ const arrowY = middlewareData.arrow.y;
2822
+ let top = "";
2823
+ let right = "";
2824
+ let bottom = "";
2825
+ let left = "";
2826
+ if (this.arrowPlacement === "start") {
2827
+ const value = typeof arrowX === "number" ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : "";
2828
+ top = typeof arrowY === "number" ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : "";
2829
+ right = isRTL2 ? value : "";
2830
+ left = isRTL2 ? "" : value;
2831
+ } else if (this.arrowPlacement === "end") {
2832
+ const value = typeof arrowX === "number" ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : "";
2833
+ right = isRTL2 ? "" : value;
2834
+ left = isRTL2 ? value : "";
2835
+ bottom = typeof arrowY === "number" ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : "";
2836
+ } else if (this.arrowPlacement === "center") {
2837
+ left = typeof arrowX === "number" ? `calc(50% - var(--arrow-size-diagonal))` : "";
2838
+ top = typeof arrowY === "number" ? `calc(50% - var(--arrow-size-diagonal))` : "";
2839
+ } else {
2840
+ left = typeof arrowX === "number" ? `${arrowX}px` : "";
2841
+ top = typeof arrowY === "number" ? `${arrowY}px` : "";
2842
+ }
2843
+ Object.assign(this.arrowElement.style, {
2844
+ top,
2845
+ right,
2846
+ bottom,
2847
+ left,
2848
+ [staticSide]: "calc(var(--arrow-size-diagonal) * -1)"
2849
+ });
2850
+ }
2851
+ });
2852
+ requestAnimationFrame(() => this.updateHoverBridge());
2853
+ emit(this, "pc-reposition");
2854
+ }
2855
+ render() {
2856
+ return x`
2857
+ <slot name="anchor" @slotchange=${this.handleAnchorChange}></slot>
2858
+
2859
+ <span
2860
+ part="hover-bridge"
2861
+ class=${e7({
2862
+ "hover-bridge": true,
2863
+ "hover-bridge-visible": this.hoverBridge && this.active
2864
+ })}
2865
+ ></span>
2866
+
2867
+ <div
2868
+ part="popup"
2869
+ popover="manual"
2870
+ class=${e7({
2871
+ "popup": true,
2872
+ "active": this.active,
2873
+ "fixed": !supportsPopover,
2874
+ "has-arrow": this.arrow
2875
+ })}
2876
+ >
2877
+ <slot></slot>
2878
+ ${this.arrow ? x`
2879
+ <div
2880
+ part="arrow"
2881
+ class="arrow"
2882
+ role="presentation"
2883
+ ></div>
2884
+ ` : ""}
2885
+ </div>
2886
+ `;
2887
+ }
2888
+ };
2889
+ /** @internal This is an internal static property. */
2890
+ PcPopup.css = popup_default;
2891
+ __decorateClass([
2892
+ e5(".popup")
2893
+ ], PcPopup.prototype, "popup", 2);
2894
+ __decorateClass([
2895
+ e5(".arrow")
2896
+ ], PcPopup.prototype, "arrowElement", 2);
2897
+ __decorateClass([
2898
+ n4()
2899
+ ], PcPopup.prototype, "anchor", 2);
2900
+ __decorateClass([
2901
+ n4({ type: Boolean, reflect: true })
2902
+ ], PcPopup.prototype, "active", 2);
2903
+ __decorateClass([
2904
+ n4({ reflect: true })
2905
+ ], PcPopup.prototype, "placement", 2);
2906
+ __decorateClass([
2907
+ n4()
2908
+ ], PcPopup.prototype, "boundary", 2);
2909
+ __decorateClass([
2910
+ n4({ type: Number })
2911
+ ], PcPopup.prototype, "distance", 2);
2912
+ __decorateClass([
2913
+ n4({ type: Number })
2914
+ ], PcPopup.prototype, "skidding", 2);
2915
+ __decorateClass([
2916
+ n4({ type: Boolean })
2917
+ ], PcPopup.prototype, "arrow", 2);
2918
+ __decorateClass([
2919
+ n4({ attribute: "arrow-placement" })
2920
+ ], PcPopup.prototype, "arrowPlacement", 2);
2921
+ __decorateClass([
2922
+ n4({ attribute: "arrow-padding", type: Number })
2923
+ ], PcPopup.prototype, "arrowPadding", 2);
2924
+ __decorateClass([
2925
+ n4({ type: Boolean })
2926
+ ], PcPopup.prototype, "flip", 2);
2927
+ __decorateClass([
2928
+ n4({
2929
+ attribute: "flip-fallback-placements",
2930
+ converter: {
2931
+ fromAttribute: (value) => {
2932
+ return value.split(" ").map((placement) => placement.trim()).filter((placement) => placement !== "");
2933
+ },
2934
+ toAttribute: (value) => {
2935
+ return value.join(" ");
2936
+ }
2937
+ }
2938
+ })
2939
+ ], PcPopup.prototype, "flipFallbackPlacements", 2);
2940
+ __decorateClass([
2941
+ n4({ attribute: "flip-fallback-strategy" })
2942
+ ], PcPopup.prototype, "flipFallbackStrategy", 2);
2943
+ __decorateClass([
2944
+ n4({ type: Object })
2945
+ ], PcPopup.prototype, "flipBoundary", 2);
2946
+ __decorateClass([
2947
+ n4({ attribute: "flip-padding", type: Number })
2948
+ ], PcPopup.prototype, "flipPadding", 2);
2949
+ __decorateClass([
2950
+ n4({ type: Boolean })
2951
+ ], PcPopup.prototype, "shift", 2);
2952
+ __decorateClass([
2953
+ n4({ type: Object })
2954
+ ], PcPopup.prototype, "shiftBoundary", 2);
2955
+ __decorateClass([
2956
+ n4({ attribute: "shift-padding", type: Number })
2957
+ ], PcPopup.prototype, "shiftPadding", 2);
2958
+ __decorateClass([
2959
+ n4({ attribute: "auto-size" })
2960
+ ], PcPopup.prototype, "autoSize", 2);
2961
+ __decorateClass([
2962
+ n4()
2963
+ ], PcPopup.prototype, "sync", 2);
2964
+ __decorateClass([
2965
+ n4({ type: Object })
2966
+ ], PcPopup.prototype, "autoSizeBoundary", 2);
2967
+ __decorateClass([
2968
+ n4({ attribute: "auto-size-padding", type: Number })
2969
+ ], PcPopup.prototype, "autoSizePadding", 2);
2970
+ __decorateClass([
2971
+ n4({ attribute: "hover-bridge", type: Boolean })
2972
+ ], PcPopup.prototype, "hoverBridge", 2);
2973
+ PcPopup = __decorateClass([
2974
+ t3("pc-popup")
2975
+ ], PcPopup);
2976
+
2977
+ // src/styles/utilities/size.css
2978
+ var size_default = '@layer pc-utilities {\n :host([size="small"]),\n .pc-size-s {\n font-size: var(--pc-font-size-s);\n }\n\n :host([size="medium"]),\n .pc-size-m {\n font-size: var(--pc-font-size-m);\n }\n\n :host([size="large"]),\n .pc-size-l {\n font-size: var(--pc-font-size-l);\n }\n}\n';
2979
+
2980
+ // src/components/dropdown/dropdown.css
2981
+ var dropdown_default = ':host {\n display: contents;\n}\n\n#menu {\n display: flex;\n flex-direction: column;\n margin: 0;\n padding: 0.25em;\n inline-size: max-content;\n max-inline-size: var(--auto-size-available-width) !important;\n max-block-size: var(--auto-size-available-height) !important;\n background-color: var(--pc-color-surface-raised);\n color: var(--pc-color-text-normal);\n border: var(--pc-border-width-s) var(--pc-border-style)\n var(--pc-color-surface-border);\n border-radius: calc(var(--pc-border-radius-m) + 0.25em);\n text-align: start;\n user-select: none;\n overflow: auto;\n box-shadow: var(--pc-shadow-m);\n}\n\n#menu ::slotted(h1),\n#menu ::slotted(h2),\n#menu ::slotted(h3),\n#menu ::slotted(h4),\n#menu ::slotted(h5),\n#menu ::slotted(h6) {\n display: block !important;\n margin-block: 0.25em !important;\n margin-inline: 0 !important;\n padding-block: 0.25em !important;\n padding-inline: 1.1em !important;\n color: var(--pc-color-text-quiet) !important;\n font-family: var(--pc-font-sans) !important;\n font-weight: var(--pc-font-weight-semibold) !important;\n font-size: var(--pc-font-size-smaller) !important;\n}\n\n#menu ::slotted(pc-dropdown-item[checkbox-adjacent]) h1,\n#menu ::slotted(pc-dropdown-item[checkbox-adjacent]) h2,\n#menu ::slotted(pc-dropdown-item[checkbox-adjacent]) h3,\n#menu ::slotted(pc-dropdown-item[checkbox-adjacent]) h4,\n#menu ::slotted(pc-dropdown-item[checkbox-adjacent]) h5,\n#menu ::slotted(pc-dropdown-item[checkbox-adjacent]) h6 {\n padding-inline: 2.25em !important;\n}\n\n#menu ::slotted(pc-divider) {\n --spacing: 0.25em;\n}\n\npc-popup[data-current-placement^="top"] #menu {\n transform-origin: bottom;\n}\n\npc-popup[data-current-placement^="bottom"] #menu {\n transform-origin: top;\n}\n\npc-popup[data-current-placement^="left"] #menu {\n transform-origin: right;\n}\n\npc-popup[data-current-placement^="right"] #menu {\n transform-origin: left;\n}\n\npc-popup[data-current-placement="left-start"] #menu {\n transform-origin: right top;\n}\n\npc-popup[data-current-placement="left-end"] #menu {\n transform-origin: right bottom;\n}\n\npc-popup[data-current-placement="right-start"] #menu {\n transform-origin: left top;\n}\n\npc-popup[data-current-placement="right-end"] #menu {\n transform-origin: left bottom;\n}\n';
2982
+
2983
+ // src/components/dropdown/dropdown.ts
2984
+ var openDropdowns = /* @__PURE__ */ new Set();
2985
+ setDefaultAnimation("dropdown.show", {
2986
+ keyframes: [
2987
+ {
2988
+ offset: 0,
2989
+ opacity: 0,
2990
+ transform: "scaleY(0.35) scaleX(0.95) translateY(-10px) rotate(1deg)"
2991
+ },
2992
+ {
2993
+ offset: 0.25,
2994
+ opacity: 1,
2995
+ transform: "scaleY(1.03) scaleX(1.005) translateY(2px) rotate(-0.5deg)"
2996
+ },
2997
+ {
2998
+ offset: 0.5,
2999
+ transform: "scaleY(0.995) scaleX(0.999) translateY(-0.5px) rotate(0.1deg)"
3000
+ },
3001
+ {
3002
+ offset: 0.75,
3003
+ transform: "scaleY(1.002) scaleX(1.0005) translateY(0.2px) rotate(-0.05deg)"
3004
+ },
3005
+ {
3006
+ offset: 1,
3007
+ opacity: 1,
3008
+ transform: "scaleY(1) scaleX(1) translateY(0) rotate(0deg)"
3009
+ }
3010
+ ],
3011
+ options: {
3012
+ duration: 1e3,
3013
+ easing: "cubic-bezier(0.2, 0.8, 0.2, 1)",
3014
+ fill: "forwards"
3015
+ }
3016
+ });
3017
+ setDefaultAnimation("dropdown.hide", {
3018
+ keyframes: [
3019
+ {
3020
+ offset: 0,
3021
+ opacity: 1,
3022
+ transform: "scaleY(1) scaleX(1) translateY(0) rotate(0deg)"
3023
+ },
3024
+ {
3025
+ offset: 0.15,
3026
+ transform: "scaleY(1.005) scaleX(1.001) translateY(0.5px) rotate(-0.002deg)"
3027
+ },
3028
+ {
3029
+ offset: 0.4,
3030
+ transform: "scaleY(0.99) scaleX(0.998) translateY(-1px) rotate(0.008deg)"
3031
+ },
3032
+ {
3033
+ offset: 0.75,
3034
+ transform: "scaleY(0.6) scaleX(0.9) translateY(10px) rotate(0.007deg)"
3035
+ },
3036
+ {
3037
+ offset: 1,
3038
+ opacity: 0,
3039
+ transform: "scaleY(0.3) scaleX(0.8) translateY(25px) rotate(0.01deg)"
3040
+ }
3041
+ ],
3042
+ options: {
3043
+ duration: 400,
3044
+ easing: "cubic-bezier(0.6, 0.05, 0.8, 0.2)",
3045
+ fill: "forwards"
3046
+ }
3047
+ });
3048
+ var PcDropdown = class extends PlacerElement {
3049
+ constructor() {
3050
+ super(...arguments);
3051
+ this.submenuCleanups = /* @__PURE__ */ new Map();
3052
+ this.localize = new LocalizeController2(this);
3053
+ this.userTypedQuery = "";
3054
+ this.openSubmenuStack = [];
3055
+ this.open = false;
3056
+ this.size = "medium";
3057
+ this.placement = "bottom-start";
3058
+ this.distance = 0;
3059
+ this.skidding = 0;
3060
+ /** Handles key down events when the menu is open. */
3061
+ this.handleDocumentKeyDown = async (event) => {
3062
+ const isRTL2 = this.localize.dir() === "rtl";
3063
+ if (event.key === "Escape") {
3064
+ const trigger = this.getTrigger();
3065
+ event.preventDefault();
3066
+ event.stopPropagation();
3067
+ this.open = false;
3068
+ trigger?.focus();
3069
+ return;
3070
+ }
3071
+ const activeElement = [...activeElements()].find(
3072
+ (element) => element.localName === "pc-dropdown-item"
3073
+ );
3074
+ const isFocusedOnItem = activeElement?.localName === "pc-dropdown-item";
3075
+ const currentSubmenuItem = this.getCurrentSubmenuItem();
3076
+ const isInSubmenu = !!currentSubmenuItem;
3077
+ let items;
3078
+ let activeItem;
3079
+ let activeItemIndex;
3080
+ if (isInSubmenu) {
3081
+ items = this.getSubmenuItems(currentSubmenuItem);
3082
+ activeItem = items.find(
3083
+ (item) => item.active || item === activeElement
3084
+ );
3085
+ activeItemIndex = activeItem ? items.indexOf(activeItem) : -1;
3086
+ } else {
3087
+ items = this.getItems();
3088
+ activeItem = items.find(
3089
+ (item) => item.active || item === activeElement
3090
+ );
3091
+ activeItemIndex = activeItem ? items.indexOf(activeItem) : -1;
3092
+ }
3093
+ let itemToSelect;
3094
+ if (event.key === "ArrowUp") {
3095
+ event.preventDefault();
3096
+ event.stopPropagation();
3097
+ if (activeItemIndex > 0) {
3098
+ itemToSelect = items[activeItemIndex - 1];
3099
+ } else {
3100
+ itemToSelect = items[items.length - 1];
3101
+ }
3102
+ }
3103
+ if (event.key === "ArrowDown") {
3104
+ event.preventDefault();
3105
+ event.stopPropagation();
3106
+ if (activeItemIndex !== -1 && activeItemIndex < items.length - 1) {
3107
+ itemToSelect = items[activeItemIndex + 1];
3108
+ } else {
3109
+ itemToSelect = items[0];
3110
+ }
3111
+ }
3112
+ if (event.key === (isRTL2 ? "ArrowLeft" : "ArrowRight") && isFocusedOnItem && activeItem) {
3113
+ if (activeItem.hasSubmenu) {
3114
+ event.preventDefault();
3115
+ event.stopPropagation();
3116
+ activeItem.submenuOpen = true;
3117
+ this.addToSubmenuStack(activeItem);
3118
+ setTimeout(() => {
3119
+ const submenuItems = this.getSubmenuItems(activeItem);
3120
+ if (submenuItems.length > 0) {
3121
+ submenuItems.forEach(
3122
+ (item, index) => item.active = index === 0
3123
+ );
3124
+ submenuItems[0].focus();
3125
+ }
3126
+ }, 0);
3127
+ return;
3128
+ }
3129
+ }
3130
+ if (event.key === (isRTL2 ? "ArrowRight" : "ArrowLeft") && isInSubmenu) {
3131
+ event.preventDefault();
3132
+ event.stopPropagation();
3133
+ const removedItem = this.removeFromSubmenuStack();
3134
+ if (removedItem) {
3135
+ removedItem.submenuOpen = false;
3136
+ setTimeout(() => {
3137
+ removedItem.focus();
3138
+ removedItem.active = true;
3139
+ const parentItems = removedItem.slot === "submenu" ? this.getSubmenuItems(
3140
+ removedItem.parentElement
3141
+ ) : this.getItems();
3142
+ parentItems.forEach((item) => {
3143
+ if (item !== removedItem) {
3144
+ item.active = false;
3145
+ }
3146
+ });
3147
+ }, 0);
3148
+ }
3149
+ return;
3150
+ }
3151
+ if (event.key === "Home" || event.key === "End") {
3152
+ event.preventDefault();
3153
+ event.stopPropagation();
3154
+ itemToSelect = event.key === "Home" ? items[0] : items[items.length - 1];
3155
+ }
3156
+ if (event.key === "Tab") {
3157
+ await this.hideMenu();
3158
+ }
3159
+ if (event.key.length === 1 && !(event.metaKey || event.ctrlKey || event.altKey) && !(event.key === " " && this.userTypedQuery === "")) {
3160
+ clearTimeout(this.userTypedTimeout);
3161
+ this.userTypedTimeout = setTimeout(() => {
3162
+ this.userTypedQuery = "";
3163
+ }, 1e3);
3164
+ this.userTypedQuery += event.key;
3165
+ items.some((item) => {
3166
+ const label = (item.textContent || "").trim().toLowerCase();
3167
+ const selectionQuery = this.userTypedQuery.trim().toLowerCase();
3168
+ if (label.startsWith(selectionQuery)) {
3169
+ itemToSelect = item;
3170
+ return true;
3171
+ }
3172
+ return false;
3173
+ });
3174
+ }
3175
+ if (itemToSelect) {
3176
+ event.preventDefault();
3177
+ event.stopPropagation();
3178
+ items.forEach((item) => item.active = item === itemToSelect);
3179
+ itemToSelect.focus();
3180
+ return;
3181
+ }
3182
+ if ((event.key === "Enter" || event.key === " " && this.userTypedQuery === "") && isFocusedOnItem && activeItem) {
3183
+ event.preventDefault();
3184
+ event.stopPropagation();
3185
+ if (activeItem.hasSubmenu) {
3186
+ activeItem.submenuOpen = true;
3187
+ this.addToSubmenuStack(activeItem);
3188
+ setTimeout(() => {
3189
+ const submenuItems = this.getSubmenuItems(activeItem);
3190
+ if (submenuItems.length > 0) {
3191
+ submenuItems.forEach(
3192
+ (item, index) => item.active = index === 0
3193
+ );
3194
+ submenuItems[0].focus();
3195
+ }
3196
+ }, 0);
3197
+ } else {
3198
+ this.makeSelection(activeItem);
3199
+ }
3200
+ }
3201
+ };
3202
+ /** Handles pointer down events when the dropdown is open. */
3203
+ this.handleDocumentPointerDown = (event) => {
3204
+ const path = event.composedPath();
3205
+ const isInDropdownHierarchy = path.some((element) => {
3206
+ if (element instanceof HTMLElement) {
3207
+ return element === this || element.closest('pc-dropdown, [part="submenu"]');
3208
+ }
3209
+ return false;
3210
+ });
3211
+ if (!isInDropdownHierarchy) {
3212
+ this.open = false;
3213
+ }
3214
+ };
3215
+ /** Handle global mouse movement for safe triangle logic. */
3216
+ this.handleGlobalMouseMove = (event) => {
3217
+ const currentSubmenuItem = this.getCurrentSubmenuItem();
3218
+ if (!currentSubmenuItem?.submenuOpen || !currentSubmenuItem.submenuElement) {
3219
+ return;
3220
+ }
3221
+ const submenuRect = currentSubmenuItem.submenuElement.getBoundingClientRect();
3222
+ const isRTL2 = this.localize.dir() === "rtl";
3223
+ const submenuEdgeX = isRTL2 ? submenuRect.right : submenuRect.left;
3224
+ const constrainedX = isRTL2 ? Math.max(event.clientX, submenuEdgeX) : Math.min(event.clientX, submenuEdgeX);
3225
+ const constrainedY = Math.max(
3226
+ submenuRect.top,
3227
+ Math.min(event.clientY, submenuRect.bottom)
3228
+ );
3229
+ currentSubmenuItem.submenuElement.style.setProperty(
3230
+ "--safe-triangle-cursor-x",
3231
+ `${constrainedX}px`
3232
+ );
3233
+ currentSubmenuItem.submenuElement.style.setProperty(
3234
+ "--safe-triangle-cursor-y",
3235
+ `${constrainedY}px`
3236
+ );
3237
+ const isOverItem = currentSubmenuItem.matches(":hover");
3238
+ const isOverSubmenu = currentSubmenuItem.submenuElement?.matches(":hover") || !!event.composedPath().find(
3239
+ (element) => element instanceof HTMLElement && element.closest('[part="submenu"]') === currentSubmenuItem.submenuElement
3240
+ );
3241
+ if (!isOverItem && !isOverSubmenu) {
3242
+ setTimeout(() => {
3243
+ if (!currentSubmenuItem.matches(":hover") && !currentSubmenuItem.submenuElement?.matches(":hover")) {
3244
+ currentSubmenuItem.submenuOpen = false;
3245
+ }
3246
+ }, 100);
3247
+ }
3248
+ };
3249
+ }
3250
+ firstUpdated() {
3251
+ this.syncARIAAttributes();
3252
+ }
3253
+ disconnectedCallback() {
3254
+ super.disconnectedCallback();
3255
+ clearInterval(this.userTypedTimeout);
3256
+ this.closeAllSubmenus();
3257
+ this.submenuCleanups.forEach((cleanup) => cleanup());
3258
+ this.submenuCleanups.clear();
3259
+ document.removeEventListener("mousemove", this.handleGlobalMouseMove);
3260
+ }
3261
+ async updated(changedProperties) {
3262
+ if (changedProperties.has("open")) {
3263
+ this.customStates.set("open", this.open);
3264
+ if (this.open) {
3265
+ await this.showMenu();
3266
+ } else {
3267
+ this.closeAllSubmenus();
3268
+ await this.hideMenu();
3269
+ }
3270
+ }
3271
+ if (changedProperties.has("size")) {
3272
+ this.syncItemSizes();
3273
+ }
3274
+ }
3275
+ /** Gets all dropdown items slotted in the menu. */
3276
+ getItems(includeDisabled = false) {
3277
+ const items = this.defaultSlot.assignedElements({ flatten: true }).filter(
3278
+ (element) => element.localName === "pc-dropdown-item"
3279
+ );
3280
+ return includeDisabled ? items : items.filter((item) => !item.disabled);
3281
+ }
3282
+ /** Gets all dropdown items in a specific submenu. */
3283
+ getSubmenuItems(parentItem, includeDisabled = false) {
3284
+ const submenuSlot = parentItem.shadowRoot?.querySelector(
3285
+ 'slot[name="submenu"]'
3286
+ ) || parentItem.querySelector('slot[name="submenu"]');
3287
+ if (!submenuSlot) {
3288
+ return [];
3289
+ }
3290
+ const items = submenuSlot.assignedElements({ flatten: true }).filter(
3291
+ (element) => element.localName === "pc-dropdown-item"
3292
+ );
3293
+ return includeDisabled ? items : items.filter((item) => !item.disabled);
3294
+ }
3295
+ /** Syncs item sizes with the dropdown’s size property. */
3296
+ syncItemSizes() {
3297
+ const items = this.defaultSlot.assignedElements({ flatten: true }).filter(
3298
+ (element) => element.localName === "pc-dropdown-item"
3299
+ );
3300
+ items.forEach((item) => item.size = this.size);
3301
+ }
3302
+ /** Handles the submenu navigation stack. */
3303
+ addToSubmenuStack(item) {
3304
+ const index = this.openSubmenuStack.indexOf(item);
3305
+ if (index !== -1) {
3306
+ this.openSubmenuStack = this.openSubmenuStack.slice(0, index + 1);
3307
+ } else {
3308
+ this.openSubmenuStack.push(item);
3309
+ }
3310
+ }
3311
+ /** Removes the last item from the submenu stack. */
3312
+ removeFromSubmenuStack() {
3313
+ return this.openSubmenuStack.pop();
3314
+ }
3315
+ /** Gets the current active submenu item. */
3316
+ getCurrentSubmenuItem() {
3317
+ return this.openSubmenuStack.length > 0 ? this.openSubmenuStack[this.openSubmenuStack.length - 1] : void 0;
3318
+ }
3319
+ /** Closes all submenus in the dropdown. */
3320
+ closeAllSubmenus() {
3321
+ const items = this.getItems(true);
3322
+ items.forEach((item) => {
3323
+ item.submenuOpen = false;
3324
+ });
3325
+ this.openSubmenuStack = [];
3326
+ }
3327
+ /** Closes sibling submenus at the same level as the specified item. */
3328
+ closeSiblingSubmenus(item) {
3329
+ const parentDropdownItem = item.closest(
3330
+ 'pc-dropdown-item:not([slot="submenu"])'
3331
+ );
3332
+ let siblingItems;
3333
+ if (parentDropdownItem) {
3334
+ siblingItems = this.getSubmenuItems(parentDropdownItem, true);
3335
+ } else {
3336
+ siblingItems = this.getItems(true);
3337
+ }
3338
+ siblingItems.forEach((siblingItem) => {
3339
+ if (siblingItem !== item && siblingItem.submenuOpen) {
3340
+ siblingItem.submenuOpen = false;
3341
+ }
3342
+ });
3343
+ if (!this.openSubmenuStack.includes(item)) {
3344
+ this.openSubmenuStack.push(item);
3345
+ }
3346
+ }
3347
+ /** Get the slotted trigger button, a <pc-button> or <button> element. */
3348
+ getTrigger() {
3349
+ return this.querySelector(
3350
+ '[slot="trigger"]'
3351
+ );
3352
+ }
3353
+ /** Shows the dropdown menu. This should be only called from within `updated()`. */
3354
+ async showMenu() {
3355
+ const anchor = this.getTrigger();
3356
+ if (!anchor) {
3357
+ return;
3358
+ }
3359
+ const pcShow = emit(this, "pc-show", {
3360
+ cancelable: true
3361
+ });
3362
+ if (pcShow.defaultPrevented) {
3363
+ this.open = false;
3364
+ return;
3365
+ }
3366
+ openDropdowns.forEach((dropdown) => dropdown.open = false);
3367
+ this.popup.active = true;
3368
+ this.open = true;
3369
+ openDropdowns.add(this);
3370
+ this.syncARIAAttributes();
3371
+ document.addEventListener("keydown", this.handleDocumentKeyDown);
3372
+ document.addEventListener(
3373
+ "pointerdown",
3374
+ this.handleDocumentPointerDown
3375
+ );
3376
+ document.addEventListener("mousemove", this.handleGlobalMouseMove);
3377
+ this.menu.hidden = false;
3378
+ const { keyframes, options } = getAnimation(this, "dropdown.show", {
3379
+ dir: this.localize.dir()
3380
+ });
3381
+ await animateTo(this.menu, keyframes, options);
3382
+ await stopAnimations(this);
3383
+ const items = this.getItems();
3384
+ if (items.length > 0) {
3385
+ items.forEach((item, index) => item.active = index === 0);
3386
+ items[0].focus();
3387
+ }
3388
+ emit(this, "pc-after-show");
3389
+ }
3390
+ /** Hides the dropdown menu. This should be only called from within `updated()`. */
3391
+ async hideMenu() {
3392
+ const pcHide = emit(this, "pc-hide", {
3393
+ cancelable: true
3394
+ });
3395
+ if (pcHide.defaultPrevented) {
3396
+ this.open = true;
3397
+ return;
3398
+ }
3399
+ this.open = false;
3400
+ openDropdowns.delete(this);
3401
+ this.syncARIAAttributes();
3402
+ document.removeEventListener("keydown", this.handleDocumentKeyDown);
3403
+ document.removeEventListener(
3404
+ "pointerdown",
3405
+ this.handleDocumentPointerDown
3406
+ );
3407
+ document.removeEventListener("mousemove", this.handleGlobalMouseMove);
3408
+ const { keyframes, options } = getAnimation(this, "dropdown.hide", {
3409
+ dir: this.localize.dir()
3410
+ });
3411
+ await animateTo(this.menu, keyframes, options);
3412
+ await stopAnimations(this);
3413
+ this.menu.hidden = true;
3414
+ emit(this, "pc-after-hide");
3415
+ }
3416
+ /** Handles clicks on the menu. */
3417
+ handleMenuClick(event) {
3418
+ const item = event.target.closest("pc-dropdown-item");
3419
+ if (!item || item.disabled) {
3420
+ return;
3421
+ }
3422
+ if (item.hasSubmenu) {
3423
+ if (!item.submenuOpen) {
3424
+ this.closeSiblingSubmenus(item);
3425
+ this.addToSubmenuStack(item);
3426
+ item.submenuOpen = true;
3427
+ }
3428
+ event.stopPropagation();
3429
+ return;
3430
+ }
3431
+ this.makeSelection(item);
3432
+ }
3433
+ /** Prepares dropdown items when they get added or removed. */
3434
+ async handleMenuSlotChange() {
3435
+ const items = this.getItems(true);
3436
+ await Promise.all(items.map((item) => item.updateComplete));
3437
+ this.syncItemSizes();
3438
+ const hasCheckbox = items.some((item) => item.type === "checkbox");
3439
+ const hasSubmenu = items.some((item) => item.hasSubmenu);
3440
+ items.forEach((item, index) => {
3441
+ item.active = index === 0;
3442
+ item.checkboxAdjacent = hasCheckbox;
3443
+ item.submenuAdjacent = hasSubmenu;
3444
+ });
3445
+ }
3446
+ /** Toggles the dropdown menu. */
3447
+ handleTriggerClick() {
3448
+ this.open = !this.open;
3449
+ }
3450
+ /** Handles submenu opening events. */
3451
+ handleSubmenuOpening(event) {
3452
+ const openingItem = event.detail.item;
3453
+ this.closeSiblingSubmenus(openingItem);
3454
+ this.addToSubmenuStack(openingItem);
3455
+ this.setupSubmenuPosition(openingItem);
3456
+ this.processSubmenuItems(openingItem);
3457
+ }
3458
+ /** Sets up submenu positioning with `autoUpdate`. */
3459
+ setupSubmenuPosition(item) {
3460
+ if (!item.submenuElement) {
3461
+ return;
3462
+ }
3463
+ this.cleanupSubmenuPosition(item);
3464
+ const cleanup = autoUpdate(item, item.submenuElement, () => {
3465
+ this.positionSubmenu(item);
3466
+ this.updateSafeTriangleCoordinates(item);
3467
+ });
3468
+ this.submenuCleanups.set(item, cleanup);
3469
+ const submenuSlot = item.submenuElement.querySelector(
3470
+ 'slot[name="submenu"]'
3471
+ );
3472
+ if (submenuSlot) {
3473
+ submenuSlot.removeEventListener(
3474
+ "slotchange",
3475
+ PcDropdown.handleSubmenuSlotChange
3476
+ );
3477
+ submenuSlot.addEventListener(
3478
+ "slotchange",
3479
+ PcDropdown.handleSubmenuSlotChange
3480
+ );
3481
+ PcDropdown.handleSubmenuSlotChange({
3482
+ target: submenuSlot
3483
+ });
3484
+ }
3485
+ }
3486
+ static handleSubmenuSlotChange(event) {
3487
+ const slot = event.target;
3488
+ if (!slot) {
3489
+ return;
3490
+ }
3491
+ const items = slot.assignedElements().filter(
3492
+ (element) => element.localName === "pc-dropdown-item"
3493
+ );
3494
+ if (items.length === 0) {
3495
+ return;
3496
+ }
3497
+ const hasSubmenuItems = items.some((item) => item.hasSubmenu);
3498
+ const hasCheckboxItems = items.some((item) => item.type === "checkbox");
3499
+ items.forEach((item) => {
3500
+ item.submenuAdjacent = hasSubmenuItems;
3501
+ item.checkboxAdjacent = hasCheckboxItems;
3502
+ });
3503
+ }
3504
+ processSubmenuItems(item) {
3505
+ if (!item.submenuElement) {
3506
+ return;
3507
+ }
3508
+ const submenuItems = this.getSubmenuItems(item, true);
3509
+ const hasSubmenuItems = submenuItems.some(
3510
+ (subItem) => subItem.hasSubmenu
3511
+ );
3512
+ const hasCheckboxItems = submenuItems.some(
3513
+ (subItem) => subItem.type === "checkbox"
3514
+ );
3515
+ submenuItems.forEach((subItem) => {
3516
+ subItem.submenuAdjacent = hasSubmenuItems;
3517
+ subItem.checkboxAdjacent = hasCheckboxItems;
3518
+ });
3519
+ }
3520
+ /** Cleans up the submenu positioning. */
3521
+ cleanupSubmenuPosition(item) {
3522
+ const cleanup = this.submenuCleanups.get(item);
3523
+ if (cleanup) {
3524
+ cleanup();
3525
+ this.submenuCleanups.delete(item);
3526
+ }
3527
+ }
3528
+ /** Positions a submenu relative to its parent item. */
3529
+ positionSubmenu(item) {
3530
+ if (!item.submenuElement) {
3531
+ return;
3532
+ }
3533
+ const isRTL2 = this.localize.dir() === "rtl";
3534
+ const placement = isRTL2 ? "left-start" : "right-start";
3535
+ computePosition2(item, item.submenuElement, {
3536
+ placement,
3537
+ middleware: [
3538
+ offset2({
3539
+ mainAxis: 0,
3540
+ crossAxis: -5
3541
+ }),
3542
+ flip2({
3543
+ fallbackStrategy: "bestFit"
3544
+ }),
3545
+ shift2({
3546
+ padding: 8
3547
+ })
3548
+ ]
3549
+ }).then(({ x: x2, y: y3, placement: placement2 }) => {
3550
+ item.submenuElement.setAttribute("data-placement", placement2);
3551
+ Object.assign(item.submenuElement.style, {
3552
+ left: `${x2}px`,
3553
+ top: `${y3}px`
3554
+ });
3555
+ });
3556
+ }
3557
+ /** Updates the safe triangle coordinates for a submenu. */
3558
+ updateSafeTriangleCoordinates(item) {
3559
+ if (!item.submenuElement || !item.submenuOpen) {
3560
+ return;
3561
+ }
3562
+ const isKeyboardNavigation = document.activeElement?.matches(":focus-visible");
3563
+ if (isKeyboardNavigation) {
3564
+ item.submenuElement.style.setProperty(
3565
+ "--safe-triangle-visible",
3566
+ "none"
3567
+ );
3568
+ return;
3569
+ }
3570
+ item.submenuElement.style.setProperty(
3571
+ "--safe-triangle-visible",
3572
+ "block"
3573
+ );
3574
+ const submenuRect = item.submenuElement.getBoundingClientRect();
3575
+ const isRTL2 = this.localize.dir() === "rtl";
3576
+ item.submenuElement.style.setProperty(
3577
+ "--safe-triangle-submenu-start-x",
3578
+ `${isRTL2 ? submenuRect.right : submenuRect.left}px`
3579
+ );
3580
+ item.submenuElement.style.setProperty(
3581
+ "--safe-triangle-submenu-start-y",
3582
+ `${submenuRect.top}px`
3583
+ );
3584
+ item.submenuElement.style.setProperty(
3585
+ "--safe-triangle-submenu-end-x",
3586
+ `${isRTL2 ? submenuRect.right : submenuRect.left}px`
3587
+ );
3588
+ item.submenuElement.style.setProperty(
3589
+ "--safe-triangle-submenu-end-y",
3590
+ `${submenuRect.bottom}px`
3591
+ );
3592
+ }
3593
+ /** Makes a selection, emits the `pc-select` event and closes the dropdown. */
3594
+ makeSelection(item) {
3595
+ const trigger = this.getTrigger();
3596
+ if (item.disabled) {
3597
+ return;
3598
+ }
3599
+ if (item.type === "checkbox") {
3600
+ item.checked = !item.checked;
3601
+ }
3602
+ const pcSelect = emit(this, "pc-select", {
3603
+ cancelable: true,
3604
+ detail: { item }
3605
+ });
3606
+ if (!pcSelect.defaultPrevented) {
3607
+ this.open = false;
3608
+ trigger?.focus();
3609
+ }
3610
+ }
3611
+ /** Syncs ARIA attributes on the slotted trigger element and the menu based on the dropdown’s current state. */
3612
+ async syncARIAAttributes() {
3613
+ const trigger = this.getTrigger();
3614
+ let nativeButton;
3615
+ if (!trigger) {
3616
+ return;
3617
+ }
3618
+ if (trigger.localName === "pc-button") {
3619
+ await customElements.whenDefined("pc-button");
3620
+ await trigger.updateComplete;
3621
+ nativeButton = trigger.shadowRoot.querySelector(
3622
+ '[part="base"]'
3623
+ );
3624
+ } else {
3625
+ nativeButton = trigger;
3626
+ }
3627
+ if (!nativeButton.hasAttribute("id")) {
3628
+ nativeButton.setAttribute("id", uniqueID("pc-dropdown-trigger-"));
3629
+ }
3630
+ nativeButton.setAttribute("aria-haspopup", "menu");
3631
+ nativeButton.setAttribute(
3632
+ "aria-expanded",
3633
+ this.open ? "true" : "false"
3634
+ );
3635
+ this.menu.setAttribute("aria-expanded", "false");
3636
+ }
3637
+ render() {
3638
+ let active = this.hasUpdated ? this.popup.active : this.open;
3639
+ return x`
3640
+ <pc-popup
3641
+ placement=${this.placement}
3642
+ distance=${this.distance}
3643
+ skidding=${this.skidding}
3644
+ ?active=${active}
3645
+ flip-fallback-strategy="best-fit"
3646
+ shift-padding="10"
3647
+ auto-size="vertical"
3648
+ auto-size-padding="10"
3649
+ shift
3650
+ flip
3651
+ >
3652
+ <slot
3653
+ name="trigger"
3654
+ slot="anchor"
3655
+ @click=${this.handleTriggerClick}
3656
+ @slotchange=${this.syncARIAAttributes}
3657
+ ></slot>
3658
+
3659
+ <div
3660
+ part="menu"
3661
+ id="menu"
3662
+ role="menu"
3663
+ tabindex="-1"
3664
+ aria-orientation="vertical"
3665
+ @click=${this.handleMenuClick}
3666
+ @pc-submenu-opening=${this.handleSubmenuOpening}
3667
+ >
3668
+ <slot @slotchange=${this.handleMenuSlotChange}></slot>
3669
+ </div>
3670
+ </pc-popup>
3671
+ `;
3672
+ }
3673
+ };
3674
+ /** @internal This is an internal static property. */
3675
+ PcDropdown.css = [size_default, dropdown_default];
3676
+ /** @internal This is an internal static property. */
3677
+ PcDropdown.dependencies = { "pc-popup": PcPopup };
3678
+ __decorateClass([
3679
+ e5("slot:not([name])")
3680
+ ], PcDropdown.prototype, "defaultSlot", 2);
3681
+ __decorateClass([
3682
+ e5("#menu")
3683
+ ], PcDropdown.prototype, "menu", 2);
3684
+ __decorateClass([
3685
+ e5("pc-popup")
3686
+ ], PcDropdown.prototype, "popup", 2);
3687
+ __decorateClass([
3688
+ n4({ type: Boolean, reflect: true })
3689
+ ], PcDropdown.prototype, "open", 2);
3690
+ __decorateClass([
3691
+ n4({ reflect: true })
3692
+ ], PcDropdown.prototype, "size", 2);
3693
+ __decorateClass([
3694
+ n4({ reflect: true })
3695
+ ], PcDropdown.prototype, "placement", 2);
3696
+ __decorateClass([
3697
+ n4({ type: Number })
3698
+ ], PcDropdown.prototype, "distance", 2);
3699
+ __decorateClass([
3700
+ n4({ type: Number })
3701
+ ], PcDropdown.prototype, "skidding", 2);
3702
+ PcDropdown = __decorateClass([
3703
+ t3("pc-dropdown")
3704
+ ], PcDropdown);
3705
+ export {
3706
+ PcDropdown
3707
+ };
3708
+ //! Popup is a low‐level utility built specifically for positioning elements. Do not mistake it for a tooltip or similar because it does not facilitate an accessible experience! Almost every correct usage of it will involve building other components. It should rarely, if ever, occur directly in your HTML.
3709
+ /*! Bundled license information:
3710
+
3711
+ @lit/reactive-element/css-tag.js:
3712
+ (**
3713
+ * @license
3714
+ * Copyright 2019 Google LLC
3715
+ * SPDX-License-Identifier: BSD-3-Clause
3716
+ *)
3717
+
3718
+ @lit/reactive-element/reactive-element.js:
3719
+ lit-html/lit-html.js:
3720
+ lit-element/lit-element.js:
3721
+ @lit/reactive-element/decorators/custom-element.js:
3722
+ @lit/reactive-element/decorators/property.js:
3723
+ @lit/reactive-element/decorators/state.js:
3724
+ @lit/reactive-element/decorators/event-options.js:
3725
+ @lit/reactive-element/decorators/base.js:
3726
+ @lit/reactive-element/decorators/query.js:
3727
+ @lit/reactive-element/decorators/query-all.js:
3728
+ @lit/reactive-element/decorators/query-async.js:
3729
+ @lit/reactive-element/decorators/query-assigned-nodes.js:
3730
+ lit-html/directive.js:
3731
+ (**
3732
+ * @license
3733
+ * Copyright 2017 Google LLC
3734
+ * SPDX-License-Identifier: BSD-3-Clause
3735
+ *)
3736
+
3737
+ lit-html/is-server.js:
3738
+ (**
3739
+ * @license
3740
+ * Copyright 2022 Google LLC
3741
+ * SPDX-License-Identifier: BSD-3-Clause
3742
+ *)
3743
+
3744
+ @lit/reactive-element/decorators/query-assigned-elements.js:
3745
+ (**
3746
+ * @license
3747
+ * Copyright 2021 Google LLC
3748
+ * SPDX-License-Identifier: BSD-3-Clause
3749
+ *)
3750
+
3751
+ lit-html/directives/class-map.js:
3752
+ (**
3753
+ * @license
3754
+ * Copyright 2018 Google LLC
3755
+ * SPDX-License-Identifier: BSD-3-Clause
3756
+ *)
3757
+ */