@esri/calcite-components 5.1.1-next.3 → 5.1.1-next.5

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 (210) hide show
  1. package/dist/cdn/{VZCLTVXQ.js → 26TKJ45G.js} +1 -1
  2. package/dist/cdn/{KPQ7QKLW.js → 27CKMD4S.js} +1 -1
  3. package/dist/cdn/{I5TYSCGY.js → 2B22J6N7.js} +1 -1
  4. package/dist/cdn/{4M36NHKY.js → 2TUMH7BJ.js} +1 -1
  5. package/dist/cdn/{MHL6OD2A.js → 2UXB22NZ.js} +1 -1
  6. package/dist/cdn/{Z5OV3CGT.js → 3BFO4M6M.js} +1 -1
  7. package/dist/cdn/{K4ECYLPH.js → 3NAS4Q4X.js} +1 -1
  8. package/dist/cdn/{AN24LRX4.js → 3WWVPHTN.js} +1 -1
  9. package/dist/cdn/{VCIRPO4U.js → 4OKNI2ME.js} +1 -1
  10. package/dist/cdn/{2LXTK3M6.js → 4U2T5QCF.js} +1 -1
  11. package/dist/cdn/{VSD57PLS.js → 4YU7KVLN.js} +1 -1
  12. package/dist/cdn/{ASW675OW.js → 4ZARBNVE.js} +1 -1
  13. package/dist/cdn/{3KNMK5SQ.js → 56OUAFHZ.js} +1 -1
  14. package/dist/cdn/{RH7NE7PQ.js → 5CZT7ZF2.js} +1 -1
  15. package/dist/cdn/{4Z5LA72W.js → 5KHTOS43.js} +1 -1
  16. package/dist/cdn/{XTSXFNUW.js → 5UM2PD3Y.js} +1 -1
  17. package/dist/cdn/{B7CQ4JRL.js → 5VR5L3IN.js} +1 -1
  18. package/dist/cdn/{5WRS6WPQ.js → 5X5GP5QD.js} +1 -1
  19. package/dist/cdn/{B7QE5WFS.js → 6HZDBIQR.js} +1 -1
  20. package/dist/cdn/{I7FGFZ6K.js → 6JJSMJ5O.js} +1 -1
  21. package/dist/cdn/{XYAVS2OX.js → 6OQ7N7VS.js} +1 -1
  22. package/dist/cdn/{KVRNQED3.js → 6PA56XE3.js} +1 -1
  23. package/dist/cdn/{YADG2FLX.js → 6PNEL3GY.js} +1 -1
  24. package/dist/cdn/{IJ5O452I.js → 7MDIWERA.js} +1 -1
  25. package/dist/cdn/{2DKBIGVK.js → 7P74AKWI.js} +1 -1
  26. package/dist/cdn/{CERRAXUL.js → 7TWNW2BD.js} +1 -1
  27. package/dist/cdn/{QTBSMOZZ.js → 7UQ4BXIA.js} +1 -1
  28. package/dist/cdn/{73TM7AC3.js → 7YW5YF3W.js} +1 -1
  29. package/dist/cdn/{EUUIFTPO.js → A7T3VN2V.js} +1 -1
  30. package/dist/cdn/{IA6RTEIG.js → ACHU3T7F.js} +1 -1
  31. package/dist/cdn/AJKRULVQ.js +2 -0
  32. package/dist/cdn/{C465LMYP.js → ANS7V4RO.js} +1 -1
  33. package/dist/cdn/{IRKROAV6.js → APBFB6S3.js} +1 -1
  34. package/dist/cdn/{3EHO5MHY.js → AQ3IFEKN.js} +1 -1
  35. package/dist/cdn/{55BU4BKF.js → ARP32LFE.js} +1 -1
  36. package/dist/cdn/{FYEZIEAC.js → AXVF2756.js} +1 -1
  37. package/dist/cdn/BDZQSO2J.js +2 -0
  38. package/dist/cdn/{K5FQLERT.js → BJ4ABCUP.js} +1 -1
  39. package/dist/cdn/BQES6LWB.js +2 -0
  40. package/dist/cdn/{CJNHGAKV.js → BTFUTGOB.js} +1 -1
  41. package/dist/cdn/{26KZ6INU.js → BZ2ZKLD7.js} +1 -1
  42. package/dist/cdn/{GXTMLJY2.js → CISWZLPM.js} +1 -1
  43. package/dist/cdn/{4HSQ3MH4.js → CY2QEKCK.js} +1 -1
  44. package/dist/cdn/{YLTLFUV4.js → D2NNUCFT.js} +1 -1
  45. package/dist/cdn/{YPXCJQIR.js → D2VTJOPM.js} +1 -1
  46. package/dist/cdn/{X2BBMLBB.js → D5H6K3NA.js} +1 -1
  47. package/dist/cdn/{RECKWJ47.js → DBQJQXU6.js} +1 -1
  48. package/dist/cdn/{DNIMBCHX.js → DYWNKQ25.js} +1 -1
  49. package/dist/cdn/ECNYDS76.js +2 -0
  50. package/dist/cdn/{JRKZSZK7.js → EOXVTTON.js} +1 -1
  51. package/dist/cdn/{7Q5JURTW.js → EV4D2B4G.js} +1 -1
  52. package/dist/cdn/{FYUMSWJT.js → F5LUOXQA.js} +1 -1
  53. package/dist/cdn/{WDRTEXNS.js → F7DJCE7J.js} +1 -1
  54. package/dist/cdn/{7XFVXJB5.js → FGLX24UP.js} +1 -1
  55. package/dist/cdn/{QN2EDOZS.js → FIDNERXC.js} +1 -1
  56. package/dist/cdn/{UDOSDUVZ.js → FIIPI4TO.js} +1 -1
  57. package/dist/cdn/{BEL7JEJT.js → FMGMUK7H.js} +1 -1
  58. package/dist/cdn/{GS2J7N67.js → FNQJGIT5.js} +1 -1
  59. package/dist/cdn/{P57WVAE6.js → G2GTTVSE.js} +1 -1
  60. package/dist/cdn/{IJPD5VVH.js → GATVDTCX.js} +1 -1
  61. package/dist/cdn/{VHQAPKYZ.js → GKHYTKRX.js} +1 -1
  62. package/dist/cdn/{NF5HG2L6.js → GLODC255.js} +1 -1
  63. package/dist/cdn/{MSWVGLZL.js → GLRM5ZT5.js} +1 -1
  64. package/dist/cdn/{5QNAVXAT.js → H4DJFHRD.js} +1 -1
  65. package/dist/cdn/H4MCSFNA.js +2 -0
  66. package/dist/cdn/{YGAM5ZGX.js → H4QDWLO2.js} +1 -1
  67. package/dist/cdn/{NBBZ2RCP.js → HETBUMGG.js} +1 -1
  68. package/dist/cdn/{X5MI4AJB.js → HHH7H3RQ.js} +1 -1
  69. package/dist/cdn/{ULDASAF6.js → HIUFMP4S.js} +1 -1
  70. package/dist/cdn/{TOQZCO77.js → HWD5HVPG.js} +1 -1
  71. package/dist/cdn/{BY7AQBTP.js → IPV6SRQB.js} +1 -1
  72. package/dist/cdn/{C44BQNE3.js → J4CNKBKA.js} +1 -1
  73. package/dist/cdn/{QGBDUFYH.js → JCCTCJBT.js} +1 -1
  74. package/dist/cdn/{TXX4YUZE.js → JZQC7UCN.js} +1 -1
  75. package/dist/cdn/{RNAF7VZA.js → K3J3HP3C.js} +1 -1
  76. package/dist/cdn/{LYR3SG7G.js → KC4N5X3R.js} +1 -1
  77. package/dist/cdn/{UKNLJI6H.js → KLK5B7QV.js} +1 -1
  78. package/dist/cdn/KNKMPJAL.js +2 -0
  79. package/dist/cdn/{4N7IMNTU.js → KOB2L5OF.js} +1 -1
  80. package/dist/cdn/{IQLK3X6G.js → KU7JKZKM.js} +1 -1
  81. package/dist/cdn/{Z4NRODR3.js → L3DV3PDZ.js} +1 -1
  82. package/dist/cdn/{JVDT4ESQ.js → L4PX2B5Q.js} +1 -1
  83. package/dist/cdn/{XQFIE7OG.js → LBC3QOSD.js} +1 -1
  84. package/dist/cdn/{HI2MHLI4.js → LLESMANM.js} +1 -1
  85. package/dist/cdn/{SPDWQ3X7.js → LTTOM2CS.js} +1 -1
  86. package/dist/cdn/{DDGNYV3G.js → LW32DABQ.js} +1 -1
  87. package/dist/cdn/{EJDW5H7K.js → LYU2H6SF.js} +1 -1
  88. package/dist/cdn/{NSA227RN.js → M3IE6HID.js} +1 -1
  89. package/dist/cdn/{RWDPNLZL.js → M47XC6PF.js} +1 -1
  90. package/dist/cdn/{ZV35SZ3B.js → MKMBDYHE.js} +1 -1
  91. package/dist/cdn/MR5GODA3.js +2 -0
  92. package/dist/cdn/{VJ7RRSTN.js → MUEVO64B.js} +1 -1
  93. package/dist/cdn/{O7X634VO.js → MUUP34X3.js} +1 -1
  94. package/dist/cdn/{IR3RO6CE.js → ODZLYUK3.js} +1 -1
  95. package/dist/cdn/{PN4F47X5.js → ONJA74QA.js} +1 -1
  96. package/dist/cdn/{NCWWAHRX.js → OORT75JS.js} +1 -1
  97. package/dist/cdn/P3CJF65O.js +2 -0
  98. package/dist/cdn/{5DAEMQDV.js → PWME5N37.js} +1 -1
  99. package/dist/cdn/{TX5ELMHY.js → QAQYS3BO.js} +1 -1
  100. package/dist/cdn/{2HPZ2LZX.js → QER5D477.js} +1 -1
  101. package/dist/cdn/{4TLO4I7E.js → QGJMSJYV.js} +1 -1
  102. package/dist/cdn/{SHI5TFAM.js → QJNZ4DGE.js} +1 -1
  103. package/dist/cdn/{XGNYY3DG.js → QKYRWKTU.js} +1 -1
  104. package/dist/cdn/{GTWN7BPR.js → RQWRV3MX.js} +1 -1
  105. package/dist/cdn/RX6W4SRU.js +2 -0
  106. package/dist/cdn/{TLFPDRN4.js → SB5RUV2I.js} +1 -1
  107. package/dist/cdn/{GQNVN73Q.js → SKUVMTOE.js} +1 -1
  108. package/dist/cdn/{5LXNJLDP.js → SSDV2Z4W.js} +1 -1
  109. package/dist/cdn/{E77V6B3J.js → SY4OTCR3.js} +1 -1
  110. package/dist/cdn/{EZUQRFG5.js → T6AQWGKD.js} +1 -1
  111. package/dist/cdn/TL7FQYNH.js +2 -0
  112. package/dist/cdn/{USJSJIQG.js → TQ74DQDG.js} +1 -1
  113. package/dist/cdn/{462AIJMG.js → TR3GWZR3.js} +1 -1
  114. package/dist/cdn/{WN4PUWAA.js → U54ZTDU5.js} +1 -1
  115. package/dist/cdn/{ZZ2SI3QY.js → UWMTXTYU.js} +1 -1
  116. package/dist/cdn/{AJQT5NY5.js → V4P7PWKU.js} +1 -1
  117. package/dist/cdn/{KSI4ARWP.js → V4PO6GRD.js} +1 -1
  118. package/dist/cdn/{C2ORI74C.js → V7UCH3LL.js} +1 -1
  119. package/dist/cdn/{UFPZDUSI.js → VG7NP4T6.js} +1 -1
  120. package/dist/cdn/{KEYU3UTM.js → VNLB6ONW.js} +1 -1
  121. package/dist/cdn/{GERZGXNJ.js → VOJ3FHN7.js} +1 -1
  122. package/dist/cdn/VOXGCDBD.js +2 -0
  123. package/dist/cdn/{4QQ3EVQP.js → VPAYQE3N.js} +1 -1
  124. package/dist/cdn/VPGSTQTT.js +2 -0
  125. package/dist/cdn/{QJMUF7LF.js → VWXOBCBN.js} +1 -1
  126. package/dist/cdn/{3IIR2IYM.js → W3FK3ZCB.js} +1 -1
  127. package/dist/cdn/{GMIAQOJ4.js → WA2S45EI.js} +1 -1
  128. package/dist/cdn/{KCDVEUM2.js → WCQV2FD5.js} +1 -1
  129. package/dist/cdn/{EGIGTE23.js → WTNLCUMG.js} +1 -1
  130. package/dist/cdn/{NCPZQ732.js → WY23ABPE.js} +1 -1
  131. package/dist/cdn/{OOAEIRPO.js → YDF4DHQ3.js} +1 -1
  132. package/dist/cdn/{74QLHBGF.js → YENIJIGH.js} +1 -1
  133. package/dist/cdn/{2APRKMNC.js → YHXTGLCG.js} +1 -1
  134. package/dist/cdn/{FAPCVWCN.js → YIUURHN4.js} +1 -1
  135. package/dist/cdn/{LTVCO7RI.js → YL72ZNRG.js} +1 -1
  136. package/dist/cdn/{5BSHZPZF.js → YWOGIBVU.js} +1 -1
  137. package/dist/cdn/{IXDLIUWE.js → ZACTCZNT.js} +1 -1
  138. package/dist/cdn/{UY5AIMVC.js → ZCF63ZNP.js} +1 -1
  139. package/dist/cdn/{4U5ABDZF.js → ZD2AZI2C.js} +1 -1
  140. package/dist/cdn/{BFFHJ7V3.js → ZD5WXZ5Y.js} +1 -1
  141. package/dist/cdn/{UH5XPUXK.js → ZFON2VHB.js} +1 -1
  142. package/dist/cdn/{ESEFVCYL.js → ZG5BEBIM.js} +1 -1
  143. package/dist/cdn/{X4SFURDR.js → ZRMUXK2V.js} +1 -1
  144. package/dist/cdn/{NGYPHTON.js → ZYP2R6KW.js} +1 -1
  145. package/dist/cdn/index.js +1 -1
  146. package/dist/chunks/date.js +3 -3
  147. package/dist/chunks/dom.js +15 -3
  148. package/dist/chunks/floating-ui.js +1 -1
  149. package/dist/chunks/label.js +6 -6
  150. package/dist/chunks/locale.js +3 -6
  151. package/dist/chunks/manager.js +5 -5
  152. package/dist/chunks/runtime.js +4 -4
  153. package/dist/chunks/useForm.js +20 -15
  154. package/dist/components/calcite-card/customElement.d.ts +1 -1
  155. package/dist/components/calcite-carousel/customElement.js +5 -6
  156. package/dist/components/calcite-checkbox/customElement.d.ts +4 -4
  157. package/dist/components/calcite-chip-group/customElement.js +1 -1
  158. package/dist/components/calcite-color-picker/customElement.js +1 -1
  159. package/dist/components/calcite-color-picker-hex-input/customElement.js +1 -1
  160. package/dist/components/calcite-date-picker/customElement.js +8 -10
  161. package/dist/components/calcite-date-picker-day/customElement.js +1 -1
  162. package/dist/components/calcite-date-picker-month/customElement.js +2 -11
  163. package/dist/components/calcite-flow/customElement.d.ts +2 -2
  164. package/dist/components/calcite-flow/customElement.js +1 -1
  165. package/dist/components/calcite-flow-item/customElement.js +1 -1
  166. package/dist/components/calcite-input/customElement.js +4 -6
  167. package/dist/components/calcite-input-date-picker/customElement.js +0 -1
  168. package/dist/components/calcite-input-text/customElement.js +1 -1
  169. package/dist/components/calcite-list/customElement.d.ts +4 -4
  170. package/dist/components/calcite-list/customElement.js +4 -5
  171. package/dist/components/calcite-list-item/customElement.d.ts +6 -6
  172. package/dist/components/calcite-list-item/customElement.js +12 -15
  173. package/dist/components/calcite-list-item-group/customElement.d.ts +1 -1
  174. package/dist/components/calcite-loader/customElement.js +3 -3
  175. package/dist/components/calcite-menu-item/customElement.d.ts +7 -7
  176. package/dist/components/calcite-menu-item/customElement.js +3 -0
  177. package/dist/components/calcite-meter/customElement.d.ts +6 -6
  178. package/dist/components/calcite-meter/customElement.js +14 -7
  179. package/dist/components/calcite-pagination/customElement.d.ts +1 -1
  180. package/dist/components/calcite-pagination/customElement.js +3 -0
  181. package/dist/components/calcite-panel/customElement.d.ts +6 -6
  182. package/dist/components/calcite-popover/customElement.d.ts +4 -4
  183. package/dist/components/calcite-popover/customElement.js +1 -1
  184. package/dist/components/calcite-progress/customElement.d.ts +2 -2
  185. package/dist/components/calcite-radio-button/customElement.d.ts +5 -5
  186. package/dist/components/calcite-radio-button/customElement.js +1 -1
  187. package/dist/components/calcite-radio-button-group/customElement.d.ts +4 -4
  188. package/dist/components/calcite-radio-button-group/customElement.js +3 -3
  189. package/dist/components/calcite-rating/customElement.d.ts +7 -7
  190. package/dist/components/calcite-rating/customElement.js +13 -9
  191. package/dist/controllers/useSortable.d.ts +2 -2
  192. package/dist/docs/api.json +1 -1
  193. package/dist/docs/docs.json +1 -1
  194. package/dist/docs/vscode.html-custom-data.json +1 -1
  195. package/dist/docs/web-types.json +1 -1
  196. package/dist/loader.js +1 -1
  197. package/dist/utils/dom.d.ts +1 -1
  198. package/package.json +3 -4
  199. package/dist/cdn/3YEIOG5K.js +0 -2
  200. package/dist/cdn/5Z2NRA5O.js +0 -2
  201. package/dist/cdn/6XD7JQMH.js +0 -2
  202. package/dist/cdn/H3X6JWD6.js +0 -2
  203. package/dist/cdn/H7A7IEZM.js +0 -2
  204. package/dist/cdn/JRSUWSDE.js +0 -2
  205. package/dist/cdn/KELKMID5.js +0 -2
  206. package/dist/cdn/OCKF5CDZ.js +0 -2
  207. package/dist/cdn/S2TMKDXN.js +0 -2
  208. package/dist/cdn/WL5VMMRE.js +0 -2
  209. package/dist/cdn/WUMRFH6V.js +0 -2
  210. package/dist/cdn/XW6GOGMS.js +0 -2
@@ -30,7 +30,7 @@ class DatePicker extends LitElement {
30
30
  this.listen("keydown", this.keyDownHandler);
31
31
  }
32
32
  static {
33
- this.properties = { activeEndDate: [16, {}, { state: true }], activeStartDate: [16, {}, { state: true }], dateTimeFormat: [16, {}, { state: true }], endAsDate: [16, {}, { state: true }], hoverRange: [16, {}, { state: true }], localeData: [16, {}, { state: true }], startAsDate: [16, {}, { state: true }], activeDate: [0, {}, { attribute: false }], activeRange: [3, {}, { reflect: true }], calendars: [11, {}, { type: Number, reflect: true }], headingLevel: [11, {}, { type: Number, reflect: true }], layout: [3, {}, { reflect: true }], max: [3, {}, { reflect: true }], maxAsDate: [0, {}, { attribute: false }], messageOverrides: [0, {}, { attribute: false }], min: [3, {}, { reflect: true }], minAsDate: [0, {}, { attribute: false }], monthStyle: 1, numberingSystem: [3, {}, { reflect: true }], proximitySelectionDisabled: [7, {}, { reflect: true, type: Boolean }], range: [7, {}, { reflect: true, type: Boolean }], scale: [3, {}, { reflect: true }], value: 1, valueAsDate: [0, {}, { attribute: false }] };
33
+ this.properties = { activeEndDate: [16, {}, { state: true }], activeStartDate: [16, {}, { state: true }], dateTimeFormat: [16, {}, { state: true }], hoverRange: [16, {}, { state: true }], localeData: [16, {}, { state: true }], activeDate: [0, {}, { attribute: false }], activeRange: [3, {}, { reflect: true }], calendars: [11, {}, { type: Number, reflect: true }], headingLevel: [11, {}, { type: Number, reflect: true }], layout: [3, {}, { reflect: true }], max: [3, {}, { reflect: true }], maxAsDate: [0, {}, { attribute: false }], messageOverrides: [0, {}, { attribute: false }], min: [3, {}, { reflect: true }], minAsDate: [0, {}, { attribute: false }], monthStyle: 1, numberingSystem: [3, {}, { reflect: true }], proximitySelectionDisabled: [7, {}, { reflect: true, type: Boolean }], range: [7, {}, { reflect: true, type: Boolean }], scale: [3, {}, { reflect: true }], value: 1, valueAsDate: [0, {}, { attribute: false }] };
34
34
  }
35
35
  static {
36
36
  this.styles = styles;
@@ -67,7 +67,7 @@ class DatePicker extends LitElement {
67
67
  if (changes.has("range") && this.range || changes.has("maxAsDate") || changes.has("minAsDate")) {
68
68
  this.setActiveStartAndEndDates();
69
69
  }
70
- if (changes.has("activeDate")) {
70
+ if (changes.has("activeDate") && this.hasUpdated) {
71
71
  this.activeDateWatcher(this.activeDate);
72
72
  }
73
73
  if (changes.has("messages") && this.hasUpdated) {
@@ -78,13 +78,11 @@ class DatePicker extends LitElement {
78
78
  if (!this.range) {
79
79
  return;
80
80
  }
81
- if (!this.rangeValueChangedByUser) {
82
- if (newValue) {
83
- this.activeStartDate = newValue;
84
- this.activeEndDate = nextMonth(this.activeStartDate);
85
- } else {
86
- this.resetActiveDates();
87
- }
81
+ if (newValue) {
82
+ this.activeStartDate = newValue;
83
+ this.activeEndDate = nextMonth(this.activeStartDate);
84
+ } else {
85
+ this.resetActiveDates();
88
86
  }
89
87
  }
90
88
  valueHandler(value) {
@@ -100,7 +98,7 @@ class DatePicker extends LitElement {
100
98
  valueAsDateWatcher(newValueAsDate) {
101
99
  if (this.range && Array.isArray(newValueAsDate) && !this.rangeValueChangedByUser) {
102
100
  this.setActiveStartAndEndDates();
103
- } else if (newValueAsDate && newValueAsDate !== this.activeDate) {
101
+ } else if (!this.range && newValueAsDate && newValueAsDate !== this.activeDate) {
104
102
  this.activeDate = newValueAsDate;
105
103
  }
106
104
  }
@@ -36,7 +36,7 @@ class DatePickerDay extends LitElement {
36
36
  this.listen("keydown", this.keyDownHandler);
37
37
  }
38
38
  static {
39
- this.properties = { active: [7, {}, { reflect: true, type: Boolean }], currentMonth: [7, {}, { reflect: true, type: Boolean }], dateTimeFormat: [0, {}, { attribute: false }], day: [9, {}, { type: Number }], disabled: [7, {}, { reflect: true, type: Boolean }], endOfRange: [7, {}, { reflect: true, type: Boolean }], highlighted: [7, {}, { reflect: true, type: Boolean }], range: [7, {}, { reflect: true, type: Boolean }], rangeEdge: [3, {}, { reflect: true }], rangeHover: [7, {}, { reflect: true, type: Boolean }], scale: [3, {}, { reflect: true }], selected: [7, {}, { reflect: true, type: Boolean }], startOfRange: [7, {}, { reflect: true, type: Boolean }], value: [0, {}, { attribute: false }] };
39
+ this.properties = { active: [7, {}, { reflect: true, type: Boolean }], currentMonth: [7, {}, { reflect: true, type: Boolean }], dateTimeFormat: [0, {}, { attribute: false }], day: [9, {}, { type: Number }], disabled: [7, {}, { reflect: true, type: Boolean }], endOfRange: [7, {}, { reflect: true, type: Boolean }], highlighted: [7, {}, { reflect: true, type: Boolean }], range: [7, {}, { reflect: true, type: Boolean }], rangeHover: [7, {}, { reflect: true, type: Boolean }], scale: [3, {}, { reflect: true }], selected: [7, {}, { reflect: true, type: Boolean }], startOfRange: [7, {}, { reflect: true, type: Boolean }], value: [0, {}, { attribute: false }] };
40
40
  }
41
41
  static {
42
42
  this.styles = styles;
@@ -11,10 +11,8 @@ const CSS = {
11
11
  calendarStart: "calendar--start",
12
12
  currentDay: "current-day",
13
13
  dayContainer: "day-container",
14
- insideRangeHover: "inside-range--hover",
15
14
  month: "month",
16
15
  noncurrent: "noncurrent",
17
- outsideRangeHover: "outside-range--hover",
18
16
  weekDays: "week-days",
19
17
  weekHeader: "week-header",
20
18
  weekHeaderContainer: "week-header-container"
@@ -246,15 +244,12 @@ class DatePickerMonth extends LitElement {
246
244
  let month = this.activeDate.getMonth();
247
245
  const nextMonth2 = month + 1;
248
246
  month = position === "end" ? nextMonth2 : month;
249
- let dayInWeek = 0;
250
- const getDayInWeek = () => dayInWeek++ % 7;
251
247
  const year = this.activeDate.getFullYear();
252
248
  const days = [
253
249
  ...prevMonthDays.map((day) => {
254
250
  return {
255
251
  active: false,
256
252
  day,
257
- dayInWeek: getDayInWeek(),
258
253
  date: new Date(year, month - 1, day)
259
254
  };
260
255
  }),
@@ -267,7 +262,6 @@ class DatePickerMonth extends LitElement {
267
262
  currentMonth: true,
268
263
  currentDay: isCurrentDay,
269
264
  day,
270
- dayInWeek: getDayInWeek(),
271
265
  date
272
266
  };
273
267
  }),
@@ -275,7 +269,6 @@ class DatePickerMonth extends LitElement {
275
269
  return {
276
270
  active: false,
277
271
  day,
278
- dayInWeek: getDayInWeek(),
279
272
  date: new Date(year, nextMonth2, day)
280
273
  };
281
274
  })
@@ -326,14 +319,12 @@ class DatePickerMonth extends LitElement {
326
319
  const nextMonthDays = this.getDays(endCalendarPrevMonDays, endCalendarCurrMonDays, endCalendarNextMonDays, "end");
327
320
  return html`<div class=${safeClassMap({ [CSS.calendarContainer]: true })} role=grid>${this.renderCalendar(adjustedWeekDays, days)}${this.range && this.calendars === 2 && this.renderCalendar(adjustedWeekDays, nextMonthDays, true) || ""}</div>`;
328
321
  }
329
- renderDateDay({ active, currentMonth, currentDay, date, day, dayInWeek }, key) {
322
+ renderDateDay({ active, currentMonth, currentDay, date, day }, key) {
330
323
  const isDateInRange = inRange(date, this.min, this.max);
331
324
  return keyed(key, html`<div class=${safeClassMap({ [CSS.dayContainer]: true })} role=gridcell><calcite-date-picker-day .active=${active} class=${safeClassMap({
332
325
  [CSS.currentDay]: currentDay,
333
- [CSS.insideRangeHover]: this.isHoverInRange(),
334
- [CSS.outsideRangeHover]: !this.isHoverInRange(),
335
326
  [CSS.noncurrent]: this.range && this.calendars === 2 && !currentMonth
336
- })} .currentMonth=${currentMonth} .dateTimeFormat=${this.dateTimeFormat} .day=${day} .disabled=${!isDateInRange} .endOfRange=${this.isEndOfRange(date)} .highlighted=${this.betweenSelectedRange(date)} @calciteInternalDayHover=${this.dayHover} @calciteInternalDaySelect=${this.daySelect} .range=${!!this.startDate && !!this.endDate && !sameDate(this.startDate, this.endDate)} .rangeEdge=${dayInWeek === 0 ? "start" : dayInWeek === 6 ? "end" : void 0} .rangeHover=${isDateInRange && this.isRangeHover(date)} .scale=${this.scale} .selected=${this.isSelected(date)} .startOfRange=${this.isStartOfRange(date)} .value=${date} ${ref(this.storeDayRef)}></calcite-date-picker-day></div>`);
327
+ })} .currentMonth=${currentMonth} .dateTimeFormat=${this.dateTimeFormat} .day=${day} .disabled=${!isDateInRange} .endOfRange=${this.isEndOfRange(date)} .highlighted=${this.betweenSelectedRange(date)} @calciteInternalDayHover=${this.dayHover} @calciteInternalDaySelect=${this.daySelect} .range=${!!this.startDate && !!this.endDate && !sameDate(this.startDate, this.endDate)} .rangeHover=${isDateInRange && this.isRangeHover(date)} .scale=${this.scale} .selected=${this.isSelected(date)} .startOfRange=${this.isStartOfRange(date)} .value=${date} ${ref(this.storeDayRef)}></calcite-date-picker-day></div>`);
337
328
  }
338
329
  renderCalendar(weekDays, days, isEndCalendar = false) {
339
330
  return html`<div class=${safeClassMap({
@@ -11,9 +11,9 @@ export abstract class Flow extends LitElement {
11
11
  /**
12
12
  * Removes selection of the currently active `calcite-flow-item`.
13
13
  *
14
- * @returns Promise<HTMLCalciteFlowItemElement | FlowItemLikeElement>
14
+ * @returns Promise<HTMLCalciteFlowItemElement | FlowItemLikeElement | undefined>
15
15
  */
16
- back(): Promise<FlowItem | FlowItemLikeElement>;
16
+ back(): Promise<FlowItem | FlowItemLikeElement | undefined>;
17
17
  /**
18
18
  * Sets focus on the component.
19
19
  *
@@ -122,7 +122,7 @@ class Flow extends LitElement {
122
122
  }
123
123
  findSelectedFlowItemIndex(items) {
124
124
  const selectedItem = items.slice(0).reverse().find((item) => !!item.selected);
125
- return items.indexOf(selectedItem);
125
+ return selectedItem ? items.indexOf(selectedItem) : -1;
126
126
  }
127
127
  ensureSelectedFlowItemExists() {
128
128
  const { items } = this;
@@ -123,7 +123,7 @@ class FlowItem extends LitElement {
123
123
  }
124
124
  render() {
125
125
  const { collapsed, collapseDirection, collapsible, closable, closed, description, disabled, heading, headingLevel, loading, menuOpen, messageOverrides, overlayPositioning, beforeClose, icon, iconFlipRtl } = this;
126
- return this.interactiveContainer({ disabled, children: html`<calcite-panel .beforeClose=${beforeClose} .closable=${closable} .closed=${closed} .collapseDirection=${collapseDirection} .collapsed=${collapsed} .collapsible=${collapsible} .description=${description} .disabled=${disabled} .heading=${heading} .headingLevel=${headingLevel} .icon=${icon} .iconFlipRtl=${iconFlipRtl} .loading=${loading} .menuOpen=${menuOpen} .messageOverrides=${messageOverrides} @calcitePanelClose=${this.handleInternalPanelClose} @calcitePanelScroll=${this.handleInternalPanelScroll} @calcitePanelToggle=${this.handleInternalPanelToggle} .overlayPositioning=${overlayPositioning} .scale=${this.scale} .topLayerDisabled=${this.topLayerDisabled} ${ref(this.containerRef)}>${this.renderBackButton()}<slot name=${SLOTS.actionBar} slot=${SLOTS$1.actionBar}></slot><slot name=${SLOTS.alerts} slot=${SLOTS$1.alerts}></slot><slot name=${SLOTS.headerActionsStart} slot=${SLOTS$1.headerActionsStart}></slot><slot name=${SLOTS.headerActionsEnd} slot=${SLOTS$1.headerActionsEnd}></slot><slot name=${SLOTS.description} slot=${SLOTS$1.description}></slot><slot name=${SLOTS.heading} slot=${SLOTS$1.heading}></slot><slot name=${SLOTS.headerContent} slot=${SLOTS$1.headerContent}></slot><slot name=${SLOTS.headerMenuActions} slot=${SLOTS$1.headerMenuActions}></slot><slot name=${SLOTS.fab} slot=${SLOTS$1.fab}></slot><slot name=${SLOTS.contentTop} slot=${SLOTS$1.contentTop}></slot><slot name=${SLOTS.contentBottom} slot=${SLOTS$1.contentBottom}></slot><slot name=${SLOTS.footerStart} slot=${SLOTS$1.footerStart}></slot><slot name=${SLOTS.footer} slot=${SLOTS$1.footer}></slot><slot name=${SLOTS.footerEnd} slot=${SLOTS$1.footerEnd}></slot><slot></slot></calcite-panel>` });
126
+ return this.interactiveContainer({ disabled, children: html`<calcite-panel .beforeClose=${beforeClose} .closable=${closable} .closed=${closed} .collapsed=${collapsed} .collapseDirection=${collapseDirection} .collapsible=${collapsible} .description=${description} .disabled=${disabled} .heading=${heading} .headingLevel=${headingLevel} .icon=${icon} .iconFlipRtl=${iconFlipRtl} .loading=${loading} .menuOpen=${menuOpen} .messageOverrides=${messageOverrides} @calcitePanelClose=${this.handleInternalPanelClose} @calcitePanelScroll=${this.handleInternalPanelScroll} @calcitePanelToggle=${this.handleInternalPanelToggle} .overlayPositioning=${overlayPositioning} .scale=${this.scale} .topLayerDisabled=${this.topLayerDisabled} ${ref(this.containerRef)}>${this.renderBackButton()}<slot name=${SLOTS.actionBar} slot=${SLOTS$1.actionBar}></slot><slot name=${SLOTS.alerts} slot=${SLOTS$1.alerts}></slot><slot name=${SLOTS.headerActionsStart} slot=${SLOTS$1.headerActionsStart}></slot><slot name=${SLOTS.headerActionsEnd} slot=${SLOTS$1.headerActionsEnd}></slot><slot name=${SLOTS.description} slot=${SLOTS$1.description}></slot><slot name=${SLOTS.heading} slot=${SLOTS$1.heading}></slot><slot name=${SLOTS.headerContent} slot=${SLOTS$1.headerContent}></slot><slot name=${SLOTS.headerMenuActions} slot=${SLOTS$1.headerMenuActions}></slot><slot name=${SLOTS.fab} slot=${SLOTS$1.fab}></slot><slot name=${SLOTS.contentTop} slot=${SLOTS$1.contentTop}></slot><slot name=${SLOTS.contentBottom} slot=${SLOTS$1.contentBottom}></slot><slot name=${SLOTS.footerStart} slot=${SLOTS$1.footerStart}></slot><slot name=${SLOTS.footer} slot=${SLOTS$1.footer}></slot><slot name=${SLOTS.footerEnd} slot=${SLOTS$1.footerEnd}></slot><slot></slot></calcite-panel>` });
127
127
  }
128
128
  }
129
129
  customElement("calcite-flow-item", FlowItem);
@@ -68,7 +68,8 @@ class Input extends LitElement {
68
68
  this.childNumberRef = createRef();
69
69
  this.direction = useDirection();
70
70
  this.formSupport = useForm({
71
- inputType: "text"
71
+ inputType: "text",
72
+ getValue: () => this.type === "file" ? this.childRef.value?.files ?? null : this.value
72
73
  })(this);
73
74
  this.inputWrapperRef = createRef();
74
75
  this.previousValueOrigin = "initial";
@@ -511,14 +512,11 @@ class Input extends LitElement {
511
512
  const autofocus = this.el.autofocus;
512
513
  const enterKeyHint = this.el.enterKeyHint;
513
514
  const inputMode = this.el.inputMode;
514
- const localeNumberInput = this.type === "number" ? keyed("localized-input", html`<input accept=${this.accept ?? nothing} aria-errormessage=${IDS.validationMessage} .ariaInvalid=${this.status === "invalid"} .ariaLabel=${getLabelText(this)} autocomplete=${this.autocomplete ?? nothing} .autofocus=${autofocus} value=${this.defaultValue ?? nothing} .disabled=${this.disabled ? true : null} enterkeyhint=${enterKeyHint ?? nothing} inputmode=${inputMode ?? nothing} maxlength=${this.maxLength ?? nothing} minlength=${this.minLength ?? nothing} .multiple=${this.multiple} name=${nothing} @blur=${this.inputBlurHandler} @focus=${this.inputFocusHandler} @input=${this.inputNumberInputHandler} @keydown=${this.inputNumberKeyDownHandler} @keyup=${this.inputKeyUpHandler} pattern=${this.pattern ?? nothing} placeholder=${(this.placeholder || "") ?? nothing} .readOnly=${this.readOnly} .required=${this.required} type=text .value=${live(this.displayedValue ?? "")} ${ref(this.childNumberRef)}>`) : null;
515
+ const localeNumberInput = this.type === "number" ? keyed("localized-input", html`<input accept=${this.accept ?? nothing} aria-errormessage=${IDS.validationMessage} .ariaInvalid=${this.status === "invalid"} .ariaLabel=${getLabelText(this)} autocomplete=${this.autocomplete ?? nothing} .autofocus=${autofocus} value=${this.defaultValue ?? nothing} .disabled=${this.disabled} enterkeyhint=${enterKeyHint ?? nothing} inputmode=${inputMode ?? nothing} maxlength=${this.maxLength ?? nothing} minlength=${this.minLength ?? nothing} .multiple=${this.multiple} name=${nothing} @blur=${this.inputBlurHandler} @focus=${this.inputFocusHandler} @input=${this.inputNumberInputHandler} @keydown=${this.inputNumberKeyDownHandler} @keyup=${this.inputKeyUpHandler} pattern=${this.pattern ?? nothing} placeholder=${(this.placeholder || "") ?? nothing} .readOnly=${this.readOnly} .required=${this.required} type=text .value=${live(this.displayedValue ?? "")} ${ref(this.childNumberRef)}>`) : null;
515
516
  const childEl = this.type !== "number" ? html`<input accept=${this.accept ?? nothing} aria-errormessage=${IDS.validationMessage} .ariaInvalid=${this.status === "invalid"} .ariaLabel=${getLabelText(this)} autocomplete=${this.autocomplete ?? nothing} .autofocus=${autofocus} class=${safeClassMap({
516
517
  [CSS.editingEnabled]: this.editingEnabled,
517
518
  [CSS.inlineChild]: !!this.inlineEditableEl
518
- })} value=${this.defaultValue ?? nothing} .disabled=${this.disabled ? true : null} enterkeyhint=${enterKeyHint ?? nothing} inputmode=${inputMode ?? nothing} max=${this.maxString ?? nothing} maxlength=${this.maxLength ?? nothing} min=${this.minString ?? nothing} minlength=${this.minLength ?? nothing} .multiple=${this.multiple} name=${this.name ?? nothing} @blur=${this.inputBlurHandler} @focus=${this.inputFocusHandler} @input=${this.inputInputHandler} @keydown=${this.inputKeyDownHandler} @keyup=${this.inputKeyUpHandler} pattern=${this.pattern ?? nothing} placeholder=${(this.placeholder || "") ?? nothing} .readOnly=${this.readOnly} .required=${this.required ? true : null} spellcheck=${this.el.spellcheck ?? nothing} step=${this.step ?? nothing} tabindex=${(this.disabled || this.inlineEditableEl && !this.editingEnabled ? -1 : null) ?? nothing} type=${this.type ?? nothing} .value=${live(this.value ?? "")} ${ref(
519
- this.childRef
520
- /* using unknown to workaround Lumina dynamic ref type issue */
521
- )}>` : null;
519
+ })} value=${this.defaultValue ?? nothing} .disabled=${this.disabled} enterkeyhint=${enterKeyHint ?? nothing} inputmode=${inputMode ?? nothing} max=${this.maxString ?? nothing} maxlength=${this.maxLength ?? nothing} min=${this.minString ?? nothing} minlength=${this.minLength ?? nothing} .multiple=${this.multiple} name=${this.name ?? nothing} @blur=${this.inputBlurHandler} @focus=${this.inputFocusHandler} @input=${this.inputInputHandler} @keydown=${this.inputKeyDownHandler} @keyup=${this.inputKeyUpHandler} pattern=${this.pattern ?? nothing} placeholder=${(this.placeholder || "") ?? nothing} .readOnly=${this.readOnly} .required=${this.required} spellcheck=${this.el.spellcheck ?? nothing} step=${this.step ?? nothing} tabindex=${(this.disabled || this.inlineEditableEl && !this.editingEnabled ? -1 : null) ?? nothing} type=${this.type ?? nothing} .value=${live(this.value ?? "")} ${ref(this.childRef)}>` : null;
522
520
  return this.interactiveContainer({ disabled: this.disabled, children: html`${this.labelText && InternalLabel({ labelText: this.labelText, onClick: this.onLabelClick, required: this.required, tooltipText: this.messages.required }) || ""}<div class=${safeClassMap({
523
521
  [CSS.inputWrapper]: true,
524
522
  [CSS_UTILITY.rtl]: dir === "rtl",
@@ -276,7 +276,6 @@ class InputDatePicker extends LitElement {
276
276
  }
277
277
  valueAsDateWatcher(valueAsDate) {
278
278
  const newValue = Array.isArray(valueAsDate) ? [dateToISO(valueAsDate[0]), dateToISO(valueAsDate[1])] : dateToISO(valueAsDate);
279
- this.datePickerActiveDate = Array.isArray(valueAsDate) ? valueAsDate[0] : valueAsDate;
280
279
  if (this.value !== newValue) {
281
280
  this.valueAsDateChangedExternally = true;
282
281
  this.value = newValue;
@@ -246,7 +246,7 @@ class InputText extends LitElement {
246
246
  const childEl = html`<input aria-errormessage=${IDS.validationMessage} .ariaInvalid=${this.status === "invalid"} .ariaLabel=${getLabelText(this)} autocomplete=${this.autocomplete ?? nothing} .autofocus=${this.el.autofocus} class=${safeClassMap({
247
247
  [CSS.editingEnabled]: this.editingEnabled,
248
248
  [CSS.inlineChild]: !!this.inlineEditableEl
249
- })} value=${this.defaultValue ?? nothing} .disabled=${this.disabled ? true : null} enterkeyhint=${this.el.enterKeyHint ?? nothing} inputmode=${this.el.inputMode ?? nothing} maxlength=${this.maxLength ?? nothing} minlength=${this.minLength ?? nothing} name=${this.name ?? nothing} @blur=${this.inputTextBlurHandler} @focus=${this.inputTextFocusHandler} @input=${this.inputTextInputHandler} @keydown=${this.inputTextKeyDownHandler} pattern=${this.pattern ?? nothing} placeholder=${(this.placeholder || "") ?? nothing} .readOnly=${this.readOnly} .required=${this.required ? true : null} spellcheck=${this.el.spellcheck ?? nothing} tabindex=${(this.disabled || this.inlineEditableEl && !this.editingEnabled ? -1 : null) ?? nothing} type=text .value=${live(this.value ?? "")} ${ref(this.childRef)}>`;
249
+ })} value=${this.defaultValue ?? nothing} .disabled=${this.disabled} enterkeyhint=${this.el.enterKeyHint ?? nothing} inputmode=${this.el.inputMode ?? nothing} maxlength=${this.maxLength ?? nothing} minlength=${this.minLength ?? nothing} name=${this.name ?? nothing} @blur=${this.inputTextBlurHandler} @focus=${this.inputTextFocusHandler} @input=${this.inputTextInputHandler} @keydown=${this.inputTextKeyDownHandler} pattern=${this.pattern ?? nothing} placeholder=${(this.placeholder || "") ?? nothing} .readOnly=${this.readOnly} .required=${this.required} spellcheck=${this.el.spellcheck ?? nothing} tabindex=${(this.disabled || this.inlineEditableEl && !this.editingEnabled ? -1 : null) ?? nothing} type=text .value=${live(this.value ?? "")} ${ref(this.childRef)}>`;
250
250
  return this.interactiveContainer({ disabled: this.disabled, children: html`${this.labelText && InternalLabel({ labelText: this.labelText, onClick: this.onLabelClick, required: this.required, tooltipText: this.messages.required }) || ""}<div class=${safeClassMap({
251
251
  [CSS.inputWrapper]: true,
252
252
  [CSS_UTILITY.rtl]: dir === "rtl",
@@ -57,9 +57,9 @@ export abstract class List extends LitElement {
57
57
  */
58
58
  accessor filterEnabled: boolean;
59
59
  /** Specifies an accessible name for the filter input field. */
60
- accessor filterLabel: string;
60
+ accessor filterLabel: string | undefined;
61
61
  /** Specifies placeholder text for the component's filter input field. */
62
- accessor filterPlaceholder: string;
62
+ accessor filterPlaceholder: string | undefined;
63
63
  /**
64
64
  * Specifies a function to handle filtering.
65
65
  *
@@ -71,7 +71,7 @@ export abstract class List extends LitElement {
71
71
  */
72
72
  accessor filterPredicate: ((item: ListItem) => boolean) | undefined;
73
73
  /** Specifies the properties to match against when filtering. If not set, all properties will be matched (`description`, `label`, `metadata`, and the `calcite-list-item-group`'s `heading`). */
74
- accessor filterProps: string[];
74
+ accessor filterProps: string[] | undefined;
75
75
  /**
76
76
  * Text for the component's filter input field.
77
77
  *
@@ -116,7 +116,7 @@ export abstract class List extends LitElement {
116
116
  total?: string;
117
117
  };
118
118
  /** Specifies the Unicode numeral system used by the component for localization. */
119
- accessor numberingSystem: NumberingSystem;
119
+ accessor numberingSystem: NumberingSystem | undefined;
120
120
  /**
121
121
  * Specifies the size of the component.
122
122
  *
@@ -111,13 +111,13 @@ class List extends LitElement {
111
111
  this.styles = styles;
112
112
  }
113
113
  get hasActiveFilter() {
114
- return this.filterEnabled && this.filterText && this.filteredItems.length !== this.visibleItems.length;
114
+ return !!(this.filterEnabled && this.filterText && this.filteredItems.length !== this.visibleItems.length);
115
115
  }
116
116
  get showEmptyContentContainer() {
117
117
  return !this.hasContent && this.hasEmptyContent;
118
118
  }
119
119
  get showNoResultsContainer() {
120
- return this.filterEnabled && this.filterText && this.hasFilterNoResults && this.visibleItems.length && !this.filteredItems.length;
120
+ return !!(this.filterEnabled && this.filterText && this.hasFilterNoResults && this.visibleItems.length && !this.filteredItems.length);
121
121
  }
122
122
  get effectiveFilterProps() {
123
123
  if (!this.filterProps) {
@@ -366,7 +366,7 @@ class List extends LitElement {
366
366
  this.calciteListOrderChange.emit(detail);
367
367
  }
368
368
  setParentList() {
369
- this.parentListEl = this.el.parentElement?.closest(listSelector);
369
+ this.parentListEl = this.el.parentElement?.closest(listSelector) || void 0;
370
370
  }
371
371
  handleDefaultSlotChange(event) {
372
372
  if (this.parentListEl) {
@@ -493,8 +493,7 @@ class List extends LitElement {
493
493
  }));
494
494
  }
495
495
  getGroupHeading(item) {
496
- const heading = this.listItemGroups.filter((group) => group.contains(item)).map((group) => group.heading);
497
- return heading;
496
+ return this.listItemGroups.filter((group) => group.contains(item) && group.heading).map((group) => group.heading);
498
497
  }
499
498
  updateGroupItems() {
500
499
  const { el, group, scale } = this;
@@ -35,7 +35,7 @@ export abstract class ListItem extends LitElement {
35
35
  */
36
36
  accessor closed: boolean;
37
37
  /** Specifies a description for the component. Displays below the `label`. */
38
- accessor description: string;
38
+ accessor description: string | undefined;
39
39
  /**
40
40
  * When `true`, interaction is prevented and the component is displayed with lower opacity.
41
41
  *
@@ -55,13 +55,13 @@ export abstract class ListItem extends LitElement {
55
55
  */
56
56
  accessor expanded: boolean;
57
57
  /** Specifies an icon to display at the end of the component. */
58
- accessor iconEnd: IconName;
58
+ accessor iconEnd: IconName | undefined;
59
59
  /** Displays the `iconStart` and/or `iconEnd` as flipped when the element direction is right-to-left (`"rtl"`). */
60
- accessor iconFlipRtl: FlipContext;
60
+ accessor iconFlipRtl: FlipContext | undefined;
61
61
  /** Specifies an icon to display at the start of the component. */
62
- accessor iconStart: IconName;
62
+ accessor iconStart: IconName | undefined;
63
63
  /** Specifies an accessible label for the component, displays above the `description`. */
64
- accessor label: string;
64
+ accessor label: string | undefined;
65
65
  /** Overrides individual strings used by the component. */
66
66
  accessor messageOverrides: {
67
67
  close?: string;
@@ -69,7 +69,7 @@ export abstract class ListItem extends LitElement {
69
69
  collapse?: string;
70
70
  };
71
71
  /** Provides additional metadata to the component. Primary use is for a filter on the parent `calcite-list`. */
72
- accessor metadata: Record<string, unknown>;
72
+ accessor metadata: Record<string, unknown> | undefined;
73
73
  /**
74
74
  * When `true`, the item is open to show child components.
75
75
  *
@@ -35,7 +35,6 @@ class ListItem extends LitElement {
35
35
  this.hasContentEnd = false;
36
36
  this.hasContentStart = false;
37
37
  this.hasCustomContent = false;
38
- this.level = null;
39
38
  this.expandable = false;
40
39
  this.active = false;
41
40
  this.bordered = false;
@@ -47,13 +46,11 @@ class ListItem extends LitElement {
47
46
  this.dragHandle = false;
48
47
  this.expanded = false;
49
48
  this.filterHidden = false;
50
- this.interactionMode = null;
51
49
  this.displayMode = "flat";
52
50
  this.addToItems = [];
53
51
  this.moveToItems = [];
54
52
  this.scale = "m";
55
53
  this.selected = false;
56
- this.selectionMode = null;
57
54
  this.sortHandleOpen = false;
58
55
  this.unavailable = false;
59
56
  this.topLayerDisabled = false;
@@ -110,7 +107,7 @@ class ListItem extends LitElement {
110
107
  connectedCallback() {
111
108
  super.connectedCallback();
112
109
  const { el } = this;
113
- this.parentListEl = el.closest(listSelector);
110
+ this.parentListEl = el.closest(listSelector) || void 0;
114
111
  this.level = getDepth(el) + 1;
115
112
  this.setSelectionDefaults();
116
113
  }
@@ -151,7 +148,7 @@ class ListItem extends LitElement {
151
148
  }
152
149
  activeHandler(active) {
153
150
  if (!active) {
154
- this.focusCell(null, false);
151
+ this.focusCell(void 0, false);
155
152
  }
156
153
  }
157
154
  handleClosedChange() {
@@ -289,7 +286,7 @@ class ListItem extends LitElement {
289
286
  this.actionsStartRef.value,
290
287
  this.contentRef.value,
291
288
  this.actionsEndRef.value
292
- ].filter((el) => el && !el.hidden);
289
+ ].filter((el) => !!(el && !el.hidden));
293
290
  }
294
291
  handleItemKeyDown(event) {
295
292
  if (event.defaultPrevented) {
@@ -300,7 +297,7 @@ class ListItem extends LitElement {
300
297
  const { containerRef, actionsStartRef: { value: actionsStartEl }, actionsEndRef: { value: actionsEndEl }, expanded, expandable } = this;
301
298
  const cells = this.getGridCells();
302
299
  const currentIndex = cells.findIndex((cell) => composedPath.includes(cell));
303
- if (key === "Enter" && !composedPath.includes(actionsStartEl) && !composedPath.includes(actionsEndEl)) {
300
+ if (key === "Enter" && actionsStartEl && !composedPath.includes(actionsStartEl) && actionsEndEl && !composedPath.includes(actionsEndEl)) {
304
301
  event.preventDefault();
305
302
  this.toggleSelected(event.shiftKey);
306
303
  } else if (key === "ArrowRight") {
@@ -309,7 +306,7 @@ class ListItem extends LitElement {
309
306
  if (currentIndex === -1) {
310
307
  if (!expanded && expandable) {
311
308
  this.toggle(true);
312
- this.focusCell(null);
309
+ this.focusCell();
313
310
  } else if (cells[0]) {
314
311
  this.focusCell(cells[0]);
315
312
  }
@@ -320,27 +317,27 @@ class ListItem extends LitElement {
320
317
  event.preventDefault();
321
318
  const prevIndex = currentIndex - 1;
322
319
  if (currentIndex === -1) {
323
- this.focusCell(null);
320
+ this.focusCell();
324
321
  if (expanded && expandable) {
325
322
  this.toggle(false);
326
323
  } else {
327
324
  this.calciteInternalFocusPreviousItem.emit();
328
325
  }
329
326
  } else if (currentIndex === 0) {
330
- this.focusCell(null);
327
+ this.focusCell();
331
328
  containerRef.value.focus();
332
329
  } else if (cells[currentIndex] && cells[prevIndex]) {
333
330
  this.focusCell(cells[prevIndex]);
334
331
  }
335
332
  }
336
333
  }
337
- focusCellNull() {
338
- this.focusCell(null);
334
+ clearCellFocus() {
335
+ this.focusCell();
339
336
  }
340
337
  setFocusCell(focusEl, focusedEl, saveFocusIndex) {
341
338
  const { parentListEl } = this;
342
339
  if (saveFocusIndex) {
343
- focusMap.set(parentListEl, null);
340
+ focusMap.set(parentListEl, void 0);
344
341
  }
345
342
  const gridCells = this.getGridCells();
346
343
  gridCells.forEach((tableCell) => {
@@ -459,14 +456,14 @@ class ListItem extends LitElement {
459
456
  const showSelectionBorder = selectionMode !== "none" && selectionAppearance === "border";
460
457
  const showSelectionHighlight = selectionMode !== "none" && selectionAppearance === "highlight";
461
458
  const containerInteractive = interactionMode === "interactive";
462
- return this.interactiveContainer({ disabled, children: html`<div class=${safeClassMap({ [CSS.wrapper]: true, [CSS.wrapperBordered]: wrapperBordered })}><div .ariaExpanded=${expandable ? expanded : null} .ariaLabel=${label} .ariaLevel=${level} .ariaSelected=${selected} class=${safeClassMap({
459
+ return this.interactiveContainer({ disabled, children: html`<div class=${safeClassMap({ [CSS.wrapper]: true, [CSS.wrapperBordered]: wrapperBordered })}><div .ariaExpanded=${expandable ? expanded : void 0} .ariaLabel=${label} .ariaLevel=${level} .ariaSelected=${selected} class=${safeClassMap({
463
460
  [CSS.row]: true,
464
461
  [CSS.container]: true,
465
462
  [CSS.containerHover]: containerInteractive,
466
463
  [CSS.containerBorder]: showSelectionBorder,
467
464
  [CSS.containerBorderSelected]: showSelectionBorder && selected,
468
465
  [CSS.containerHighlightSelected]: showSelectionHighlight && selected
469
- })} .hidden=${closed || filterHidden} @focus=${this.focusCellNull} @focusin=${this.emitInternalListItemActive} @keydown=${this.handleItemKeyDown} role=row .tabIndex=${active ? 0 : -1} ${ref(this.containerRef)}>${this.renderDragHandle()}${this.renderSelected()}${this.renderExpanded()}<div class=${safeClassMap({
466
+ })} .hidden=${closed || filterHidden} @focus=${this.clearCellFocus} @focusin=${this.emitInternalListItemActive} @keydown=${this.handleItemKeyDown} role=row .tabIndex=${active ? 0 : -1} ${ref(this.containerRef)}>${this.renderDragHandle()}${this.renderSelected()}${this.renderExpanded()}<div class=${safeClassMap({
470
467
  [CSS.contentContainerWrapper]: true,
471
468
  [CSS.contentContainerWrapperBordered]: contentContainerWrapperBordered
472
469
  })}>${this.renderActionsStart()}${this.renderContentContainer()}${this.renderActionsEnd()}</div></div>${this.renderContentBottom()}</div>${this.renderDefaultContainer()}` });
@@ -15,7 +15,7 @@ export abstract class ListItemGroup extends LitElement {
15
15
  */
16
16
  accessor disabled: boolean;
17
17
  /** Specifies the heading text for the nested `calcite-list-item` rows. */
18
- accessor heading: string;
18
+ accessor heading: string | undefined;
19
19
  /**
20
20
  * Specifies the size of the component.
21
21
  *
@@ -82,9 +82,9 @@ class Loader extends LitElement {
82
82
  const isDeterminate = type !== "indeterminate";
83
83
  const valueNow = Math.floor(value);
84
84
  this.el.ariaLabel = label;
85
- this.el.ariaValueMax = isDeterminate ? "100" : void 0;
86
- this.el.ariaValueMin = isDeterminate ? "0" : void 0;
87
- this.el.ariaValueNow = isDeterminate ? valueNow.toString() : void 0;
85
+ this.el.ariaValueMax = isDeterminate ? "100" : null;
86
+ this.el.ariaValueMin = isDeterminate ? "0" : null;
87
+ this.el.ariaValueNow = isDeterminate ? valueNow.toString() : null;
88
88
  setAttribute(this.el, "id", id);
89
89
  this.el.role = "progressbar";
90
90
  return html`<div class=${safeClassMap(CSS.rings)}>${this.renderRing("track")}${this.renderRing("progress")}${!inline && isDeterminate && html`<div class=${safeClassMap(CSS.percentage)}>${this.formatValue()}</div>` || ""}</div>${!inline && text && html`<div class=${safeClassMap(CSS.text)}>${text}</div>` || ""}`;
@@ -25,13 +25,13 @@ export abstract class MenuItem extends LitElement {
25
25
  */
26
26
  accessor breadcrumb: boolean;
27
27
  /** Specifies the URL destination of the component, which can be set as an absolute or relative path. */
28
- accessor href: string;
28
+ accessor href: string | undefined;
29
29
  /** Specifies an icon to display at the end of the component. */
30
- accessor iconEnd: IconName;
30
+ accessor iconEnd: IconName | undefined;
31
31
  /** Displays the `iconStart` and/or `iconEnd` as flipped when the element direction is right-to-left (`"rtl"`). */
32
- accessor iconFlipRtl: FlipContext;
32
+ accessor iconFlipRtl: FlipContext | undefined;
33
33
  /** Specifies an icon to display at the start of the component. */
34
- accessor iconStart: IconName;
34
+ accessor iconStart: IconName | undefined;
35
35
  /**
36
36
  * Specifies an accessible label for the component.
37
37
  *
@@ -54,15 +54,15 @@ export abstract class MenuItem extends LitElement {
54
54
  *
55
55
  * @see [MDN - rel](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel)
56
56
  */
57
- accessor rel: string;
57
+ accessor rel: string | undefined;
58
58
  /**
59
59
  * Specifies where to open the linked document defined in the `href` property.
60
60
  *
61
61
  * @see [MDN - target](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-target)
62
62
  */
63
- accessor target: string;
63
+ accessor target: string | undefined;
64
64
  /** Specifies the text to display. */
65
- accessor text: string;
65
+ accessor text: string | undefined;
66
66
  /**
67
67
  * Sets focus on the component.
68
68
  *
@@ -45,9 +45,12 @@ class MenuItem extends LitElement {
45
45
  this.anchorRef = createRef();
46
46
  this.direction = useDirection();
47
47
  this.dropdownActionRef = createRef();
48
+ this.isFocused = false;
48
49
  this.messages = useT9n();
49
50
  this.focusSetter = useSetFocus()(this);
50
51
  this.hasSubmenu = false;
52
+ this.active = false;
53
+ this.breadcrumb = false;
51
54
  this.isTopLevelItem = false;
52
55
  this.open = false;
53
56
  this.calciteInternalMenuItemKeyEvent = createEvent();
@@ -42,7 +42,7 @@ export abstract class Meter extends LitElement {
42
42
  *
43
43
  * @deprecated in v5.1.0, removal target v6.0.0 - This property has no effect on the component.
44
44
  */
45
- accessor form: string;
45
+ accessor form: string | undefined;
46
46
  /**
47
47
  * When `true`, number values are displayed with a group separator corresponding to the language and country format.
48
48
  *
@@ -50,7 +50,7 @@ export abstract class Meter extends LitElement {
50
50
  */
51
51
  accessor groupSeparator: boolean;
52
52
  /** Specifies a high value. When `fillType` is `"range"`, displays a different color when above the specified threshold. */
53
- accessor high: number;
53
+ accessor high: number | undefined;
54
54
  /**
55
55
  * Specifies an accessible label for the component.
56
56
  *
@@ -58,7 +58,7 @@ export abstract class Meter extends LitElement {
58
58
  */
59
59
  accessor label: string;
60
60
  /** Specifies a low value. When `fillType` is `"range"`, displays a different color when above the specified threshold. */
61
- accessor low: number;
61
+ accessor low: number | undefined;
62
62
  /**
63
63
  * Specifies the component's highest allowed value.
64
64
  *
@@ -78,9 +78,9 @@ export abstract class Meter extends LitElement {
78
78
  *
79
79
  * @deprecated in v5.1.0, removal target v6.0.0 - This property has no effect on the component.
80
80
  */
81
- accessor name: string;
81
+ accessor name: string | undefined;
82
82
  /** Specifies the Unicode numeral system used by the component for localization. */
83
- accessor numberingSystem: NumberingSystem;
83
+ accessor numberingSystem: NumberingSystem | undefined;
84
84
  /**
85
85
  * When `true`, displays the values of `high`, `low`, `min`, and `max`.
86
86
  *
@@ -106,7 +106,7 @@ export abstract class Meter extends LitElement {
106
106
  */
107
107
  accessor unitLabel: string;
108
108
  /** Specifies the component's value. */
109
- accessor value: number;
109
+ accessor value: number | undefined;
110
110
  /**
111
111
  * When `true`, displays the `value`.
112
112
  *
@@ -39,6 +39,11 @@ class Meter extends LitElement {
39
39
  this.minPercent = 0;
40
40
  this.resizeObserver = createObserver("resize", () => this.resizeHandler());
41
41
  this.valueLabelRef = createRef();
42
+ this.currentPercent = 0;
43
+ this.highActive = false;
44
+ this.highPercent = 100;
45
+ this.lowActive = false;
46
+ this.lowPercent = 0;
42
47
  this.appearance = "outline-fill";
43
48
  this.disabled = false;
44
49
  this.fillType = "range";
@@ -88,12 +93,8 @@ class Meter extends LitElement {
88
93
  this.updateLabels();
89
94
  }
90
95
  updateLabels() {
91
- if (this.valueLabelRef.value) {
92
- this.determineValueLabelPosition();
93
- }
94
- if (this.rangeLabels) {
95
- this.determineVisibleLabels();
96
- }
96
+ this.determineValueLabelPosition();
97
+ this.determineVisibleLabels();
97
98
  }
98
99
  calculateValues() {
99
100
  const { min, max, low, high, value } = this;
@@ -154,9 +155,12 @@ class Meter extends LitElement {
154
155
  }
155
156
  }
156
157
  intersects(el1, el2) {
157
- return el1 && el2 && intersects(el1.getBoundingClientRect(), el2.getBoundingClientRect());
158
+ return !!(el1 && el2 && intersects(el1.getBoundingClientRect(), el2.getBoundingClientRect()));
158
159
  }
159
160
  determineVisibleLabels() {
161
+ if (!this.rangeLabels) {
162
+ return;
163
+ }
160
164
  const { minLabelRef: { value: minLabelEl }, lowLabelRef: { value: lowLabelEl }, highLabelRef: { value: highLabelEl }, maxLabelRef: { value: maxLabelEl } } = this;
161
165
  const highMaxOverlap = this.intersects(highLabelEl, maxLabelEl);
162
166
  const lowHighOverlap = this.intersects(lowLabelEl, highLabelEl);
@@ -189,6 +193,9 @@ class Meter extends LitElement {
189
193
  }
190
194
  determineValueLabelPosition() {
191
195
  const { valueLabelRef: { value: valueLabelEl }, meterContainerRef: { value: meterContainerEl }, currentPercent } = this;
196
+ if (!valueLabelEl || !meterContainerEl) {
197
+ return;
198
+ }
192
199
  const valuePosition = currentPercent > 100 ? 100 : currentPercent > 0 ? currentPercent : 0;
193
200
  const valueLabelWidth = valueLabelEl.getBoundingClientRect().width;
194
201
  const containerWidth = meterContainerEl.getBoundingClientRect().width;
@@ -26,7 +26,7 @@ export abstract class Pagination extends LitElement {
26
26
  last?: string;
27
27
  };
28
28
  /** Specifies the Unicode numeral system used by the component for localization. */
29
- accessor numberingSystem: NumberingSystem;
29
+ accessor numberingSystem: NumberingSystem | undefined;
30
30
  /**
31
31
  * Specifies the number of items per page.
32
32
  *
@@ -42,7 +42,10 @@ class Pagination extends LitElement {
42
42
  this.resizeObserver = createObserver("resize", (entries) => entries.forEach(this.resizeHandler));
43
43
  this.messages = useT9n();
44
44
  this.focusSetter = useSetFocus()(this);
45
+ this.isXXSmall = false;
46
+ this.lastStartItem = 1;
45
47
  this.maxItems = maxItemBreakpoints.xxsmall;
48
+ this.totalPages = 1;
46
49
  this.groupSeparator = false;
47
50
  this.pageSize = 20;
48
51
  this.scale = "m";