@cordwainer/cw-elements 1.0.2 → 1.1.0-alpha.1

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 (743) hide show
  1. package/cdn/chunks/{chunk.TQZ6L3P4.js → chunk.23QJ7NJJ.js} +2 -2
  2. package/cdn/chunks/{chunk.XOG3NHNL.js → chunk.2AVZV55V.js} +1 -1
  3. package/cdn/chunks/{chunk.5UO6AHMQ.js → chunk.2BZYHVAA.js} +1 -1
  4. package/cdn/chunks/{chunk.SMOHZXI4.js → chunk.2ELMNABV.js} +1 -1
  5. package/{dist/chunks/chunk.TCNA5JCH.js → cdn/chunks/chunk.2KRRVOTP.js} +1 -1
  6. package/cdn/chunks/{chunk.ICZSBSUK.js → chunk.2KRVWKPV.js} +1 -1
  7. package/cdn/chunks/{chunk.RCSVY64A.js → chunk.2M4B6U6R.js} +1 -1
  8. package/{dist/chunks/chunk.GBBU2BYQ.js → cdn/chunks/chunk.2MAEADU5.js} +1 -1
  9. package/cdn/chunks/{chunk.6IQRSUDS.js → chunk.2QQBAJ2H.js} +1 -1
  10. package/cdn/chunks/{chunk.47SIJ5O2.js → chunk.2QZ36WJT.js} +3 -3
  11. package/cdn/chunks/{chunk.DTP7WKYG.js → chunk.36KJB3ZP.js} +5 -5
  12. package/cdn/chunks/{chunk.DHFOXVGY.js → chunk.3EFTNCB7.js} +1 -1
  13. package/cdn/chunks/{chunk.FE5PFPCU.js → chunk.3XT5BPUQ.js} +1 -1
  14. package/cdn/chunks/{chunk.4X47BZC4.js → chunk.3ZFAS3AL.js} +1 -1
  15. package/cdn/chunks/{chunk.EQVCN7G2.js → chunk.423POR7Z.js} +1 -1
  16. package/cdn/chunks/{chunk.PWK3CNVW.js → chunk.454DLRAB.js} +1 -1
  17. package/cdn/chunks/{chunk.ZJ5MSA5V.js → chunk.4FOMW3EY.js} +1 -1
  18. package/cdn/chunks/{chunk.SZQXKHVQ.js → chunk.4OV6VPEK.js} +2 -2
  19. package/cdn/chunks/{chunk.6DMW4GCT.js → chunk.4R6BRK42.js} +1 -1
  20. package/cdn/chunks/chunk.57GIFBAS.js +341 -0
  21. package/cdn/chunks/{chunk.YVSFO245.js → chunk.5BZAHCJF.js} +1 -1
  22. package/{dist/chunks/chunk.SUZGOFVF.js → cdn/chunks/chunk.5CNMIFJF.js} +1 -1
  23. package/cdn/chunks/{chunk.V2JYMFH6.js → chunk.5DTXWFT4.js} +2 -2
  24. package/cdn/chunks/{chunk.O36Y23HB.js → chunk.5I7XA6M5.js} +1 -1
  25. package/cdn/chunks/{chunk.ZP2NEQKH.js → chunk.5JUMTF32.js} +1 -1
  26. package/cdn/chunks/{chunk.ANTTHUGO.js → chunk.5QU7YOU6.js} +4 -4
  27. package/cdn/chunks/{chunk.YYO5EZ2O.js → chunk.5U7RICDJ.js} +1 -1
  28. package/cdn/chunks/{chunk.EFEK2W42.js → chunk.5YUYCGQ7.js} +2 -2
  29. package/{dist/chunks/chunk.74NBE5UP.js → cdn/chunks/chunk.63AEUNNE.js} +1 -1
  30. package/cdn/chunks/{chunk.7FNIH65T.js → chunk.64DQ5UHZ.js} +1 -1
  31. package/cdn/chunks/{chunk.XYNAG6RX.js → chunk.6LD6OBAE.js} +1 -1
  32. package/cdn/chunks/{chunk.L3AZJDK7.js → chunk.6ZML6PPJ.js} +1 -1
  33. package/cdn/chunks/{chunk.QCLLOTPO.js → chunk.7CXBIEPO.js} +1 -1
  34. package/cdn/chunks/{chunk.2OAGK5SV.js → chunk.7DV4KFED.js} +1 -1
  35. package/cdn/chunks/{chunk.TUYPBSQ3.js → chunk.7FKGS4NN.js} +1 -1
  36. package/cdn/chunks/{chunk.Q7U7CDBC.js → chunk.7H5E2H5H.js} +1 -1
  37. package/cdn/chunks/{chunk.VHGZATIT.js → chunk.7J4YZAP7.js} +2 -2
  38. package/cdn/chunks/{chunk.C6ALLS2G.js → chunk.7NFLO67E.js} +1 -1
  39. package/cdn/chunks/{chunk.IXSWLWWQ.js → chunk.7QIFZGLU.js} +1 -1
  40. package/cdn/chunks/{chunk.4AWWOCXC.js → chunk.A32RWXXM.js} +1 -1
  41. package/cdn/chunks/{chunk.Q53KF64A.js → chunk.ACNV6AUB.js} +2 -2
  42. package/cdn/chunks/{chunk.ZJAUNGVM.js → chunk.AJ3ANPQ3.js} +1 -1
  43. package/cdn/chunks/{chunk.KTEBEIBH.js → chunk.AK66EZZ6.js} +2 -2
  44. package/cdn/chunks/{chunk.E6EBJB65.js → chunk.AP7BJUVF.js} +1 -1
  45. package/{dist/chunks/chunk.PTVTYKTE.js → cdn/chunks/chunk.APMZOTIL.js} +1 -1
  46. package/cdn/chunks/{chunk.VMX4JV6U.js → chunk.AQC4MW3D.js} +1 -1
  47. package/{dist/chunks/chunk.VHLJR6UC.js → cdn/chunks/chunk.AVK2F7R7.js} +1 -1
  48. package/cdn/chunks/{chunk.GJZ7RW7C.js → chunk.AVZR5QUK.js} +1 -1
  49. package/cdn/chunks/{chunk.PZWUHV25.js → chunk.B5NOVYX6.js} +1 -1
  50. package/cdn/chunks/{chunk.I3ASUPXI.js → chunk.B665IET3.js} +1 -1
  51. package/{dist/chunks/chunk.S5456PHM.js → cdn/chunks/chunk.BBY4XHBV.js} +1 -1
  52. package/cdn/chunks/{chunk.SMIHYJB7.js → chunk.BBZR4SMX.js} +1 -1
  53. package/cdn/chunks/chunk.BCYWOL5T.js +33 -0
  54. package/cdn/chunks/{chunk.DKWXYLAC.js → chunk.BL3LDZZ2.js} +1 -1
  55. package/cdn/chunks/{chunk.4MWACGIS.js → chunk.BVRVVV3H.js} +1 -1
  56. package/cdn/chunks/{chunk.XLCIAKAV.js → chunk.BXLLLPP4.js} +1 -1
  57. package/cdn/chunks/{chunk.TNDYJ22R.js → chunk.BYQOAATK.js} +1 -1
  58. package/{dist/chunks/chunk.42TRJM67.js → cdn/chunks/chunk.CFC7WPIH.js} +1 -1
  59. package/{dist/chunks/chunk.4HDSGYO6.js → cdn/chunks/chunk.CIO7YZYM.js} +1 -1
  60. package/cdn/chunks/{chunk.3XXTXWPF.js → chunk.CIWFI7M7.js} +1 -1
  61. package/{dist/chunks/chunk.GPL76NN4.js → cdn/chunks/chunk.CXSU5TA7.js} +1 -1
  62. package/cdn/chunks/{chunk.KFTN6NRJ.js → chunk.D755QAZ2.js} +1 -1
  63. package/cdn/chunks/{chunk.6PM5VZUE.js → chunk.DCDGAB72.js} +1 -1
  64. package/cdn/chunks/{chunk.VXXETE4D.js → chunk.DDVLQEIQ.js} +1 -1
  65. package/cdn/chunks/{chunk.PNBVLSZA.js → chunk.DG6RRSBW.js} +1 -1
  66. package/cdn/chunks/{chunk.M5S4AXDV.js → chunk.DMOBOOGK.js} +1 -1
  67. package/cdn/chunks/{chunk.K3XNDLXC.js → chunk.DODFRSSI.js} +2 -2
  68. package/cdn/chunks/{chunk.RZL4P4OK.js → chunk.DULA3BXU.js} +2 -2
  69. package/cdn/chunks/{chunk.ANTSFJDD.js → chunk.EF4W5VAI.js} +8 -8
  70. package/cdn/chunks/{chunk.2HQX3DEO.js → chunk.EK2GM3E7.js} +1 -1
  71. package/cdn/chunks/{chunk.I2O27SY4.js → chunk.EKA5IZBB.js} +1 -1
  72. package/cdn/chunks/{chunk.XHKXJXIA.js → chunk.EP3EOPIN.js} +1 -1
  73. package/cdn/chunks/{chunk.U33CH56X.js → chunk.EUJOOI64.js} +1 -1
  74. package/cdn/chunks/{chunk.X5DWWG7E.js → chunk.F4XOF4OO.js} +1 -1
  75. package/cdn/chunks/{chunk.XBIIIWFE.js → chunk.FA53EVHS.js} +1 -1
  76. package/cdn/chunks/{chunk.CYSAGOLW.js → chunk.FCANBYWU.js} +5 -5
  77. package/cdn/chunks/{chunk.NJVDJE4P.js → chunk.FD2BLKNF.js} +1 -1
  78. package/cdn/chunks/{chunk.DFDGTIXB.js → chunk.FIKR7I4P.js} +1 -1
  79. package/cdn/chunks/{chunk.YPDHO2MV.js → chunk.FNTJI56Z.js} +1 -1
  80. package/cdn/chunks/{chunk.QJEQT4GA.js → chunk.FU5AEFPB.js} +1 -1
  81. package/{dist/chunks/chunk.TM4EEBB7.js → cdn/chunks/chunk.G3JTEGO6.js} +1 -1
  82. package/cdn/chunks/{chunk.QJP6RERB.js → chunk.G4F5AGXC.js} +1 -1
  83. package/cdn/chunks/{chunk.KE3FRZ66.js → chunk.G4S6PHF2.js} +1 -1
  84. package/{dist/chunks/chunk.SUBS3R35.js → cdn/chunks/chunk.G6WVVAXZ.js} +1 -1
  85. package/cdn/chunks/{chunk.V4WJHI6K.js → chunk.G7ONJPZV.js} +1 -1
  86. package/cdn/chunks/{chunk.3IW2ULOI.js → chunk.GAFXEGCL.js} +4 -4
  87. package/cdn/chunks/{chunk.5NLZQEAP.js → chunk.GHZHB7GZ.js} +1 -1
  88. package/cdn/chunks/chunk.GKTPFSX2.js +11 -0
  89. package/cdn/chunks/{chunk.4TDQ3D5D.js → chunk.GO7KGZOP.js} +9 -9
  90. package/cdn/chunks/{chunk.ODEFDLOS.js → chunk.GVVKJKG6.js} +1 -1
  91. package/cdn/chunks/{chunk.YYM5B3SU.js → chunk.HHXNLZL6.js} +2 -2
  92. package/cdn/chunks/{chunk.OFPEBHPZ.js → chunk.HIF2OHVM.js} +1 -1
  93. package/cdn/chunks/{chunk.ZIUWRRPK.js → chunk.HMT745MR.js} +1 -1
  94. package/{dist/chunks/chunk.IDQZK3GT.js → cdn/chunks/chunk.HNNT46J6.js} +1 -1
  95. package/cdn/chunks/{chunk.JFH76EBB.js → chunk.HRUSWDQO.js} +1 -1
  96. package/cdn/chunks/{chunk.PRESQM3N.js → chunk.HYY2OEES.js} +1 -1
  97. package/cdn/chunks/{chunk.XVXHFMZV.js → chunk.IJV5TSMJ.js} +1 -1
  98. package/cdn/chunks/{chunk.64X7JHZT.js → chunk.IST3R6UF.js} +1 -1
  99. package/cdn/chunks/{chunk.IPSBVART.js → chunk.J22HNHPX.js} +1 -1
  100. package/cdn/chunks/{chunk.ZKF6T35X.js → chunk.J3WFI2KI.js} +1 -1
  101. package/cdn/chunks/{chunk.RTKJSUYI.js → chunk.JDNQB5GE.js} +1 -1
  102. package/cdn/chunks/{chunk.YUMMPJ3R.js → chunk.JKVP3CWK.js} +1 -1
  103. package/cdn/chunks/{chunk.IRW4ZF36.js → chunk.JNVGCUJV.js} +2 -2
  104. package/cdn/chunks/{chunk.O6P3UCS3.js → chunk.JWIYHJZV.js} +1 -1
  105. package/cdn/chunks/{chunk.HEEJQFJX.js → chunk.JYAECO5B.js} +1 -1
  106. package/cdn/chunks/{chunk.NAVQTIA5.js → chunk.JYEWLHBO.js} +1 -1
  107. package/cdn/chunks/{chunk.UJ3GXAMK.js → chunk.KDPC7QBC.js} +1 -1
  108. package/{dist/chunks/chunk.6EVZOAKZ.js → cdn/chunks/chunk.KKDGIKPZ.js} +1 -1
  109. package/cdn/chunks/{chunk.L6BYULGZ.js → chunk.KVJ5VZD5.js} +1 -1
  110. package/{dist/chunks/chunk.DFHNAMOU.js → cdn/chunks/chunk.KZWBHZBX.js} +1 -1
  111. package/cdn/chunks/{chunk.TPW2IRUK.js → chunk.L6FHFQMH.js} +1 -1
  112. package/cdn/chunks/{chunk.XQVMPQOG.js → chunk.L76DX3LO.js} +1 -1
  113. package/{dist/chunks/chunk.GBFKDMZN.js → cdn/chunks/chunk.LJXRCZI7.js} +1 -1
  114. package/cdn/chunks/{chunk.FZDLUBZM.js → chunk.LOYDJCRX.js} +1 -1
  115. package/cdn/chunks/{chunk.JC5KFVRV.js → chunk.LSZCLNXC.js} +1 -1
  116. package/cdn/chunks/{chunk.YFHG4BQM.js → chunk.LTOS2OMK.js} +1 -1
  117. package/cdn/chunks/{chunk.JHE2G42X.js → chunk.LTSCKEZA.js} +4 -4
  118. package/{dist/chunks/chunk.VIBQBWQR.js → cdn/chunks/chunk.M3T2MZBI.js} +1 -1
  119. package/cdn/chunks/{chunk.A6URMEL7.js → chunk.M5Y3CVH5.js} +1 -1
  120. package/cdn/chunks/{chunk.E46RKBOL.js → chunk.MA7BRXRJ.js} +4 -4
  121. package/{dist/chunks/chunk.NNMCYUSA.js → cdn/chunks/chunk.MOOLNJWA.js} +1 -1
  122. package/cdn/chunks/{chunk.KCJOC3GW.js → chunk.MPKZLETH.js} +2 -2
  123. package/cdn/chunks/{chunk.3SK4L2LK.js → chunk.MQCVKOGC.js} +1 -1
  124. package/{dist/chunks/chunk.6LYG5EBS.js → cdn/chunks/chunk.MREAUPYK.js} +1 -1
  125. package/cdn/chunks/chunk.N6NGURUS.js +967 -0
  126. package/cdn/chunks/{chunk.LBJRL3GV.js → chunk.N7Z7YFPG.js} +1 -1
  127. package/cdn/chunks/{chunk.2OVEVC7W.js → chunk.O4IXCC3Q.js} +1 -1
  128. package/cdn/chunks/{chunk.TNSLMF4J.js → chunk.OBBP4SDL.js} +2 -2
  129. package/cdn/chunks/{chunk.MVJ2FLLM.js → chunk.OFAB73NQ.js} +1 -1
  130. package/cdn/chunks/{chunk.BWYIRBRB.js → chunk.OFICDQUP.js} +1 -1
  131. package/{dist/chunks/chunk.4YRCZGZ2.js → cdn/chunks/chunk.OHS5HEB7.js} +1 -1
  132. package/cdn/chunks/{chunk.H3OHBUEG.js → chunk.OMQZMDHO.js} +4 -4
  133. package/cdn/chunks/{chunk.7OHKRALR.js → chunk.OOID47SK.js} +1 -1
  134. package/cdn/chunks/{chunk.VKMERZDR.js → chunk.ORXAOSYG.js} +1 -1
  135. package/cdn/chunks/{chunk.JIDC3UIK.js → chunk.PEOS3WEQ.js} +1 -1
  136. package/cdn/chunks/{chunk.46TK6HVL.js → chunk.PLA2L3GD.js} +1 -1
  137. package/cdn/chunks/{chunk.4CVR5OCV.js → chunk.PMION4XH.js} +3 -3
  138. package/{dist/chunks/chunk.MOGBOLD3.js → cdn/chunks/chunk.PVO3FADL.js} +1 -1
  139. package/cdn/chunks/{chunk.DN7B4ZTX.js → chunk.PWDUNF72.js} +2 -2
  140. package/cdn/chunks/{chunk.6O7IXZWF.js → chunk.QBDAXQRD.js} +2 -2
  141. package/{dist/chunks/chunk.XL7275CV.js → cdn/chunks/chunk.QEEST3EB.js} +1 -1
  142. package/cdn/chunks/{chunk.G4MD652W.js → chunk.QEU47NC2.js} +1 -1
  143. package/cdn/chunks/{chunk.LHPYB2AF.js → chunk.QGL5IXBT.js} +1 -1
  144. package/cdn/chunks/{chunk.ASAWTOPQ.js → chunk.RAF72V64.js} +1 -1
  145. package/cdn/chunks/{chunk.ZHHDDZQT.js → chunk.RETIUTF2.js} +1 -1
  146. package/cdn/chunks/{chunk.ODQ4JYAL.js → chunk.RG2ZQTZT.js} +1 -1
  147. package/{dist/chunks/chunk.DEYRT4DJ.js → cdn/chunks/chunk.RLDOF26C.js} +1 -1
  148. package/cdn/chunks/{chunk.TSOJ2LSG.js → chunk.RQTACNRD.js} +1 -1
  149. package/cdn/chunks/{chunk.ZSEM66SM.js → chunk.RRQWN4VQ.js} +1 -1
  150. package/cdn/chunks/{chunk.OO6DR65X.js → chunk.S36OHWCD.js} +1 -1
  151. package/cdn/chunks/{chunk.QHUQYKVD.js → chunk.SFDCC6RP.js} +1 -1
  152. package/cdn/chunks/{chunk.PMLEJSBX.js → chunk.STHQ7WFY.js} +1 -1
  153. package/cdn/chunks/{chunk.O64COSFM.js → chunk.T2MLBJCH.js} +3 -3
  154. package/cdn/chunks/{chunk.UYYGAFFJ.js → chunk.TDV6FYZX.js} +2 -2
  155. package/cdn/chunks/{chunk.EEGGAFJO.js → chunk.TEFTEV42.js} +1 -1
  156. package/cdn/chunks/{chunk.PJD3DRQI.js → chunk.TLS5MIRB.js} +1 -1
  157. package/cdn/chunks/{chunk.PKD7CGJ4.js → chunk.TMLGI2RQ.js} +1 -1
  158. package/cdn/chunks/{chunk.VLHASXH2.js → chunk.UCSRLWA2.js} +1 -1
  159. package/cdn/chunks/{chunk.Y52MARJR.js → chunk.UOCMT5KF.js} +1 -1
  160. package/{dist/chunks/chunk.VMTJ57US.js → cdn/chunks/chunk.URQUUCLV.js} +1 -1
  161. package/cdn/chunks/{chunk.Z4E4ZXSS.js → chunk.VDKDAFO4.js} +1 -1
  162. package/cdn/chunks/{chunk.SQQ246PU.js → chunk.VG3JLKZT.js} +1 -1
  163. package/cdn/chunks/{chunk.KHOADYAA.js → chunk.VGZACMVS.js} +1 -1
  164. package/cdn/chunks/{chunk.6SO6VJBG.js → chunk.VX3O2XFT.js} +1 -1
  165. package/cdn/chunks/{chunk.GBP2LKDG.js → chunk.W3A4O5SL.js} +1 -1
  166. package/cdn/chunks/{chunk.JEYWOIAH.js → chunk.WFIK4QKU.js} +1 -1
  167. package/cdn/chunks/{chunk.2TN5Q3BA.js → chunk.WIMBCK75.js} +4 -0
  168. package/cdn/chunks/{chunk.PZPN7YV2.js → chunk.X4MRYMNI.js} +1 -1
  169. package/{dist/chunks/chunk.6VRR5ZJ2.js → cdn/chunks/chunk.X5LEEANE.js} +1 -1
  170. package/cdn/chunks/{chunk.EQUKFMS6.js → chunk.X5OOOBYY.js} +1 -1
  171. package/cdn/chunks/{chunk.RCBIFZT4.js → chunk.XDHHJ5CI.js} +1 -1
  172. package/cdn/chunks/{chunk.F63G44SY.js → chunk.XMOKORIS.js} +1 -1
  173. package/cdn/chunks/{chunk.ZEJCID2X.js → chunk.XRJQMOKI.js} +3 -3
  174. package/cdn/chunks/{chunk.VYOMHYZX.js → chunk.XTSPN4R2.js} +1 -1
  175. package/cdn/chunks/{chunk.U2DABTPW.js → chunk.Y5IX73JH.js} +1 -1
  176. package/{dist/chunks/chunk.FIOUMZBS.js → cdn/chunks/chunk.YJB5ER7V.js} +1 -1
  177. package/cdn/chunks/{chunk.LRMGNZGO.js → chunk.YMCVVN7I.js} +1 -1
  178. package/cdn/chunks/{chunk.KI5CXG5S.js → chunk.YQGDVTMB.js} +2 -2
  179. package/cdn/chunks/{chunk.RWH7JSMF.js → chunk.YQKIZ6FS.js} +1 -1
  180. package/{dist/chunks/chunk.BQRYXKE5.js → cdn/chunks/chunk.ZRUOMTCM.js} +1 -1
  181. package/cdn/components/alert/alert.component.js +5 -5
  182. package/cdn/components/alert/alert.js +6 -6
  183. package/cdn/components/animated-image/animated-image.component.js +4 -4
  184. package/cdn/components/animated-image/animated-image.js +5 -5
  185. package/cdn/components/animation/animation.component.js +2 -2
  186. package/cdn/components/animation/animation.js +3 -3
  187. package/cdn/components/avatar/avatar.component.js +4 -4
  188. package/cdn/components/avatar/avatar.js +5 -5
  189. package/cdn/components/badge/badge.component.js +2 -2
  190. package/cdn/components/badge/badge.js +3 -3
  191. package/cdn/components/breadcrumb/breadcrumb.component.js +4 -4
  192. package/cdn/components/breadcrumb/breadcrumb.js +5 -5
  193. package/cdn/components/breadcrumb-item/breadcrumb-item.component.js +2 -2
  194. package/cdn/components/breadcrumb-item/breadcrumb-item.js +3 -3
  195. package/cdn/components/button/button.component.js +5 -5
  196. package/cdn/components/button/button.js +6 -6
  197. package/cdn/components/button-group/button-group.component.js +2 -2
  198. package/cdn/components/button-group/button-group.js +3 -3
  199. package/cdn/components/card/card.component.js +2 -2
  200. package/cdn/components/card/card.js +3 -3
  201. package/cdn/components/carousel/carousel.component.js +4 -4
  202. package/cdn/components/carousel/carousel.js +5 -5
  203. package/cdn/components/carousel-item/carousel-item.component.js +2 -2
  204. package/cdn/components/carousel-item/carousel-item.js +3 -3
  205. package/cdn/components/checkbox/checkbox.component.js +4 -4
  206. package/cdn/components/checkbox/checkbox.js +5 -5
  207. package/cdn/components/color-picker/color-picker.component.js +13 -13
  208. package/cdn/components/color-picker/color-picker.js +14 -14
  209. package/cdn/components/combobox/combobox.component.d.ts +219 -0
  210. package/cdn/components/combobox/combobox.component.js +44 -0
  211. package/cdn/components/combobox/combobox.d.ts +8 -0
  212. package/cdn/components/combobox/combobox.js +45 -0
  213. package/cdn/components/combobox/combobox.styles.d.ts +2 -0
  214. package/cdn/components/combobox/combobox.styles.js +8 -0
  215. package/cdn/components/copy-button/copy-button.component.js +7 -7
  216. package/cdn/components/copy-button/copy-button.js +8 -8
  217. package/cdn/components/details/details.component.js +4 -4
  218. package/cdn/components/details/details.js +5 -5
  219. package/cdn/components/dialog/dialog.component.js +7 -7
  220. package/cdn/components/dialog/dialog.js +8 -8
  221. package/cdn/components/divider/divider.component.js +2 -2
  222. package/cdn/components/divider/divider.js +3 -3
  223. package/cdn/components/drawer/drawer.component.js +6 -6
  224. package/cdn/components/drawer/drawer.js +7 -7
  225. package/cdn/components/dropdown/dropdown.component.js +3 -3
  226. package/cdn/components/dropdown/dropdown.js +4 -4
  227. package/cdn/components/format-bytes/format-bytes.component.js +2 -2
  228. package/cdn/components/format-bytes/format-bytes.js +3 -3
  229. package/cdn/components/format-date/format-date.component.js +2 -2
  230. package/cdn/components/format-date/format-date.js +3 -3
  231. package/cdn/components/format-number/format-number.component.js +2 -2
  232. package/cdn/components/format-number/format-number.js +3 -3
  233. package/cdn/components/icon/icon.component.js +3 -3
  234. package/cdn/components/icon/icon.js +4 -4
  235. package/cdn/components/icon-button/icon-button.component.js +4 -4
  236. package/cdn/components/icon-button/icon-button.js +5 -5
  237. package/cdn/components/image-comparer/image-comparer.component.js +4 -4
  238. package/cdn/components/image-comparer/image-comparer.js +5 -5
  239. package/cdn/components/include/include.component.js +3 -3
  240. package/cdn/components/include/include.js +4 -4
  241. package/cdn/components/input/input.component.js +4 -4
  242. package/cdn/components/input/input.js +5 -5
  243. package/cdn/components/menu/menu.component.js +2 -2
  244. package/cdn/components/menu/menu.js +3 -3
  245. package/cdn/components/menu-item/menu-item.component.js +6 -6
  246. package/cdn/components/menu-item/menu-item.js +7 -7
  247. package/cdn/components/menu-label/menu-label.component.js +2 -2
  248. package/cdn/components/menu-label/menu-label.js +3 -3
  249. package/cdn/components/mutation-observer/mutation-observer.component.js +2 -2
  250. package/cdn/components/mutation-observer/mutation-observer.js +3 -3
  251. package/cdn/components/option/option.component.js +5 -5
  252. package/cdn/components/option/option.js +6 -6
  253. package/cdn/components/option/option.styles.js +1 -1
  254. package/cdn/components/popup/popup.component.js +2 -2
  255. package/cdn/components/popup/popup.js +3 -3
  256. package/cdn/components/progress-bar/progress-bar.component.js +2 -2
  257. package/cdn/components/progress-bar/progress-bar.js +3 -3
  258. package/cdn/components/progress-ring/progress-ring.component.js +2 -2
  259. package/cdn/components/progress-ring/progress-ring.js +3 -3
  260. package/cdn/components/qr-code/qr-code.component.js +2 -2
  261. package/cdn/components/qr-code/qr-code.js +3 -3
  262. package/cdn/components/radio/radio.component.js +4 -4
  263. package/cdn/components/radio/radio.js +5 -5
  264. package/cdn/components/radio-button/radio-button.component.js +2 -2
  265. package/cdn/components/radio-button/radio-button.js +3 -3
  266. package/cdn/components/radio-group/radio-group.component.js +3 -3
  267. package/cdn/components/radio-group/radio-group.js +4 -4
  268. package/cdn/components/range/range.component.js +2 -2
  269. package/cdn/components/range/range.js +3 -3
  270. package/cdn/components/rating/rating.component.js +5 -5
  271. package/cdn/components/rating/rating.js +6 -6
  272. package/cdn/components/relative-time/relative-time.component.js +2 -2
  273. package/cdn/components/relative-time/relative-time.js +3 -3
  274. package/cdn/components/resize-observer/resize-observer.component.js +2 -2
  275. package/cdn/components/resize-observer/resize-observer.js +3 -3
  276. package/cdn/components/select/select.component.js +9 -9
  277. package/cdn/components/select/select.js +10 -10
  278. package/cdn/components/skeleton/skeleton.component.js +2 -2
  279. package/cdn/components/skeleton/skeleton.js +3 -3
  280. package/cdn/components/spinner/spinner.component.js +2 -2
  281. package/cdn/components/spinner/spinner.js +3 -3
  282. package/cdn/components/split-panel/split-panel.component.js +2 -2
  283. package/cdn/components/split-panel/split-panel.js +3 -3
  284. package/cdn/components/switch/switch.component.js +2 -2
  285. package/cdn/components/switch/switch.js +3 -3
  286. package/cdn/components/tab/tab.component.js +5 -5
  287. package/cdn/components/tab/tab.js +6 -6
  288. package/cdn/components/tab-group/tab-group.component.js +6 -6
  289. package/cdn/components/tab-group/tab-group.js +7 -7
  290. package/cdn/components/tab-panel/tab-panel.component.js +2 -2
  291. package/cdn/components/tab-panel/tab-panel.js +3 -3
  292. package/cdn/components/tag/tag.component.js +5 -5
  293. package/cdn/components/tag/tag.js +6 -6
  294. package/cdn/components/textarea/textarea.component.js +2 -2
  295. package/cdn/components/textarea/textarea.js +3 -3
  296. package/cdn/components/tooltip/tooltip.component.js +3 -3
  297. package/cdn/components/tooltip/tooltip.js +4 -4
  298. package/cdn/components/tree/tree.component.js +8 -8
  299. package/cdn/components/tree/tree.js +9 -9
  300. package/cdn/components/tree-item/tree-item.component.js +6 -6
  301. package/cdn/components/tree-item/tree-item.js +7 -7
  302. package/cdn/components/visually-hidden/visually-hidden.component.js +2 -2
  303. package/cdn/components/visually-hidden/visually-hidden.js +3 -3
  304. package/cdn/custom-elements.json +1151 -1
  305. package/cdn/cw-elements.d.ts +1 -0
  306. package/cdn/cw-elements.js +166 -160
  307. package/cdn/react/alert/index.js +6 -6
  308. package/cdn/react/animated-image/index.js +5 -5
  309. package/cdn/react/animation/index.js +3 -3
  310. package/cdn/react/avatar/index.js +5 -5
  311. package/cdn/react/badge/index.js +3 -3
  312. package/cdn/react/breadcrumb/index.js +5 -5
  313. package/cdn/react/breadcrumb-item/index.js +3 -3
  314. package/cdn/react/button/index.js +6 -6
  315. package/cdn/react/button-group/index.js +3 -3
  316. package/cdn/react/card/index.js +3 -3
  317. package/cdn/react/carousel/index.js +5 -5
  318. package/cdn/react/carousel-item/index.js +3 -3
  319. package/cdn/react/checkbox/index.js +5 -5
  320. package/cdn/react/color-picker/index.js +14 -14
  321. package/cdn/react/combobox/index.d.ts +87 -0
  322. package/cdn/react/combobox/index.js +45 -0
  323. package/cdn/react/copy-button/index.js +8 -8
  324. package/cdn/react/details/index.js +5 -5
  325. package/cdn/react/dialog/index.js +8 -8
  326. package/cdn/react/divider/index.js +3 -3
  327. package/cdn/react/drawer/index.js +7 -7
  328. package/cdn/react/dropdown/index.js +4 -4
  329. package/cdn/react/format-bytes/index.js +3 -3
  330. package/cdn/react/format-date/index.js +3 -3
  331. package/cdn/react/format-number/index.js +3 -3
  332. package/cdn/react/icon/index.js +4 -4
  333. package/cdn/react/icon-button/index.js +5 -5
  334. package/cdn/react/image-comparer/index.js +5 -5
  335. package/cdn/react/include/index.js +4 -4
  336. package/cdn/react/index.d.ts +1 -0
  337. package/cdn/react/index.js +183 -177
  338. package/cdn/react/input/index.js +5 -5
  339. package/cdn/react/menu/index.js +3 -3
  340. package/cdn/react/menu-item/index.js +7 -7
  341. package/cdn/react/menu-label/index.js +3 -3
  342. package/cdn/react/mutation-observer/index.js +3 -3
  343. package/cdn/react/option/index.js +6 -6
  344. package/cdn/react/popup/index.js +3 -3
  345. package/cdn/react/progress-bar/index.js +3 -3
  346. package/cdn/react/progress-ring/index.js +3 -3
  347. package/cdn/react/qr-code/index.js +3 -3
  348. package/cdn/react/radio/index.js +5 -5
  349. package/cdn/react/radio-button/index.js +3 -3
  350. package/cdn/react/radio-group/index.js +4 -4
  351. package/cdn/react/range/index.js +3 -3
  352. package/cdn/react/rating/index.js +6 -6
  353. package/cdn/react/relative-time/index.js +3 -3
  354. package/cdn/react/resize-observer/index.js +3 -3
  355. package/cdn/react/select/index.js +10 -10
  356. package/cdn/react/skeleton/index.js +3 -3
  357. package/cdn/react/spinner/index.js +3 -3
  358. package/cdn/react/split-panel/index.js +3 -3
  359. package/cdn/react/switch/index.js +3 -3
  360. package/cdn/react/tab/index.js +6 -6
  361. package/cdn/react/tab-group/index.js +7 -7
  362. package/cdn/react/tab-panel/index.js +3 -3
  363. package/cdn/react/tag/index.js +6 -6
  364. package/cdn/react/textarea/index.js +3 -3
  365. package/cdn/react/tooltip/index.js +4 -4
  366. package/cdn/react/tree/index.js +9 -9
  367. package/cdn/react/tree-item/index.js +7 -7
  368. package/cdn/react/visually-hidden/index.js +3 -3
  369. package/cdn/types/vue/index.d.ts +158 -0
  370. package/cdn/vscode.html-custom-data.json +119 -0
  371. package/cdn/web-types.json +355 -1
  372. package/dist/chunks/{chunk.UDPS7MYS.js → chunk.2747IIKP.js} +1 -1
  373. package/dist/chunks/{chunk.6R3ESIWG.js → chunk.2IO5RPED.js} +1 -1
  374. package/dist/chunks/{chunk.PNWKPUCA.js → chunk.2LPGT5X7.js} +1 -1
  375. package/{cdn/chunks/chunk.R5YJOAJV.js → dist/chunks/chunk.2WXOAVPT.js} +1 -1
  376. package/dist/chunks/{chunk.Y5NPLSYP.js → chunk.3G3EPS43.js} +1 -1
  377. package/dist/chunks/{chunk.UHUDOCMI.js → chunk.3KCAFARP.js} +1 -1
  378. package/dist/chunks/{chunk.X7KDLS5P.js → chunk.3MWRZHJI.js} +3 -3
  379. package/dist/chunks/{chunk.UCSJGVT6.js → chunk.3XXDGLXD.js} +1 -1
  380. package/dist/chunks/{chunk.PRA35KDZ.js → chunk.44QRCJ3U.js} +1 -1
  381. package/dist/chunks/{chunk.BSG4KH2I.js → chunk.45UF2NV7.js} +2 -2
  382. package/dist/chunks/{chunk.R43NTMFG.js → chunk.52M7YFL5.js} +4 -4
  383. package/dist/chunks/{chunk.V27DE2IT.js → chunk.567JN6DK.js} +1 -1
  384. package/dist/chunks/{chunk.IGMA3TRX.js → chunk.5QIUN6VE.js} +1 -1
  385. package/dist/chunks/{chunk.LKBVTNHI.js → chunk.5QQSIF7Z.js} +1 -1
  386. package/dist/chunks/{chunk.PDAXQDGF.js → chunk.5UHOHCG6.js} +1 -1
  387. package/dist/chunks/{chunk.QUQQNLQR.js → chunk.65GPXPS4.js} +1 -1
  388. package/{cdn/chunks/chunk.TIPRIH36.js → dist/chunks/chunk.665FBIVN.js} +1 -1
  389. package/dist/chunks/{chunk.Z3UFILDB.js → chunk.6IFYZB4Q.js} +9 -9
  390. package/dist/chunks/{chunk.NKFNHMFV.js → chunk.6UINBE7O.js} +1 -1
  391. package/dist/chunks/{chunk.6ZOSGWGU.js → chunk.6XW7V33W.js} +1 -1
  392. package/dist/chunks/{chunk.Z3UUNM2N.js → chunk.7433LIYL.js} +1 -1
  393. package/dist/chunks/{chunk.B66ZD3J4.js → chunk.763YHQPW.js} +1 -1
  394. package/{cdn/chunks/chunk.HFF4G6QE.js → dist/chunks/chunk.7MUQRKSL.js} +1 -1
  395. package/dist/chunks/{chunk.XRJ43REX.js → chunk.7OV3SGRD.js} +1 -1
  396. package/dist/chunks/{chunk.PH74XJK3.js → chunk.7SIWEJUF.js} +2 -2
  397. package/dist/chunks/{chunk.44XQBW75.js → chunk.7TGFFVOO.js} +1 -1
  398. package/{cdn/chunks/chunk.FWQCNUGN.js → dist/chunks/chunk.AGM34VVK.js} +1 -1
  399. package/dist/chunks/{chunk.C3O43ZKN.js → chunk.AI4SASOJ.js} +1 -1
  400. package/dist/chunks/{chunk.I62RCLDT.js → chunk.AL65PY7V.js} +1 -1
  401. package/dist/chunks/{chunk.XCMFTCYL.js → chunk.AR6SR2WY.js} +1 -1
  402. package/dist/chunks/{chunk.LJCL7IUC.js → chunk.ARSNH6JV.js} +1 -1
  403. package/dist/chunks/{chunk.FZPGKQPU.js → chunk.AUK3FUDQ.js} +1 -1
  404. package/dist/chunks/{chunk.LUER5MLB.js → chunk.AVRTUBBV.js} +1 -1
  405. package/dist/chunks/{chunk.A24MI6CU.js → chunk.AZHMWS6L.js} +1 -1
  406. package/dist/chunks/{chunk.XQXTVMB5.js → chunk.BGVXOK25.js} +1 -1
  407. package/dist/chunks/{chunk.YDEIYWQB.js → chunk.BK6L7XUN.js} +1 -1
  408. package/dist/chunks/{chunk.PXXKAZUQ.js → chunk.BRWGDDSD.js} +1 -1
  409. package/dist/chunks/{chunk.P2H4XPZB.js → chunk.C5WPJECI.js} +2 -2
  410. package/dist/chunks/{chunk.MXTZZBRY.js → chunk.C7UXSUZS.js} +1 -1
  411. package/dist/chunks/{chunk.VHXBRIAR.js → chunk.CBBCTNVQ.js} +1 -1
  412. package/dist/chunks/{chunk.BII65CLF.js → chunk.CVMFCNMM.js} +1 -1
  413. package/{cdn/chunks/chunk.6XV7PGED.js → dist/chunks/chunk.CVOBAEVZ.js} +1 -1
  414. package/dist/chunks/chunk.CZCGIYSR.js +338 -0
  415. package/dist/chunks/{chunk.KLQ5S66E.js → chunk.D24OLOG5.js} +1 -1
  416. package/dist/chunks/{chunk.QTTU3A5W.js → chunk.D3EVDN26.js} +1 -1
  417. package/dist/chunks/{chunk.LMP3MPYG.js → chunk.DESAXJQ5.js} +1 -1
  418. package/dist/chunks/{chunk.DJ25SBHI.js → chunk.DGVJSWGF.js} +1 -1
  419. package/dist/chunks/{chunk.C3LKFG5F.js → chunk.DM5MBJXC.js} +2 -2
  420. package/dist/chunks/{chunk.BD6JFMBI.js → chunk.DOB2DE43.js} +1 -1
  421. package/dist/chunks/{chunk.4Q5HFJ6X.js → chunk.DQHJ5K4Z.js} +4 -4
  422. package/dist/chunks/{chunk.AKNV3FCD.js → chunk.DSY23EIY.js} +1 -1
  423. package/{cdn/chunks/chunk.52ZPY4WX.js → dist/chunks/chunk.E42PJXHU.js} +1 -1
  424. package/dist/chunks/{chunk.VLCFQUZ4.js → chunk.E6532JK6.js} +1 -1
  425. package/dist/chunks/{chunk.NRRXYYSJ.js → chunk.EBQIFLA3.js} +2 -2
  426. package/dist/chunks/{chunk.7WQKU7BB.js → chunk.EIC7L5SA.js} +1 -1
  427. package/dist/chunks/{chunk.OB2ADHIO.js → chunk.EUJQPPBD.js} +1 -1
  428. package/dist/chunks/{chunk.UIEHFFBV.js → chunk.F4CQKCWM.js} +2 -2
  429. package/{cdn/chunks/chunk.UODLVRLT.js → dist/chunks/chunk.FCSLBJKP.js} +1 -1
  430. package/dist/chunks/{chunk.S4ZWERNN.js → chunk.FFOZ5QYG.js} +1 -1
  431. package/dist/chunks/{chunk.IGY7PBUF.js → chunk.GA7G5JW4.js} +2 -2
  432. package/dist/chunks/{chunk.BIX52CV6.js → chunk.GDJZZD46.js} +1 -1
  433. package/dist/chunks/{chunk.ZZB6LLX3.js → chunk.GDTFI5GT.js} +2 -2
  434. package/dist/chunks/{chunk.ZYWMLRK3.js → chunk.GF2IXBUV.js} +1 -1
  435. package/dist/chunks/{chunk.HVVQXV6L.js → chunk.GOBD4Z65.js} +1 -1
  436. package/dist/chunks/{chunk.BUD2Y5KB.js → chunk.GULR3V5I.js} +1 -1
  437. package/dist/chunks/{chunk.USWV4GVD.js → chunk.HDSCF2QB.js} +1 -1
  438. package/{cdn/chunks/chunk.5AHXKULL.js → dist/chunks/chunk.HE37CRVM.js} +1 -1
  439. package/dist/chunks/{chunk.MQEYOLZR.js → chunk.HFKJXCTI.js} +2 -2
  440. package/dist/chunks/{chunk.W62PHIWL.js → chunk.HGYRJZEQ.js} +1 -1
  441. package/{cdn/chunks/chunk.KCPOJLSU.js → dist/chunks/chunk.HJPFAS7Y.js} +1 -1
  442. package/dist/chunks/{chunk.VEZ2CLWV.js → chunk.HOXXIMTY.js} +1 -1
  443. package/dist/chunks/{chunk.ZEI4UV7E.js → chunk.HWLR3F4N.js} +4 -0
  444. package/dist/chunks/{chunk.JYTRA64M.js → chunk.IEYNC5ZO.js} +2 -2
  445. package/{cdn/chunks/chunk.7UTZOBYZ.js → dist/chunks/chunk.IFDMWT4R.js} +1 -1
  446. package/dist/chunks/{chunk.O5TANM7H.js → chunk.IG74SDTK.js} +1 -1
  447. package/dist/chunks/{chunk.SCIXEGKD.js → chunk.IJ6QAZGA.js} +1 -1
  448. package/dist/chunks/{chunk.7QOMP5OS.js → chunk.IKWWODYQ.js} +1 -1
  449. package/dist/chunks/{chunk.GSAY5CPY.js → chunk.INTNI2AM.js} +1 -1
  450. package/dist/chunks/{chunk.LKDA6VWL.js → chunk.J7MTCPEZ.js} +1 -1
  451. package/dist/chunks/{chunk.HUAT2BXW.js → chunk.JEUQMOE6.js} +1 -1
  452. package/dist/chunks/{chunk.LOXHAQII.js → chunk.JMQ7CTGW.js} +1 -1
  453. package/dist/chunks/{chunk.CEDXIRBJ.js → chunk.K6UUETAU.js} +1 -1
  454. package/dist/chunks/{chunk.KY4ABK52.js → chunk.KBFG6YOY.js} +3 -3
  455. package/dist/chunks/{chunk.YPQM6QOU.js → chunk.KIDIHVHM.js} +1 -1
  456. package/dist/chunks/{chunk.7OCOXMLV.js → chunk.KLMDKBSQ.js} +1 -1
  457. package/dist/chunks/{chunk.XYQVPLDZ.js → chunk.KNVWXOX5.js} +1 -1
  458. package/dist/chunks/{chunk.HM2HBOVI.js → chunk.KOKMERMV.js} +1 -1
  459. package/{cdn/chunks/chunk.Q3GCUICP.js → dist/chunks/chunk.KRYDATMA.js} +1 -1
  460. package/dist/chunks/{chunk.LKFZC5LA.js → chunk.KT35R72U.js} +1 -1
  461. package/dist/chunks/{chunk.C23PDMYU.js → chunk.KT4VDHOS.js} +1 -1
  462. package/dist/chunks/{chunk.K4LQNSMT.js → chunk.L6QTSP3C.js} +2 -2
  463. package/dist/chunks/{chunk.CVKASUW5.js → chunk.LDYA5LEF.js} +1 -1
  464. package/dist/chunks/{chunk.F2QBBCAA.js → chunk.LE7AQJCB.js} +1 -1
  465. package/dist/chunks/{chunk.HUOWZXDY.js → chunk.LJZYTPHX.js} +2 -2
  466. package/dist/chunks/{chunk.YT53KXXK.js → chunk.LKYPNZHC.js} +1 -1
  467. package/dist/chunks/{chunk.34IK5NQY.js → chunk.M22HSCZX.js} +2 -2
  468. package/dist/chunks/{chunk.GXDFKGUF.js → chunk.MBTECJ34.js} +1 -1
  469. package/dist/chunks/{chunk.QRC3N5YX.js → chunk.MDNPNMFX.js} +4 -4
  470. package/dist/chunks/{chunk.A67PZOF5.js → chunk.MGGJ5IGG.js} +1 -1
  471. package/dist/chunks/{chunk.DL5FISIT.js → chunk.MNDGAY37.js} +1 -1
  472. package/{cdn/chunks/chunk.AMA4XHAU.js → dist/chunks/chunk.MZPA3A6E.js} +1 -1
  473. package/dist/chunks/{chunk.HUNZDMJX.js → chunk.NBSCYGEO.js} +1 -1
  474. package/dist/chunks/{chunk.HNU4SN6P.js → chunk.NDCLKVTA.js} +5 -5
  475. package/dist/chunks/{chunk.D7YV22EA.js → chunk.NDYXHETJ.js} +1 -1
  476. package/dist/chunks/{chunk.I47JAHRK.js → chunk.NM6FV6GO.js} +1 -1
  477. package/dist/chunks/{chunk.3HV6T23P.js → chunk.NMGHEELN.js} +2 -2
  478. package/dist/chunks/{chunk.6DOQK5ID.js → chunk.NQRPSUW2.js} +1 -1
  479. package/dist/chunks/{chunk.5GJPRUIH.js → chunk.NX5IE35B.js} +1 -1
  480. package/{cdn/chunks/chunk.XS755D34.js → dist/chunks/chunk.NYYMMRQF.js} +1 -1
  481. package/dist/chunks/{chunk.YLCKI7ZT.js → chunk.O4BM2XHQ.js} +1 -1
  482. package/dist/chunks/{chunk.SIOAXEVU.js → chunk.OMKCBDVN.js} +1 -1
  483. package/{cdn/chunks/chunk.IWHANVLY.js → dist/chunks/chunk.OXJKUKQI.js} +1 -1
  484. package/dist/chunks/{chunk.SMND2LSQ.js → chunk.P2GJ4VV3.js} +1 -1
  485. package/dist/chunks/{chunk.C7TMCZXX.js → chunk.P6WYIVRU.js} +1 -1
  486. package/dist/chunks/{chunk.P5QZD3Z4.js → chunk.P7RKLO6R.js} +1 -1
  487. package/dist/chunks/{chunk.IDA4H2JV.js → chunk.PJOUZH3H.js} +1 -1
  488. package/dist/chunks/{chunk.HPFK2X73.js → chunk.PMCE6ODO.js} +1 -1
  489. package/dist/chunks/{chunk.M3MOQRZA.js → chunk.PMK6QNRC.js} +1 -1
  490. package/{cdn/chunks/chunk.4CDXVAAD.js → dist/chunks/chunk.PQSKOESY.js} +1 -1
  491. package/dist/chunks/{chunk.AHWHVEOH.js → chunk.PRUL2VS7.js} +1 -1
  492. package/dist/chunks/{chunk.KACCKGE5.js → chunk.PTFZH4OX.js} +1 -1
  493. package/dist/chunks/{chunk.6BIB436T.js → chunk.Q2BZ5L4Q.js} +1 -1
  494. package/dist/chunks/{chunk.X3VRX37Y.js → chunk.Q4YNMCNT.js} +4 -4
  495. package/dist/chunks/{chunk.XNY55B26.js → chunk.QAT3D7DX.js} +1 -1
  496. package/dist/chunks/{chunk.ZCQTPY5A.js → chunk.QGH7J6CH.js} +1 -1
  497. package/{cdn/chunks/chunk.44C4NBBD.js → dist/chunks/chunk.QHO2UAQT.js} +1 -1
  498. package/{cdn/chunks/chunk.342YSOKP.js → dist/chunks/chunk.QIDODUL4.js} +1 -1
  499. package/dist/chunks/{chunk.E3S3ZTTY.js → chunk.QIRVGE6Z.js} +1 -1
  500. package/dist/chunks/{chunk.N3DCTWCT.js → chunk.QTH5KWYR.js} +1 -1
  501. package/dist/chunks/{chunk.X2MO4HLJ.js → chunk.QW57S6BW.js} +1 -1
  502. package/dist/chunks/{chunk.6W3G2PNO.js → chunk.QXFO3QWK.js} +1 -1
  503. package/dist/chunks/{chunk.YBCYTP27.js → chunk.R73XOGFN.js} +1 -1
  504. package/{cdn/chunks/chunk.4NXDAA5X.js → dist/chunks/chunk.RBIK3ZI2.js} +1 -1
  505. package/dist/chunks/{chunk.CLMJC7ZR.js → chunk.RDEJ5UJC.js} +1 -1
  506. package/dist/chunks/{chunk.WWGHAFHR.js → chunk.RRA5SLN5.js} +2 -2
  507. package/dist/chunks/{chunk.PYQFFEGZ.js → chunk.RSQDRTVW.js} +1 -1
  508. package/dist/chunks/{chunk.NVGULLCI.js → chunk.RX7RUQZB.js} +1 -1
  509. package/dist/chunks/{chunk.KX7ZNQWA.js → chunk.S3F7MIGD.js} +1 -1
  510. package/{cdn/chunks/chunk.FZAOAWCR.js → dist/chunks/chunk.SDC54GIC.js} +1 -1
  511. package/dist/chunks/{chunk.F4DV3AND.js → chunk.SFYH2R4X.js} +1 -1
  512. package/dist/chunks/{chunk.TDFN6LBW.js → chunk.SJ24DYR2.js} +1 -1
  513. package/dist/chunks/{chunk.FMC2O2YU.js → chunk.SMSBTM6G.js} +1 -1
  514. package/dist/chunks/chunk.SPZTN6LU.js +11 -0
  515. package/dist/chunks/chunk.SXSVZZB4.js +959 -0
  516. package/dist/chunks/{chunk.TJDV2YXR.js → chunk.SZPMEWOB.js} +1 -1
  517. package/{cdn/chunks/chunk.CEX73JIB.js → dist/chunks/chunk.T7XLHTVV.js} +1 -1
  518. package/dist/chunks/{chunk.ORHV3JVR.js → chunk.TKBUILRJ.js} +1 -1
  519. package/dist/chunks/chunk.TMGWXVEU.js +33 -0
  520. package/dist/chunks/{chunk.OWZL6NES.js → chunk.U23GUW3O.js} +1 -1
  521. package/dist/chunks/{chunk.IAU62S5M.js → chunk.U45TJLC6.js} +1 -1
  522. package/dist/chunks/{chunk.5DT544T6.js → chunk.U7K3BGXK.js} +2 -2
  523. package/{cdn/chunks/chunk.6RUYHTSX.js → dist/chunks/chunk.UDU53G4K.js} +1 -1
  524. package/dist/chunks/{chunk.Q67H3SF3.js → chunk.UKRLMHI6.js} +1 -1
  525. package/dist/chunks/{chunk.SQX2UV36.js → chunk.UQJ6QVAZ.js} +1 -1
  526. package/dist/chunks/{chunk.ZNGX462N.js → chunk.UR6NVETE.js} +1 -1
  527. package/dist/chunks/{chunk.SQKLXHV4.js → chunk.UXEEZOF7.js} +1 -1
  528. package/{cdn/chunks/chunk.4LMZHXMR.js → dist/chunks/chunk.V3Z2BTMH.js} +1 -1
  529. package/dist/chunks/{chunk.TYBNBDGY.js → chunk.V53K453G.js} +1 -1
  530. package/dist/chunks/{chunk.TV6GVQ3D.js → chunk.VIDPDBD4.js} +3 -3
  531. package/{cdn/chunks/chunk.EUBWDIDZ.js → dist/chunks/chunk.VJ2NXK6M.js} +1 -1
  532. package/dist/chunks/{chunk.JHR364CM.js → chunk.VMMAAE4P.js} +8 -8
  533. package/dist/chunks/{chunk.REF6SUJT.js → chunk.VTHFNCHH.js} +1 -1
  534. package/dist/chunks/{chunk.NJMU63ZO.js → chunk.W2VPO4VE.js} +4 -4
  535. package/dist/chunks/{chunk.EE5EDFJ6.js → chunk.WF35TQ3B.js} +1 -1
  536. package/{cdn/chunks/chunk.CZTLGSYL.js → dist/chunks/chunk.WQHQN73Y.js} +1 -1
  537. package/dist/chunks/{chunk.LIGT726B.js → chunk.WRL4DMNY.js} +1 -1
  538. package/{cdn/chunks/chunk.ATJLKPWT.js → dist/chunks/chunk.X2ZJLZBO.js} +1 -1
  539. package/dist/chunks/{chunk.J3QSCWIF.js → chunk.X5NZMCF5.js} +1 -1
  540. package/dist/chunks/{chunk.JMNBAYQP.js → chunk.XHFMC7NL.js} +1 -1
  541. package/{cdn/chunks/chunk.IZH2MLTH.js → dist/chunks/chunk.XISG4TGO.js} +1 -1
  542. package/dist/chunks/{chunk.QVRQWKGQ.js → chunk.XJFKIUZL.js} +1 -1
  543. package/dist/chunks/{chunk.ZN3P27UU.js → chunk.XLC63U4A.js} +2 -2
  544. package/dist/chunks/{chunk.RXSCO6W3.js → chunk.XSSQNTMJ.js} +3 -3
  545. package/{cdn/chunks/chunk.YVPIHTIR.js → dist/chunks/chunk.XTLMFQRG.js} +1 -1
  546. package/dist/chunks/{chunk.YTDMZ6FA.js → chunk.XTZWIN4P.js} +1 -1
  547. package/dist/chunks/{chunk.UBCM2G7G.js → chunk.YFCIPDEQ.js} +1 -1
  548. package/dist/chunks/{chunk.VYXYVO6X.js → chunk.Z5GWLXE7.js} +2 -2
  549. package/dist/chunks/{chunk.YTQFLJUC.js → chunk.ZON7Z32S.js} +1 -1
  550. package/dist/chunks/{chunk.6IUL5HBD.js → chunk.ZQVN5QDH.js} +1 -1
  551. package/dist/chunks/{chunk.CRBQ5MXF.js → chunk.ZR4MRID5.js} +1 -1
  552. package/dist/components/alert/alert.component.js +5 -5
  553. package/dist/components/alert/alert.js +6 -6
  554. package/dist/components/animated-image/animated-image.component.js +4 -4
  555. package/dist/components/animated-image/animated-image.js +5 -5
  556. package/dist/components/animation/animation.component.js +2 -2
  557. package/dist/components/animation/animation.js +3 -3
  558. package/dist/components/avatar/avatar.component.js +4 -4
  559. package/dist/components/avatar/avatar.js +5 -5
  560. package/dist/components/badge/badge.component.js +2 -2
  561. package/dist/components/badge/badge.js +3 -3
  562. package/dist/components/breadcrumb/breadcrumb.component.js +4 -4
  563. package/dist/components/breadcrumb/breadcrumb.js +5 -5
  564. package/dist/components/breadcrumb-item/breadcrumb-item.component.js +2 -2
  565. package/dist/components/breadcrumb-item/breadcrumb-item.js +3 -3
  566. package/dist/components/button/button.component.js +5 -5
  567. package/dist/components/button/button.js +6 -6
  568. package/dist/components/button-group/button-group.component.js +2 -2
  569. package/dist/components/button-group/button-group.js +3 -3
  570. package/dist/components/card/card.component.js +2 -2
  571. package/dist/components/card/card.js +3 -3
  572. package/dist/components/carousel/carousel.component.js +4 -4
  573. package/dist/components/carousel/carousel.js +5 -5
  574. package/dist/components/carousel-item/carousel-item.component.js +2 -2
  575. package/dist/components/carousel-item/carousel-item.js +3 -3
  576. package/dist/components/checkbox/checkbox.component.js +4 -4
  577. package/dist/components/checkbox/checkbox.js +5 -5
  578. package/dist/components/color-picker/color-picker.component.js +13 -13
  579. package/dist/components/color-picker/color-picker.js +14 -14
  580. package/dist/components/combobox/combobox.component.d.ts +219 -0
  581. package/dist/components/combobox/combobox.component.js +36 -0
  582. package/dist/components/combobox/combobox.d.ts +8 -0
  583. package/dist/components/combobox/combobox.js +37 -0
  584. package/dist/components/combobox/combobox.styles.d.ts +2 -0
  585. package/dist/components/combobox/combobox.styles.js +7 -0
  586. package/dist/components/copy-button/copy-button.component.js +7 -7
  587. package/dist/components/copy-button/copy-button.js +8 -8
  588. package/dist/components/details/details.component.js +4 -4
  589. package/dist/components/details/details.js +5 -5
  590. package/dist/components/dialog/dialog.component.js +7 -7
  591. package/dist/components/dialog/dialog.js +8 -8
  592. package/dist/components/divider/divider.component.js +2 -2
  593. package/dist/components/divider/divider.js +3 -3
  594. package/dist/components/drawer/drawer.component.js +6 -6
  595. package/dist/components/drawer/drawer.js +7 -7
  596. package/dist/components/dropdown/dropdown.component.js +3 -3
  597. package/dist/components/dropdown/dropdown.js +4 -4
  598. package/dist/components/format-bytes/format-bytes.component.js +2 -2
  599. package/dist/components/format-bytes/format-bytes.js +3 -3
  600. package/dist/components/format-date/format-date.component.js +2 -2
  601. package/dist/components/format-date/format-date.js +3 -3
  602. package/dist/components/format-number/format-number.component.js +2 -2
  603. package/dist/components/format-number/format-number.js +3 -3
  604. package/dist/components/icon/icon.component.js +3 -3
  605. package/dist/components/icon/icon.js +4 -4
  606. package/dist/components/icon-button/icon-button.component.js +4 -4
  607. package/dist/components/icon-button/icon-button.js +5 -5
  608. package/dist/components/image-comparer/image-comparer.component.js +4 -4
  609. package/dist/components/image-comparer/image-comparer.js +5 -5
  610. package/dist/components/include/include.component.js +3 -3
  611. package/dist/components/include/include.js +4 -4
  612. package/dist/components/input/input.component.js +4 -4
  613. package/dist/components/input/input.js +5 -5
  614. package/dist/components/menu/menu.component.js +2 -2
  615. package/dist/components/menu/menu.js +3 -3
  616. package/dist/components/menu-item/menu-item.component.js +6 -6
  617. package/dist/components/menu-item/menu-item.js +7 -7
  618. package/dist/components/menu-label/menu-label.component.js +2 -2
  619. package/dist/components/menu-label/menu-label.js +3 -3
  620. package/dist/components/mutation-observer/mutation-observer.component.js +2 -2
  621. package/dist/components/mutation-observer/mutation-observer.js +3 -3
  622. package/dist/components/option/option.component.js +5 -5
  623. package/dist/components/option/option.js +6 -6
  624. package/dist/components/option/option.styles.js +1 -1
  625. package/dist/components/popup/popup.component.js +2 -2
  626. package/dist/components/popup/popup.js +3 -3
  627. package/dist/components/progress-bar/progress-bar.component.js +2 -2
  628. package/dist/components/progress-bar/progress-bar.js +3 -3
  629. package/dist/components/progress-ring/progress-ring.component.js +2 -2
  630. package/dist/components/progress-ring/progress-ring.js +3 -3
  631. package/dist/components/qr-code/qr-code.component.js +2 -2
  632. package/dist/components/qr-code/qr-code.js +3 -3
  633. package/dist/components/radio/radio.component.js +4 -4
  634. package/dist/components/radio/radio.js +5 -5
  635. package/dist/components/radio-button/radio-button.component.js +2 -2
  636. package/dist/components/radio-button/radio-button.js +3 -3
  637. package/dist/components/radio-group/radio-group.component.js +3 -3
  638. package/dist/components/radio-group/radio-group.js +4 -4
  639. package/dist/components/range/range.component.js +2 -2
  640. package/dist/components/range/range.js +3 -3
  641. package/dist/components/rating/rating.component.js +4 -4
  642. package/dist/components/rating/rating.js +5 -5
  643. package/dist/components/relative-time/relative-time.component.js +2 -2
  644. package/dist/components/relative-time/relative-time.js +3 -3
  645. package/dist/components/resize-observer/resize-observer.component.js +2 -2
  646. package/dist/components/resize-observer/resize-observer.js +3 -3
  647. package/dist/components/select/select.component.js +9 -9
  648. package/dist/components/select/select.js +10 -10
  649. package/dist/components/skeleton/skeleton.component.js +2 -2
  650. package/dist/components/skeleton/skeleton.js +3 -3
  651. package/dist/components/spinner/spinner.component.js +2 -2
  652. package/dist/components/spinner/spinner.js +3 -3
  653. package/dist/components/split-panel/split-panel.component.js +2 -2
  654. package/dist/components/split-panel/split-panel.js +3 -3
  655. package/dist/components/switch/switch.component.js +2 -2
  656. package/dist/components/switch/switch.js +3 -3
  657. package/dist/components/tab/tab.component.js +5 -5
  658. package/dist/components/tab/tab.js +6 -6
  659. package/dist/components/tab-group/tab-group.component.js +6 -6
  660. package/dist/components/tab-group/tab-group.js +7 -7
  661. package/dist/components/tab-panel/tab-panel.component.js +2 -2
  662. package/dist/components/tab-panel/tab-panel.js +3 -3
  663. package/dist/components/tag/tag.component.js +5 -5
  664. package/dist/components/tag/tag.js +6 -6
  665. package/dist/components/textarea/textarea.component.js +2 -2
  666. package/dist/components/textarea/textarea.js +3 -3
  667. package/dist/components/tooltip/tooltip.component.js +3 -3
  668. package/dist/components/tooltip/tooltip.js +4 -4
  669. package/dist/components/tree/tree.component.js +8 -8
  670. package/dist/components/tree/tree.js +9 -9
  671. package/dist/components/tree-item/tree-item.component.js +6 -6
  672. package/dist/components/tree-item/tree-item.js +7 -7
  673. package/dist/components/visually-hidden/visually-hidden.component.js +2 -2
  674. package/dist/components/visually-hidden/visually-hidden.js +3 -3
  675. package/dist/custom-elements.json +1151 -1
  676. package/dist/cw-elements.d.ts +1 -0
  677. package/dist/cw-elements.js +165 -159
  678. package/dist/react/alert/index.js +6 -6
  679. package/dist/react/animated-image/index.js +5 -5
  680. package/dist/react/animation/index.js +3 -3
  681. package/dist/react/avatar/index.js +5 -5
  682. package/dist/react/badge/index.js +3 -3
  683. package/dist/react/breadcrumb/index.js +5 -5
  684. package/dist/react/breadcrumb-item/index.js +3 -3
  685. package/dist/react/button/index.js +6 -6
  686. package/dist/react/button-group/index.js +3 -3
  687. package/dist/react/card/index.js +3 -3
  688. package/dist/react/carousel/index.js +5 -5
  689. package/dist/react/carousel-item/index.js +3 -3
  690. package/dist/react/checkbox/index.js +5 -5
  691. package/dist/react/color-picker/index.js +14 -14
  692. package/dist/react/combobox/index.d.ts +87 -0
  693. package/dist/react/combobox/index.js +37 -0
  694. package/dist/react/copy-button/index.js +8 -8
  695. package/dist/react/details/index.js +5 -5
  696. package/dist/react/dialog/index.js +8 -8
  697. package/dist/react/divider/index.js +3 -3
  698. package/dist/react/drawer/index.js +7 -7
  699. package/dist/react/dropdown/index.js +4 -4
  700. package/dist/react/format-bytes/index.js +3 -3
  701. package/dist/react/format-date/index.js +3 -3
  702. package/dist/react/format-number/index.js +3 -3
  703. package/dist/react/icon/index.js +4 -4
  704. package/dist/react/icon-button/index.js +5 -5
  705. package/dist/react/image-comparer/index.js +5 -5
  706. package/dist/react/include/index.js +4 -4
  707. package/dist/react/index.d.ts +1 -0
  708. package/dist/react/index.js +182 -176
  709. package/dist/react/input/index.js +5 -5
  710. package/dist/react/menu/index.js +3 -3
  711. package/dist/react/menu-item/index.js +7 -7
  712. package/dist/react/menu-label/index.js +3 -3
  713. package/dist/react/mutation-observer/index.js +3 -3
  714. package/dist/react/option/index.js +6 -6
  715. package/dist/react/popup/index.js +3 -3
  716. package/dist/react/progress-bar/index.js +3 -3
  717. package/dist/react/progress-ring/index.js +3 -3
  718. package/dist/react/qr-code/index.js +3 -3
  719. package/dist/react/radio/index.js +5 -5
  720. package/dist/react/radio-button/index.js +3 -3
  721. package/dist/react/radio-group/index.js +4 -4
  722. package/dist/react/range/index.js +3 -3
  723. package/dist/react/rating/index.js +5 -5
  724. package/dist/react/relative-time/index.js +3 -3
  725. package/dist/react/resize-observer/index.js +3 -3
  726. package/dist/react/select/index.js +10 -10
  727. package/dist/react/skeleton/index.js +3 -3
  728. package/dist/react/spinner/index.js +3 -3
  729. package/dist/react/split-panel/index.js +3 -3
  730. package/dist/react/switch/index.js +3 -3
  731. package/dist/react/tab/index.js +6 -6
  732. package/dist/react/tab-group/index.js +7 -7
  733. package/dist/react/tab-panel/index.js +3 -3
  734. package/dist/react/tag/index.js +6 -6
  735. package/dist/react/textarea/index.js +3 -3
  736. package/dist/react/tooltip/index.js +4 -4
  737. package/dist/react/tree/index.js +9 -9
  738. package/dist/react/tree-item/index.js +7 -7
  739. package/dist/react/visually-hidden/index.js +3 -3
  740. package/dist/types/vue/index.d.ts +158 -0
  741. package/dist/vscode.html-custom-data.json +119 -0
  742. package/dist/web-types.json +355 -1
  743. package/package.json +1 -1
@@ -0,0 +1,959 @@
1
+ import {
2
+ CwTag
3
+ } from "./chunk.GA7G5JW4.js";
4
+ import {
5
+ scrollIntoView
6
+ } from "./chunk.PH2N3MLE.js";
7
+ import {
8
+ CwVisuallyHidden
9
+ } from "./chunk.R73XOGFN.js";
10
+ import {
11
+ CwPopup
12
+ } from "./chunk.UQJ6QVAZ.js";
13
+ import {
14
+ form_control_styles_default
15
+ } from "./chunk.YBI2MSEM.js";
16
+ import {
17
+ combobox_styles_default
18
+ } from "./chunk.CZCGIYSR.js";
19
+ import {
20
+ CwSpinner
21
+ } from "./chunk.AZHMWS6L.js";
22
+ import {
23
+ FormControlController
24
+ } from "./chunk.PH2VNONO.js";
25
+ import {
26
+ getAnimation,
27
+ setDefaultAnimation
28
+ } from "./chunk.SPWJX47D.js";
29
+ import {
30
+ waitForEvent
31
+ } from "./chunk.B4BZKR24.js";
32
+ import {
33
+ animateTo,
34
+ stopAnimations
35
+ } from "./chunk.TJQYJP53.js";
36
+ import {
37
+ LocalizeController
38
+ } from "./chunk.IDPNXIPQ.js";
39
+ import {
40
+ HasSlotController
41
+ } from "./chunk.BVGZUUCX.js";
42
+ import {
43
+ CwIcon
44
+ } from "./chunk.W2VPO4VE.js";
45
+ import {
46
+ watch
47
+ } from "./chunk.GQZ7EGMM.js";
48
+ import {
49
+ component_styles_default
50
+ } from "./chunk.TUVJKY7S.js";
51
+ import {
52
+ CwElement
53
+ } from "./chunk.567JN6DK.js";
54
+ import {
55
+ __decorateClass
56
+ } from "./chunk.Q44EX5TP.js";
57
+
58
+ // src/components/combobox/combobox.component.ts
59
+ import { classMap } from "lit/directives/class-map.js";
60
+ import { html } from "lit";
61
+ import { property, query, state } from "lit/decorators.js";
62
+ import { unsafeHTML } from "lit/directives/unsafe-html.js";
63
+ var nextOptionId = 0;
64
+ var CwCombobox = class extends CwElement {
65
+ constructor() {
66
+ super(...arguments);
67
+ this.formControlController = new FormControlController(this, {
68
+ assumeInteractionOn: ["cw-blur", "cw-input"]
69
+ });
70
+ this.hasSlotController = new HasSlotController(this, "help-text", "label");
71
+ this.localize = new LocalizeController(this);
72
+ /** A free-text value the user has typed that doesn't match any option. Only used when `allowCustomValue` is set. */
73
+ this.customValue = "";
74
+ this.hasFocus = false;
75
+ this.displayLabel = "";
76
+ this.selectedOptions = [];
77
+ this.activeOptionId = "";
78
+ this.hasVisibleOptions = true;
79
+ this.valueHasChanged = false;
80
+ this.isFiltering = false;
81
+ this.name = "";
82
+ this._value = "";
83
+ this.defaultValue = "";
84
+ this.size = "medium";
85
+ this.placeholder = "";
86
+ this.multiple = false;
87
+ this.maxOptionsVisible = 3;
88
+ this.disabled = false;
89
+ this.clearable = false;
90
+ this.allowCustomValue = false;
91
+ this.loading = false;
92
+ this.open = false;
93
+ this.hoist = false;
94
+ this.filled = false;
95
+ this.pill = false;
96
+ this.label = "";
97
+ this.placement = "bottom";
98
+ this.helpText = "";
99
+ this.form = "";
100
+ this.required = false;
101
+ this.getTag = (option) => {
102
+ return html`
103
+ <cw-tag
104
+ part="tag"
105
+ exportparts="
106
+ base:tag__base,
107
+ content:tag__content,
108
+ remove-button:tag__remove-button,
109
+ remove-button__base:tag__remove-button__base
110
+ "
111
+ ?pill=${this.pill}
112
+ size=${this.size}
113
+ removable
114
+ @cw-remove=${(event) => this.handleTagRemove(event, option)}
115
+ >
116
+ ${option.getTextLabel()}
117
+ </cw-tag>
118
+ `;
119
+ };
120
+ this.handleDocumentFocusIn = (event) => {
121
+ const path = event.composedPath();
122
+ if (this && !path.includes(this)) {
123
+ this.hide();
124
+ }
125
+ };
126
+ this.handleDocumentKeyDown = (event) => {
127
+ const target = event.target;
128
+ const isClearButton = target.closest(".combobox__clear") !== null;
129
+ const isIconButton = target.closest("cw-icon-button") !== null;
130
+ if (isClearButton || isIconButton) {
131
+ return;
132
+ }
133
+ if (event.key === "Escape" && this.open && !this.closeWatcher) {
134
+ event.preventDefault();
135
+ event.stopPropagation();
136
+ this.hide();
137
+ this.displayInput.focus({ preventScroll: true });
138
+ return;
139
+ }
140
+ if (event.key === "Enter") {
141
+ if (!this.open) {
142
+ this.show();
143
+ return;
144
+ }
145
+ event.preventDefault();
146
+ if (this.currentOption && !this.currentOption.disabled) {
147
+ this.selectOption(this.currentOption);
148
+ } else if (this.allowCustomValue) {
149
+ const typedValue = this.displayLabel.trim();
150
+ if (typedValue !== "") {
151
+ this.commitCustomValue(typedValue);
152
+ }
153
+ }
154
+ return;
155
+ }
156
+ if (["ArrowUp", "ArrowDown", "Home", "End"].includes(event.key)) {
157
+ const visibleOptions = this.getVisibleOptions();
158
+ const currentIndex = this.currentOption ? visibleOptions.indexOf(this.currentOption) : -1;
159
+ let newIndex = Math.max(0, currentIndex);
160
+ event.preventDefault();
161
+ if (!this.open) {
162
+ this.show();
163
+ if (this.currentOption) {
164
+ return;
165
+ }
166
+ }
167
+ if (visibleOptions.length === 0) {
168
+ return;
169
+ }
170
+ if (event.key === "ArrowDown") {
171
+ newIndex = currentIndex + 1;
172
+ if (newIndex > visibleOptions.length - 1) newIndex = 0;
173
+ } else if (event.key === "ArrowUp") {
174
+ newIndex = currentIndex - 1;
175
+ if (newIndex < 0) newIndex = visibleOptions.length - 1;
176
+ } else if (event.key === "Home") {
177
+ newIndex = 0;
178
+ } else if (event.key === "End") {
179
+ newIndex = visibleOptions.length - 1;
180
+ }
181
+ this.setCurrentOption(visibleOptions[newIndex]);
182
+ if (this.currentOption) {
183
+ scrollIntoView(this.currentOption, this.listbox, "vertical", "auto");
184
+ }
185
+ return;
186
+ }
187
+ if (event.key === "Backspace" && this.multiple && this.displayLabel === "" && this.selectedOptions.length > 0) {
188
+ const lastOption = this.selectedOptions[this.selectedOptions.length - 1];
189
+ this.toggleOptionSelection(lastOption, false);
190
+ this.valueHasChanged = true;
191
+ this.updateComplete.then(() => {
192
+ this.emit("cw-input");
193
+ this.emit("cw-change");
194
+ });
195
+ }
196
+ };
197
+ this.handleDocumentMouseDown = (event) => {
198
+ const path = event.composedPath();
199
+ if (this && !path.includes(this)) {
200
+ this.hide();
201
+ }
202
+ };
203
+ }
204
+ get value() {
205
+ return this._value;
206
+ }
207
+ set value(val) {
208
+ if (this.multiple) {
209
+ val = Array.isArray(val) ? val : val.split(" ");
210
+ } else {
211
+ val = Array.isArray(val) ? val.join(" ") : val;
212
+ }
213
+ if (this._value === val) {
214
+ return;
215
+ }
216
+ this.valueHasChanged = true;
217
+ this._value = val;
218
+ }
219
+ /** Gets the validity state object */
220
+ get validity() {
221
+ return this.valueInput.validity;
222
+ }
223
+ /** Gets the validation message */
224
+ get validationMessage() {
225
+ return this.valueInput.validationMessage;
226
+ }
227
+ connectedCallback() {
228
+ super.connectedCallback();
229
+ setTimeout(() => {
230
+ this.handleDefaultSlotChange();
231
+ });
232
+ this.open = false;
233
+ }
234
+ addOpenListeners() {
235
+ var _a;
236
+ document.addEventListener("focusin", this.handleDocumentFocusIn);
237
+ document.addEventListener("keydown", this.handleDocumentKeyDown);
238
+ document.addEventListener("mousedown", this.handleDocumentMouseDown);
239
+ if (this.getRootNode() !== document) {
240
+ this.getRootNode().addEventListener("focusin", this.handleDocumentFocusIn);
241
+ }
242
+ if ("CloseWatcher" in window) {
243
+ (_a = this.closeWatcher) == null ? void 0 : _a.destroy();
244
+ this.closeWatcher = new CloseWatcher();
245
+ this.closeWatcher.onclose = () => {
246
+ if (this.open) {
247
+ this.hide();
248
+ this.displayInput.focus({ preventScroll: true });
249
+ }
250
+ };
251
+ }
252
+ }
253
+ removeOpenListeners() {
254
+ var _a;
255
+ document.removeEventListener("focusin", this.handleDocumentFocusIn);
256
+ document.removeEventListener("keydown", this.handleDocumentKeyDown);
257
+ document.removeEventListener("mousedown", this.handleDocumentMouseDown);
258
+ if (this.getRootNode() !== document) {
259
+ this.getRootNode().removeEventListener("focusin", this.handleDocumentFocusIn);
260
+ }
261
+ (_a = this.closeWatcher) == null ? void 0 : _a.destroy();
262
+ }
263
+ handleFocus() {
264
+ this.hasFocus = true;
265
+ this.emit("cw-focus");
266
+ }
267
+ handleBlur() {
268
+ this.hasFocus = false;
269
+ this.isFiltering = false;
270
+ this.filterOptions("");
271
+ if (!this.multiple) {
272
+ const selectedOption = this.selectedOptions[0];
273
+ const typedValue = this.displayLabel.trim();
274
+ if (selectedOption) {
275
+ if (typedValue !== selectedOption.getTextLabel()) {
276
+ if (this.allowCustomValue && typedValue !== "") {
277
+ this.commitCustomValue(typedValue);
278
+ } else if (typedValue === "") {
279
+ this.valueHasChanged = true;
280
+ this.setSelectedOptions([]);
281
+ } else {
282
+ this.displayLabel = selectedOption.getTextLabel();
283
+ }
284
+ }
285
+ } else if (this.allowCustomValue && typedValue !== "" && typedValue !== this.customValue) {
286
+ this.commitCustomValue(typedValue);
287
+ } else if (typedValue === "" && this.customValue !== "") {
288
+ this.valueHasChanged = true;
289
+ this.customValue = "";
290
+ this.setSelectedOptions([]);
291
+ } else if (!this.allowCustomValue) {
292
+ this.displayLabel = this.customValue;
293
+ }
294
+ }
295
+ this.emit("cw-blur");
296
+ }
297
+ handleLabelClick() {
298
+ this.displayInput.focus();
299
+ }
300
+ handleComboboxMouseDown(event) {
301
+ const path = event.composedPath();
302
+ const isIconButton = path.some((el) => el instanceof Element && el.tagName.toLowerCase() === "cw-icon-button");
303
+ const isInput = path[0] === this.displayInput;
304
+ if (this.disabled || isIconButton) {
305
+ return;
306
+ }
307
+ if (!isInput) {
308
+ event.preventDefault();
309
+ this.displayInput.focus({ preventScroll: true });
310
+ }
311
+ if (!this.open) {
312
+ this.show();
313
+ }
314
+ }
315
+ handleComboboxKeyDown(event) {
316
+ if (event.key === "Tab") {
317
+ return;
318
+ }
319
+ event.stopPropagation();
320
+ this.handleDocumentKeyDown(event);
321
+ }
322
+ handleInput(event) {
323
+ const target = event.target;
324
+ this.displayLabel = target.value;
325
+ this.customValue = "";
326
+ this.isFiltering = true;
327
+ this.filterOptions(this.displayLabel);
328
+ if (!this.open) {
329
+ this.show();
330
+ }
331
+ const visibleOptions = this.getVisibleOptions();
332
+ this.setCurrentOption(visibleOptions[0]);
333
+ this.emit("cw-input");
334
+ }
335
+ handleClearClick(event) {
336
+ event.stopPropagation();
337
+ this.valueHasChanged = true;
338
+ this.customValue = "";
339
+ const hasValue = Array.isArray(this.value) ? this.value.length > 0 : this.value !== "";
340
+ if (hasValue || this.displayLabel !== "") {
341
+ this.setSelectedOptions([]);
342
+ this.displayLabel = "";
343
+ this.isFiltering = false;
344
+ this.filterOptions("");
345
+ this.displayInput.focus({ preventScroll: true });
346
+ this.updateComplete.then(() => {
347
+ this.emit("cw-clear");
348
+ this.emit("cw-input");
349
+ this.emit("cw-change");
350
+ });
351
+ }
352
+ }
353
+ handleClearMouseDown(event) {
354
+ event.stopPropagation();
355
+ event.preventDefault();
356
+ }
357
+ handleOptionClick(event) {
358
+ const target = event.target;
359
+ const option = target.closest("cw-option");
360
+ if (option && !option.disabled) {
361
+ this.selectOption(option);
362
+ }
363
+ }
364
+ // Prevent mousing down on an option from moving focus off the display input. Otherwise the resulting blur would
365
+ // reset the type-ahead filter (and therefore the layout of the listbox) before the subsequent `mouseup` fires,
366
+ // causing the click to land on the wrong option.
367
+ handleListboxMouseDown(event) {
368
+ event.preventDefault();
369
+ }
370
+ /* @internal - used by options to update labels */
371
+ handleDefaultSlotChange() {
372
+ if (!customElements.get("cw-option")) {
373
+ customElements.whenDefined("cw-option").then(() => this.handleDefaultSlotChange());
374
+ }
375
+ const allOptions = this.getAllOptions();
376
+ const val = this.valueHasChanged ? this.value : this.defaultValue;
377
+ const value = Array.isArray(val) ? val : [val];
378
+ const matchingOptions = allOptions.filter((el) => value.includes(el.value));
379
+ this.updateCustomValue(val, matchingOptions);
380
+ this.setSelectedOptions(matchingOptions);
381
+ this.filterOptions(this.isFiltering ? this.displayLabel : "");
382
+ }
383
+ handleTagRemove(event, option) {
384
+ event.stopPropagation();
385
+ this.valueHasChanged = true;
386
+ if (!this.disabled) {
387
+ this.toggleOptionSelection(option, false);
388
+ this.updateComplete.then(() => {
389
+ this.emit("cw-input");
390
+ this.emit("cw-change");
391
+ });
392
+ }
393
+ }
394
+ // Gets an array of all <cw-option> elements
395
+ getAllOptions() {
396
+ return [...this.querySelectorAll("cw-option")];
397
+ }
398
+ // Gets all <cw-option> elements that match the current filter
399
+ getVisibleOptions() {
400
+ return this.getAllOptions().filter((option) => !option.hidden);
401
+ }
402
+ // Hides options that don't match the given query and tracks whether any options remain visible
403
+ filterOptions(filter) {
404
+ var _a;
405
+ const normalized = filter.trim().toLowerCase();
406
+ const allOptions = this.getAllOptions();
407
+ let hasVisibleOption = false;
408
+ allOptions.forEach((option) => {
409
+ const matches = normalized === "" || option.getTextLabel().toLowerCase().includes(normalized);
410
+ option.hidden = !matches;
411
+ if (matches) {
412
+ hasVisibleOption = true;
413
+ }
414
+ });
415
+ this.hasVisibleOptions = hasVisibleOption;
416
+ if ((_a = this.currentOption) == null ? void 0 : _a.hidden) {
417
+ this.setCurrentOption(this.getVisibleOptions()[0]);
418
+ }
419
+ }
420
+ // Sets the current option, which is the option the user is currently interacting with (e.g. via keyboard or by
421
+ // typing). Only one option may be "current" at a time. Unlike a standard listbox, focus remains on the input;
422
+ // `aria-activedescendant` is used to communicate the current option instead.
423
+ setCurrentOption(option) {
424
+ const allOptions = this.getAllOptions();
425
+ allOptions.forEach((el) => {
426
+ el.current = false;
427
+ el.tabIndex = -1;
428
+ });
429
+ if (option) {
430
+ if (!option.id) {
431
+ option.id = `cw-combobox-option-${++nextOptionId}`;
432
+ }
433
+ this.currentOption = option;
434
+ this.activeOptionId = option.id;
435
+ option.current = true;
436
+ option.tabIndex = 0;
437
+ } else {
438
+ this.currentOption = void 0;
439
+ this.activeOptionId = "";
440
+ }
441
+ }
442
+ // Sets the selected option(s)
443
+ setSelectedOptions(option) {
444
+ const allOptions = this.getAllOptions();
445
+ const newSelectedOptions = Array.isArray(option) ? option : [option];
446
+ allOptions.forEach((el) => el.selected = false);
447
+ if (newSelectedOptions.length) {
448
+ newSelectedOptions.forEach((el) => el.selected = true);
449
+ }
450
+ this.selectionChanged();
451
+ }
452
+ // Toggles an option's selected state
453
+ toggleOptionSelection(option, force) {
454
+ if (force === true || force === false) {
455
+ option.selected = force;
456
+ } else {
457
+ option.selected = !option.selected;
458
+ }
459
+ this.selectionChanged();
460
+ }
461
+ // Determines whether a free-text value should be tracked as the combobox's value
462
+ updateCustomValue(rawValue, matchingOptions) {
463
+ const candidate = Array.isArray(rawValue) ? rawValue[0] : rawValue;
464
+ if (!this.multiple && this.allowCustomValue && matchingOptions.length === 0 && candidate) {
465
+ this.customValue = candidate;
466
+ } else {
467
+ this.customValue = "";
468
+ }
469
+ }
470
+ // Sets the value and display label to a free-text value that doesn't match any option
471
+ commitCustomValue(text) {
472
+ const oldValue = this.value;
473
+ this.valueHasChanged = true;
474
+ this.customValue = text;
475
+ this.setSelectedOptions([]);
476
+ this.isFiltering = false;
477
+ this.filterOptions("");
478
+ if (this.open) {
479
+ this.hide();
480
+ }
481
+ if (this.value !== oldValue) {
482
+ this.updateComplete.then(() => {
483
+ this.emit("cw-input");
484
+ this.emit("cw-change");
485
+ });
486
+ }
487
+ }
488
+ // This method must be called whenever the selection changes. It will update the selected options cache, the current
489
+ // value, and the display label
490
+ selectionChanged() {
491
+ const options = this.getAllOptions();
492
+ this.selectedOptions = options.filter((el) => el.selected);
493
+ const cachedValueHasChanged = this.valueHasChanged;
494
+ if (this.multiple) {
495
+ this.value = this.selectedOptions.map((el) => el.value);
496
+ } else {
497
+ const selectedOption = this.selectedOptions[0];
498
+ if (selectedOption) {
499
+ this.customValue = "";
500
+ this.value = selectedOption.value;
501
+ this.displayLabel = selectedOption.getTextLabel();
502
+ } else {
503
+ this.value = this.customValue;
504
+ this.displayLabel = this.customValue;
505
+ }
506
+ }
507
+ this.valueHasChanged = cachedValueHasChanged;
508
+ this.updateComplete.then(() => {
509
+ this.formControlController.updateValidity();
510
+ });
511
+ }
512
+ // Selects an option, updating the input and (for single-select) closing the listbox
513
+ selectOption(option) {
514
+ const oldValue = this.value;
515
+ this.valueHasChanged = true;
516
+ this.customValue = "";
517
+ if (this.multiple) {
518
+ this.toggleOptionSelection(option);
519
+ this.displayLabel = "";
520
+ } else {
521
+ this.setSelectedOptions(option);
522
+ }
523
+ this.isFiltering = false;
524
+ this.filterOptions("");
525
+ this.updateComplete.then(() => {
526
+ this.setCurrentOption(option);
527
+ if (this.value !== oldValue) {
528
+ this.emit("cw-input");
529
+ this.emit("cw-change");
530
+ }
531
+ if (!this.multiple) {
532
+ this.hide();
533
+ }
534
+ this.displayInput.focus({ preventScroll: true });
535
+ });
536
+ }
537
+ get tags() {
538
+ return this.selectedOptions.map((option, index) => {
539
+ if (index < this.maxOptionsVisible || this.maxOptionsVisible <= 0) {
540
+ const tag = this.getTag(option, index);
541
+ return html`<div @cw-remove=${(e) => this.handleTagRemove(e, option)}>
542
+ ${typeof tag === "string" ? unsafeHTML(tag) : tag}
543
+ </div>`;
544
+ } else if (index === this.maxOptionsVisible) {
545
+ return html`<cw-tag size=${this.size}>+${this.selectedOptions.length - index}</cw-tag>`;
546
+ }
547
+ return html``;
548
+ });
549
+ }
550
+ handleInvalid(event) {
551
+ this.formControlController.setValidity(false);
552
+ this.formControlController.emitInvalidEvent(event);
553
+ }
554
+ handleDisabledChange() {
555
+ if (this.disabled) {
556
+ this.open = false;
557
+ this.handleOpenChange();
558
+ }
559
+ }
560
+ attributeChangedCallback(name, oldVal, newVal) {
561
+ super.attributeChangedCallback(name, oldVal, newVal);
562
+ if (name === "value") {
563
+ const cachedValueHasChanged = this.valueHasChanged;
564
+ this.value = this.defaultValue;
565
+ this.valueHasChanged = cachedValueHasChanged;
566
+ }
567
+ }
568
+ handleValueChange() {
569
+ if (!this.valueHasChanged) {
570
+ const cachedValueHasChanged = this.valueHasChanged;
571
+ this.value = this.defaultValue;
572
+ this.valueHasChanged = cachedValueHasChanged;
573
+ }
574
+ const allOptions = this.getAllOptions();
575
+ const value = Array.isArray(this.value) ? this.value : [this.value];
576
+ const matchingOptions = allOptions.filter((el) => value.includes(el.value));
577
+ this.updateCustomValue(this.value, matchingOptions);
578
+ this.setSelectedOptions(matchingOptions);
579
+ }
580
+ async handleOpenChange() {
581
+ if (this.open && !this.disabled) {
582
+ this.setCurrentOption(this.selectedOptions[0] || this.getVisibleOptions()[0]);
583
+ this.emit("cw-show");
584
+ this.addOpenListeners();
585
+ await stopAnimations(this);
586
+ this.listbox.hidden = false;
587
+ this.popup.active = true;
588
+ requestAnimationFrame(() => {
589
+ this.setCurrentOption(this.currentOption);
590
+ });
591
+ const { keyframes, options } = getAnimation(this, "combobox.show", { dir: this.localize.dir() });
592
+ await animateTo(this.popup.popup, keyframes, options);
593
+ if (this.currentOption) {
594
+ scrollIntoView(this.currentOption, this.listbox, "vertical", "auto");
595
+ }
596
+ this.emit("cw-after-show");
597
+ } else {
598
+ this.emit("cw-hide");
599
+ this.removeOpenListeners();
600
+ await stopAnimations(this);
601
+ const { keyframes, options } = getAnimation(this, "combobox.hide", { dir: this.localize.dir() });
602
+ await animateTo(this.popup.popup, keyframes, options);
603
+ this.listbox.hidden = true;
604
+ this.popup.active = false;
605
+ this.emit("cw-after-hide");
606
+ }
607
+ }
608
+ /** Shows the listbox. */
609
+ async show() {
610
+ if (this.open || this.disabled) {
611
+ this.open = false;
612
+ return void 0;
613
+ }
614
+ this.open = true;
615
+ return waitForEvent(this, "cw-after-show");
616
+ }
617
+ /** Hides the listbox. */
618
+ async hide() {
619
+ if (!this.open || this.disabled) {
620
+ this.open = false;
621
+ return void 0;
622
+ }
623
+ this.open = false;
624
+ return waitForEvent(this, "cw-after-hide");
625
+ }
626
+ /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */
627
+ checkValidity() {
628
+ return this.valueInput.checkValidity();
629
+ }
630
+ /** Gets the associated form, if one exists. */
631
+ getForm() {
632
+ return this.formControlController.getForm();
633
+ }
634
+ /** Checks for validity and shows the browser's validation message if the control is invalid. */
635
+ reportValidity() {
636
+ return this.valueInput.reportValidity();
637
+ }
638
+ /** Sets a custom validation message. Pass an empty string to restore validity. */
639
+ setCustomValidity(message) {
640
+ this.valueInput.setCustomValidity(message);
641
+ this.formControlController.updateValidity();
642
+ }
643
+ /** Sets focus on the control. */
644
+ focus(options) {
645
+ this.displayInput.focus(options);
646
+ }
647
+ /** Removes focus from the control. */
648
+ blur() {
649
+ this.displayInput.blur();
650
+ }
651
+ render() {
652
+ const hasLabelSlot = this.hasSlotController.test("label");
653
+ const hasHelpTextSlot = this.hasSlotController.test("help-text");
654
+ const hasLabel = this.label ? true : !!hasLabelSlot;
655
+ const hasHelpText = this.helpText ? true : !!hasHelpTextSlot;
656
+ const hasValue = Array.isArray(this.value) ? this.value.length > 0 : this.value !== "";
657
+ const hasClearIcon = this.clearable && !this.disabled && (hasValue || this.displayLabel !== "");
658
+ const showNoOptions = this.open && !this.loading && !this.hasVisibleOptions;
659
+ return html`
660
+ <div
661
+ part="form-control"
662
+ class=${classMap({
663
+ "form-control": true,
664
+ "form-control--small": this.size === "small",
665
+ "form-control--medium": this.size === "medium",
666
+ "form-control--large": this.size === "large",
667
+ "form-control--has-label": hasLabel,
668
+ "form-control--has-help-text": hasHelpText
669
+ })}
670
+ >
671
+ <label
672
+ id="label"
673
+ part="form-control-label"
674
+ class="form-control__label"
675
+ aria-hidden=${hasLabel ? "false" : "true"}
676
+ @click=${this.handleLabelClick}
677
+ >
678
+ <slot name="label">${this.label}</slot>
679
+ </label>
680
+
681
+ <div part="form-control-input" class="form-control-input">
682
+ <cw-popup
683
+ class=${classMap({
684
+ combobox: true,
685
+ "combobox--standard": true,
686
+ "combobox--filled": this.filled,
687
+ "combobox--pill": this.pill,
688
+ "combobox--open": this.open,
689
+ "combobox--disabled": this.disabled,
690
+ "combobox--multiple": this.multiple,
691
+ "combobox--focused": this.hasFocus,
692
+ "combobox--top": this.placement === "top",
693
+ "combobox--bottom": this.placement === "bottom",
694
+ "combobox--small": this.size === "small",
695
+ "combobox--medium": this.size === "medium",
696
+ "combobox--large": this.size === "large"
697
+ })}
698
+ placement=${this.placement}
699
+ strategy=${this.hoist ? "fixed" : "absolute"}
700
+ flip
701
+ shift
702
+ sync="width"
703
+ auto-size="vertical"
704
+ auto-size-padding="10"
705
+ >
706
+ <div
707
+ part="combobox"
708
+ class="combobox__control"
709
+ slot="anchor"
710
+ @keydown=${this.handleComboboxKeyDown}
711
+ @mousedown=${this.handleComboboxMouseDown}
712
+ >
713
+ <slot part="prefix" name="prefix" class="combobox__prefix"></slot>
714
+
715
+ ${this.multiple ? html`<div part="tags" class="combobox__tags">${this.tags}</div>` : ""}
716
+
717
+ <input
718
+ part="display-input"
719
+ class="combobox__display-input"
720
+ type="text"
721
+ placeholder=${this.placeholder}
722
+ .disabled=${this.disabled}
723
+ .value=${this.displayLabel}
724
+ autocomplete="off"
725
+ spellcheck="false"
726
+ autocapitalize="off"
727
+ aria-controls="listbox"
728
+ aria-expanded=${this.open ? "true" : "false"}
729
+ aria-haspopup="listbox"
730
+ aria-autocomplete="list"
731
+ aria-activedescendant=${this.activeOptionId}
732
+ aria-labelledby="label"
733
+ aria-disabled=${this.disabled ? "true" : "false"}
734
+ aria-describedby="help-text"
735
+ role="combobox"
736
+ @input=${this.handleInput}
737
+ @focus=${this.handleFocus}
738
+ @blur=${this.handleBlur}
739
+ />
740
+
741
+ <input
742
+ class="combobox__value-input"
743
+ type="text"
744
+ ?disabled=${this.disabled}
745
+ ?required=${this.required}
746
+ .value=${Array.isArray(this.value) ? this.value.join(", ") : this.value}
747
+ tabindex="-1"
748
+ aria-hidden="true"
749
+ @focus=${() => this.focus()}
750
+ @invalid=${this.handleInvalid}
751
+ />
752
+
753
+ ${hasClearIcon ? html`
754
+ <button
755
+ part="clear-button"
756
+ class="combobox__clear"
757
+ type="button"
758
+ aria-label=${this.localize.term("clearEntry")}
759
+ @mousedown=${this.handleClearMouseDown}
760
+ @click=${this.handleClearClick}
761
+ tabindex="-1"
762
+ >
763
+ <slot name="clear-icon">
764
+ <cw-icon name="x-circle-fill" library="system"></cw-icon>
765
+ </slot>
766
+ </button>
767
+ ` : ""}
768
+
769
+ <slot name="suffix" part="suffix" class="combobox__suffix"></slot>
770
+
771
+ <slot name="expand-icon" part="expand-icon" class="combobox__expand-icon">
772
+ <cw-icon library="system" name="chevron-down"></cw-icon>
773
+ </slot>
774
+ </div>
775
+
776
+ <div
777
+ id="listbox"
778
+ role="listbox"
779
+ aria-expanded=${this.open ? "true" : "false"}
780
+ aria-multiselectable=${this.multiple ? "true" : "false"}
781
+ aria-labelledby="label"
782
+ part="listbox"
783
+ class="combobox__listbox"
784
+ tabindex="-1"
785
+ @mousedown=${this.handleListboxMouseDown}
786
+ @mouseup=${this.handleOptionClick}
787
+ @slotchange=${this.handleDefaultSlotChange}
788
+ >
789
+ <slot></slot>
790
+
791
+ ${this.loading ? html`
792
+ <div part="loading" class="combobox__loading">
793
+ <cw-spinner></cw-spinner>
794
+ </div>
795
+ ` : ""}
796
+ ${showNoOptions ? html`
797
+ <div part="no-options" class="combobox__no-options">
798
+ <slot name="no-options">No matching options found.</slot>
799
+ </div>
800
+ ` : ""}
801
+ </div>
802
+ </cw-popup>
803
+ </div>
804
+
805
+ <div
806
+ part="form-control-help-text"
807
+ id="help-text"
808
+ class="form-control__help-text"
809
+ aria-hidden=${hasHelpText ? "false" : "true"}
810
+ >
811
+ <slot name="help-text">${this.helpText}</slot>
812
+ </div>
813
+
814
+ ${this.multiple ? html`
815
+ <cw-visually-hidden role="status" aria-live="polite">
816
+ ${this.localize.term("numOptionsSelected", this.selectedOptions.length)}
817
+ </cw-visually-hidden>
818
+ ` : ""}
819
+ </div>
820
+ `;
821
+ }
822
+ };
823
+ CwCombobox.styles = [component_styles_default, form_control_styles_default, combobox_styles_default];
824
+ CwCombobox.dependencies = {
825
+ "cw-icon": CwIcon,
826
+ "cw-popup": CwPopup,
827
+ "cw-spinner": CwSpinner,
828
+ "cw-tag": CwTag,
829
+ "cw-visually-hidden": CwVisuallyHidden
830
+ };
831
+ __decorateClass([
832
+ query(".combobox")
833
+ ], CwCombobox.prototype, "popup", 2);
834
+ __decorateClass([
835
+ query(".combobox__control")
836
+ ], CwCombobox.prototype, "combobox", 2);
837
+ __decorateClass([
838
+ query(".combobox__display-input")
839
+ ], CwCombobox.prototype, "displayInput", 2);
840
+ __decorateClass([
841
+ query(".combobox__value-input")
842
+ ], CwCombobox.prototype, "valueInput", 2);
843
+ __decorateClass([
844
+ query(".combobox__listbox")
845
+ ], CwCombobox.prototype, "listbox", 2);
846
+ __decorateClass([
847
+ state()
848
+ ], CwCombobox.prototype, "hasFocus", 2);
849
+ __decorateClass([
850
+ state()
851
+ ], CwCombobox.prototype, "displayLabel", 2);
852
+ __decorateClass([
853
+ state()
854
+ ], CwCombobox.prototype, "currentOption", 2);
855
+ __decorateClass([
856
+ state()
857
+ ], CwCombobox.prototype, "selectedOptions", 2);
858
+ __decorateClass([
859
+ state()
860
+ ], CwCombobox.prototype, "activeOptionId", 2);
861
+ __decorateClass([
862
+ state()
863
+ ], CwCombobox.prototype, "hasVisibleOptions", 2);
864
+ __decorateClass([
865
+ state()
866
+ ], CwCombobox.prototype, "valueHasChanged", 2);
867
+ __decorateClass([
868
+ state()
869
+ ], CwCombobox.prototype, "isFiltering", 2);
870
+ __decorateClass([
871
+ property()
872
+ ], CwCombobox.prototype, "name", 2);
873
+ __decorateClass([
874
+ state()
875
+ ], CwCombobox.prototype, "value", 1);
876
+ __decorateClass([
877
+ property({ attribute: "value" })
878
+ ], CwCombobox.prototype, "defaultValue", 2);
879
+ __decorateClass([
880
+ property({ reflect: true })
881
+ ], CwCombobox.prototype, "size", 2);
882
+ __decorateClass([
883
+ property()
884
+ ], CwCombobox.prototype, "placeholder", 2);
885
+ __decorateClass([
886
+ property({ type: Boolean, reflect: true })
887
+ ], CwCombobox.prototype, "multiple", 2);
888
+ __decorateClass([
889
+ property({ attribute: "max-options-visible", type: Number })
890
+ ], CwCombobox.prototype, "maxOptionsVisible", 2);
891
+ __decorateClass([
892
+ property({ type: Boolean, reflect: true })
893
+ ], CwCombobox.prototype, "disabled", 2);
894
+ __decorateClass([
895
+ property({ type: Boolean })
896
+ ], CwCombobox.prototype, "clearable", 2);
897
+ __decorateClass([
898
+ property({ attribute: "allow-custom-value", type: Boolean })
899
+ ], CwCombobox.prototype, "allowCustomValue", 2);
900
+ __decorateClass([
901
+ property({ type: Boolean, reflect: true })
902
+ ], CwCombobox.prototype, "loading", 2);
903
+ __decorateClass([
904
+ property({ type: Boolean, reflect: true })
905
+ ], CwCombobox.prototype, "open", 2);
906
+ __decorateClass([
907
+ property({ type: Boolean })
908
+ ], CwCombobox.prototype, "hoist", 2);
909
+ __decorateClass([
910
+ property({ type: Boolean, reflect: true })
911
+ ], CwCombobox.prototype, "filled", 2);
912
+ __decorateClass([
913
+ property({ type: Boolean, reflect: true })
914
+ ], CwCombobox.prototype, "pill", 2);
915
+ __decorateClass([
916
+ property()
917
+ ], CwCombobox.prototype, "label", 2);
918
+ __decorateClass([
919
+ property({ reflect: true })
920
+ ], CwCombobox.prototype, "placement", 2);
921
+ __decorateClass([
922
+ property({ attribute: "help-text" })
923
+ ], CwCombobox.prototype, "helpText", 2);
924
+ __decorateClass([
925
+ property({ reflect: true })
926
+ ], CwCombobox.prototype, "form", 2);
927
+ __decorateClass([
928
+ property({ type: Boolean, reflect: true })
929
+ ], CwCombobox.prototype, "required", 2);
930
+ __decorateClass([
931
+ property()
932
+ ], CwCombobox.prototype, "getTag", 2);
933
+ __decorateClass([
934
+ watch("disabled", { waitUntilFirstUpdate: true })
935
+ ], CwCombobox.prototype, "handleDisabledChange", 1);
936
+ __decorateClass([
937
+ watch(["defaultValue", "value"], { waitUntilFirstUpdate: true })
938
+ ], CwCombobox.prototype, "handleValueChange", 1);
939
+ __decorateClass([
940
+ watch("open", { waitUntilFirstUpdate: true })
941
+ ], CwCombobox.prototype, "handleOpenChange", 1);
942
+ setDefaultAnimation("combobox.show", {
943
+ keyframes: [
944
+ { opacity: 0, scale: 0.9 },
945
+ { opacity: 1, scale: 1 }
946
+ ],
947
+ options: { duration: 100, easing: "ease" }
948
+ });
949
+ setDefaultAnimation("combobox.hide", {
950
+ keyframes: [
951
+ { opacity: 1, scale: 1 },
952
+ { opacity: 0, scale: 0.9 }
953
+ ],
954
+ options: { duration: 100, easing: "ease" }
955
+ });
956
+
957
+ export {
958
+ CwCombobox
959
+ };