@esri/calcite-components 5.1.0-next.5 → 5.1.0-next.51

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 (481) hide show
  1. package/dist/cdn/2I23BJUK.js +2 -0
  2. package/dist/cdn/2MK42DZ4.js +2 -0
  3. package/dist/cdn/2RVF53XU.js +2 -0
  4. package/dist/cdn/{25YVFVC7.js → 2VEIQ62E.js} +1 -1
  5. package/dist/cdn/36JLOHBC.js +2 -0
  6. package/dist/cdn/{HHOMMC4H.js → 3B5PYTVX.js} +1 -1
  7. package/dist/cdn/3BZBBTUA.js +2 -0
  8. package/dist/cdn/3FXX3SBS.js +2 -0
  9. package/dist/cdn/3JTJC2PS.js +2 -0
  10. package/dist/cdn/3N3O22QG.js +2 -0
  11. package/dist/cdn/3ZXALV6G.js +2 -0
  12. package/dist/cdn/43E5QBXB.js +2 -0
  13. package/dist/cdn/{IJP6ZKHZ.js → 456IFPIW.js} +1 -1
  14. package/dist/cdn/{GNDNKP2Q.js → 4F5KQIRB.js} +1 -1
  15. package/dist/cdn/4HQ5QYH2.js +2 -0
  16. package/dist/cdn/{ZKPCUAN2.js → 4J3DARRE.js} +1 -1
  17. package/dist/cdn/4R54D2BX.js +2 -0
  18. package/dist/cdn/4RTJFM5B.js +2 -0
  19. package/dist/cdn/4TA4AAFT.js +2 -0
  20. package/dist/cdn/52IJCUEV.js +2 -0
  21. package/dist/cdn/5EOFDLJO.js +2 -0
  22. package/dist/cdn/{2QARK4VJ.js → 5M27WGKA.js} +1 -1
  23. package/dist/cdn/5WVRAQRW.js +2 -0
  24. package/dist/cdn/6BFJTIPA.js +2 -0
  25. package/dist/cdn/{5TCLHXAD.js → 6D5PCSHS.js} +1 -1
  26. package/dist/cdn/6TSA7FLB.js +2 -0
  27. package/dist/cdn/{HUNZU2OF.js → 73ORJJZS.js} +1 -1
  28. package/dist/cdn/{5SU52VYR.js → 75SY2WE4.js} +1 -1
  29. package/dist/cdn/{VB7GHJWK.js → 7ECSU3T3.js} +1 -1
  30. package/dist/cdn/{RGKOGN5W.js → 7GZ4RW44.js} +1 -1
  31. package/dist/cdn/{NAFJ5ZYO.js → 7NDXWX7R.js} +1 -1
  32. package/dist/cdn/{5L7CGWWD.js → 7RZYNANK.js} +1 -1
  33. package/dist/cdn/{DY6SXW3X.js → A2KNWLOL.js} +1 -1
  34. package/dist/cdn/{BPSXK66S.js → AEPM5SJO.js} +1 -1
  35. package/dist/cdn/{ZVFZSDLX.js → AEZOU5JE.js} +1 -1
  36. package/dist/cdn/{NIBBUVHR.js → AK66BMBC.js} +1 -1
  37. package/dist/cdn/{RRNEZXM4.js → AR7ZPQQG.js} +1 -1
  38. package/dist/cdn/B6R2YN2X.js +2 -0
  39. package/dist/cdn/{NNSUCRNU.js → BF7DR726.js} +1 -1
  40. package/dist/cdn/BHS72XYT.js +2 -0
  41. package/dist/cdn/{UUHRTJGO.js → C42SNF33.js} +1 -1
  42. package/dist/cdn/C53YAAVC.js +2 -0
  43. package/dist/cdn/CDSIG642.js +2 -0
  44. package/dist/cdn/CJGERVGF.js +4 -0
  45. package/dist/cdn/{3NNVHOGK.js → CRL6VQWS.js} +1 -1
  46. package/dist/cdn/{KVPLQQ75.js → DAQX6BT3.js} +1 -1
  47. package/dist/cdn/{EHIAXJAL.js → DCWL5FUH.js} +1 -1
  48. package/dist/cdn/{AJKEEG2Z.js → DUAPF33E.js} +1 -1
  49. package/dist/cdn/DWPX74WA.js +2 -0
  50. package/dist/cdn/{YQOYGBGD.js → EBGVT22W.js} +1 -1
  51. package/dist/cdn/EW3UPJT7.js +2 -0
  52. package/dist/cdn/FB545PKU.js +2 -0
  53. package/dist/cdn/GFPWU57X.js +2 -0
  54. package/dist/cdn/{O75ZRZLS.js → GTALENKO.js} +1 -1
  55. package/dist/cdn/H5UVCR64.js +2 -0
  56. package/dist/cdn/{ODOOWGRW.js → H6UBX3WZ.js} +1 -1
  57. package/dist/cdn/HGRS2NBC.js +2 -0
  58. package/dist/cdn/{QVTLP2LK.js → HM2E526S.js} +1 -1
  59. package/dist/cdn/HPVBLELP.js +2 -0
  60. package/dist/cdn/{FWEFFYYZ.js → HPWLGQL6.js} +1 -1
  61. package/dist/cdn/{752PQ7IA.js → HULUX4S6.js} +1 -1
  62. package/dist/cdn/{MQMNX7AM.js → I24CZVLP.js} +1 -1
  63. package/dist/cdn/{2GS6R2BX.js → IHLWJXZV.js} +1 -1
  64. package/dist/cdn/{NMIBGEIB.js → IIBZXYLU.js} +1 -1
  65. package/dist/cdn/{SVHI2LRC.js → IRVWWA2A.js} +1 -1
  66. package/dist/cdn/{DR7JKZAI.js → ISMO77VP.js} +1 -1
  67. package/dist/cdn/{2Z4Z3NMS.js → IZEFSP2C.js} +1 -1
  68. package/dist/cdn/JA5TE633.js +2 -0
  69. package/dist/cdn/JKAB4LS7.js +2 -0
  70. package/dist/cdn/{42NQN6DY.js → JLGDNYBI.js} +1 -1
  71. package/dist/cdn/{PNXNTD3R.js → JOTX7MS6.js} +1 -1
  72. package/dist/cdn/{3LOKHBAB.js → K43SJYRB.js} +1 -1
  73. package/dist/cdn/{ALC6PGDZ.js → K7UPFMP3.js} +1 -1
  74. package/dist/cdn/{X53XDNBL.js → KC5UAIPG.js} +1 -1
  75. package/dist/cdn/{6XJYCX76.js → KDMQ3W3P.js} +1 -1
  76. package/dist/cdn/{HGRVTRR3.js → KIIYDDSF.js} +1 -1
  77. package/dist/cdn/KJUZSP7X.js +2 -0
  78. package/dist/cdn/KVNTMFIR.js +2 -0
  79. package/dist/cdn/{OGOI7JTF.js → KWNGJXWC.js} +1 -1
  80. package/dist/cdn/{K4R3HUW3.js → KXSIX7V7.js} +1 -1
  81. package/dist/cdn/LA3AJSXV.js +2 -0
  82. package/dist/cdn/LSOSPUDS.js +2 -0
  83. package/dist/cdn/M4BORA6H.js +2 -0
  84. package/dist/cdn/{3L2WKJUB.js → M77EYDBR.js} +1 -1
  85. package/dist/cdn/{D7UER3G6.js → MAH7GW3L.js} +1 -1
  86. package/dist/cdn/{UYYGQ6AY.js → MFLXU5FA.js} +1 -1
  87. package/dist/cdn/{C25VFIND.js → MRXZATZZ.js} +1 -1
  88. package/dist/cdn/MU5LNKS7.js +2 -0
  89. package/dist/cdn/MUMG74E5.js +2 -0
  90. package/dist/cdn/MVK6LWK5.js +2 -0
  91. package/dist/cdn/{3GV45XL7.js → MYDCGCGV.js} +1 -1
  92. package/dist/cdn/MYKZPZDR.js +2 -0
  93. package/dist/cdn/{CWQZDXHH.js → NIASU3O6.js} +1 -1
  94. package/dist/cdn/{22IPJDDL.js → NKBT2QG4.js} +1 -1
  95. package/dist/cdn/NL6QGGPB.js +2 -0
  96. package/dist/cdn/NPKYZEEF.js +2 -0
  97. package/dist/cdn/{ZPJ4FGXO.js → OFR37WBK.js} +1 -1
  98. package/dist/cdn/{SP22KLIK.js → OL7ZYBX6.js} +1 -1
  99. package/dist/cdn/P6VMV62Z.js +2 -0
  100. package/dist/cdn/{B55VO4LW.js → PDXU6HPZ.js} +1 -1
  101. package/dist/cdn/PIKLS5KR.js +2 -0
  102. package/dist/cdn/PJ4SD5FY.js +2 -0
  103. package/dist/cdn/PLG6IIYK.js +3 -0
  104. package/dist/cdn/{NT6RQTF7.js → PPBHKZJI.js} +1 -1
  105. package/dist/cdn/{H77SNVVI.js → Q75PWKQ3.js} +1 -1
  106. package/dist/cdn/QJBPXLTP.js +2 -0
  107. package/dist/cdn/{Q52IY7SS.js → QLOR2RB5.js} +1 -1
  108. package/dist/cdn/QTHYRIFY.js +2 -0
  109. package/dist/cdn/QVXAQXDL.js +2 -0
  110. package/dist/cdn/R2ZRQO3L.js +2 -0
  111. package/dist/cdn/RGLUZ76B.js +2 -0
  112. package/dist/cdn/{EY4MG3NU.js → RPAL2ENA.js} +1 -1
  113. package/dist/cdn/{ZKCFISUX.js → RRJKRT7F.js} +1 -1
  114. package/dist/cdn/S7EIG7Q5.js +2 -0
  115. package/dist/cdn/{5J2UYJYX.js → SCXKWH7Z.js} +1 -1
  116. package/dist/cdn/{PYD5GHXA.js → SKAIHX6Z.js} +1 -1
  117. package/dist/cdn/{IU4TJIME.js → SXV7WCPS.js} +1 -1
  118. package/dist/cdn/T4Q6C4CT.js +2 -0
  119. package/dist/cdn/TGQJUML7.js +2 -0
  120. package/dist/cdn/TSNOYPVI.js +2 -0
  121. package/dist/cdn/{MM6LZCYO.js → TZ7BLX2N.js} +1 -1
  122. package/dist/cdn/{TZFOTRCX.js → U63LB523.js} +1 -1
  123. package/dist/cdn/U6HPCAAW.js +2 -0
  124. package/dist/cdn/{UVJ3XYK5.js → UPTGE4WC.js} +1 -1
  125. package/dist/cdn/USOHYTXD.js +2 -0
  126. package/dist/cdn/{T2MUZ4UN.js → UY7QVK74.js} +1 -1
  127. package/dist/cdn/VFLSIH3H.js +2 -0
  128. package/dist/cdn/{Y5FMVLYP.js → VHLCDJKY.js} +1 -1
  129. package/dist/cdn/{G4QI7VSJ.js → VRI5YMPE.js} +1 -1
  130. package/dist/cdn/{Z6LSD6MR.js → WBP7WHU4.js} +1 -1
  131. package/dist/cdn/WCTTX5WL.js +2 -0
  132. package/dist/cdn/{RH6ZIP65.js → WGGFNK4Z.js} +1 -1
  133. package/dist/cdn/WXDRYIO2.js +2 -0
  134. package/dist/cdn/WZ6F5SCK.js +2 -0
  135. package/dist/cdn/X2NBQO5I.js +2 -0
  136. package/dist/cdn/{IFLPCKYL.js → X44HUYME.js} +1 -1
  137. package/dist/cdn/XKYXT27V.js +2 -0
  138. package/dist/cdn/XUU2MRGP.js +2 -0
  139. package/dist/cdn/XUYLYALV.js +2 -0
  140. package/dist/cdn/XYFV7S74.js +2 -0
  141. package/dist/cdn/ZEUCKTPG.js +2 -0
  142. package/dist/cdn/ZKHWMGW5.js +2 -0
  143. package/dist/cdn/ZMX2MKUW.js +2 -0
  144. package/dist/cdn/ZOQOJDXL.js +2 -0
  145. package/dist/cdn/ZQCRV5XI.js +2 -0
  146. package/dist/cdn/ZRXGDZZT.js +4 -0
  147. package/dist/cdn/assets/combobox/t9n/messages.ar.json +1 -1
  148. package/dist/cdn/assets/combobox/t9n/messages.bg.json +1 -1
  149. package/dist/cdn/assets/combobox/t9n/messages.bs.json +1 -1
  150. package/dist/cdn/assets/combobox/t9n/messages.ca.json +1 -1
  151. package/dist/cdn/assets/combobox/t9n/messages.cs.json +1 -1
  152. package/dist/cdn/assets/combobox/t9n/messages.da.json +1 -1
  153. package/dist/cdn/assets/combobox/t9n/messages.de.json +1 -1
  154. package/dist/cdn/assets/combobox/t9n/messages.el.json +1 -1
  155. package/dist/cdn/assets/combobox/t9n/messages.en.json +1 -1
  156. package/dist/cdn/assets/combobox/t9n/messages.es.json +1 -1
  157. package/dist/cdn/assets/combobox/t9n/messages.et.json +1 -1
  158. package/dist/cdn/assets/combobox/t9n/messages.fi.json +1 -1
  159. package/dist/cdn/assets/combobox/t9n/messages.fr.json +1 -1
  160. package/dist/cdn/assets/combobox/t9n/messages.he.json +1 -1
  161. package/dist/cdn/assets/combobox/t9n/messages.hr.json +1 -1
  162. package/dist/cdn/assets/combobox/t9n/messages.hu.json +1 -1
  163. package/dist/cdn/assets/combobox/t9n/messages.id.json +1 -1
  164. package/dist/cdn/assets/combobox/t9n/messages.it.json +1 -1
  165. package/dist/cdn/assets/combobox/t9n/messages.ja.json +1 -1
  166. package/dist/cdn/assets/combobox/t9n/messages.json +1 -1
  167. package/dist/cdn/assets/combobox/t9n/messages.ko.json +1 -1
  168. package/dist/cdn/assets/combobox/t9n/messages.lt.json +1 -1
  169. package/dist/cdn/assets/combobox/t9n/messages.lv.json +1 -1
  170. package/dist/cdn/assets/combobox/t9n/messages.nl.json +1 -1
  171. package/dist/cdn/assets/combobox/t9n/messages.no.json +1 -1
  172. package/dist/cdn/assets/combobox/t9n/messages.pl.json +1 -1
  173. package/dist/cdn/assets/combobox/t9n/messages.pt-BR.json +1 -1
  174. package/dist/cdn/assets/combobox/t9n/messages.pt-PT.json +1 -1
  175. package/dist/cdn/assets/combobox/t9n/messages.ro.json +1 -1
  176. package/dist/cdn/assets/combobox/t9n/messages.ru.json +1 -1
  177. package/dist/cdn/assets/combobox/t9n/messages.sk.json +1 -1
  178. package/dist/cdn/assets/combobox/t9n/messages.sl.json +1 -1
  179. package/dist/cdn/assets/combobox/t9n/messages.sr.json +1 -1
  180. package/dist/cdn/assets/combobox/t9n/messages.sv.json +1 -1
  181. package/dist/cdn/assets/combobox/t9n/messages.th.json +1 -1
  182. package/dist/cdn/assets/combobox/t9n/messages.tr.json +1 -1
  183. package/dist/cdn/assets/combobox/t9n/messages.uk.json +1 -1
  184. package/dist/cdn/assets/combobox/t9n/messages.vi.json +1 -1
  185. package/dist/cdn/assets/combobox/t9n/messages.zh-CN.json +1 -1
  186. package/dist/cdn/assets/combobox/t9n/messages.zh-HK.json +1 -1
  187. package/dist/cdn/assets/combobox/t9n/messages.zh-TW.json +1 -1
  188. package/dist/cdn/assets/icon/arcgisQuickcapture16.json +1 -0
  189. package/dist/cdn/assets/icon/arcgisQuickcapture24.json +1 -0
  190. package/dist/cdn/assets/icon/arcgisQuickcapture32.json +1 -0
  191. package/dist/cdn/assets/icon/arcgisSurvey12316.json +1 -0
  192. package/dist/cdn/assets/icon/arcgisSurvey12324.json +1 -0
  193. package/dist/cdn/assets/icon/arcgisSurvey12332.json +1 -0
  194. package/dist/cdn/assets/icon/buttons16.json +1 -0
  195. package/dist/cdn/assets/icon/buttons24.json +1 -0
  196. package/dist/cdn/assets/icon/buttons32.json +1 -0
  197. package/dist/cdn/assets/icon/entityTypes16.json +1 -0
  198. package/dist/cdn/assets/icon/entityTypes24.json +1 -0
  199. package/dist/cdn/assets/icon/entityTypes32.json +1 -0
  200. package/dist/cdn/assets/icon/gpsReceiver16.json +1 -0
  201. package/dist/cdn/assets/icon/gpsReceiver24.json +1 -0
  202. package/dist/cdn/assets/icon/gpsReceiver32.json +1 -0
  203. package/dist/cdn/assets/icon/layerStreamSetting16.json +1 -0
  204. package/dist/cdn/assets/icon/layerStreamSetting24.json +1 -0
  205. package/dist/cdn/assets/icon/layerStreamSetting32.json +1 -0
  206. package/dist/cdn/assets/icon/publish16.json +1 -0
  207. package/dist/cdn/assets/icon/publish24.json +1 -0
  208. package/dist/cdn/assets/icon/publish32.json +1 -0
  209. package/dist/cdn/assets/icon/totalStation16.json +1 -0
  210. package/dist/cdn/assets/icon/totalStation24.json +1 -0
  211. package/dist/cdn/assets/icon/totalStation32.json +1 -0
  212. package/dist/cdn/assets/icon/velocityServer16.json +1 -0
  213. package/dist/cdn/assets/icon/velocityServer24.json +1 -0
  214. package/dist/cdn/assets/icon/velocityServer32.json +1 -0
  215. package/dist/cdn/index.js +2 -2
  216. package/dist/cdn/main.css +1 -1
  217. package/dist/chunks/ClearButton.js +16 -0
  218. package/dist/chunks/ExpandToggle.js +3 -3
  219. package/dist/chunks/Heading.js +3 -3
  220. package/dist/chunks/component.js +1 -1
  221. package/dist/chunks/dom.js +49 -28
  222. package/dist/chunks/floating-ui.js +2 -5
  223. package/dist/chunks/locale.js +29 -12
  224. package/dist/chunks/manager.js +505 -0
  225. package/dist/chunks/resources5.js +2 -1
  226. package/dist/chunks/resources6.js +2 -0
  227. package/dist/chunks/runtime.js +4 -4
  228. package/dist/chunks/useFocusTrap.js +25 -0
  229. package/dist/chunks/useForm.js +327 -0
  230. package/dist/chunks/useFormTrigger.js +25 -0
  231. package/dist/chunks/{sortableComponent.js → useSortable.js} +70 -44
  232. package/dist/chunks/utils.js +6 -6
  233. package/dist/chunks/utils3.js +18 -3
  234. package/dist/components/calcite-accordion-item/customElement.d.ts +6 -6
  235. package/dist/components/calcite-action/customElement.d.ts +14 -12
  236. package/dist/components/calcite-action/customElement.js +8 -14
  237. package/dist/components/calcite-action-bar/customElement.d.ts +12 -3
  238. package/dist/components/calcite-action-bar/customElement.js +47 -16
  239. package/dist/components/calcite-action-group/customElement.d.ts +12 -6
  240. package/dist/components/calcite-action-group/customElement.js +2 -1
  241. package/dist/components/calcite-action-menu/customElement.d.ts +2 -2
  242. package/dist/components/calcite-action-pad/customElement.d.ts +3 -3
  243. package/dist/components/calcite-action-pad/customElement.js +11 -6
  244. package/dist/components/calcite-alert/customElement.d.ts +2 -2
  245. package/dist/components/calcite-alert/customElement.js +1 -1
  246. package/dist/components/calcite-autocomplete/customElement.d.ts +16 -13
  247. package/dist/components/calcite-autocomplete/customElement.js +20 -31
  248. package/dist/components/calcite-autocomplete-item/customElement.d.ts +6 -0
  249. package/dist/components/calcite-autocomplete-item/customElement.js +9 -4
  250. package/dist/components/calcite-block/customElement.d.ts +5 -5
  251. package/dist/components/calcite-block/customElement.js +1 -1
  252. package/dist/components/calcite-block-group/customElement.d.ts +1 -1
  253. package/dist/components/calcite-block-group/customElement.js +4 -11
  254. package/dist/components/calcite-block-group/interfaces.d.ts +2 -6
  255. package/dist/components/calcite-block-section/customElement.d.ts +1 -1
  256. package/dist/components/calcite-button/customElement.d.ts +6 -6
  257. package/dist/components/calcite-button/customElement.js +10 -22
  258. package/dist/components/calcite-card/customElement.d.ts +11 -5
  259. package/dist/components/calcite-card/customElement.js +5 -3
  260. package/dist/components/calcite-card-group/customElement.d.ts +9 -3
  261. package/dist/components/calcite-card-group/customElement.js +11 -1
  262. package/dist/components/calcite-carousel/customElement.d.ts +1 -1
  263. package/dist/components/calcite-checkbox/customElement.d.ts +4 -5
  264. package/dist/components/calcite-checkbox/customElement.js +8 -22
  265. package/dist/components/calcite-chip/customElement.d.ts +2 -2
  266. package/dist/components/calcite-chip/customElement.js +1 -1
  267. package/dist/components/calcite-chip-group/customElement.d.ts +1 -1
  268. package/dist/components/calcite-color-picker/customElement.d.ts +2 -2
  269. package/dist/components/calcite-color-picker/customElement.js +2 -2
  270. package/dist/components/calcite-color-picker-hex-input/customElement.d.ts +1 -1
  271. package/dist/components/calcite-color-picker-hex-input/customElement.js +1 -1
  272. package/dist/components/calcite-color-picker-swatch/customElement.d.ts +1 -1
  273. package/dist/components/calcite-combobox/customElement.d.ts +5 -5
  274. package/dist/components/calcite-combobox/customElement.js +195 -108
  275. package/dist/components/calcite-combobox/index.js +2 -1
  276. package/dist/components/calcite-combobox-item/customElement.d.ts +1 -1
  277. package/dist/components/calcite-combobox-item/customElement.js +1 -1
  278. package/dist/components/calcite-date-picker/customElement.d.ts +1 -1
  279. package/dist/components/calcite-date-picker/customElement.js +4 -14
  280. package/dist/components/calcite-date-picker-day/customElement.d.ts +1 -1
  281. package/dist/components/calcite-date-picker-month/customElement.js +2 -2
  282. package/dist/components/calcite-date-picker-month-header/customElement.js +1 -1
  283. package/dist/components/calcite-dialog/customElement.d.ts +7 -5
  284. package/dist/components/calcite-dialog/customElement.js +4 -2
  285. package/dist/components/calcite-dropdown/customElement.d.ts +15 -5
  286. package/dist/components/calcite-dropdown/customElement.js +165 -90
  287. package/dist/components/calcite-dropdown-item/customElement.d.ts +2 -2
  288. package/dist/components/calcite-dropdown-item/customElement.js +14 -32
  289. package/dist/components/calcite-fab/customElement.d.ts +1 -1
  290. package/dist/components/calcite-fab/customElement.js +1 -1
  291. package/dist/components/calcite-filter/customElement.d.ts +1 -1
  292. package/dist/components/calcite-flow/customElement.d.ts +1 -1
  293. package/dist/components/calcite-flow-item/customElement.d.ts +8 -5
  294. package/dist/components/calcite-flow-item/customElement.js +4 -2
  295. package/dist/components/calcite-graph/customElement.js +1 -1
  296. package/dist/components/calcite-handle/customElement.d.ts +1 -1
  297. package/dist/components/calcite-icon/customElement.d.ts +1 -1
  298. package/dist/components/calcite-inline-editable/customElement.d.ts +2 -2
  299. package/dist/components/calcite-inline-editable/customElement.js +1 -1
  300. package/dist/components/calcite-input/customElement.d.ts +17 -18
  301. package/dist/components/calcite-input/customElement.js +26 -49
  302. package/dist/components/calcite-input/index.js +1 -0
  303. package/dist/components/calcite-input-date-picker/customElement.d.ts +6 -7
  304. package/dist/components/calcite-input-date-picker/customElement.js +66 -75
  305. package/dist/components/calcite-input-message/customElement.d.ts +1 -1
  306. package/dist/components/calcite-input-number/customElement.d.ts +13 -14
  307. package/dist/components/calcite-input-number/customElement.js +22 -48
  308. package/dist/components/calcite-input-number/index.js +1 -0
  309. package/dist/components/calcite-input-text/customElement.d.ts +11 -12
  310. package/dist/components/calcite-input-text/customElement.js +8 -179
  311. package/dist/components/calcite-input-text/index.js +1 -0
  312. package/dist/components/calcite-input-time-picker/customElement.d.ts +6 -7
  313. package/dist/components/calcite-input-time-picker/customElement.js +11 -23
  314. package/dist/components/calcite-input-time-zone/customElement.d.ts +5 -6
  315. package/dist/components/calcite-input-time-zone/customElement.js +21 -19
  316. package/dist/components/calcite-label/customElement.js +1 -1
  317. package/dist/components/calcite-link/customElement.d.ts +9 -9
  318. package/dist/components/calcite-link/customElement.js +28 -23
  319. package/dist/components/calcite-list/customElement.d.ts +1 -1
  320. package/dist/components/calcite-list/customElement.js +33 -14
  321. package/dist/components/calcite-list/interfaces.d.ts +2 -6
  322. package/dist/components/calcite-list-item/customElement.d.ts +2 -2
  323. package/dist/components/calcite-list-item/customElement.js +4 -4
  324. package/dist/components/calcite-list-item-group/customElement.js +1 -1
  325. package/dist/components/calcite-loader/customElement.d.ts +1 -1
  326. package/dist/components/calcite-menu/customElement.d.ts +1 -1
  327. package/dist/components/calcite-menu/customElement.js +1 -1
  328. package/dist/components/calcite-menu-item/customElement.d.ts +3 -3
  329. package/dist/components/calcite-meter/customElement.d.ts +7 -1
  330. package/dist/components/calcite-meter/customElement.js +4 -8
  331. package/dist/components/calcite-navigation/customElement.d.ts +9 -2
  332. package/dist/components/calcite-navigation/customElement.js +42 -3
  333. package/dist/components/calcite-navigation-logo/customElement.d.ts +3 -3
  334. package/dist/components/calcite-navigation-logo/customElement.js +4 -3
  335. package/dist/components/calcite-navigation-user/customElement.d.ts +2 -2
  336. package/dist/components/calcite-navigation-user/customElement.js +11 -6
  337. package/dist/components/calcite-notice/customElement.d.ts +3 -3
  338. package/dist/components/calcite-notice/customElement.js +1 -1
  339. package/dist/components/calcite-pagination/customElement.d.ts +1 -1
  340. package/dist/components/calcite-pagination/customElement.js +1 -1
  341. package/dist/components/calcite-panel/customElement.d.ts +7 -5
  342. package/dist/components/calcite-panel/customElement.js +20 -8
  343. package/dist/components/calcite-popover/customElement.d.ts +2 -2
  344. package/dist/components/calcite-popover/customElement.js +11 -175
  345. package/dist/components/calcite-radio-button/customElement.d.ts +16 -1
  346. package/dist/components/calcite-radio-button/customElement.js +10 -18
  347. package/dist/components/calcite-radio-button-group/customElement.d.ts +1 -1
  348. package/dist/components/calcite-rating/customElement.d.ts +3 -4
  349. package/dist/components/calcite-rating/customElement.js +12 -18
  350. package/dist/components/calcite-segmented-control/customElement.d.ts +3 -4
  351. package/dist/components/calcite-segmented-control/customElement.js +8 -19
  352. package/dist/components/calcite-segmented-control-item/customElement.js +1 -1
  353. package/dist/components/calcite-select/customElement.d.ts +3 -4
  354. package/dist/components/calcite-select/customElement.js +9 -20
  355. package/dist/components/calcite-sheet/customElement.d.ts +3 -3
  356. package/dist/components/calcite-sheet/customElement.js +3 -7
  357. package/dist/components/calcite-shell-panel/customElement.d.ts +3 -3
  358. package/dist/components/calcite-shell-panel/customElement.js +4 -0
  359. package/dist/components/calcite-slider/customElement.d.ts +3 -4
  360. package/dist/components/calcite-slider/customElement.js +12 -22
  361. package/dist/components/calcite-sort-handle/customElement.d.ts +4 -4
  362. package/dist/components/calcite-sort-handle/customElement.js +44 -17
  363. package/dist/components/calcite-sortable-list/customElement.d.ts +1 -1
  364. package/dist/components/calcite-sortable-list/customElement.js +3 -3
  365. package/dist/components/calcite-split-button/customElement.d.ts +8 -8
  366. package/dist/components/calcite-stepper/customElement.d.ts +2 -2
  367. package/dist/components/calcite-stepper/customElement.js +29 -42
  368. package/dist/components/calcite-stepper-item/customElement.d.ts +1 -1
  369. package/dist/components/calcite-stepper-item/customElement.js +2 -8
  370. package/dist/components/calcite-swatch/customElement.d.ts +1 -1
  371. package/dist/components/calcite-switch/customElement.d.ts +4 -4
  372. package/dist/components/calcite-switch/customElement.js +9 -8
  373. package/dist/components/calcite-tab/customElement.d.ts +1 -1
  374. package/dist/components/calcite-tab/customElement.js +1 -1
  375. package/dist/components/calcite-tab-nav/customElement.js +1 -1
  376. package/dist/components/calcite-tab-title/customElement.js +1 -1
  377. package/dist/components/calcite-table/customElement.js +1 -1
  378. package/dist/components/calcite-table-cell/customElement.d.ts +2 -2
  379. package/dist/components/calcite-table-header/customElement.d.ts +2 -2
  380. package/dist/components/calcite-table-row/customElement.d.ts +1 -1
  381. package/dist/components/calcite-tabs/customElement.js +1 -1
  382. package/dist/components/calcite-text-area/customElement.d.ts +13 -14
  383. package/dist/components/calcite-text-area/customElement.js +32 -37
  384. package/dist/components/calcite-tile/customElement.d.ts +1 -1
  385. package/dist/components/calcite-time-picker/customElement.d.ts +1 -1
  386. package/dist/components/calcite-time-picker/customElement.js +2 -2
  387. package/dist/components/calcite-tooltip/customElement.d.ts +15 -2
  388. package/dist/components/calcite-tooltip/customElement.js +24 -315
  389. package/dist/components/calcite-tree-item/customElement.js +2 -3
  390. package/dist/controllers/useSortable.d.ts +7 -0
  391. package/dist/docs/api.json +1 -1
  392. package/dist/docs/docs.json +1 -1
  393. package/dist/docs/supported-browsers.json +1 -1
  394. package/dist/docs/translations.json +1 -1
  395. package/dist/docs/vscode.css-custom-data.json +1 -1
  396. package/dist/docs/vscode.html-custom-data.json +1 -1
  397. package/dist/docs/web-types.json +1 -1
  398. package/dist/loader.js +28 -28
  399. package/dist/types/lumina.d.ts +8 -8
  400. package/dist/types/preact.d.ts +8 -8
  401. package/dist/types/react.d.ts +8 -8
  402. package/dist/types/stencil.d.ts +8 -8
  403. package/package.json +15 -16
  404. package/dist/cdn/25CWB6HX.js +0 -2
  405. package/dist/cdn/3KLZFJXW.js +0 -2
  406. package/dist/cdn/3WLFK4RW.js +0 -2
  407. package/dist/cdn/462JN5WF.js +0 -2
  408. package/dist/cdn/464S36UH.js +0 -2
  409. package/dist/cdn/4ALKCXNH.js +0 -2
  410. package/dist/cdn/4GQPJFUJ.js +0 -2
  411. package/dist/cdn/4GVH7HTQ.js +0 -2
  412. package/dist/cdn/4J6YW6EK.js +0 -2
  413. package/dist/cdn/52ZOO5HQ.js +0 -2
  414. package/dist/cdn/5HTRQR7F.js +0 -2
  415. package/dist/cdn/6NEHFZMJ.js +0 -2
  416. package/dist/cdn/6VRXKEA7.js +0 -2
  417. package/dist/cdn/7RSGSW76.js +0 -2
  418. package/dist/cdn/7UOYXJ3K.js +0 -2
  419. package/dist/cdn/A2UZRUUF.js +0 -2
  420. package/dist/cdn/A7IQIXR3.js +0 -2
  421. package/dist/cdn/AEUCGVU4.js +0 -2
  422. package/dist/cdn/BIEIKUB2.js +0 -2
  423. package/dist/cdn/BS22M3WT.js +0 -2
  424. package/dist/cdn/BWDCDFXW.js +0 -2
  425. package/dist/cdn/CXVISA7Y.js +0 -2
  426. package/dist/cdn/ED7SQQHM.js +0 -3
  427. package/dist/cdn/EFNE45MK.js +0 -2
  428. package/dist/cdn/EGK4PSW5.js +0 -2
  429. package/dist/cdn/EJCQCHH7.js +0 -2
  430. package/dist/cdn/ENCYKNKN.js +0 -4
  431. package/dist/cdn/EZW5GK73.js +0 -2
  432. package/dist/cdn/GEQ3EBJO.js +0 -2
  433. package/dist/cdn/GLJVCFQW.js +0 -2
  434. package/dist/cdn/HAUWZRL4.js +0 -2
  435. package/dist/cdn/HBUNMGZ3.js +0 -2
  436. package/dist/cdn/HFGDCX3I.js +0 -2
  437. package/dist/cdn/J42TNDHM.js +0 -2
  438. package/dist/cdn/J4J65DN5.js +0 -2
  439. package/dist/cdn/KBHLSIAR.js +0 -2
  440. package/dist/cdn/KKMGV3S6.js +0 -2
  441. package/dist/cdn/KUC6KV4R.js +0 -2
  442. package/dist/cdn/KVRUYI63.js +0 -2
  443. package/dist/cdn/MLQDQZZR.js +0 -2
  444. package/dist/cdn/N47CSPB7.js +0 -2
  445. package/dist/cdn/O6ZRTXVO.js +0 -2
  446. package/dist/cdn/OCFKSX5L.js +0 -2
  447. package/dist/cdn/OO556Q5A.js +0 -2
  448. package/dist/cdn/PGUOVY7V.js +0 -2
  449. package/dist/cdn/PJ3GHZ7T.js +0 -2
  450. package/dist/cdn/Q4EG6G7W.js +0 -2
  451. package/dist/cdn/QEPJF6TC.js +0 -3
  452. package/dist/cdn/QHZAKDI7.js +0 -2
  453. package/dist/cdn/QIUVPLV2.js +0 -2
  454. package/dist/cdn/R3DLH5BB.js +0 -2
  455. package/dist/cdn/R5DGN3O6.js +0 -2
  456. package/dist/cdn/RU3YCR42.js +0 -2
  457. package/dist/cdn/SF7SFEKA.js +0 -2
  458. package/dist/cdn/SKOYS4HM.js +0 -2
  459. package/dist/cdn/TAS3P2HU.js +0 -2
  460. package/dist/cdn/TBA5ATIB.js +0 -2
  461. package/dist/cdn/TW2SRS2O.js +0 -2
  462. package/dist/cdn/V2PPBU7J.js +0 -2
  463. package/dist/cdn/VIMF6KPF.js +0 -2
  464. package/dist/cdn/VYSJFEY6.js +0 -2
  465. package/dist/cdn/WI7KEIGV.js +0 -2
  466. package/dist/cdn/WJXZ7BPV.js +0 -2
  467. package/dist/cdn/WOJJ53FN.js +0 -2
  468. package/dist/cdn/WSRLM2TQ.js +0 -2
  469. package/dist/cdn/XPXJW5E3.js +0 -2
  470. package/dist/cdn/XXVIE4SD.js +0 -2
  471. package/dist/cdn/YBZVV5BN.js +0 -2
  472. package/dist/cdn/Z3B276DZ.js +0 -2
  473. package/dist/cdn/ZDZGWD2Y.js +0 -2
  474. package/dist/cdn/ZIKLLQSU.js +0 -2
  475. package/dist/cdn/ZQLGBHLZ.js +0 -2
  476. package/dist/cdn/ZZ746O36.js +0 -2
  477. package/dist/chunks/form.js +0 -268
  478. package/dist/chunks/input.js +0 -40
  479. package/dist/controllers/useForm.d.ts +0 -3
  480. package/dist/utils/form.d.ts +0 -3
  481. package/dist/utils/sortableComponent.d.ts +0 -7
@@ -3,7 +3,6 @@ import type { PublicLitElement as LitElement } from "@arcgis/lumina";
3
3
  import type { FlipPlacement, MenuPlacement, OverlayPositioning } from "../../utils/floating-ui.js";
4
4
  import type { Alignment, Scale, Status } from "../interfaces.js";
5
5
  import type { IconName } from "../calcite-icon/interfaces.js";
6
- import type { MutableValidityState } from "../../utils/form.js";
7
6
 
8
7
  /**
9
8
  * @cssproperty [--calcite-autocomplete-background-color] - Specifies the component's background color.
@@ -45,7 +44,7 @@ export abstract class Autocomplete extends LitElement {
45
44
  * Specifies the type of content to autocomplete, for use in forms.
46
45
  * Read the native attribute's documentation on MDN for more info.
47
46
  *
48
- * @mdn [autocomplete](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete)
47
+ * @see [MDN - autocomplete](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete)
49
48
  */
50
49
  accessor autocomplete: AutoFill;
51
50
  /**
@@ -62,7 +61,11 @@ export abstract class Autocomplete extends LitElement {
62
61
  * When not set, the component is associated with its ancestor form element, if one exists.
63
62
  */
64
63
  accessor form: string;
65
- /** When `true`, shows a default recommended icon. Alternatively, pass a Calcite UI Icon name to display a specific icon. */
64
+ /**
65
+ * When `true` or not set, shows a default recommended icon. Alternatively, pass a Calcite UI Icon name to display a specific icon.
66
+ *
67
+ * To hide the default icon, set the property to `false` using JavaScript.
68
+ */
66
69
  accessor icon: IconName | boolean;
67
70
  /**
68
71
  * When `true`, the icon will be flipped when the element direction is right-to-left (`"rtl"`).
@@ -86,7 +89,7 @@ export abstract class Autocomplete extends LitElement {
86
89
  * When the component resides in a form,
87
90
  * specifies the maximum length of text for the component's value.
88
91
  *
89
- * @mdn [maxlength](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#maxlength)
92
+ * @see [MDN - maxlength](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#maxlength)
90
93
  */
91
94
  accessor maxLength: number;
92
95
  /** Overrides individual strings used by the component. */
@@ -99,7 +102,7 @@ export abstract class Autocomplete extends LitElement {
99
102
  * When the component resides in a form,
100
103
  * specifies the minimum length of text for the component's value.
101
104
  *
102
- * @mdn [minlength](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#minlength)
105
+ * @see [MDN - minlength](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#minlength)
103
106
  */
104
107
  accessor minLength: number;
105
108
  /**
@@ -107,7 +110,7 @@ export abstract class Autocomplete extends LitElement {
107
110
  *
108
111
  * Required to pass the component's `value` on form submission.
109
112
  *
110
- * @mdn [name](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#name)
113
+ * @see [MDN - name](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#name)
111
114
  */
112
115
  accessor name: string;
113
116
  /**
@@ -131,13 +134,13 @@ export abstract class Autocomplete extends LitElement {
131
134
  * specifies a regular expression (regex) pattern the component's `value` must match for validation.
132
135
  * Read the native attribute's documentation on MDN for more info.
133
136
  *
134
- * @mdn [step](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/pattern)
137
+ * @see [MDN - step](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/pattern)
135
138
  */
136
139
  accessor pattern: string;
137
140
  /**
138
141
  * Specifies placeholder text for the component.
139
142
  *
140
- * @mdn [placeholder](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#placeholder)
143
+ * @see [MDN - placeholder](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#placeholder)
141
144
  */
142
145
  accessor placeholder: string;
143
146
  /**
@@ -152,7 +155,7 @@ export abstract class Autocomplete extends LitElement {
152
155
  * When `true`, the component's value can be read, but cannot be modified.
153
156
  *
154
157
  * @default false
155
- * @mdn [readOnly](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/readonly)
158
+ * @see [MDN - readOnly](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/readonly)
156
159
  */
157
160
  accessor readOnly: boolean;
158
161
  /**
@@ -182,7 +185,7 @@ export abstract class Autocomplete extends LitElement {
182
185
  * Only set this if you need complex z-index control or if top layer placement causes conflicts with third-party components.
183
186
  *
184
187
  * @default false
185
- * @mdn [Top Layer](https://developer.mozilla.org/en-US/docs/Glossary/Top_layer)
188
+ * @see [MDN - Top Layer](https://developer.mozilla.org/en-US/docs/Glossary/Top_layer)
186
189
  */
187
190
  accessor topLayerDisabled: boolean;
188
191
  /** Specifies the validation icon to display under the component. */
@@ -192,9 +195,9 @@ export abstract class Autocomplete extends LitElement {
192
195
  /**
193
196
  * The component's current validation state.
194
197
  *
195
- * @mdn [ValidityState](https://developer.mozilla.org/en-US/docs/Web/API/ValidityState)
198
+ * @see [MDN - ValidityState](https://developer.mozilla.org/en-US/docs/Web/API/ValidityState)
196
199
  */
197
- get validity(): MutableValidityState;
200
+ get validity(): ValidityState;
198
201
  /**
199
202
  * Specifies the selected `autocomplete-item`. When the component resides in a form, the `value` is submitted with the form.
200
203
  *
@@ -226,7 +229,7 @@ export abstract class Autocomplete extends LitElement {
226
229
  * Sets focus on the component's first focusable element.
227
230
  *
228
231
  * @param options - When specified an optional object customizes the component's focusing process. When `preventScroll` is `true`, scrolling will not occur on the component.
229
- * @mdn [focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
232
+ * @see [MDN - focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
230
233
  */
231
234
  setFocus(options?: FocusOptions): Promise<void>;
232
235
  /** Fires when the component is requested to be closed and before the closing transition begins. */
@@ -9,7 +9,6 @@ import { escapeRegExp } from "es-toolkit/compat";
9
9
  import { createRef, ref } from "lit/directives/ref.js";
10
10
  import { d as defaultMenuPlacement, r as reposition, c as connectFloatingUI, a as disconnectFloatingUI, F as FloatingCSS } from "../../chunks/floating-ui.js";
11
11
  import { c as connectLabel, d as disconnectLabel, g as getLabelText } from "../../chunks/label.js";
12
- import { c as connectForm, a as afterConnectDefaultValueSet, d as disconnectForm, s as submitForm, H as HiddenFormInputSlot } from "../../chunks/form.js";
13
12
  import { s as slotChangeHasAssignedElement } from "../../chunks/dom.js";
14
13
  import { g as guid } from "../../chunks/guid.js";
15
14
  import { u as useT9n } from "../../chunks/useT9n.js";
@@ -21,6 +20,7 @@ import { u as useSetFocus } from "../../chunks/useSetFocus.js";
21
20
  import { u as useInteractive } from "../../chunks/useInteractive.js";
22
21
  import { t as toggleOpenClose } from "../../chunks/openCloseComponent.js";
23
22
  import { u as useTopLayer } from "../../chunks/useTopLayer.js";
23
+ import { u as useForm } from "../../chunks/useForm.js";
24
24
  const styles = css`:host([disabled]){cursor:default;-webkit-user-select:none;user-select:none;opacity:var(--calcite-opacity-disabled)}:host([disabled]) *,:host([disabled]) ::slotted(*){pointer-events:none}:host{position:relative;display:block}.input-container{position:relative;display:flex;flex:1 1 auto;flex-wrap:nowrap}.input{width:100%;--calcite-input-prefix-size: var(--calcite-autocomplete-input-prefix-size);--calcite-input-suffix-size: var(--calcite-autocomplete-input-suffix-size);--calcite-input-background-color: var(--calcite-autocomplete-input-background-color);--calcite-input-border-color: var(--calcite-autocomplete-input-border-color);--calcite-input-corner-radius: var(--calcite-autocomplete-input-corner-radius);--calcite-input-shadow: var(--calcite-autocomplete-input-shadow);--calcite-input-icon-color: var(--calcite-autocomplete-input-icon-color);--calcite-input-text-color: var(--calcite-autocomplete-input-text-color);--calcite-input-placeholder-text-color: var(--calcite-autocomplete-input-placeholder-text-color);--calcite-input-actions-background-color: var(--calcite-autocomplete-input-actions-background-color);--calcite-input-actions-background-color-hover: var(--calcite-autocomplete-input-actions-background-color-hover);--calcite-input-actions-background-color-press: var(--calcite-autocomplete-input-actions-background-color-press);--calcite-input-actions-icon-color: var(--calcite-autocomplete-input-actions-icon-color);--calcite-input-actions-icon-color-hover: var(--calcite-autocomplete-input-actions-icon-color-hover);--calcite-input-actions-icon-color-press: var(--calcite-autocomplete-input-actions-icon-color-press);--calcite-input-loading-background-color: var(--calcite-autocomplete-input-loading-background-color);--calcite-input-loading-fill-color: var(--calcite-autocomplete-input-loading-fill-color);--calcite-input-prefix-text-color: var(--calcite-autocomplete-input-prefix-text-color);--calcite-input-suffix-text-color: var(--calcite-autocomplete-input-suffix-text-color)}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}.interaction-container{display:contents}.content-container{box-sizing:border-box;width:100%}.floating-ui-container{inline-size:max-content;display:none;max-inline-size:100vw;max-block-size:100vh;inset-block-start:0;left:0;z-index:var(--calcite-floating-ui-z-index)}@starting-style{.floating-ui-container{opacity:0;inset-block-start:0;left:0}}:host([top-layer-disabled]) .floating-ui-container{--calcite-floating-ui-z-index: var(--calcite-z-index-dropdown)}.floating-ui-container[popover]{padding:0;margin:0;border:none;background-color:transparent;overflow:visible;display:none}.floating-ui-container:popover-open{display:block}.floating-ui-container .calcite-floating-ui-anim{position:relative;transition-duration:var(--calcite-floating-ui-transition);transition-property:inset-block-start,left,opacity,display;transition-behavior:allow-discrete;opacity:0;box-shadow:0 0 16px #00000029;z-index:var(--calcite-z-index);border-radius:.25rem}.floating-ui-container[data-placement^=bottom] .calcite-floating-ui-anim{inset-block-start:-5px}.floating-ui-container[data-placement^=top] .calcite-floating-ui-anim{inset-block-start:5px}.floating-ui-container[data-placement^=left] .calcite-floating-ui-anim{left:5px}.floating-ui-container[data-placement^=right] .calcite-floating-ui-anim{left:-5px}.floating-ui-container[data-placement] .calcite-floating-ui-anim--active{opacity:1;inset-block-start:0;left:0}@starting-style{.floating-ui-container[data-placement] .calcite-floating-ui-anim--active{opacity:0}}.content-container .calcite-floating-ui-anim{width:100%;overflow-y:auto;max-block-size:var(--calcite-autocomplete-menu-max-size-y, 45vh);color:var(--calcite-autocomplete-text-color, var(--calcite-color-text-1));background-color:var(--calcite-autocomplete-background-color, var(--calcite-color-foreground-1));border-radius:var(--calcite-autocomplete-corner-radius, var(--calcite-corner-radius-round))}.content--hidden{display:none}@media(forced-colors:active){.floating-ui-container--active{border:1px solid canvasText}}.screen-readers-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.internal-label-alignment--center{align-items:center}.internal-label-alignment--end{align-items:end}.internal-label--container{display:flex;justify-content:space-between;color:var(--calcite-color-text-1)}.internal-label-required--indicator{font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-status-danger);padding-inline:var(--calcite-spacing-base)}.internal-label-required--indicator:hover{cursor:help}.internal-label--text{line-height:1}:host([scale=s]) .internal-label-spacing--bottom{margin-block-end:var(--calcite-spacing-xxs)}:host([scale=s]) .internal-label-spacing-inline--end{margin-inline-end:var(--calcite-spacing-sm)}:host([scale=s]) .internal-label-spacing-inline--start{margin-inline-start:var(--calcite-spacing-sm)}:host([scale=s]) .internal-label--text{font-size:var(--calcite-font-size--2)}:host([scale=m]) .internal-label-spacing--bottom{margin-block-end:var(--calcite-spacing-sm)}:host([scale=m]) .internal-label-spacing-inline--end{margin-inline-end:var(--calcite-spacing-sm)}:host([scale=m]) .internal-label-spacing-inline--start{margin-inline-start:var(--calcite-spacing-sm)}:host([scale=m]) .internal-label--text{font-size:var(--calcite-font-size--1)}:host([scale=l]) .internal-label-spacing--bottom{margin-block-end:var(--calcite-spacing-sm)}:host([scale=l]) .internal-label-spacing-inline--end{margin-inline-end:var(--calcite-spacing-md)}:host([scale=l]) .internal-label-spacing-inline--start{margin-inline-start:var(--calcite-spacing-md)}:host([scale=l]) .internal-label--text{font-size:var(--calcite-font-size-0)}.validation-container{display:flex;flex-direction:column;align-items:flex-start;align-self:stretch}:host([scale=m]) .validation-container,:host([scale=l]) .validation-container{padding-block-start:.5rem}:host([scale=s]) .validation-container{padding-block-start:.25rem}::slotted(input[slot=hidden-form-input]){margin:0!important;opacity:0!important;outline:none!important;padding:0!important;position:absolute!important;inset:0!important;transform:none!important;-webkit-appearance:none!important;z-index:-1!important}:host([hidden]){display:none}[hidden]{display:none}`;
25
25
  const SLOTS = {
26
26
  contentBottom: "content-bottom",
@@ -51,6 +51,9 @@ class Autocomplete extends LitElement {
51
51
  this.guid = guid();
52
52
  this.attributeWatch = useWatchAttributes(["autofocus", "enterkeyhint", "inputmode"], this.handleGlobalAttributesChanged);
53
53
  this.direction = useDirection();
54
+ this.formSupport = useForm({
55
+ inputType: "text"
56
+ })(this);
54
57
  this.inputId = IDS.input(this.guid);
55
58
  this.listId = IDS.list(this.guid);
56
59
  this.messages = useT9n();
@@ -85,19 +88,6 @@ class Autocomplete extends LitElement {
85
88
  this.scale = "m";
86
89
  this.status = "idle";
87
90
  this.topLayerDisabled = false;
88
- this.validity = {
89
- valid: false,
90
- badInput: false,
91
- customError: false,
92
- patternMismatch: false,
93
- rangeOverflow: false,
94
- rangeUnderflow: false,
95
- stepMismatch: false,
96
- tooLong: false,
97
- tooShort: false,
98
- typeMismatch: false,
99
- valueMissing: false
100
- };
101
91
  this.value = "";
102
92
  this.calciteAutocompleteBeforeClose = createEvent({ cancelable: false });
103
93
  this.calciteAutocompleteBeforeOpen = createEvent({ cancelable: false });
@@ -110,7 +100,10 @@ class Autocomplete extends LitElement {
110
100
  this.listen("calciteAutocompleteItemSelect", this.handleAutocompleteItemSelect);
111
101
  }
112
102
  static {
113
- this.properties = { activeDescendant: [16, {}, { state: true }], activeIndex: [16, {}, { state: true }], hasContentBottom: [16, {}, { state: true }], hasContentTop: [16, {}, { state: true }], items: [16, {}, { state: true }], groups: [16, {}, { state: true }], alignment: [3, {}, { reflect: true }], autocomplete: 1, disabled: [7, {}, { reflect: true, type: Boolean }], flipPlacements: [0, {}, { attribute: false }], form: [3, {}, { reflect: true }], icon: [3, { converter: stringOrBoolean, type: String }, { reflect: true }], iconFlipRtl: [7, {}, { reflect: true, type: Boolean }], inputValue: 1, label: 1, labelText: 1, loading: [7, {}, { reflect: true, type: Boolean }], maxLength: [11, {}, { reflect: true, type: Number }], messageOverrides: [0, {}, { attribute: false }], minLength: [11, {}, { reflect: true, type: Number }], name: [3, {}, { reflect: true }], open: [7, {}, { reflect: true, type: Boolean }], overlayPositioning: [3, {}, { reflect: true }], pattern: 1, placeholder: 1, placement: [3, {}, { reflect: true }], prefixText: 1, readOnly: [7, {}, { reflect: true, type: Boolean }], required: [7, {}, { reflect: true, type: Boolean }], scale: [3, {}, { reflect: true }], status: [3, {}, { reflect: true }], suffixText: 1, topLayerDisabled: [7, {}, { reflect: true, type: Boolean }], validationIcon: [3, { converter: stringOrBoolean, type: String }, { reflect: true }], validationMessage: 1, validity: [0, {}, { attribute: false }], value: 1 };
103
+ this.properties = { activeDescendant: [16, {}, { state: true }], activeIndex: [16, {}, { state: true }], hasContentBottom: [16, {}, { state: true }], hasContentTop: [16, {}, { state: true }], items: [16, {}, { state: true }], groups: [16, {}, { state: true }], alignment: [3, {}, { reflect: true }], autocomplete: 1, disabled: [7, {}, { reflect: true, type: Boolean }], flipPlacements: [0, {}, { attribute: false }], form: [3, {}, { reflect: true }], icon: [3, { converter: stringOrBoolean, type: String }, { reflect: true }], iconFlipRtl: [7, {}, { reflect: true, type: Boolean }], inputValue: 1, label: 1, labelText: 1, loading: [7, {}, { reflect: true, type: Boolean }], maxLength: [11, {}, { reflect: true, type: Number }], messageOverrides: [0, {}, { attribute: false }], minLength: [11, {}, { reflect: true, type: Number }], name: [3, {}, { reflect: true }], open: [7, {}, { reflect: true, type: Boolean }], overlayPositioning: [3, {}, { reflect: true }], pattern: 1, placeholder: 1, placement: [3, {}, { reflect: true }], prefixText: 1, readOnly: [7, {}, { reflect: true, type: Boolean }], required: [7, {}, { reflect: true, type: Boolean }], scale: [3, {}, { reflect: true }], status: [3, {}, { reflect: true }], suffixText: 1, topLayerDisabled: [7, {}, { reflect: true, type: Boolean }], validationIcon: [3, { converter: stringOrBoolean, type: String }, { reflect: true }], validationMessage: 1, validity: [32, {}, { readOnly: true, attribute: false }], value: 1 };
104
+ }
105
+ static {
106
+ this.formAssociated = true;
114
107
  }
115
108
  static {
116
109
  this.styles = styles;
@@ -144,10 +137,13 @@ class Autocomplete extends LitElement {
144
137
  }
145
138
  connectedCallback() {
146
139
  super.connectedCallback();
147
- this.mutationObserver?.observe(this.el, { childList: true, subtree: true });
140
+ this.mutationObserver?.observe(this.el, {
141
+ attributes: true,
142
+ attributeFilter: ["selected"],
143
+ childList: true,
144
+ subtree: true
145
+ });
148
146
  connectLabel(this);
149
- connectForm(this);
150
- this.defaultInputValue = this.inputValue || "";
151
147
  this.getAllItemsDebounced();
152
148
  connectFloatingUI(this);
153
149
  this.cancelable.add(this.getAllItemsDebounced);
@@ -182,8 +178,6 @@ class Autocomplete extends LitElement {
182
178
  }
183
179
  }
184
180
  loaded() {
185
- afterConnectDefaultValueSet(this, this.value || "");
186
- this.defaultInputValue = this.inputValue || "";
187
181
  connectFloatingUI(this);
188
182
  }
189
183
  disconnectedCallback() {
@@ -191,7 +185,6 @@ class Autocomplete extends LitElement {
191
185
  this.mutationObserver?.disconnect();
192
186
  this.resizeObserver?.disconnect();
193
187
  disconnectLabel(this);
194
- disconnectForm(this);
195
188
  disconnectFloatingUI(this);
196
189
  }
197
190
  setFloatingElSize() {
@@ -236,9 +229,6 @@ class Autocomplete extends LitElement {
236
229
  onLabelClick() {
237
230
  this.setFocus();
238
231
  }
239
- onFormReset() {
240
- this.inputValue = this.defaultInputValue;
241
- }
242
232
  onBeforeOpen() {
243
233
  this.calciteAutocompleteBeforeOpen.emit();
244
234
  this.topLayer.show();
@@ -325,13 +315,12 @@ class Autocomplete extends LitElement {
325
315
  case "Enter":
326
316
  if (open && activeItem) {
327
317
  this.value = activeItem.value;
328
- activeItem.emitSelectEvent();
318
+ activeItem.toggleSelection();
329
319
  this.open = false;
330
320
  event.preventDefault();
331
- } else if (!event.defaultPrevented) {
332
- if (submitForm(this)) {
333
- event.preventDefault();
334
- }
321
+ } else if (!event.defaultPrevented && this.formSupport.active) {
322
+ event.preventDefault();
323
+ this.formSupport.requestSubmit();
335
324
  }
336
325
  break;
337
326
  case "ArrowDown":
@@ -405,13 +394,13 @@ class Autocomplete extends LitElement {
405
394
  [CSS.contentAnimation]: true,
406
395
  [FloatingCSS.animation]: true,
407
396
  [FloatingCSS.animationActive]: isOpen
408
- })} ${ref(this.transitionRef)}><div class=${safeClassMap({ [CSS.content]: true, [CSS.contentHidden]: !isOpen })}><slot name=${SLOTS.contentTop} @slotchange=${this.handleContentTopSlotChange}></slot><slot aria-hidden=true></slot><slot name=${SLOTS.contentBottom} @slotchange=${this.handleContentBottomSlotChange}></slot></div></div></div></div>${HiddenFormInputSlot({ component: this })}${this.validationMessage && this.status === "invalid" ? Validation({ icon: this.validationIcon, id: IDS.validationMessage, message: this.validationMessage, scale: this.scale, status: this.status }) : null}` });
397
+ })} ${ref(this.transitionRef)}><div class=${safeClassMap({ [CSS.content]: true, [CSS.contentHidden]: !isOpen })}><slot name=${SLOTS.contentTop} @slotchange=${this.handleContentTopSlotChange}></slot><slot aria-hidden=true></slot><slot name=${SLOTS.contentBottom} @slotchange=${this.handleContentBottomSlotChange}></slot></div></div></div></div>${this.validationMessage && this.status === "invalid" ? Validation({ icon: this.validationIcon, id: IDS.validationMessage, message: this.validationMessage, scale: this.scale, status: this.status }) : null}` });
409
398
  }
410
399
  renderListBox() {
411
400
  return html`<ul aria-labelledby=${this.inputId ?? nothing} aria-live=polite class=${safeClassMap(CSS.screenReadersOnly)} id=${this.listId ?? nothing} role=listbox tabindex=-1>${this.renderListBoxOptions()}</ul>`;
412
401
  }
413
402
  renderListBoxOptions() {
414
- return repeat(this.items.filter((item) => !!(item.label || item.heading)), (item) => item.guid, (item) => html`<li .ariaDisabled=${item.disabled} .ariaLabel=${item.label} id=${item.guid ?? nothing} role=option tabindex=-1>${item.heading}${item.description}</li>`);
403
+ return repeat(this.items.filter((item) => !!(item.label || item.heading)), (item) => item.guid, (item) => html`<li .ariaDisabled=${item.disabled} .ariaLabel=${item.label} .ariaSelected=${item.selected} id=${item.guid ?? nothing} role=option tabindex=-1>${item.heading}${item.description}</li>`);
415
404
  }
416
405
  }
417
406
  customElement("calcite-autocomplete", Autocomplete);
@@ -34,6 +34,12 @@ export abstract class AutocompleteItem extends LitElement {
34
34
  accessor iconStart: IconName;
35
35
  /** Specifies an accessible label for the component. */
36
36
  accessor label: string;
37
+ /**
38
+ * When `true`, the component is selected.
39
+ *
40
+ * @default false
41
+ */
42
+ accessor selected: boolean;
37
43
  /** Specifies the component's value. */
38
44
  accessor value: string;
39
45
  /** Fires when the item has been selected. */
@@ -24,7 +24,7 @@ const idPrefix = "autocomplete-item";
24
24
  const IDS = {
25
25
  host: (id) => `${idPrefix}-${id}`
26
26
  };
27
- const styles = css`:host([disabled]){cursor:default;-webkit-user-select:none;user-select:none;opacity:var(--calcite-opacity-disabled)}:host([disabled]) *,:host([disabled]) ::slotted(*){pointer-events:none}.scale--s{font-size:var(--calcite-font-size-relative-sm);line-height:var(--calcite-font-line-height-sm);--calcite-internal-autocomplete-item-spacing-unit-l: .5rem;--calcite-internal-autocomplete-item-spacing-unit-s: .25rem;--calcite-internal-autocomplete-item-description-font-size: var(--calcite-font-size-xs)}.scale--m{font-size:var(--calcite-font-size-relative-base);line-height:var(--calcite-font-line-height-base);--calcite-internal-autocomplete-item-spacing-unit-l: .75rem;--calcite-internal-autocomplete-item-spacing-unit-s: .375rem;--calcite-internal-autocomplete-item-description-font-size: var(--calcite-font-size-sm)}.scale--l{font-size:var(--calcite-font-size-relative-md);line-height:var(--calcite-font-line-height-md);--calcite-internal-autocomplete-item-spacing-unit-l: 1rem;--calcite-internal-autocomplete-item-spacing-unit-s: .625rem;--calcite-internal-autocomplete-item-description-font-size: var(--calcite-font-size)}:host{display:flex}.container{position:relative;box-sizing:border-box;display:flex;inline-size:100%;min-inline-size:100%;cursor:pointer;align-items:center;outline-color:transparent;background-color:var(--calcite-autocomplete-background-color, var(--calcite-color-foreground-1));color:var(--calcite-autocomplete-text-color, var(--calcite-color-text-3));gap:var(--calcite-internal-autocomplete-item-spacing-unit-l);padding-inline:var(--calcite-internal-autocomplete-item-spacing-unit-l);padding-block:var(--calcite-internal-autocomplete-item-spacing-unit-s);word-wrap:break-word;word-break:break-word;justify-content:space-around}.description{color:var(--calcite-autocomplete-description-text-color);font-size:var(--calcite-internal-autocomplete-item-description-font-size)}.heading{color:var(--calcite-autocomplete-heading-text-color, var(--calcite-color-text-1))}.heading,.description{line-height:var(--calcite-font-line-height-relative-snug)}:host(:hover:not([disabled])) .container{background-color:var(--calcite-autocomplete-background-color, var(--calcite-color-foreground-2))}:host(:hover:not([disabled])) .container .description{color:var(--calcite-autocomplete-description-text-color, var(--calcite-color-text-2))}.container--active{outline:var(--calcite-border-width-md) solid var(--calcite-color-focus, var(--calcite-ui-focus-color, var(--calcite-color-brand)));outline-offset:calc(calc(-1 * var(--calcite-spacing-base)) * calc(1 - (2*clamp(0,var(--calcite-offset-invert-focus),1))))}.content-center{display:flex;flex-direction:column;flex-grow:1;padding-block:0}.text-match{background-color:transparent;color:inherit;font-weight:var(--calcite-font-weight-bold)}:host([hidden]){display:none}[hidden]{display:none}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}.interaction-container{display:contents}`;
27
+ const styles = css`:host([disabled]){cursor:default;-webkit-user-select:none;user-select:none;opacity:var(--calcite-opacity-disabled)}:host([disabled]) *,:host([disabled]) ::slotted(*){pointer-events:none}.scale--s{font-size:var(--calcite-font-size-relative-sm);line-height:var(--calcite-font-line-height-sm);--calcite-internal-autocomplete-item-spacing-unit-l: .5rem;--calcite-internal-autocomplete-item-spacing-unit-s: .25rem;--calcite-internal-autocomplete-item-description-font-size: var(--calcite-font-size-xs)}.scale--m{font-size:var(--calcite-font-size-relative-base);line-height:var(--calcite-font-line-height-base);--calcite-internal-autocomplete-item-spacing-unit-l: .75rem;--calcite-internal-autocomplete-item-spacing-unit-s: .375rem;--calcite-internal-autocomplete-item-description-font-size: var(--calcite-font-size-sm)}.scale--l{font-size:var(--calcite-font-size-relative-md);line-height:var(--calcite-font-line-height-md);--calcite-internal-autocomplete-item-spacing-unit-l: 1rem;--calcite-internal-autocomplete-item-spacing-unit-s: var(--calcite-space-sm-plus);--calcite-internal-autocomplete-item-description-font-size: var(--calcite-font-size)}:host{display:flex}.container{position:relative;box-sizing:border-box;display:flex;inline-size:100%;min-inline-size:100%;cursor:pointer;align-items:center;outline-color:transparent;background-color:var(--calcite-autocomplete-background-color, var(--calcite-color-foreground-1));color:var(--calcite-autocomplete-text-color, var(--calcite-color-text-3));gap:var(--calcite-internal-autocomplete-item-spacing-unit-l);padding-inline:var(--calcite-internal-autocomplete-item-spacing-unit-l);padding-block:var(--calcite-internal-autocomplete-item-spacing-unit-s);word-wrap:break-word;word-break:break-word;justify-content:space-around}.description{color:var(--calcite-autocomplete-description-text-color);font-size:var(--calcite-internal-autocomplete-item-description-font-size)}.heading{color:var(--calcite-autocomplete-heading-text-color, var(--calcite-color-text-1))}.heading,.description{line-height:var(--calcite-font-line-height-relative-snug)}:host([selected]) .container{color:var(--calcite-color-text-1);background-color:var(--calcite-color-surface-highlight)}:host([selected]) .container .description{color:var(--calcite-autocomplete-description-text-color, var(--calcite-color-text-2))}:host([selected]) .heading{font-weight:var(--calcite-font-weight-medium)}:host(:hover:not([disabled])) .container{background-color:var(--calcite-autocomplete-background-color, var(--calcite-color-foreground-2))}:host(:hover:not([disabled])) .container .description{color:var(--calcite-autocomplete-description-text-color, var(--calcite-color-text-2))}.container--active{outline:var(--calcite-border-width-md) solid var(--calcite-color-focus, var(--calcite-ui-focus-color, var(--calcite-color-brand)));outline-offset:calc(calc(-1 * var(--calcite-spacing-base)) * calc(1 - (2*clamp(0,var(--calcite-offset-invert-focus),1))))}.content-center{display:flex;flex-direction:column;flex-grow:1;padding-block:0}.text-match{background-color:transparent;color:inherit;font-weight:var(--calcite-font-weight-bold)}:host([hidden]){display:none}[hidden]{display:none}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}.interaction-container{display:contents}`;
28
28
  class AutocompleteItem extends LitElement {
29
29
  constructor() {
30
30
  super(...arguments);
@@ -33,20 +33,25 @@ class AutocompleteItem extends LitElement {
33
33
  this.disabled = false;
34
34
  this.guid = IDS.host(guid());
35
35
  this.scale = "m";
36
+ this.selected = false;
36
37
  this.calciteAutocompleteItemSelect = createEvent({ cancelable: false });
37
38
  }
38
39
  static {
39
- this.properties = { active: [5, {}, { type: Boolean }], description: 1, disabled: [7, {}, { reflect: true, type: Boolean }], guid: 1, heading: 1, iconEnd: [3, { type: String }, { reflect: true }], iconFlipRtl: [3, {}, { reflect: true }], iconStart: [3, { type: String }, { reflect: true }], inputValueMatchPattern: [3, {}, { reflect: true }], label: 1, scale: 1, value: 1 };
40
+ this.properties = { active: [5, {}, { type: Boolean }], description: 1, disabled: [7, {}, { reflect: true, type: Boolean }], guid: 1, heading: 1, iconEnd: [3, { type: String }, { reflect: true }], iconFlipRtl: [3, {}, { reflect: true }], iconStart: [3, { type: String }, { reflect: true }], inputValueMatchPattern: [3, {}, { reflect: true }], label: 1, scale: 1, selected: [7, {}, { reflect: true, type: Boolean }], value: 1 };
40
41
  }
41
42
  static {
42
43
  this.styles = styles;
43
44
  }
44
- emitSelectEvent() {
45
+ toggleSelection() {
46
+ this.selected = !this.selected;
45
47
  this.calciteAutocompleteItemSelect.emit();
46
48
  }
47
49
  handleClick(event) {
48
50
  event.preventDefault();
49
- this.emitSelectEvent();
51
+ if (this.disabled) {
52
+ return;
53
+ }
54
+ this.toggleSelection();
50
55
  }
51
56
  render() {
52
57
  const { active, description, heading, disabled, inputValueMatchPattern } = this;
@@ -12,9 +12,9 @@ import type { IconName } from "../calcite-icon/interfaces.js";
12
12
  * @cssproperty [--calcite-block-header-background-color-hover] - Specifies the component's `heading` background color when hovered.
13
13
  * @cssproperty [--calcite-block-header-background-color-press] - Specifies the component's `heading` background color when pressed.
14
14
  * @cssproperty [--calcite-block-heading-text-color] - Specifies the component's `heading` text color.
15
- * @cssproperty [--calcite-block-heading-text-color-press] - [Deprecated] use `--calcite-block-heading-text-color` instead - When the component is `expanded`, specifies the `heading` text color.
16
- * @cssproperty [--calcite-block-padding] - [Deprecated] use `--calcite-block-content-space` instead - Specifies the padding of the component's `default` slot.
17
- * @cssproperty [--calcite-block-text-color] - [Deprecated] Specifies the component's text color.
15
+ * @cssproperty [--calcite-block-heading-text-color-press] - [Deprecated] in v3.3.0, removal target v6.0.0 - Use `--calcite-block-heading-text-color` instead. When the component is `expanded`, specifies the `heading` text color.
16
+ * @cssproperty [--calcite-block-padding] - [Deprecated] in v3.3.0, removal target v6.0.0 - Use `--calcite-block-content-space` instead. Specifies the padding of the component's `default` slot.
17
+ * @cssproperty [--calcite-block-text-color] - [Deprecated] in v3.3.0, removal target v6.0.0 - Specifies the component's text color.
18
18
  * @cssproperty [--calcite-block-description-text-color] - Specifies the component's `description` text color.
19
19
  * @cssproperty [--calcite-block-icon-color] - Specifies the component's `collapsible` icon, `iconStart` and `iconEnd` color.
20
20
  * @cssproperty [--calcite-block-icon-color-hover] - Specifies the component's `collapsible` icon color when hovered.
@@ -132,14 +132,14 @@ export abstract class Block extends LitElement {
132
132
  * Only set this if you need complex z-index control or if top layer placement causes conflicts with third-party components.
133
133
  *
134
134
  * @default false
135
- * @mdn [Top Layer](https://developer.mozilla.org/en-US/docs/Glossary/Top_layer)
135
+ * @see [MDN - Top Layer](https://developer.mozilla.org/en-US/docs/Glossary/Top_layer)
136
136
  */
137
137
  accessor topLayerDisabled: boolean;
138
138
  /**
139
139
  * Sets focus on the component's first tabbable element.
140
140
  *
141
141
  * @param options - When specified an optional object customizes the component's focusing process. When `preventScroll` is `true`, scrolling will not occur on the component.
142
- * @mdn [focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
142
+ * @see [MDN - focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
143
143
  */
144
144
  setFocus(options?: FocusOptions): Promise<void>;
145
145
  /** Fires when the component is requested to be closed and before the closing transition begins. */
@@ -55,7 +55,7 @@ const ICONS = {
55
55
  valid: "check-circle",
56
56
  invalid: "exclamation-mark-triangle"
57
57
  };
58
- const styles = css`:host{box-sizing:border-box;background-color:var(--calcite-color-foreground-1);color:var(--calcite-color-text-2);font-size:var(--calcite-font-size--1)}:host *{box-sizing:border-box}:host([disabled]){cursor:default;-webkit-user-select:none;user-select:none;opacity:var(--calcite-opacity-disabled)}:host([disabled]) *,:host([disabled]) ::slotted(*){pointer-events:none}:host([scale=s]) .header{gap:var(--calcite-spacing-sm)}:host([scale=s]) .icon-end-container{gap:var(--calcite-spacing-sm);padding-inline-end:var(--calcite-spacing-sm)}:host([scale=s]) .heading{font-size:var(--calcite-font-size-sm)}:host([scale=s]) .description{font-size:var(--calcite-font-size-xs)}:host([scale=s]){--calcite-internal-block-actions-spacing: var(--calcite-spacing-xxs);--calcite-internal-block-header-content-padding: var(--calcite-spacing-sm);--calcite-internal-block-padding-block: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-xxs)) );--calcite-internal-block-padding-inline: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-sm)) )}:host([scale=m]) .header{gap:var(--calcite-spacing-md)}:host([scale=m]) .icon-end-container{gap:var(--calcite-spacing-md);padding-inline-end:var(--calcite-spacing-md)}:host([scale=m]) .heading{font-size:var(--calcite-font-size)}:host([scale=m]) .description{font-size:var(--calcite-font-size-sm)}:host([scale=m]){--calcite-internal-block-actions-spacing: var(--calcite-spacing-xxs);--calcite-internal-block-header-content-padding: var(--calcite-spacing-md);--calcite-internal-block-padding-block: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-sm)) );--calcite-internal-block-padding-inline: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-md)) )}:host([scale=l]) .header{gap:var(--calcite-spacing-lg)}:host([scale=l]) .icon-end-container{gap:var(--calcite-spacing-lg);padding-inline-end:var(--calcite-spacing-lg)}:host([scale=l]) .heading{font-size:var(--calcite-font-size-md)}:host([scale=l]) .description{font-size:var(--calcite-font-size)}:host([scale=l]){--calcite-internal-block-actions-spacing: var(--calcite-spacing-xs);--calcite-internal-block-header-content-padding: var(--calcite-spacing-lg);--calcite-internal-block-padding-block: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-md)) );--calcite-internal-block-padding-inline: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-lg)) )}:host{display:flex;flex-shrink:0;flex-grow:0;flex-direction:column;border-width:0px;border-block-end-width:1px;border-style:solid;padding:0;transition-property:margin;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:var(--calcite-animation-timing);transition-timing-function:cubic-bezier(.215,.44,.42,.88);flex-basis:auto;border-color:var(--calcite-block-border-color, var(--calcite-color-border-3))}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}.interaction-container{display:contents}.header{justify-content:flex-start}.header--has-content{padding:var(--calcite-internal-block-header-content-padding)}.header--draggable{padding-inline-start:var(--calcite-spacing-xxs)}.header,.toggle{grid-area:header}.header-container{display:grid;align-items:stretch;grid-template:auto/auto 1fr auto auto auto auto;grid-template-areas:"handle header icon-end menu actions-end"}.icon--start,.icon--end{color:var(--calcite-block-icon-color, var(--calcite-color-text-3))}.actions-end{align-items:center;display:flex;gap:var(--calcite-internal-block-actions-spacing);grid-area:actions-end;padding-block:var(--calcite-internal-block-actions-spacing);padding-inline-end:var(--calcite-internal-block-actions-spacing)}.toggle{margin:0;display:flex;cursor:pointer;flex-wrap:nowrap;align-items:center;justify-content:space-between;border-style:none;padding:0;outline-color:transparent;font-family:inherit;text-align:initial;background-color:var(--calcite-block-header-background-color, transparent)}.toggle:hover{background-color:var(--calcite-block-header-background-color-hover, var(--calcite-color-foreground-2))}.toggle:focus{outline:var(--calcite-border-width-md) solid var(--calcite-color-focus, var(--calcite-ui-focus-color, var(--calcite-color-brand)));outline-offset:calc(calc(-1 * var(--calcite-spacing-base)) * calc(1 - (2*clamp(0,var(--calcite-offset-invert-focus),1))))}.toggle:active{background-color:var(--calcite-block-header-background-color-press, var(--calcite-color-foreground-3))}calcite-loader[inline]{align-self:center}calcite-sort-handle{align-self:center;grid-area:handle;margin-block:var(--calcite-internal-block-actions-spacing);padding-inline-start:var(--calcite-spacing-xxs)}.title{display:flex;flex-direction:column}.header .title .heading{padding:0;word-wrap:break-word;word-break:break-word;color:var(--calcite-block-heading-text-color, var(--calcite-color-text-1));font-weight:var(--calcite-font-weight-normal);line-height:var(--calcite-font-line-height-relative-snug)}.description{padding:0;word-wrap:break-word;word-break:break-word;color:var(--calcite-block-description-text-color, var(--calcite-color-text-3));font-weight:var(--calcite-font-weight-regular);line-height:var(--calcite-font-line-height-relative-snug)}.icon{display:flex}.status-icon.valid{color:var(--calcite-color-status-success)}.status-icon.invalid{color:var(--calcite-color-status-danger)}@keyframes spin{0%{transform:rotate(0)}50%{transform:rotate(180deg)}to{transform:rotate(360deg)}}.icon-end-container{display:flex;align-items:center;grid-area:icon-end}.toggle-icon{align-self:center;justify-self:end;transition-property:color;transition-duration:var(--calcite-animation-timing);transition-timing-function:cubic-bezier(.4,0,.2,1);color:var(--calcite-block-icon-color, var(--calcite-color-text-3))}.toggle:hover .toggle-icon{color:var(--calcite-block-icon-color-hover, var(--calcite-color-text-1))}.container{position:relative;display:flex;block-size:100%;flex-direction:column}.content{position:relative;min-block-size:0px;flex:1 1 0%}@keyframes in{0%{opacity:0}to{opacity:1}}.content{animation:in var(--calcite-internal-animation-timing-slow) ease-in-out;padding-block:var(--calcite-internal-block-padding-block);padding-inline:var(--calcite-internal-block-padding-inline)}.content-end,.content-start{display:flex;align-items:center;color:var(--calcite-block-text-color, var(--calcite-color-text-3))}calcite-action-menu{align-self:center;grid-area:menu;margin-inline-end:var(--calcite-internal-block-actions-spacing)}:host([expanded]){margin-block:.5rem}:host([expanded]) .header .title .heading{color:var(--calcite-block-heading-text-color, var(--calcite-block-heading-text-color-press, var(--calcite-color-text-1)));font-weight:var(--calcite-font-weight-medium)}:host([expanded]) .description{color:var(--calcite-block-description-text-color, var(--calcite-color-text-2))}:host([expanded]) .icon--start,:host([expanded]) .icon--end{color:var(--calcite-block-icon-color, var(--calcite-color-text-1))}:host([expanded][scale=s]){margin-block:var(--calcite-spacing-xxs)}:host([expanded][scale=l]){margin-block:var(--calcite-spacing-md)}:host([hidden]){display:none}[hidden]{display:none}`;
58
+ const styles = css`:host{box-sizing:border-box;background-color:var(--calcite-color-foreground-1);color:var(--calcite-color-text-2);font-size:var(--calcite-font-size--1)}:host *{box-sizing:border-box}:host([disabled]){cursor:default;-webkit-user-select:none;user-select:none;opacity:var(--calcite-opacity-disabled)}:host([disabled]) *,:host([disabled]) ::slotted(*){pointer-events:none}:host([scale=s]) .header{gap:var(--calcite-spacing-sm)}:host([scale=s]) .icon-end-container{gap:var(--calcite-spacing-sm);padding-inline-end:var(--calcite-spacing-sm)}:host([scale=s]) .heading{font-size:var(--calcite-font-size-sm)}:host([scale=s]) .description{font-size:var(--calcite-font-size-xs)}:host([scale=s]){--calcite-internal-block-actions-spacing: var(--calcite-spacing-xxs);--calcite-internal-block-header-content-padding: var(--calcite-spacing-sm);--calcite-internal-block-padding-block: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-xxs)) );--calcite-internal-block-padding-inline: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-sm)) )}:host([scale=m]) .header{gap:var(--calcite-spacing-md)}:host([scale=m]) .icon-end-container{gap:var(--calcite-spacing-md);padding-inline-end:var(--calcite-spacing-md)}:host([scale=m]) .heading{font-size:var(--calcite-font-size)}:host([scale=m]) .description{font-size:var(--calcite-font-size-sm)}:host([scale=m]){--calcite-internal-block-actions-spacing: var(--calcite-spacing-xxs);--calcite-internal-block-header-content-padding: var(--calcite-spacing-md);--calcite-internal-block-padding-block: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-sm)) );--calcite-internal-block-padding-inline: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-md)) )}:host([scale=l]) .header{gap:var(--calcite-spacing-lg)}:host([scale=l]) .icon-end-container{gap:var(--calcite-spacing-lg);padding-inline-end:var(--calcite-spacing-lg)}:host([scale=l]) .heading{font-size:var(--calcite-font-size-md)}:host([scale=l]) .description{font-size:var(--calcite-font-size)}:host([scale=l]){--calcite-internal-block-actions-spacing: var(--calcite-spacing-xs);--calcite-internal-block-header-content-padding: var(--calcite-spacing-lg);--calcite-internal-block-padding-block: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-md)) );--calcite-internal-block-padding-inline: var( --calcite-block-content-space, var(--calcite-block-padding, var(--calcite-spacing-lg)) )}:host{display:flex;flex-shrink:0;flex-grow:0;flex-direction:column;border-width:0px;border-block-end-width:1px;border-style:solid;padding:0;transition-property:margin;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:var(--calcite-animation-timing);transition-timing-function:cubic-bezier(.215,.44,.42,.88);flex-basis:auto;border-color:var(--calcite-block-border-color, var(--calcite-color-border-3))}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}.interaction-container{display:contents}.header{justify-content:flex-start}.header--has-content{padding:var(--calcite-internal-block-header-content-padding)}.header--draggable{padding-inline-start:var(--calcite-spacing-xxs)}.header,.toggle{grid-area:header}.header-container{display:grid;align-items:stretch;grid-template:auto/auto 1fr auto auto auto auto;grid-template-areas:"handle header icon-end menu actions-end"}.icon--start,.icon--end{color:var(--calcite-block-icon-color, var(--calcite-color-text-3))}.actions-end{align-items:center;display:flex;gap:var(--calcite-internal-block-actions-spacing);grid-area:actions-end;padding-block:var(--calcite-internal-block-actions-spacing);padding-inline-end:var(--calcite-internal-block-actions-spacing)}.toggle{margin:0;display:flex;cursor:pointer;flex-wrap:nowrap;align-items:center;justify-content:space-between;border-style:none;padding:0;outline-color:transparent;font-family:inherit;text-align:initial;background-color:var(--calcite-block-header-background-color, transparent)}.toggle:hover{background-color:var(--calcite-block-header-background-color-hover, var(--calcite-color-foreground-2))}.toggle:focus{outline:var(--calcite-border-width-md) solid var(--calcite-color-focus, var(--calcite-ui-focus-color, var(--calcite-color-brand)));outline-offset:calc(calc(-1 * var(--calcite-spacing-base)) * calc(1 - (2*clamp(0,var(--calcite-offset-invert-focus),1))))}.toggle:active{background-color:var(--calcite-block-header-background-color-press, var(--calcite-color-foreground-3))}calcite-loader[inline]{align-self:center}calcite-sort-handle{align-self:center;grid-area:handle;margin-block:var(--calcite-internal-block-actions-spacing);padding-inline-start:var(--calcite-spacing-xxs)}.title{display:flex;flex-direction:column}.header .title .heading{padding:0;word-wrap:break-word;word-break:break-word;color:var(--calcite-block-heading-text-color, var(--calcite-color-text-1));font-weight:var(--calcite-font-weight-normal);line-height:var(--calcite-font-line-height-relative-snug)}.description{padding:0;word-wrap:break-word;word-break:break-word;color:var(--calcite-block-description-text-color, var(--calcite-color-text-3));font-weight:var(--calcite-font-weight-regular);line-height:var(--calcite-font-line-height-relative-snug)}.icon{display:flex}.status-icon.valid{color:var(--calcite-color-status-success)}.status-icon.invalid{color:var(--calcite-color-status-danger)}@keyframes spin{0%{transform:rotate(0)}50%{transform:rotate(180deg)}to{transform:rotate(360deg)}}.icon-end-container{display:flex;align-items:center;grid-area:icon-end}.toggle-icon{align-self:center;justify-self:end;transition-property:color;transition-duration:var(--calcite-animation-timing);transition-timing-function:cubic-bezier(.4,0,.2,1);color:var(--calcite-block-icon-color, var(--calcite-color-text-3))}.toggle:hover .toggle-icon{color:var(--calcite-block-icon-color-hover, var(--calcite-color-text-1))}.container{position:relative;display:flex;block-size:100%;flex-direction:column}.content{position:relative;min-block-size:0px;flex:1 1 0%;opacity:0;padding-block:var(--calcite-internal-block-padding-block);padding-inline:var(--calcite-internal-block-padding-inline);transition:opacity var(--calcite-internal-animation-timing-slow) ease-in-out}.content-end,.content-start{display:flex;align-items:center;color:var(--calcite-block-text-color, var(--calcite-color-text-3))}calcite-action-menu{align-self:center;grid-area:menu;margin-inline-end:var(--calcite-internal-block-actions-spacing)}:host([expanded]){margin-block:.5rem}:host([expanded]) .header .title .heading{color:var(--calcite-block-heading-text-color, var(--calcite-block-heading-text-color-press, var(--calcite-color-text-1)));font-weight:var(--calcite-font-weight-medium)}:host([expanded]) .description{color:var(--calcite-block-description-text-color, var(--calcite-color-text-2))}:host([expanded]) .icon--start,:host([expanded]) .icon--end{color:var(--calcite-block-icon-color, var(--calcite-color-text-1))}:host([expanded]) .content{opacity:1}@starting-style{:host([expanded]){margin-block-start:0;opacity:0}}:host([expanded][scale=s]){margin-block:var(--calcite-spacing-xxs)}:host([expanded][scale=l]){margin-block:var(--calcite-spacing-md)}:host([hidden]){display:none}[hidden]{display:none}`;
59
59
  class Block extends LitElement {
60
60
  constructor() {
61
61
  super(...arguments);
@@ -57,7 +57,7 @@ export abstract class BlockGroup extends LitElement {
57
57
  * Sets focus on the component's first focusable element.
58
58
  *
59
59
  * @param options - When specified an optional object customizes the component's focusing process. When `preventScroll` is `true`, scrolling will not occur on the component.
60
- * @mdn [focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
60
+ * @see [MDN - focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
61
61
  */
62
62
  setFocus(options?: FocusOptions): Promise<void>;
63
63
  /** Fires when the component's dragging has ended. */
@@ -4,12 +4,12 @@ import { debounce } from "es-toolkit";
4
4
  import { css, html } from "lit";
5
5
  import { LitElement, createEvent, safeClassMap } from "@arcgis/lumina";
6
6
  import { c as createObserver } from "../../chunks/observers.js";
7
- import { d as disconnectSortableComponent, c as connectSortableComponent } from "../../chunks/sortableComponent.js";
8
7
  import { e as getRootNode, a as slotChangeGetAssignedElements } from "../../chunks/dom.js";
9
8
  import { g as guid } from "../../chunks/guid.js";
10
9
  import { u as useSetFocus } from "../../chunks/useSetFocus.js";
11
10
  import { u as useCancelable } from "../../chunks/useCancelable.js";
12
11
  import { u as useInteractive } from "../../chunks/useInteractive.js";
12
+ import { u as useSortable } from "../../chunks/useSortable.js";
13
13
  function isBlock(element) {
14
14
  return element.tagName === "CALCITE-BLOCK";
15
15
  }
@@ -39,6 +39,7 @@ class BlockGroup extends LitElement {
39
39
  this.blockAndGroups = [];
40
40
  this.cancelable = useCancelable()(this);
41
41
  this.focusSetter = useSetFocus()(this);
42
+ this.sortable = useSortable()(this);
42
43
  this.updateBlockItemsDebounced = debounce(this.updateBlockItems, DEBOUNCE.nextTick);
43
44
  this.interactiveContainer = useInteractive(this);
44
45
  this.sortHandleMenuItems = [];
@@ -73,7 +74,7 @@ class BlockGroup extends LitElement {
73
74
  super.connectedCallback();
74
75
  this.connectObserver();
75
76
  this.updateBlockItemsDebounced();
76
- this.setUpSorting();
77
+ this.sortable.reset();
77
78
  this.setParentBlockGroup();
78
79
  this.cancelable.add(this.updateBlockItemsDebounced);
79
80
  }
@@ -88,7 +89,6 @@ class BlockGroup extends LitElement {
88
89
  disconnectedCallback() {
89
90
  super.disconnectedCallback();
90
91
  this.disconnectObserver();
91
- disconnectSortableComponent(this);
92
92
  }
93
93
  updateBlockItems() {
94
94
  this.updateGroupItems();
@@ -118,7 +118,7 @@ class BlockGroup extends LitElement {
118
118
  item.sortDisabled = sortDisabled;
119
119
  }
120
120
  });
121
- this.setUpSorting();
121
+ this.sortable.reset();
122
122
  }
123
123
  updateGroupItems() {
124
124
  const { el, group } = this;
@@ -161,13 +161,6 @@ class BlockGroup extends LitElement {
161
161
  disconnectObserver() {
162
162
  this.mutationObserver?.disconnect();
163
163
  }
164
- setUpSorting() {
165
- const { dragEnabled } = this;
166
- if (!dragEnabled) {
167
- return;
168
- }
169
- connectSortableComponent(this);
170
- }
171
164
  onGlobalDragStart() {
172
165
  this.disconnectObserver();
173
166
  }
@@ -1,9 +1,5 @@
1
- import type { DragDetail } from "../../utils/sortableComponent.js";
1
+ import type { DragDetail } from "../../controllers/useSortable.js";
2
2
  import type { Block } from "../calcite-block/customElement.js";
3
3
  import type { BlockGroup } from "./customElement.js";
4
4
 
5
- export interface BlockDragDetail extends DragDetail {
6
- toEl: BlockGroup;
7
- fromEl: BlockGroup;
8
- dragEl: Block;
9
- }
5
+ export type BlockDragDetail = DragDetail<BlockGroup, BlockGroup, Block>;
@@ -66,7 +66,7 @@ export abstract class BlockSection extends LitElement {
66
66
  * Sets focus on the component's first tabbable element.
67
67
  *
68
68
  * @param options - When specified an optional object customizes the component's focusing process. When `preventScroll` is `true`, scrolling will not occur on the component.
69
- * @mdn [focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
69
+ * @see [MDN - focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
70
70
  */
71
71
  setFocus(options?: FocusOptions): Promise<void>;
72
72
  /** Fires when the component's content area is collapsed. */
@@ -20,7 +20,7 @@ import type { ButtonAlignment } from "./interfaces.js";
20
20
  */
21
21
  export abstract class Button extends LitElement {
22
22
  /**
23
- * Specifies the alignment of the component's elements.
23
+ * When `width` is not `"auto"`, specifies the alignment of the component's elements.
24
24
  *
25
25
  * @default "center"
26
26
  */
@@ -42,7 +42,7 @@ export abstract class Button extends LitElement {
42
42
  * Without a value, the browser will suggest a filename/extension.
43
43
  *
44
44
  * @default false
45
- * @see [Global download attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#download).
45
+ * @see [MDN - Global download attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#download).
46
46
  */
47
47
  accessor download: string | boolean;
48
48
  /**
@@ -80,7 +80,7 @@ export abstract class Button extends LitElement {
80
80
  /**
81
81
  * Defines the relationship between the `href` value and the current document.
82
82
  *
83
- * @mdn [rel](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel)
83
+ * @see [MDN - rel](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel)
84
84
  */
85
85
  accessor rel: string;
86
86
  /**
@@ -104,14 +104,14 @@ export abstract class Button extends LitElement {
104
104
  /**
105
105
  * Specifies where to open the linked document defined in the `href` property.
106
106
  *
107
- * @mdn [target](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-target)
107
+ * @see [MDN - target](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-target)
108
108
  */
109
109
  accessor target: string;
110
110
  /**
111
111
  * Specifies the default behavior of the component.
112
112
  *
113
113
  * @default "button"
114
- * @mdn [type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-type)
114
+ * @see [MDN - type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#attr-type)
115
115
  */
116
116
  accessor type: HTMLButtonElement["type"];
117
117
  /**
@@ -124,7 +124,7 @@ export abstract class Button extends LitElement {
124
124
  * Sets focus on the component.
125
125
  *
126
126
  * @param options - When specified an optional object customizes the component's focusing process. When `preventScroll` is `true`, scrolling will not occur on the component.
127
- * @mdn [focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
127
+ * @see [MDN - focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
128
128
  */
129
129
  setFocus(options?: FocusOptions): Promise<void>;
130
130
  }