@esri/calcite-components 5.1.0-next.6 → 5.1.0-next.60

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 (498) hide show
  1. package/dist/cdn/{L62IP5MG.js → 2JC63UBS.js} +1 -1
  2. package/dist/cdn/2PQRUWNS.js +2 -0
  3. package/dist/cdn/{YGKHTZ4V.js → 2W7I2RRR.js} +1 -1
  4. package/dist/cdn/33NBRPD5.js +2 -0
  5. package/dist/cdn/{TR56QFJC.js → 34NMNGJX.js} +1 -1
  6. package/dist/cdn/{YBIQF3JQ.js → 36V2SAYV.js} +1 -1
  7. package/dist/cdn/3RKYV4EU.js +2 -0
  8. package/dist/cdn/4C4TYQBB.js +2 -0
  9. package/dist/cdn/{27S7SCHF.js → 4DTIKF3X.js} +1 -1
  10. package/dist/cdn/4X7777BM.js +2 -0
  11. package/dist/cdn/{DNYQCUGR.js → 53ELH3LP.js} +1 -1
  12. package/dist/cdn/5GPET3LM.js +2 -0
  13. package/dist/cdn/5ICBDVRX.js +2 -0
  14. package/dist/cdn/5IEGYEGX.js +2 -0
  15. package/dist/cdn/{HAVRDDW3.js → 5NQFTJZK.js} +1 -1
  16. package/dist/cdn/5TGQPSUE.js +2 -0
  17. package/dist/cdn/{ZCJDNXK2.js → 6EKA77FA.js} +1 -1
  18. package/dist/cdn/{XI7FVSES.js → 6FN7HUWQ.js} +1 -1
  19. package/dist/cdn/{HBRWGV2Z.js → 6KAHTFCR.js} +1 -1
  20. package/dist/cdn/{56V6AANR.js → 6N2EIPRN.js} +1 -1
  21. package/dist/cdn/6REHHP67.js +2 -0
  22. package/dist/cdn/6ULZKAI4.js +2 -0
  23. package/dist/cdn/77KENABW.js +2 -0
  24. package/dist/cdn/{AECJNJ7Y.js → 77N34KNA.js} +1 -1
  25. package/dist/cdn/7JEZPJH4.js +2 -0
  26. package/dist/cdn/{RZSXCJTK.js → 7QL3YAQN.js} +1 -1
  27. package/dist/cdn/{HJRA23WV.js → 7XXNWTI2.js} +1 -1
  28. package/dist/cdn/ABV5DIAC.js +3 -0
  29. package/dist/cdn/ACPNEYIL.js +2 -0
  30. package/dist/cdn/ADSGKQWL.js +2 -0
  31. package/dist/cdn/AWVSUBJI.js +2 -0
  32. package/dist/cdn/AXYMVOBP.js +2 -0
  33. package/dist/cdn/B5A5VFJH.js +2 -0
  34. package/dist/cdn/BCQGOHCH.js +2 -0
  35. package/dist/cdn/{44K6CFSA.js → BM5NT2QG.js} +1 -1
  36. package/dist/cdn/{QMSQZWET.js → BXB2IHL5.js} +1 -1
  37. package/dist/cdn/CE6T3SFL.js +2 -0
  38. package/dist/cdn/CEDX246E.js +2 -0
  39. package/dist/cdn/CHD3ILKJ.js +2 -0
  40. package/dist/cdn/CHZZ2RYJ.js +2 -0
  41. package/dist/cdn/CXYCOZWQ.js +2 -0
  42. package/dist/cdn/{EHIAXJAL.js → DCWL5FUH.js} +1 -1
  43. package/dist/cdn/{PKKVWQIA.js → DDV63NHR.js} +1 -1
  44. package/dist/cdn/{P3W4A5BT.js → DJNFR4QI.js} +1 -1
  45. package/dist/cdn/{W5HANC6S.js → DLTF566J.js} +1 -1
  46. package/dist/cdn/{2M3L5CHC.js → DN3KX247.js} +1 -1
  47. package/dist/cdn/{YNGZPTWY.js → DOAP6WCZ.js} +1 -1
  48. package/dist/cdn/{6UH6TKTT.js → DRJLGXXO.js} +1 -1
  49. package/dist/cdn/{633FBLBS.js → DXY4C23A.js} +1 -1
  50. package/dist/cdn/{OSCPBA6O.js → DYDCVPOI.js} +1 -1
  51. package/dist/cdn/EGAAH6TG.js +2 -0
  52. package/dist/cdn/EJJQX4ML.js +2 -0
  53. package/dist/cdn/{GCGNKBZK.js → ENVIXFZU.js} +1 -1
  54. package/dist/cdn/{JVNG2BRO.js → EQU5P7SN.js} +1 -1
  55. package/dist/cdn/ESARDC6W.js +4 -0
  56. package/dist/cdn/ETIRLUPQ.js +2 -0
  57. package/dist/cdn/EYD2BXTW.js +2 -0
  58. package/dist/cdn/{7KPHVGVG.js → FE5OXGG4.js} +1 -1
  59. package/dist/cdn/G2HH5QEA.js +2 -0
  60. package/dist/cdn/G4U3PZ4V.js +2 -0
  61. package/dist/cdn/{ZB7NSHVW.js → G56X4IMP.js} +1 -1
  62. package/dist/cdn/GAAMXPVO.js +2 -0
  63. package/dist/cdn/GZJW26MB.js +2 -0
  64. package/dist/cdn/{6E6JZIDL.js → HBUIHCQ3.js} +1 -1
  65. package/dist/cdn/HH2LOAD2.js +2 -0
  66. package/dist/cdn/HSZGLDOY.js +2 -0
  67. package/dist/cdn/HYNLQ4YH.js +2 -0
  68. package/dist/cdn/IFEA2KUL.js +2 -0
  69. package/dist/cdn/IHLWEKHE.js +2 -0
  70. package/dist/cdn/IJVKNIVS.js +2 -0
  71. package/dist/cdn/IR5JNEWB.js +2 -0
  72. package/dist/cdn/IU5CF77N.js +2 -0
  73. package/dist/cdn/{JN5O4TLZ.js → IYHZBXVJ.js} +1 -1
  74. package/dist/cdn/IZ5V7N6A.js +2 -0
  75. package/dist/cdn/{XZX7ZHUA.js → JG5UHKQX.js} +1 -1
  76. package/dist/cdn/{IYMANB2G.js → JYLOZBNI.js} +1 -1
  77. package/dist/cdn/{O24SM7OF.js → KAQIINQ5.js} +1 -1
  78. package/dist/cdn/{JX4VBEH7.js → KBWDP7P5.js} +1 -1
  79. package/dist/cdn/{KJ42NLHR.js → KJBAHESF.js} +1 -1
  80. package/dist/cdn/KME5K4QX.js +2 -0
  81. package/dist/cdn/KNF3VDEF.js +2 -0
  82. package/dist/cdn/KTZXSDRQ.js +2 -0
  83. package/dist/cdn/{3HLHTUY5.js → KVPCYSF3.js} +1 -1
  84. package/dist/cdn/KZTXVBNL.js +2 -0
  85. package/dist/cdn/L7NZTBLE.js +2 -0
  86. package/dist/cdn/LQAE2SIH.js +2 -0
  87. package/dist/cdn/LUT36ST7.js +2 -0
  88. package/dist/cdn/LY62ZB2S.js +2 -0
  89. package/dist/cdn/M3HCHRLK.js +2 -0
  90. package/dist/cdn/{TWXMFG7A.js → M7SC44EX.js} +1 -1
  91. package/dist/cdn/{27KIJJVA.js → MBCDO7AO.js} +1 -1
  92. package/dist/cdn/{JQY63BDJ.js → MEBYN4KS.js} +1 -1
  93. package/dist/cdn/MYBWQ74T.js +2 -0
  94. package/dist/cdn/{3GV45XL7.js → MYDCGCGV.js} +1 -1
  95. package/dist/cdn/N4CKEM5T.js +2 -0
  96. package/dist/cdn/NKP6IMXA.js +2 -0
  97. package/dist/cdn/{REPXOUSM.js → NOF5PWPK.js} +1 -1
  98. package/dist/cdn/NSGUDIUD.js +2 -0
  99. package/dist/cdn/OJFAV7QX.js +2 -0
  100. package/dist/cdn/OPPGSVL7.js +2 -0
  101. package/dist/cdn/P62ELMRK.js +2 -0
  102. package/dist/cdn/{NLVQFJ3Z.js → PIKQITD7.js} +1 -1
  103. package/dist/cdn/{46ATGQXN.js → PPIX3XNI.js} +1 -1
  104. package/dist/cdn/PSCB2XXW.js +2 -0
  105. package/dist/cdn/{WE2SWJDR.js → PZ2LNZ7Q.js} +1 -1
  106. package/dist/cdn/PZ32GCPB.js +2 -0
  107. package/dist/cdn/Q3D6A7JD.js +2 -0
  108. package/dist/cdn/Q77UTH6Y.js +2 -0
  109. package/dist/cdn/{CSXVZ7IA.js → QAP4EE6I.js} +1 -1
  110. package/dist/cdn/{MCSIAIDA.js → QEDFI5NC.js} +1 -1
  111. package/dist/cdn/{526JZ6Y2.js → QIACXKZX.js} +1 -1
  112. package/dist/cdn/{4HL2Z5HN.js → QR33PARD.js} +1 -1
  113. package/dist/cdn/QTQYMKX6.js +2 -0
  114. package/dist/cdn/{FIYBHBE3.js → QY422VCO.js} +1 -1
  115. package/dist/cdn/{QX54642B.js → RDN36IJS.js} +1 -1
  116. package/dist/cdn/RLASUYQO.js +4 -0
  117. package/dist/cdn/ROENLRQS.js +2 -0
  118. package/dist/cdn/S2ICXQXT.js +2 -0
  119. package/dist/cdn/{CILYQWNA.js → SE3IOYSI.js} +1 -1
  120. package/dist/cdn/SJYIDE3P.js +2 -0
  121. package/dist/cdn/{AELSFDTC.js → SNGWW3DM.js} +1 -1
  122. package/dist/cdn/SZS6IBW7.js +2 -0
  123. package/dist/cdn/{PT5LBDUL.js → TGMGVOQH.js} +1 -1
  124. package/dist/cdn/{3N3YST3P.js → U75VROWX.js} +1 -1
  125. package/dist/cdn/UFPOH4DH.js +2 -0
  126. package/dist/cdn/UJIEG7DT.js +2 -0
  127. package/dist/cdn/{ETPCGFQN.js → UX7WP7OG.js} +1 -1
  128. package/dist/cdn/VEM5ZVQY.js +2 -0
  129. package/dist/cdn/VT6TY3DQ.js +2 -0
  130. package/dist/cdn/VWG4LTDM.js +2 -0
  131. package/dist/cdn/WAYYJNXJ.js +2 -0
  132. package/dist/cdn/WFBKZENT.js +2 -0
  133. package/dist/cdn/{RH6ZIP65.js → WGGFNK4Z.js} +1 -1
  134. package/dist/cdn/{B4SHCCW6.js → WUYBJO7J.js} +1 -1
  135. package/dist/cdn/{BVFHM66P.js → WWBUXJER.js} +1 -1
  136. package/dist/cdn/XFDDRAT2.js +2 -0
  137. package/dist/cdn/{NU744SVB.js → XKU4UAGF.js} +1 -1
  138. package/dist/cdn/{D2EYC7T6.js → XP2EMBHK.js} +1 -1
  139. package/dist/cdn/{OS5HZHBU.js → XVXDBX77.js} +1 -1
  140. package/dist/cdn/{57UFQM3M.js → YH26LJXE.js} +1 -1
  141. package/dist/cdn/{JVZSWSGV.js → YLYJ5GXE.js} +1 -1
  142. package/dist/cdn/YMO6IP7V.js +2 -0
  143. package/dist/cdn/YSS6A2ND.js +2 -0
  144. package/dist/cdn/{NCCVRAIB.js → ZANCD4RO.js} +1 -1
  145. package/dist/cdn/{THSY4EQU.js → ZHJNYGAU.js} +1 -1
  146. package/dist/cdn/{NGDCIJ3J.js → ZK2T6DXD.js} +1 -1
  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/returnToDefault16.json +1 -0
  210. package/dist/cdn/assets/icon/returnToDefault24.json +1 -0
  211. package/dist/cdn/assets/icon/returnToDefault32.json +1 -0
  212. package/dist/cdn/assets/icon/reviewMap16.json +1 -0
  213. package/dist/cdn/assets/icon/reviewMap24.json +1 -0
  214. package/dist/cdn/assets/icon/reviewMap32.json +1 -0
  215. package/dist/cdn/assets/icon/totalStation16.json +1 -0
  216. package/dist/cdn/assets/icon/totalStation24.json +1 -0
  217. package/dist/cdn/assets/icon/totalStation32.json +1 -0
  218. package/dist/cdn/assets/icon/velocityServer16.json +1 -0
  219. package/dist/cdn/assets/icon/velocityServer24.json +1 -0
  220. package/dist/cdn/assets/icon/velocityServer32.json +1 -0
  221. package/dist/cdn/index.js +2 -2
  222. package/dist/cdn/main.css +1 -1
  223. package/dist/chunks/ClearButton.js +16 -0
  224. package/dist/chunks/ExpandToggle.js +2 -2
  225. package/dist/chunks/Heading.js +3 -3
  226. package/dist/chunks/component.js +1 -1
  227. package/dist/chunks/dom.js +49 -28
  228. package/dist/chunks/floating-ui.js +2 -5
  229. package/dist/chunks/locale.js +29 -12
  230. package/dist/chunks/manager.js +505 -0
  231. package/dist/chunks/resources5.js +2 -1
  232. package/dist/chunks/resources6.js +2 -0
  233. package/dist/chunks/runtime.js +4 -4
  234. package/dist/chunks/useFocusTrap.js +25 -0
  235. package/dist/chunks/useForm.js +327 -0
  236. package/dist/chunks/useFormTrigger.js +25 -0
  237. package/dist/chunks/{sortableComponent.js → useSortable.js} +70 -44
  238. package/dist/chunks/utils.js +6 -6
  239. package/dist/chunks/utils3.js +18 -3
  240. package/dist/components/calcite-accordion-item/customElement.d.ts +6 -6
  241. package/dist/components/calcite-action/customElement.d.ts +20 -12
  242. package/dist/components/calcite-action/customElement.js +10 -15
  243. package/dist/components/calcite-action-bar/customElement.d.ts +4 -4
  244. package/dist/components/calcite-action-bar/customElement.js +12 -6
  245. package/dist/components/calcite-action-group/customElement.d.ts +12 -6
  246. package/dist/components/calcite-action-group/customElement.js +2 -1
  247. package/dist/components/calcite-action-menu/customElement.d.ts +2 -2
  248. package/dist/components/calcite-action-pad/customElement.d.ts +3 -3
  249. package/dist/components/calcite-action-pad/customElement.js +12 -7
  250. package/dist/components/calcite-alert/customElement.d.ts +2 -2
  251. package/dist/components/calcite-alert/customElement.js +1 -1
  252. package/dist/components/calcite-autocomplete/customElement.d.ts +16 -13
  253. package/dist/components/calcite-autocomplete/customElement.js +21 -32
  254. package/dist/components/calcite-autocomplete-item/customElement.d.ts +6 -0
  255. package/dist/components/calcite-autocomplete-item/customElement.js +9 -4
  256. package/dist/components/calcite-block/customElement.d.ts +11 -7
  257. package/dist/components/calcite-block/customElement.js +1 -1
  258. package/dist/components/calcite-block-group/customElement.d.ts +1 -1
  259. package/dist/components/calcite-block-group/customElement.js +4 -11
  260. package/dist/components/calcite-block-group/interfaces.d.ts +2 -6
  261. package/dist/components/calcite-block-section/customElement.d.ts +1 -1
  262. package/dist/components/calcite-button/customElement.d.ts +6 -6
  263. package/dist/components/calcite-button/customElement.js +10 -22
  264. package/dist/components/calcite-card/customElement.d.ts +11 -5
  265. package/dist/components/calcite-card/customElement.js +5 -3
  266. package/dist/components/calcite-card-group/customElement.d.ts +9 -3
  267. package/dist/components/calcite-card-group/customElement.js +11 -1
  268. package/dist/components/calcite-carousel/customElement.d.ts +8 -2
  269. package/dist/components/calcite-carousel/customElement.js +11 -8
  270. package/dist/components/calcite-carousel/interfaces.d.ts +3 -1
  271. package/dist/components/calcite-checkbox/customElement.d.ts +4 -5
  272. package/dist/components/calcite-checkbox/customElement.js +8 -22
  273. package/dist/components/calcite-chip/customElement.d.ts +2 -2
  274. package/dist/components/calcite-chip/customElement.js +1 -1
  275. package/dist/components/calcite-chip-group/customElement.d.ts +1 -1
  276. package/dist/components/calcite-color-picker/customElement.d.ts +2 -2
  277. package/dist/components/calcite-color-picker/customElement.js +2 -2
  278. package/dist/components/calcite-color-picker-hex-input/customElement.d.ts +1 -1
  279. package/dist/components/calcite-color-picker-hex-input/customElement.js +1 -1
  280. package/dist/components/calcite-color-picker-swatch/customElement.d.ts +1 -1
  281. package/dist/components/calcite-combobox/customElement.d.ts +5 -5
  282. package/dist/components/calcite-combobox/customElement.js +195 -108
  283. package/dist/components/calcite-combobox/index.js +2 -1
  284. package/dist/components/calcite-combobox-item/customElement.d.ts +1 -1
  285. package/dist/components/calcite-combobox-item/customElement.js +1 -1
  286. package/dist/components/calcite-date-picker/customElement.d.ts +1 -1
  287. package/dist/components/calcite-date-picker/customElement.js +4 -14
  288. package/dist/components/calcite-date-picker-day/customElement.d.ts +1 -1
  289. package/dist/components/calcite-date-picker-day/customElement.js +1 -1
  290. package/dist/components/calcite-date-picker-month/customElement.js +2 -2
  291. package/dist/components/calcite-date-picker-month-header/customElement.js +1 -1
  292. package/dist/components/calcite-dialog/customElement.d.ts +7 -5
  293. package/dist/components/calcite-dialog/customElement.js +4 -2
  294. package/dist/components/calcite-dropdown/customElement.d.ts +15 -5
  295. package/dist/components/calcite-dropdown/customElement.js +166 -91
  296. package/dist/components/calcite-dropdown-item/customElement.d.ts +2 -2
  297. package/dist/components/calcite-dropdown-item/customElement.js +14 -32
  298. package/dist/components/calcite-fab/customElement.d.ts +1 -1
  299. package/dist/components/calcite-fab/customElement.js +2 -2
  300. package/dist/components/calcite-filter/customElement.d.ts +1 -1
  301. package/dist/components/calcite-flow/customElement.d.ts +1 -1
  302. package/dist/components/calcite-flow-item/customElement.d.ts +8 -5
  303. package/dist/components/calcite-flow-item/customElement.js +4 -2
  304. package/dist/components/calcite-graph/customElement.js +1 -1
  305. package/dist/components/calcite-handle/customElement.d.ts +1 -1
  306. package/dist/components/calcite-icon/customElement.d.ts +1 -1
  307. package/dist/components/calcite-inline-editable/customElement.d.ts +2 -2
  308. package/dist/components/calcite-inline-editable/customElement.js +1 -1
  309. package/dist/components/calcite-input/customElement.d.ts +17 -18
  310. package/dist/components/calcite-input/customElement.js +26 -49
  311. package/dist/components/calcite-input/index.js +1 -0
  312. package/dist/components/calcite-input-date-picker/customElement.d.ts +6 -7
  313. package/dist/components/calcite-input-date-picker/customElement.js +67 -76
  314. package/dist/components/calcite-input-message/customElement.d.ts +1 -1
  315. package/dist/components/calcite-input-number/customElement.d.ts +13 -14
  316. package/dist/components/calcite-input-number/customElement.js +22 -48
  317. package/dist/components/calcite-input-number/index.js +1 -0
  318. package/dist/components/calcite-input-text/customElement.d.ts +11 -12
  319. package/dist/components/calcite-input-text/customElement.js +8 -179
  320. package/dist/components/calcite-input-text/index.js +1 -0
  321. package/dist/components/calcite-input-time-picker/customElement.d.ts +6 -7
  322. package/dist/components/calcite-input-time-picker/customElement.js +11 -23
  323. package/dist/components/calcite-input-time-zone/customElement.d.ts +5 -6
  324. package/dist/components/calcite-input-time-zone/customElement.js +21 -19
  325. package/dist/components/calcite-label/customElement.js +1 -1
  326. package/dist/components/calcite-link/customElement.d.ts +9 -9
  327. package/dist/components/calcite-link/customElement.js +28 -23
  328. package/dist/components/calcite-list/customElement.d.ts +1 -1
  329. package/dist/components/calcite-list/customElement.js +41 -17
  330. package/dist/components/calcite-list/interfaces.d.ts +2 -6
  331. package/dist/components/calcite-list-item/customElement.d.ts +2 -2
  332. package/dist/components/calcite-list-item/customElement.js +7 -4
  333. package/dist/components/calcite-list-item-group/customElement.js +7 -1
  334. package/dist/components/calcite-loader/customElement.d.ts +1 -1
  335. package/dist/components/calcite-menu/customElement.d.ts +1 -1
  336. package/dist/components/calcite-menu/customElement.js +1 -1
  337. package/dist/components/calcite-menu-item/customElement.d.ts +3 -3
  338. package/dist/components/calcite-menu-item/customElement.js +1 -1
  339. package/dist/components/calcite-meter/customElement.d.ts +7 -1
  340. package/dist/components/calcite-meter/customElement.js +4 -8
  341. package/dist/components/calcite-navigation/customElement.d.ts +9 -2
  342. package/dist/components/calcite-navigation/customElement.js +56 -3
  343. package/dist/components/calcite-navigation-logo/customElement.d.ts +3 -3
  344. package/dist/components/calcite-navigation-logo/customElement.js +4 -3
  345. package/dist/components/calcite-navigation-user/customElement.d.ts +2 -2
  346. package/dist/components/calcite-navigation-user/customElement.js +11 -6
  347. package/dist/components/calcite-notice/customElement.d.ts +3 -3
  348. package/dist/components/calcite-notice/customElement.js +1 -1
  349. package/dist/components/calcite-pagination/customElement.d.ts +1 -1
  350. package/dist/components/calcite-pagination/customElement.js +1 -1
  351. package/dist/components/calcite-panel/customElement.d.ts +7 -5
  352. package/dist/components/calcite-panel/customElement.js +20 -8
  353. package/dist/components/calcite-popover/customElement.d.ts +2 -2
  354. package/dist/components/calcite-popover/customElement.js +12 -176
  355. package/dist/components/calcite-radio-button/customElement.d.ts +16 -1
  356. package/dist/components/calcite-radio-button/customElement.js +10 -18
  357. package/dist/components/calcite-radio-button-group/customElement.d.ts +1 -1
  358. package/dist/components/calcite-rating/customElement.d.ts +3 -4
  359. package/dist/components/calcite-rating/customElement.js +12 -18
  360. package/dist/components/calcite-segmented-control/customElement.d.ts +3 -4
  361. package/dist/components/calcite-segmented-control/customElement.js +8 -19
  362. package/dist/components/calcite-segmented-control-item/customElement.d.ts +0 -1
  363. package/dist/components/calcite-segmented-control-item/customElement.js +1 -1
  364. package/dist/components/calcite-select/customElement.d.ts +3 -4
  365. package/dist/components/calcite-select/customElement.js +9 -20
  366. package/dist/components/calcite-sheet/customElement.d.ts +3 -3
  367. package/dist/components/calcite-sheet/customElement.js +3 -7
  368. package/dist/components/calcite-shell-panel/customElement.d.ts +4 -4
  369. package/dist/components/calcite-shell-panel/customElement.js +59 -30
  370. package/dist/components/calcite-slider/customElement.d.ts +3 -4
  371. package/dist/components/calcite-slider/customElement.js +12 -22
  372. package/dist/components/calcite-sort-handle/customElement.d.ts +4 -4
  373. package/dist/components/calcite-sort-handle/customElement.js +44 -17
  374. package/dist/components/calcite-sortable-list/customElement.d.ts +1 -1
  375. package/dist/components/calcite-sortable-list/customElement.js +3 -3
  376. package/dist/components/calcite-split-button/customElement.d.ts +8 -8
  377. package/dist/components/calcite-stepper/customElement.d.ts +2 -2
  378. package/dist/components/calcite-stepper/customElement.js +29 -42
  379. package/dist/components/calcite-stepper-item/customElement.d.ts +1 -1
  380. package/dist/components/calcite-stepper-item/customElement.js +2 -8
  381. package/dist/components/calcite-swatch/customElement.d.ts +1 -1
  382. package/dist/components/calcite-switch/customElement.d.ts +4 -4
  383. package/dist/components/calcite-switch/customElement.js +9 -8
  384. package/dist/components/calcite-tab/customElement.d.ts +1 -1
  385. package/dist/components/calcite-tab/customElement.js +1 -1
  386. package/dist/components/calcite-tab-nav/customElement.js +1 -1
  387. package/dist/components/calcite-tab-title/customElement.js +1 -1
  388. package/dist/components/calcite-table/customElement.js +1 -1
  389. package/dist/components/calcite-table-cell/customElement.d.ts +2 -2
  390. package/dist/components/calcite-table-header/customElement.d.ts +2 -2
  391. package/dist/components/calcite-table-row/customElement.d.ts +1 -1
  392. package/dist/components/calcite-tabs/customElement.js +1 -1
  393. package/dist/components/calcite-text-area/customElement.d.ts +13 -14
  394. package/dist/components/calcite-text-area/customElement.js +32 -37
  395. package/dist/components/calcite-tile/customElement.d.ts +1 -1
  396. package/dist/components/calcite-time-picker/customElement.d.ts +1 -1
  397. package/dist/components/calcite-time-picker/customElement.js +2 -2
  398. package/dist/components/calcite-tooltip/customElement.d.ts +15 -2
  399. package/dist/components/calcite-tooltip/customElement.js +24 -315
  400. package/dist/components/calcite-tree/customElement.js +1 -1
  401. package/dist/components/calcite-tree-item/customElement.js +2 -3
  402. package/dist/controllers/useSortable.d.ts +7 -0
  403. package/dist/docs/api.json +1 -1
  404. package/dist/docs/docs.json +1 -1
  405. package/dist/docs/supported-browsers.json +1 -1
  406. package/dist/docs/translations.json +1 -1
  407. package/dist/docs/vscode.css-custom-data.json +1 -1
  408. package/dist/docs/vscode.html-custom-data.json +1 -1
  409. package/dist/docs/web-types.json +1 -1
  410. package/dist/loader.js +28 -28
  411. package/dist/types/lumina.d.ts +9 -9
  412. package/dist/types/preact.d.ts +9 -9
  413. package/dist/types/react.d.ts +9 -9
  414. package/dist/types/stencil.d.ts +9 -9
  415. package/package.json +22 -23
  416. package/dist/cdn/232WBXIW.js +0 -2
  417. package/dist/cdn/2CV466KR.js +0 -2
  418. package/dist/cdn/2XWHTJYS.js +0 -2
  419. package/dist/cdn/3OCOXFJX.js +0 -2
  420. package/dist/cdn/3ZTULMLE.js +0 -2
  421. package/dist/cdn/5D32LNQR.js +0 -2
  422. package/dist/cdn/5G2KVW4P.js +0 -2
  423. package/dist/cdn/5H7EBO5K.js +0 -2
  424. package/dist/cdn/5HB4KJ7Y.js +0 -2
  425. package/dist/cdn/66YZFACX.js +0 -2
  426. package/dist/cdn/672VGWH7.js +0 -2
  427. package/dist/cdn/67O6G5DT.js +0 -2
  428. package/dist/cdn/6CKEQZO7.js +0 -2
  429. package/dist/cdn/6XNHTAM2.js +0 -2
  430. package/dist/cdn/7MRH7XSL.js +0 -2
  431. package/dist/cdn/7UOYXJ3K.js +0 -2
  432. package/dist/cdn/AKVWZOJU.js +0 -2
  433. package/dist/cdn/ARN4B4IT.js +0 -2
  434. package/dist/cdn/BCO3LX7A.js +0 -2
  435. package/dist/cdn/BRMCZ6ZG.js +0 -2
  436. package/dist/cdn/BRXJTIAG.js +0 -2
  437. package/dist/cdn/C44ME3U7.js +0 -2
  438. package/dist/cdn/EMOZ2DH3.js +0 -2
  439. package/dist/cdn/FC5MLLP5.js +0 -2
  440. package/dist/cdn/FO3VFHYC.js +0 -2
  441. package/dist/cdn/HGX7LZAA.js +0 -2
  442. package/dist/cdn/HMZKLPV5.js +0 -2
  443. package/dist/cdn/IBP55ZGE.js +0 -2
  444. package/dist/cdn/IIYUSLAE.js +0 -2
  445. package/dist/cdn/K724PPGV.js +0 -2
  446. package/dist/cdn/KP6U3OB3.js +0 -2
  447. package/dist/cdn/KT4JL3GM.js +0 -2
  448. package/dist/cdn/KZ5EXCXL.js +0 -2
  449. package/dist/cdn/L3TZLATI.js +0 -2
  450. package/dist/cdn/LCHIHTFT.js +0 -2
  451. package/dist/cdn/LKQBHGZ7.js +0 -2
  452. package/dist/cdn/LOPKPGRY.js +0 -2
  453. package/dist/cdn/LRM2CLPW.js +0 -2
  454. package/dist/cdn/LRM7ZHT5.js +0 -2
  455. package/dist/cdn/LSDUQPFS.js +0 -2
  456. package/dist/cdn/LTLVP6R6.js +0 -2
  457. package/dist/cdn/MFSDYV4U.js +0 -2
  458. package/dist/cdn/NXCII3YU.js +0 -2
  459. package/dist/cdn/O535TZZ6.js +0 -2
  460. package/dist/cdn/O7YWW6X6.js +0 -2
  461. package/dist/cdn/OIYWPY2M.js +0 -2
  462. package/dist/cdn/OX5RYOW4.js +0 -2
  463. package/dist/cdn/Q5SNHQHW.js +0 -2
  464. package/dist/cdn/QID335AW.js +0 -2
  465. package/dist/cdn/RJSLWYFJ.js +0 -2
  466. package/dist/cdn/RTJOU72W.js +0 -2
  467. package/dist/cdn/S3FVUTIY.js +0 -2
  468. package/dist/cdn/SJYYS7RH.js +0 -2
  469. package/dist/cdn/SMSVNRM4.js +0 -2
  470. package/dist/cdn/SSQXPR3D.js +0 -2
  471. package/dist/cdn/TBVIBCHL.js +0 -2
  472. package/dist/cdn/TT5S3S4L.js +0 -4
  473. package/dist/cdn/U3AOFOT7.js +0 -2
  474. package/dist/cdn/UPE6RIV2.js +0 -2
  475. package/dist/cdn/V4NX2X3B.js +0 -2
  476. package/dist/cdn/V6NB5CGO.js +0 -2
  477. package/dist/cdn/VESBDAE7.js +0 -2
  478. package/dist/cdn/VKQJIDXT.js +0 -2
  479. package/dist/cdn/VMMRWNOB.js +0 -3
  480. package/dist/cdn/W4HQGAKN.js +0 -2
  481. package/dist/cdn/W5FGAVGO.js +0 -2
  482. package/dist/cdn/WBP5XEJH.js +0 -2
  483. package/dist/cdn/WJXZ7BPV.js +0 -2
  484. package/dist/cdn/WNADDPUF.js +0 -2
  485. package/dist/cdn/XGRU4PI2.js +0 -2
  486. package/dist/cdn/XRGPWSUO.js +0 -2
  487. package/dist/cdn/Y36WJADK.js +0 -2
  488. package/dist/cdn/Y555OQ57.js +0 -2
  489. package/dist/cdn/YGHVUKLM.js +0 -2
  490. package/dist/cdn/YPOMUQHV.js +0 -3
  491. package/dist/cdn/YWIQC7RF.js +0 -2
  492. package/dist/cdn/ZHOHVRUX.js +0 -2
  493. package/dist/cdn/ZQLGBHLZ.js +0 -2
  494. package/dist/chunks/form.js +0 -268
  495. package/dist/chunks/input.js +0 -40
  496. package/dist/controllers/useForm.d.ts +0 -3
  497. package/dist/utils/form.d.ts +0 -3
  498. package/dist/utils/sortableComponent.d.ts +0 -7
@@ -0,0 +1,327 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
+ import { makeGenericController, bypassReadOnly } from "@arcgis/lumina/controllers";
3
+ import { uncapitalize, kebabToPascal } from "@arcgis/toolkit/string";
4
+ import { r as isCalciteFocusable } from "./dom.js";
5
+ import "lit";
6
+ const minMaxStepTypes = ["date", "datetime-local", "month", "number", "range", "time", "week"];
7
+ const patternTypes = ["email", "password", "search", "tel", "text", "url"];
8
+ const minMaxLengthTypes = ["email", "password", "search", "tel", "text", "textarea", "url"];
9
+ function updateConstraintValidation(inputComponent, input, propName, matchesType) {
10
+ const attributeName = propName.toLowerCase();
11
+ const value = inputComponent[propName];
12
+ if (matchesType && value != null) {
13
+ input.setAttribute(attributeName, `${value}`);
14
+ } else {
15
+ input.removeAttribute(attributeName);
16
+ }
17
+ }
18
+ function syncInputDelegate(type, inputComponent, input) {
19
+ input.type = type;
20
+ const isMinMaxStepType = minMaxStepTypes.includes(type);
21
+ const numericInputComponent = inputComponent;
22
+ updateConstraintValidation(numericInputComponent, input, "min", isMinMaxStepType);
23
+ updateConstraintValidation(numericInputComponent, input, "max", isMinMaxStepType);
24
+ updateConstraintValidation(numericInputComponent, input, "step", isMinMaxStepType);
25
+ const isMinMaxLengthType = minMaxLengthTypes.includes(type);
26
+ const textualInputComponent = inputComponent;
27
+ updateConstraintValidation(textualInputComponent, input, "minLength", isMinMaxLengthType);
28
+ updateConstraintValidation(textualInputComponent, input, "maxLength", isMinMaxLengthType);
29
+ const isPatternType = patternTypes.includes(type);
30
+ updateConstraintValidation(textualInputComponent, input, "pattern", isPatternType);
31
+ }
32
+ function isSupportedType(type) {
33
+ const effectiveType = type === "textarea" ? "text" : type;
34
+ return minMaxStepTypes.includes(effectiveType) || patternTypes.includes(effectiveType) || minMaxLengthTypes.includes(effectiveType);
35
+ }
36
+ const joinableValueTypes = ["text", "email", "search", "hidden", "tel", "url"];
37
+ const allValid = Object.freeze({ validity: {}, validationMessage: "" });
38
+ function validate({
39
+ component,
40
+ input,
41
+ value
42
+ }) {
43
+ if (!Array.isArray(value)) {
44
+ if (component && input.type === "radio") {
45
+ let group = component.elementInternals.form?.elements[component.name];
46
+ if (group?.length > 0) {
47
+ group = Array.from(group).filter(
48
+ (element) => element.tagName === component.el.tagName
49
+ );
50
+ const isRequired = group.some((radioTypeElement) => radioTypeElement.required);
51
+ const isChecked = group.some((radioTypeElement) => radioTypeElement.checked);
52
+ const others = group.filter((radioTypeElement) => radioTypeElement !== component.el);
53
+ const valueMissing = isRequired && !isChecked;
54
+ input.required = !!valueMissing;
55
+ const validity = getValidityFlags(input.validity);
56
+ const validationMessage = input.validationMessage;
57
+ if (others?.length > 0) {
58
+ others.forEach((other) => {
59
+ if (valueMissing !== other.validity?.valueMissing && other.setValidity) {
60
+ other.setValidity(validity, validationMessage);
61
+ }
62
+ });
63
+ }
64
+ }
65
+ }
66
+ if (validateValue(input, value)) {
67
+ return allValid;
68
+ }
69
+ return {
70
+ validity: getValidityFlags(input.validity),
71
+ validationMessage: input.validationMessage
72
+ };
73
+ }
74
+ if (joinableValueTypes.includes(input.type)) {
75
+ if (validateValue(input, value.join(","))) {
76
+ return allValid;
77
+ }
78
+ return {
79
+ validity: getValidityFlags(input.validity),
80
+ validationMessage: input.validationMessage
81
+ };
82
+ }
83
+ const mergedValidity = {};
84
+ const validationMessages = [];
85
+ for (const item of value) {
86
+ if (validateValue(input, item)) {
87
+ continue;
88
+ }
89
+ Object.assign(mergedValidity, getValidityFlags(input.validity));
90
+ if (input.validationMessage) {
91
+ validationMessages.push(input.validationMessage);
92
+ }
93
+ }
94
+ return {
95
+ validity: mergedValidity,
96
+ validationMessage: validationMessages.join("; ")
97
+ };
98
+ }
99
+ function validateValue(inputDelegate, valueToValidate) {
100
+ inputDelegate.value = // file will throw if non-empty string is provided
101
+ inputDelegate.type === "file" || valueToValidate == null ? "" : String(valueToValidate);
102
+ return inputDelegate.validity.valid;
103
+ }
104
+ function getValidityFlags(validityState) {
105
+ const validityFlags = {};
106
+ for (const key in validityState) {
107
+ if (key !== "valid" && validityState[key]) {
108
+ validityFlags[key] = true;
109
+ }
110
+ }
111
+ return validityFlags;
112
+ }
113
+ const componentsWithInputEvent = [
114
+ "calcite-input",
115
+ "calcite-input-number",
116
+ "calcite-input-text",
117
+ "calcite-text-area"
118
+ ];
119
+ function getClearValidationEventName(componentTag) {
120
+ const componentTagCamelCase = uncapitalize(kebabToPascal(componentTag));
121
+ return `${componentTagCamelCase}${componentsWithInputEvent.includes(componentTag) ? "Input" : "Change"}`;
122
+ }
123
+ function isFormComponentEl(el) {
124
+ return "form" in el && "name" in el && isCalciteFocusable(el);
125
+ }
126
+ function displayValidationMessage(component, { status, message, icon }) {
127
+ if ("status" in component) {
128
+ component.status = status;
129
+ }
130
+ if ("validationIcon" in component && typeof component.validationIcon !== "string") {
131
+ component.validationIcon = icon;
132
+ }
133
+ if ("validationMessage" in component && !component.validationMessage) {
134
+ component.validationMessage = message;
135
+ }
136
+ }
137
+ function syncInternalInput(component, input) {
138
+ const { disabled, name, required } = component;
139
+ input.disabled = disabled;
140
+ input.name = name || "";
141
+ input.required = !!required;
142
+ if (isCheckable(component)) {
143
+ input.checked = component.checked;
144
+ } else if (isInputComponent(component, input)) {
145
+ syncInputDelegate(input.type, component, input);
146
+ }
147
+ }
148
+ function isCheckable(component) {
149
+ return "checked" in component;
150
+ }
151
+ function isInputComponent(component, input) {
152
+ return component && isSupportedType(input.type);
153
+ }
154
+ function focusFirstInvalidFormElement(form) {
155
+ const formElements = Array.from(form.elements);
156
+ requestAnimationFrame(() => {
157
+ const invalidEls = formElements.filter(
158
+ (el) => el.matches("[status=invalid]") && isFormComponentEl(el)
159
+ );
160
+ for (const el of invalidEls) {
161
+ if (el.validationMessage) {
162
+ el.setFocus();
163
+ break;
164
+ }
165
+ }
166
+ });
167
+ }
168
+ const useForm = (options) => {
169
+ return makeGenericController((component, controller) => {
170
+ let customValidityMessage = "";
171
+ let inputDelegate;
172
+ let lastAssociatedForm = null;
173
+ let effectiveInputType = options.inputType;
174
+ if (effectiveInputType) {
175
+ inputDelegate = document.createElement("input");
176
+ }
177
+ function invalidFormHandler(event) {
178
+ if (event.defaultPrevented) {
179
+ return;
180
+ }
181
+ event.preventDefault();
182
+ const form = event.currentTarget;
183
+ focusFirstInvalidFormElement(form);
184
+ }
185
+ function onFormReset() {
186
+ if ("status" in component) {
187
+ component.status = "idle";
188
+ }
189
+ if ("validationIcon" in component) {
190
+ component.validationIcon = false;
191
+ }
192
+ if ("validationMessage" in component) {
193
+ component.validationMessage = "";
194
+ }
195
+ if (isCheckable(component)) {
196
+ component.checked = component.defaultChecked;
197
+ }
198
+ component.value = component.defaultValue;
199
+ }
200
+ component.listen("luminaFormResetCallback", () => {
201
+ onFormReset();
202
+ });
203
+ component.listen("luminaFormAssociatedCallback", ({ detail: [form] }) => {
204
+ if (form) {
205
+ form.addEventListener("invalid", invalidFormHandler, { capture: true });
206
+ } else {
207
+ lastAssociatedForm?.removeEventListener("invalid", invalidFormHandler, { capture: true });
208
+ }
209
+ lastAssociatedForm = form;
210
+ });
211
+ function handleInvalidInput() {
212
+ const validationMsg = customValidityMessage || inputDelegate?.validationMessage || "";
213
+ component.el.dispatchEvent(
214
+ // allows users to set custom validation messages
215
+ new CustomEvent("calciteInvalid", { bubbles: true, composed: true })
216
+ );
217
+ displayValidationMessage(component, {
218
+ message: validationMsg,
219
+ icon: true,
220
+ status: "invalid"
221
+ });
222
+ const clearValidationEvent = getClearValidationEventName(component.el.tagName.toLowerCase());
223
+ component.listen(
224
+ clearValidationEvent,
225
+ () => {
226
+ if ("status" in component) {
227
+ component.status = "idle";
228
+ }
229
+ if ("validationIcon" in component && (!component.validationIcon || component.validationIcon === true)) {
230
+ component.validationIcon = false;
231
+ }
232
+ if ("validationMessage" in component && component.validationMessage === validationMsg) {
233
+ component.validationMessage = "";
234
+ }
235
+ },
236
+ { once: true }
237
+ );
238
+ }
239
+ controller.onConnected(() => {
240
+ component.el.addEventListener("invalid", handleInvalidInput);
241
+ });
242
+ controller.onDisconnected(() => {
243
+ component.el.removeEventListener("invalid", handleInvalidInput);
244
+ });
245
+ controller.onUpdate((changes) => {
246
+ if (!component.hasUpdated) {
247
+ component.defaultValue = component.value;
248
+ if (isCheckable(component)) {
249
+ component.defaultChecked = component.checked;
250
+ }
251
+ }
252
+ if (changes.has("name") || changes.has("value") || isCheckable(component) && changes.has("checked")) {
253
+ component.elementInternals.setFormValue(getFormValue());
254
+ }
255
+ if (component.hasUpdated) {
256
+ updateValidity();
257
+ }
258
+ });
259
+ controller.onLoaded(() => updateValidity());
260
+ function updateValidity() {
261
+ const { disabled, elementInternals } = component;
262
+ if (disabled) {
263
+ return;
264
+ }
265
+ let validity = {};
266
+ let validationMessage = "";
267
+ if (inputDelegate) {
268
+ inputDelegate.type = effectiveInputType;
269
+ syncInternalInput(component, inputDelegate);
270
+ ({ validity, validationMessage } = validate({ component, input: inputDelegate, value: getComponentValue() }));
271
+ }
272
+ if (customValidityMessage) {
273
+ validity = { ...validity, customError: true };
274
+ validationMessage = customValidityMessage;
275
+ }
276
+ elementInternals.setValidity(validity, validationMessage);
277
+ if ("validity" in component) {
278
+ bypassReadOnly(() => {
279
+ component.validity = elementInternals.validity;
280
+ });
281
+ }
282
+ }
283
+ function getComponentValue() {
284
+ if (options.getValue) {
285
+ return options.getValue();
286
+ }
287
+ return component.value;
288
+ }
289
+ function getFormValue() {
290
+ const value = getComponentValue();
291
+ if (Array.isArray(value)) {
292
+ const formData = new FormData();
293
+ value.forEach((value2) => formData.append(component.name, value2));
294
+ return formData;
295
+ }
296
+ if (isCheckable(component)) {
297
+ if (component.checked) {
298
+ return value || "on";
299
+ }
300
+ return null;
301
+ }
302
+ return value;
303
+ }
304
+ return {
305
+ get active() {
306
+ return !!component.elementInternals.form;
307
+ },
308
+ overrideDefaultValue: (value) => {
309
+ component.defaultValue = value;
310
+ },
311
+ overrideInputType: (type) => {
312
+ effectiveInputType = type;
313
+ updateValidity();
314
+ },
315
+ requestSubmit: () => {
316
+ component.elementInternals.form?.requestSubmit();
317
+ },
318
+ setCustomValidity: (message) => {
319
+ customValidityMessage = message;
320
+ updateValidity();
321
+ }
322
+ };
323
+ });
324
+ };
325
+ export {
326
+ useForm as u
327
+ };
@@ -0,0 +1,25 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
+ import { makeGenericController } from "@arcgis/lumina/controllers";
3
+ const useFormTrigger = (options) => makeGenericController((component) => {
4
+ function clickHandler(event) {
5
+ const { form } = component.elementInternals;
6
+ if (event.defaultPrevented || component.disabled || options?.disabled?.() || !form || component.type === "button") {
7
+ return;
8
+ }
9
+ if (component.type === "submit") {
10
+ form.requestSubmit();
11
+ return;
12
+ }
13
+ form.reset();
14
+ }
15
+ component.listen("luminaFormAssociatedCallback", ({ detail: [form] }) => {
16
+ if (form) {
17
+ component.el.addEventListener("click", clickHandler);
18
+ } else {
19
+ component.el.removeEventListener("click", clickHandler);
20
+ }
21
+ });
22
+ });
23
+ export {
24
+ useFormTrigger as u
25
+ };
@@ -1,4 +1,5 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
+ import { makeGenericController } from "@arcgis/lumina/controllers";
2
3
  import Sortable from "sortablejs";
3
4
  const sortableComponentSet = /* @__PURE__ */ new Set();
4
5
  const CSS = {
@@ -7,15 +8,17 @@ const CSS = {
7
8
  dragClass: "calcite-sortable--drag",
8
9
  fallbackClass: "calcite-sortable--fallback"
9
10
  };
10
- function connectSortableComponent(component) {
11
- if (dragActive(component)) {
12
- return;
13
- }
14
- disconnectSortableComponent(component);
15
- sortableComponentSet.add(component);
11
+ function onGlobalDragStart() {
12
+ Array.from(sortableComponentSet).forEach((component) => component.onGlobalDragStart());
13
+ }
14
+ function onGlobalDragEnd() {
15
+ Array.from(sortableComponentSet).forEach((component) => component.onGlobalDragEnd());
16
+ }
17
+ const globalDragState = { active: false };
18
+ function createSortable(component) {
16
19
  const dataIdAttr = "id";
17
- const { group, handleSelector: handle, dragSelector: draggable, sortDisabled } = component;
18
- component.sortable = Sortable.create(component.el, {
20
+ const { el, group, handleSelector: handle, dragSelector: draggable, sortDisabled } = component;
21
+ return Sortable.create(el, {
19
22
  dataIdAttr,
20
23
  swapThreshold: 0.5,
21
24
  ...CSS,
@@ -25,22 +28,26 @@ function connectSortableComponent(component) {
25
28
  group: {
26
29
  name: group,
27
30
  ...!!component.canPull && {
28
- pull: (to, from, dragEl, { newDraggableIndex: newIndex, oldDraggableIndex: oldIndex }) => component.canPull({
29
- toEl: to.el,
30
- fromEl: from.el,
31
- dragEl,
32
- newIndex,
33
- oldIndex
34
- })
31
+ pull: (to, from, dragEl, { newDraggableIndex: newIndex, oldDraggableIndex: oldIndex }) => {
32
+ return component.canPull({
33
+ toEl: to.el,
34
+ fromEl: from.el,
35
+ dragEl,
36
+ newIndex,
37
+ oldIndex
38
+ });
39
+ }
35
40
  },
36
41
  ...!!component.canPut && {
37
- put: (to, from, dragEl, { newDraggableIndex: newIndex, oldDraggableIndex: oldIndex }) => component.canPut({
38
- toEl: to.el,
39
- fromEl: from.el,
40
- dragEl,
41
- newIndex,
42
- oldIndex
43
- })
42
+ put: (to, from, dragEl, { newDraggableIndex: newIndex, oldDraggableIndex: oldIndex }) => {
43
+ return component.canPut({
44
+ toEl: to.el,
45
+ fromEl: from.el,
46
+ dragEl,
47
+ newIndex,
48
+ oldIndex
49
+ });
50
+ }
44
51
  }
45
52
  }
46
53
  },
@@ -53,12 +60,12 @@ function connectSortableComponent(component) {
53
60
  handle,
54
61
  filter: `${handle}[disabled]`,
55
62
  onStart: ({ from: fromEl, item: dragEl, to: toEl, newDraggableIndex: newIndex, oldDraggableIndex: oldIndex }) => {
56
- dragState.active = true;
63
+ globalDragState.active = true;
57
64
  onGlobalDragStart();
58
65
  component.onDragStart({ fromEl, dragEl, toEl, newIndex, oldIndex });
59
66
  },
60
67
  onEnd: ({ from: fromEl, item: dragEl, to: toEl, newDraggableIndex: newIndex, oldDraggableIndex: oldIndex }) => {
61
- dragState.active = false;
68
+ globalDragState.active = false;
62
69
  onGlobalDragEnd();
63
70
  component.onDragEnd({ fromEl, dragEl, toEl, newIndex, oldIndex });
64
71
  },
@@ -67,25 +74,44 @@ function connectSortableComponent(component) {
67
74
  }
68
75
  });
69
76
  }
70
- function disconnectSortableComponent(component) {
71
- if (dragActive(component)) {
72
- return;
73
- }
74
- sortableComponentSet.delete(component);
75
- component.sortable?.destroy();
76
- component.sortable = null;
77
- }
78
- const dragState = { active: false };
79
- function dragActive(component) {
80
- return component.dragEnabled && dragState.active;
81
- }
82
- function onGlobalDragStart() {
83
- Array.from(sortableComponentSet).forEach((component) => component.onGlobalDragStart());
84
- }
85
- function onGlobalDragEnd() {
86
- Array.from(sortableComponentSet).forEach((component) => component.onGlobalDragEnd());
87
- }
77
+ const useSortable = () => {
78
+ return makeGenericController((component, controller) => {
79
+ let sortable;
80
+ function dragActive(component2) {
81
+ return component2.dragEnabled && globalDragState.active;
82
+ }
83
+ function setUpSortable(component2) {
84
+ if (dragActive(component2)) {
85
+ return;
86
+ }
87
+ tearDownSortable(component2);
88
+ if (!component2.dragEnabled) {
89
+ return;
90
+ }
91
+ sortableComponentSet.add(component2);
92
+ sortable = createSortable(component2);
93
+ }
94
+ function tearDownSortable(component2) {
95
+ if (dragActive(component2)) {
96
+ return;
97
+ }
98
+ sortableComponentSet.delete(component2);
99
+ sortable?.destroy();
100
+ sortable = void 0;
101
+ }
102
+ controller.onConnected(() => {
103
+ setUpSortable(component);
104
+ });
105
+ controller.onDisconnected(() => {
106
+ tearDownSortable(component);
107
+ });
108
+ return {
109
+ reset: () => {
110
+ setUpSortable(component);
111
+ }
112
+ };
113
+ });
114
+ };
88
115
  export {
89
- connectSortableComponent as c,
90
- disconnectSortableComponent as d
116
+ useSortable as u
91
117
  };
@@ -305,16 +305,16 @@ export {
305
305
  hexToRGB as h,
306
306
  isValidHex as i,
307
307
  CSS as j,
308
- toNonAlphaMode as k,
309
- HUE_LIMIT_CONSTRAINED as l,
310
- normalizeAlpha as m,
308
+ HUE_LIMIT_CONSTRAINED as k,
309
+ normalizeAlpha as l,
310
+ alphaToOpacity as m,
311
311
  normalizeHex as n,
312
312
  opacityToAlpha as o,
313
313
  parseMode as p,
314
- alphaToOpacity as q,
315
- SCOPE_SIZE as r,
314
+ SCOPE_SIZE as q,
315
+ toAlphaMode as r,
316
316
  isLonghandHex as s,
317
- toAlphaMode as t,
317
+ toNonAlphaMode as t,
318
318
  isShorthandHex as u,
319
319
  rgbToHex as v,
320
320
  hexChar as w
@@ -53,8 +53,23 @@ function applyLocaleOverride(locale) {
53
53
  function getValueAsDateRange(value) {
54
54
  return value.map((v, index) => dateFromISO(v, index === 1));
55
55
  }
56
+ function getSource(changes, stringProp, dateProp) {
57
+ const stringPropChanged = changes.has(stringProp);
58
+ const datePropChanged = changes.has(dateProp);
59
+ if (stringPropChanged && !datePropChanged) {
60
+ return stringProp;
61
+ }
62
+ if (datePropChanged && !stringPropChanged) {
63
+ return dateProp;
64
+ }
65
+ return null;
66
+ }
67
+ function getMinMaxSource(changes, type) {
68
+ return type === "min" ? getSource(changes, "min", "minAsDate") : getSource(changes, "max", "maxAsDate");
69
+ }
56
70
  export {
57
- applyLocaleOverride as a,
58
- getLocaleData as b,
59
- getValueAsDateRange as g
71
+ getValueAsDateRange as a,
72
+ applyLocaleOverride as b,
73
+ getLocaleData as c,
74
+ getMinMaxSource as g
60
75
  };
@@ -10,8 +10,8 @@ import type { HeadingLevel } from "../functional/Heading.js";
10
10
  * @cssproperty [--calcite-accordion-text-color] - Specifies the component's text color.
11
11
  * @cssproperty [--calcite-accordion-text-color-hover] - Specifies the component's main text color on hover.
12
12
  * @cssproperty [--calcite-accordion-text-color-press] - Specifies the component's main text color when pressed.
13
- * @cssproperty [--calcite-accordion-item-background-color] - [Deprecated] Use `--calcite-accordion-background-color`. Specifies the component's background color.
14
- * @cssproperty [--calcite-accordion-item-border-color] - [Deprecated] Use `--calcite-accordion-border-color`. Specifies the component's border color.
13
+ * @cssproperty [--calcite-accordion-item-background-color] - [Deprecated] in v3.1.0, removal target v6.0.0 - Use `--calcite-accordion-background-color` instead. Specifies the component's background color.
14
+ * @cssproperty [--calcite-accordion-item-border-color] - [Deprecated] in v3.1.0, removal target v6.0.0 - Use `--calcite-accordion-border-color` instead. Specifies the component's border color.
15
15
  * @cssproperty [--calcite-accordion-item-content-space] - Specifies the component's padding.
16
16
  * @cssproperty [--calcite-accordion-item-end-icon-color] - Specifies the component's `iconEnd` color. Falls back to `--calcite-accordion-item-icon-color` or current color.
17
17
  * @cssproperty [--calcite-accordion-item-expand-icon-color] - Specifies the component's expand icon color.
@@ -19,10 +19,10 @@ import type { HeadingLevel } from "../functional/Heading.js";
19
19
  * @cssproperty [--calcite-accordion-item-header-background-color-hover] - Specifies the component's `heading` background color when hovered.
20
20
  * @cssproperty [--calcite-accordion-item-header-background-color-press] - Specifies the component's `heading` background color when pressed.
21
21
  * @cssproperty [--calcite-accordion-item-heading-text-color] - Specifies the component's `heading` text color.
22
- * @cssproperty [--calcite-accordion-item-icon-color] - [Deprecated] Use `--calcite-icon-color`. Specifies the component's default icon color.
22
+ * @cssproperty [--calcite-accordion-item-icon-color] - [Deprecated] in v3.1.0, removal target v6.0.0 - Use `--calcite-icon-color` instead. Specifies the component's default icon color.
23
23
  * @cssproperty [--calcite-accordion-item-start-icon-color] - Specifies the component's `iconStart` color. Falls back to `--calcite-accordion-item-icon-color` or current color.
24
- * @cssproperty [--calcite-accordion-item-text-color] - [Deprecated] Use `--calcite-accordion-text-color`. Specifies the component's text color.
25
- * @cssproperty [--calcite-accordion-item-text-color-hover] - [Deprecated] Use `--calcite-accordion-text-color-hover`. Specifies the component's text color on hover.
24
+ * @cssproperty [--calcite-accordion-item-text-color] - [Deprecated] in v3.1.0, removal target v6.0.0 - Use `--calcite-accordion-text-color` instead. Specifies the component's text color.
25
+ * @cssproperty [--calcite-accordion-item-text-color-hover] - [Deprecated] in v3.1.0, removal target v6.0.0 - Use `--calcite-accordion-text-color-hover` instead. Specifies the component's text color on hover.
26
26
  * @slot - A slot for adding custom content, including nested `calcite-accordion-item`s.
27
27
  * @slot [actions-end] - A slot for adding `calcite-action`s or content to the end side of the component's header.
28
28
  * @slot [actions-start] - A slot for adding `calcite-action`s or content to the start side of the component's header.
@@ -57,7 +57,7 @@ export abstract class AccordionItem extends LitElement {
57
57
  * Sets focus on the component.
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 content area is collapsed. */