@esri/calcite-components 1.0.0-beta.71 → 1.0.0-beta.75

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 (932) hide show
  1. package/dist/calcite/assets/calcite-date-picker/nls/bg.json +31 -0
  2. package/dist/calcite/assets/calcite-icon/centerAlign16.json +1 -0
  3. package/dist/calcite/assets/calcite-icon/centerAlign24.json +1 -0
  4. package/dist/calcite/assets/calcite-icon/centerAlign32.json +1 -0
  5. package/dist/calcite/assets/calcite-icon/convert16.json +1 -0
  6. package/dist/calcite/assets/calcite-icon/convert24.json +1 -0
  7. package/dist/calcite/assets/calcite-icon/convert32.json +1 -0
  8. package/dist/calcite/assets/calcite-icon/explore16.json +1 -0
  9. package/dist/calcite/assets/calcite-icon/explore24.json +1 -0
  10. package/dist/calcite/assets/calcite-icon/explore32.json +1 -0
  11. package/dist/calcite/assets/calcite-icon/formDropdown16.json +1 -0
  12. package/dist/calcite/assets/calcite-icon/formDropdown24.json +1 -0
  13. package/dist/calcite/assets/calcite-icon/formDropdown32.json +1 -0
  14. package/dist/calcite/assets/calcite-icon/language16.json +1 -0
  15. package/dist/calcite/assets/calcite-icon/language24.json +1 -0
  16. package/dist/calcite/assets/calcite-icon/language32.json +1 -0
  17. package/dist/calcite/assets/calcite-icon/languageTranslate16.json +1 -0
  18. package/dist/calcite/assets/calcite-icon/languageTranslate24.json +1 -0
  19. package/dist/calcite/assets/calcite-icon/languageTranslate32.json +1 -0
  20. package/dist/calcite/assets/calcite-icon/leftAlign16.json +1 -0
  21. package/dist/calcite/assets/calcite-icon/leftAlign24.json +1 -0
  22. package/dist/calcite/assets/calcite-icon/leftAlign32.json +1 -0
  23. package/dist/calcite/assets/calcite-icon/partlyCloudy16.json +1 -0
  24. package/dist/calcite/assets/calcite-icon/partlyCloudy24.json +1 -0
  25. package/dist/calcite/assets/calcite-icon/partlyCloudy32.json +1 -0
  26. package/dist/calcite/assets/calcite-icon/rightAlign16.json +1 -0
  27. package/dist/calcite/assets/calcite-icon/rightAlign24.json +1 -0
  28. package/dist/calcite/assets/calcite-icon/rightAlign32.json +1 -0
  29. package/dist/calcite/assets/calcite-icon/screenshotMode16.json +1 -0
  30. package/dist/calcite/assets/calcite-icon/screenshotMode24.json +1 -0
  31. package/dist/calcite/assets/calcite-icon/screenshotMode32.json +1 -0
  32. package/dist/calcite/assets/calcite-icon/terminal16.json +1 -0
  33. package/dist/calcite/assets/calcite-icon/terminal24.json +1 -0
  34. package/dist/calcite/assets/calcite-icon/terminal32.json +1 -0
  35. package/dist/calcite/assets/calcite-icon/touch16.json +1 -0
  36. package/dist/calcite/assets/calcite-icon/touch24.json +1 -0
  37. package/dist/calcite/assets/calcite-icon/touch32.json +1 -0
  38. package/dist/calcite/calcite.css +1 -1
  39. package/dist/calcite/calcite.esm.js +1 -1
  40. package/dist/calcite/calcite.js +1 -1
  41. package/dist/calcite/p-0164361f.system.entry.js +5 -0
  42. package/dist/calcite/p-01b7adb5.js +5 -0
  43. package/dist/calcite/p-04bf684c.entry.js +5 -0
  44. package/dist/calcite/p-04bf9bca.system.entry.js +5 -0
  45. package/dist/calcite/p-06dbe76a.system.entry.js +5 -0
  46. package/dist/calcite/p-06fbc0f2.system.entry.js +5 -0
  47. package/dist/calcite/p-08be120f.entry.js +5 -0
  48. package/dist/calcite/p-0a5d059d.js +5 -0
  49. package/dist/calcite/p-0a85cd8c.system.entry.js +5 -0
  50. package/dist/calcite/p-0b552c00.system.entry.js +5 -0
  51. package/dist/calcite/p-0cb38659.system.entry.js +5 -0
  52. package/dist/calcite/p-10b1b39a.system.entry.js +5 -0
  53. package/dist/calcite/p-12142a2c.system.entry.js +5 -0
  54. package/dist/calcite/p-141c978b.system.entry.js +5 -0
  55. package/dist/calcite/p-146d8510.entry.js +5 -0
  56. package/dist/calcite/p-14ca5cdf.system.entry.js +5 -0
  57. package/dist/calcite/p-14e47d1b.js +5 -0
  58. package/dist/calcite/p-1668089f.entry.js +5 -0
  59. package/dist/calcite/p-1804c868.system.entry.js +5 -0
  60. package/dist/calcite/p-1a3a366d.system.js +5 -0
  61. package/dist/calcite/p-20e3fc50.entry.js +5 -0
  62. package/dist/calcite/p-2218fef5.entry.js +5 -0
  63. package/dist/calcite/p-2297db38.entry.js +5 -0
  64. package/dist/calcite/p-243985d8.system.entry.js +5 -0
  65. package/dist/calcite/p-2e324a56.system.entry.js +5 -0
  66. package/dist/calcite/p-2e351904.system.entry.js +5 -0
  67. package/dist/calcite/p-32d61433.system.entry.js +5 -0
  68. package/dist/calcite/p-39d4d1b1.system.entry.js +5 -0
  69. package/dist/calcite/p-3c34f20d.system.js +5 -0
  70. package/dist/calcite/p-3cdf0ad5.system.entry.js +5 -0
  71. package/dist/calcite/p-40c3d7a6.system.entry.js +5 -0
  72. package/dist/calcite/{p-71cdeee3.system.js → p-44aa1db4.system.js} +1 -1
  73. package/dist/calcite/p-49782820.entry.js +5 -0
  74. package/dist/calcite/p-500300b5.entry.js +5 -0
  75. package/dist/calcite/p-513bc44f.system.entry.js +5 -0
  76. package/dist/calcite/p-54bb21f5.system.entry.js +5 -0
  77. package/dist/calcite/p-54edaa0d.entry.js +5 -0
  78. package/dist/calcite/p-58eb8460.entry.js +5 -0
  79. package/dist/calcite/p-5a77fd17.entry.js +5 -0
  80. package/dist/calcite/p-5b8404de.entry.js +5 -0
  81. package/dist/calcite/p-5d12a140.entry.js +5 -0
  82. package/dist/calcite/p-5d7da300.system.entry.js +5 -0
  83. package/dist/calcite/p-5f5bfaa5.entry.js +5 -0
  84. package/dist/calcite/p-617c3f30.system.entry.js +5 -0
  85. package/dist/calcite/p-63f8783a.entry.js +5 -0
  86. package/dist/calcite/p-647d22ef.js +5 -0
  87. package/dist/calcite/p-64a5e88c.entry.js +5 -0
  88. package/dist/calcite/p-66ca7309.entry.js +5 -0
  89. package/dist/calcite/p-6969dabb.entry.js +5 -0
  90. package/dist/calcite/p-6afd69dc.system.entry.js +5 -0
  91. package/dist/calcite/p-6fb9fef5.entry.js +5 -0
  92. package/dist/calcite/p-70dd483b.system.js +5 -0
  93. package/dist/calcite/p-7165e37e.entry.js +5 -0
  94. package/dist/calcite/p-754809de.entry.js +5 -0
  95. package/dist/calcite/p-7743a8d0.system.entry.js +5 -0
  96. package/dist/calcite/p-786b8250.entry.js +5 -0
  97. package/dist/calcite/p-78725919.entry.js +5 -0
  98. package/dist/calcite/p-7a6c932d.system.entry.js +5 -0
  99. package/dist/calcite/p-7bdeb3ba.system.entry.js +5 -0
  100. package/dist/calcite/p-7d4316a1.system.entry.js +5 -0
  101. package/dist/calcite/p-82491929.entry.js +5 -0
  102. package/dist/calcite/p-8604c625.system.entry.js +5 -0
  103. package/dist/calcite/p-869eb8f9.entry.js +5 -0
  104. package/dist/calcite/p-86b63ebb.system.entry.js +5 -0
  105. package/dist/calcite/p-8709d314.system.entry.js +5 -0
  106. package/dist/calcite/p-8ba8a357.system.js +5 -0
  107. package/dist/calcite/p-8e1945e3.entry.js +5 -0
  108. package/dist/calcite/p-8e4aa7f7.entry.js +5 -0
  109. package/dist/calcite/p-8f2c68f4.system.entry.js +5 -0
  110. package/dist/calcite/p-8f3a3e4e.js +5 -0
  111. package/dist/calcite/p-900e18a5.system.entry.js +5 -0
  112. package/dist/calcite/p-92d9b81d.system.entry.js +5 -0
  113. package/dist/calcite/p-9716c57c.entry.js +5 -0
  114. package/dist/calcite/p-97375cc0.entry.js +5 -0
  115. package/dist/calcite/p-99422223.system.entry.js +5 -0
  116. package/dist/calcite/p-99d32fc3.system.js +5 -0
  117. package/dist/calcite/p-9a7c4812.js +5 -0
  118. package/dist/calcite/p-9ca6c750.system.entry.js +5 -0
  119. package/dist/calcite/p-9d7102c0.entry.js +5 -0
  120. package/dist/calcite/p-9e2c9752.entry.js +5 -0
  121. package/dist/calcite/p-9f49c4fe.system.entry.js +5 -0
  122. package/dist/calcite/p-a50e52f1.entry.js +5 -0
  123. package/dist/calcite/p-a99c8ebf.system.js +5 -0
  124. package/dist/calcite/p-ab14b0a2.system.js +5 -0
  125. package/dist/calcite/p-abe7730b.entry.js +5 -0
  126. package/dist/calcite/{p-db10485b.system.js → p-ac4aec20.system.js} +1 -1
  127. package/dist/calcite/p-af669f43.entry.js +5 -0
  128. package/dist/calcite/p-af84fa29.system.entry.js +5 -0
  129. package/dist/calcite/p-b002b038.entry.js +5 -0
  130. package/dist/calcite/p-b1a43a5f.system.entry.js +5 -0
  131. package/dist/calcite/p-b86f0930.system.entry.js +5 -0
  132. package/dist/calcite/p-b9a47a94.system.entry.js +5 -0
  133. package/dist/calcite/p-b9adf89d.system.entry.js +5 -0
  134. package/dist/calcite/p-baca86e3.entry.js +5 -0
  135. package/dist/calcite/p-bb401f25.system.js +5 -0
  136. package/dist/calcite/p-bc85a791.entry.js +5 -0
  137. package/dist/calcite/p-bd576ae0.system.entry.js +5 -0
  138. package/dist/calcite/{p-7bb94bfa.entry.js → p-bde80af8.entry.js} +1 -1
  139. package/dist/calcite/p-be231b84.entry.js +5 -0
  140. package/dist/calcite/p-c1c37da9.entry.js +5 -0
  141. package/dist/calcite/p-c5463268.system.entry.js +5 -0
  142. package/dist/calcite/p-c5b3d90c.entry.js +5 -0
  143. package/dist/calcite/p-c6cb0aa2.entry.js +5 -0
  144. package/dist/calcite/p-cd9d106b.system.entry.js +5 -0
  145. package/dist/calcite/p-cfcb2161.entry.js +5 -0
  146. package/dist/calcite/p-d14265f3.entry.js +5 -0
  147. package/dist/calcite/p-da470de7.entry.js +5 -0
  148. package/dist/calcite/p-dba7c714.system.entry.js +5 -0
  149. package/dist/calcite/p-dd9f2e61.js +5 -0
  150. package/dist/calcite/p-e1491358.system.entry.js +5 -0
  151. package/dist/calcite/p-e2047621.system.js +5 -0
  152. package/dist/calcite/p-e426746f.system.entry.js +5 -0
  153. package/dist/calcite/p-e4862fff.entry.js +5 -0
  154. package/dist/calcite/p-e5420c67.entry.js +5 -0
  155. package/dist/calcite/p-e5526c34.entry.js +5 -0
  156. package/dist/calcite/p-e5c2a6eb.entry.js +5 -0
  157. package/dist/calcite/{p-714ae4f6.entry.js → p-e63f0806.entry.js} +1 -1
  158. package/dist/calcite/p-e83a5fe4.system.entry.js +5 -0
  159. package/dist/calcite/{p-f2620bc3.js → p-e8e0f3b7.js} +1 -1
  160. package/dist/calcite/p-ea510477.js +5 -0
  161. package/dist/calcite/p-ec9bab33.system.js +5 -0
  162. package/dist/calcite/p-ee14736a.entry.js +5 -0
  163. package/dist/calcite/p-eeb91710.js +5 -0
  164. package/dist/calcite/p-ef6b4184.js +5 -0
  165. package/dist/calcite/p-f12c35de.system.entry.js +5 -0
  166. package/dist/calcite/p-f1dc4798.entry.js +5 -0
  167. package/dist/calcite/p-f24ddc56.system.entry.js +5 -0
  168. package/dist/calcite/p-f26cad61.system.entry.js +5 -0
  169. package/dist/calcite/p-f4d9c369.system.entry.js +5 -0
  170. package/dist/calcite/p-f5739197.entry.js +5 -0
  171. package/dist/calcite/p-f7572da7.entry.js +5 -0
  172. package/dist/calcite/p-f763b1e7.system.entry.js +5 -0
  173. package/dist/calcite/p-fbd68dbf.system.entry.js +5 -0
  174. package/dist/calcite/p-fdd3ea5e.entry.js +5 -0
  175. package/dist/calcite/p-fe3fff79.entry.js +5 -0
  176. package/dist/calcite/p-fee9511c.system.entry.js +5 -0
  177. package/dist/calcite/p-ff04cfb1.system.entry.js +5 -0
  178. package/dist/cjs/{CalciteExpandToggle-ca629f39.js → CalciteExpandToggle-d24fed0e.js} +3 -3
  179. package/dist/cjs/calcite-accordion_2.cjs.entry.js +6 -7
  180. package/dist/cjs/calcite-action-bar.cjs.entry.js +7 -4
  181. package/dist/cjs/calcite-action-group.cjs.entry.js +15 -2
  182. package/dist/cjs/calcite-action-menu.cjs.entry.js +6 -3
  183. package/dist/cjs/calcite-action-pad.cjs.entry.js +12 -9
  184. package/dist/cjs/calcite-action.cjs.entry.js +2 -2
  185. package/dist/cjs/calcite-alert.cjs.entry.js +23 -16
  186. package/dist/cjs/calcite-avatar.cjs.entry.js +4 -5
  187. package/dist/cjs/calcite-block_2.cjs.entry.js +25 -8
  188. package/dist/cjs/calcite-button.cjs.entry.js +13 -8
  189. package/dist/cjs/calcite-card.cjs.entry.js +19 -12
  190. package/dist/cjs/calcite-checkbox.cjs.entry.js +5 -5
  191. package/dist/cjs/calcite-chip.cjs.entry.js +18 -6
  192. package/dist/cjs/calcite-color-picker_3.cjs.entry.js +46 -35
  193. package/dist/cjs/calcite-combobox_3.cjs.entry.js +46 -35
  194. package/dist/cjs/calcite-date-picker_4.cjs.entry.js +53 -41
  195. package/dist/cjs/calcite-dropdown_3.cjs.entry.js +37 -36
  196. package/dist/cjs/calcite-fab.cjs.entry.js +4 -5
  197. package/dist/cjs/calcite-filter.cjs.entry.js +4 -19
  198. package/dist/cjs/calcite-flow.cjs.entry.js +2 -2
  199. package/dist/cjs/calcite-graph_2.cjs.entry.js +50 -31
  200. package/dist/cjs/calcite-handle.cjs.entry.js +1 -1
  201. package/dist/cjs/calcite-icon.cjs.entry.js +3 -3
  202. package/dist/cjs/calcite-inline-editable.cjs.entry.js +8 -8
  203. package/dist/cjs/calcite-input-date-picker.cjs.entry.js +31 -14
  204. package/dist/cjs/calcite-input-message.cjs.entry.js +3 -4
  205. package/dist/cjs/calcite-input-time-picker_2.cjs.entry.js +378 -253
  206. package/dist/cjs/calcite-input.cjs.entry.js +131 -57
  207. package/dist/cjs/calcite-label.cjs.entry.js +2 -5
  208. package/dist/cjs/calcite-link.cjs.entry.js +15 -4
  209. package/dist/cjs/calcite-list_3.cjs.entry.js +17 -4
  210. package/dist/cjs/calcite-loader.cjs.entry.js +1 -1
  211. package/dist/cjs/calcite-modal.cjs.entry.js +10 -9
  212. package/dist/cjs/calcite-notice.cjs.entry.js +11 -4
  213. package/dist/cjs/calcite-option_3.cjs.entry.js +13 -12
  214. package/dist/cjs/calcite-pagination.cjs.entry.js +3 -6
  215. package/dist/cjs/calcite-panel.cjs.entry.js +23 -21
  216. package/dist/cjs/calcite-pick-list_3.cjs.entry.js +31 -9
  217. package/dist/cjs/calcite-popover_2.cjs.entry.js +7 -9
  218. package/dist/cjs/calcite-progress.cjs.entry.js +1 -1
  219. package/dist/cjs/calcite-radio-button-group.cjs.entry.js +1 -1
  220. package/dist/cjs/{calcite-radio_2.cjs.entry.js → calcite-radio-button.cjs.entry.js} +27 -58
  221. package/dist/cjs/calcite-radio-group_2.cjs.entry.js +14 -67
  222. package/dist/cjs/calcite-rating.cjs.entry.js +5 -6
  223. package/dist/cjs/calcite-scrim.cjs.entry.js +1 -1
  224. package/dist/cjs/calcite-shell_3.cjs.entry.js +42 -15
  225. package/dist/cjs/calcite-sortable-list.cjs.entry.js +2 -2
  226. package/dist/cjs/calcite-split-button.cjs.entry.js +2 -5
  227. package/dist/cjs/calcite-stepper_2.cjs.entry.js +6 -8
  228. package/dist/cjs/calcite-switch.cjs.entry.js +7 -9
  229. package/dist/cjs/calcite-tab_4.cjs.entry.js +14 -17
  230. package/dist/cjs/calcite-tile-select_2.cjs.entry.js +38 -5
  231. package/dist/cjs/calcite-tile.cjs.entry.js +15 -2
  232. package/dist/cjs/calcite-tip_3.cjs.entry.js +19 -7
  233. package/dist/cjs/calcite-tooltip_2.cjs.entry.js +7 -8
  234. package/dist/cjs/calcite-tree_2.cjs.entry.js +12 -7
  235. package/dist/cjs/calcite-value-list_2.cjs.entry.js +26 -7
  236. package/dist/cjs/calcite.cjs.js +2 -2
  237. package/dist/cjs/conditionalSlot-92505fba.js +43 -0
  238. package/dist/cjs/{dom-41ce6029.js → dom-f3df220d.js} +44 -18
  239. package/dist/cjs/{form-7f276aa5.js → form-237cf392.js} +1 -1
  240. package/dist/cjs/{label-98a31f7d.js → label-6b18ca08.js} +5 -2
  241. package/dist/cjs/loader.cjs.js +2 -2
  242. package/dist/cjs/locale-02462821.js +128 -0
  243. package/dist/cjs/number-e813e801.js +84 -0
  244. package/dist/cjs/{observers-41837607.js → observers-79bfb8bc.js} +5 -1
  245. package/dist/cjs/{popper-4c24a334.js → popper-13a2bb46.js} +29 -10
  246. package/dist/cjs/{resources-3f7b51c8.js → resources-11763017.js} +7 -5
  247. package/dist/cjs/{resources-1177e39b.js → resources-95073e41.js} +17 -6
  248. package/dist/collection/collection-manifest.json +6 -8
  249. package/dist/collection/components/calcite-accordion/calcite-accordion.css +8 -14
  250. package/dist/collection/components/calcite-accordion/calcite-accordion.js +2 -3
  251. package/dist/collection/components/calcite-accordion-item/calcite-accordion-item.css +41 -84
  252. package/dist/collection/components/calcite-accordion-item/calcite-accordion-item.js +2 -3
  253. package/dist/collection/components/calcite-action/calcite-action.css +52 -92
  254. package/dist/collection/components/calcite-action-bar/calcite-action-bar.css +12 -19
  255. package/dist/collection/components/calcite-action-bar/calcite-action-bar.js +3 -0
  256. package/dist/collection/components/calcite-action-group/calcite-action-group.css +10 -19
  257. package/dist/collection/components/calcite-action-group/calcite-action-group.js +12 -0
  258. package/dist/collection/components/calcite-action-menu/calcite-action-menu.css +16 -24
  259. package/dist/collection/components/calcite-action-menu/calcite-action-menu.js +3 -0
  260. package/dist/collection/components/calcite-action-pad/calcite-action-pad.css +33 -33
  261. package/dist/collection/components/calcite-action-pad/calcite-action-pad.js +9 -8
  262. package/dist/collection/components/calcite-alert/calcite-alert.css +110 -147
  263. package/dist/collection/components/calcite-alert/calcite-alert.js +46 -17
  264. package/dist/collection/components/calcite-avatar/calcite-avatar.css +13 -21
  265. package/dist/collection/components/calcite-avatar/calcite-avatar.js +2 -4
  266. package/dist/collection/components/calcite-block/calcite-block.css +52 -65
  267. package/dist/collection/components/calcite-block/calcite-block.js +21 -5
  268. package/dist/collection/components/calcite-block-section/calcite-block-section.css +32 -54
  269. package/dist/collection/components/calcite-block-section/calcite-block-section.js +3 -4
  270. package/dist/collection/components/calcite-button/calcite-button.css +107 -284
  271. package/dist/collection/components/calcite-button/calcite-button.js +9 -6
  272. package/dist/collection/components/calcite-button/resources.js +3 -1
  273. package/dist/collection/components/calcite-card/calcite-card.css +55 -67
  274. package/dist/collection/components/calcite-card/calcite-card.js +17 -12
  275. package/dist/collection/components/calcite-checkbox/calcite-checkbox.css +16 -25
  276. package/dist/collection/components/calcite-checkbox/calcite-checkbox.js +1 -1
  277. package/dist/collection/components/calcite-chip/calcite-chip.css +36 -80
  278. package/dist/collection/components/calcite-chip/calcite-chip.js +16 -6
  279. package/dist/collection/components/calcite-color-picker/calcite-color-picker.css +18 -49
  280. package/dist/collection/components/calcite-color-picker/calcite-color-picker.js +8 -12
  281. package/dist/collection/components/calcite-color-picker-hex-input/calcite-color-picker-hex-input.css +12 -18
  282. package/dist/collection/components/calcite-color-picker-hex-input/calcite-color-picker-hex-input.js +4 -6
  283. package/dist/collection/components/calcite-color-picker-swatch/calcite-color-picker-swatch.css +12 -19
  284. package/dist/collection/components/calcite-color-picker-swatch/resources.js +1 -1
  285. package/dist/collection/components/calcite-combobox/calcite-combobox.css +37 -60
  286. package/dist/collection/components/calcite-combobox/calcite-combobox.js +49 -20
  287. package/dist/collection/components/calcite-combobox/resources.js +3 -0
  288. package/dist/collection/components/calcite-combobox-item/calcite-combobox-item.css +41 -55
  289. package/dist/collection/components/calcite-combobox-item/calcite-combobox-item.js +9 -10
  290. package/dist/collection/components/calcite-combobox-item-group/calcite-combobox-item-group.css +15 -38
  291. package/dist/collection/components/calcite-combobox-item-group/calcite-combobox-item-group.js +2 -4
  292. package/dist/collection/components/calcite-date-picker/assets/calcite-date-picker/nls/bg.json +31 -0
  293. package/dist/collection/components/calcite-date-picker/calcite-date-picker.css +9 -15
  294. package/dist/collection/components/calcite-date-picker/calcite-date-picker.js +55 -17
  295. package/dist/collection/components/calcite-date-picker/resources.js +2 -1
  296. package/dist/collection/components/calcite-date-picker/utils.js +4 -3
  297. package/dist/collection/components/calcite-date-picker-day/calcite-date-picker-day.css +64 -68
  298. package/dist/collection/components/calcite-date-picker-day/calcite-date-picker-day.js +1 -2
  299. package/dist/collection/components/calcite-date-picker-month/calcite-date-picker-month.css +26 -32
  300. package/dist/collection/components/calcite-date-picker-month/calcite-date-picker-month.js +6 -9
  301. package/dist/collection/components/calcite-date-picker-month-header/calcite-date-picker-month-header.css +39 -57
  302. package/dist/collection/components/calcite-date-picker-month-header/calcite-date-picker-month-header.js +25 -11
  303. package/dist/collection/components/calcite-dropdown/calcite-dropdown.css +9 -49
  304. package/dist/collection/components/calcite-dropdown/calcite-dropdown.js +29 -25
  305. package/dist/collection/components/calcite-dropdown-group/calcite-dropdown-group.css +15 -21
  306. package/dist/collection/components/calcite-dropdown-group/calcite-dropdown-group.js +2 -3
  307. package/dist/collection/components/calcite-dropdown-item/calcite-dropdown-item.css +89 -183
  308. package/dist/collection/components/calcite-dropdown-item/calcite-dropdown-item.js +4 -8
  309. package/dist/collection/components/calcite-fab/calcite-fab.css +15 -17
  310. package/dist/collection/components/calcite-fab/calcite-fab.js +3 -4
  311. package/dist/collection/components/calcite-filter/calcite-filter.css +28 -56
  312. package/dist/collection/components/calcite-filter/calcite-filter.js +7 -43
  313. package/dist/collection/components/calcite-flow/calcite-flow.css +27 -35
  314. package/dist/collection/components/calcite-graph/calcite-graph.css +10 -19
  315. package/dist/collection/components/calcite-graph/calcite-graph.js +13 -42
  316. package/dist/collection/components/calcite-handle/calcite-handle.css +9 -19
  317. package/dist/collection/components/calcite-icon/assets/calcite-icon/centerAlign16.json +1 -0
  318. package/dist/collection/components/calcite-icon/assets/calcite-icon/centerAlign24.json +1 -0
  319. package/dist/collection/components/calcite-icon/assets/calcite-icon/centerAlign32.json +1 -0
  320. package/dist/collection/components/calcite-icon/assets/calcite-icon/convert16.json +1 -0
  321. package/dist/collection/components/calcite-icon/assets/calcite-icon/convert24.json +1 -0
  322. package/dist/collection/components/calcite-icon/assets/calcite-icon/convert32.json +1 -0
  323. package/dist/collection/components/calcite-icon/assets/calcite-icon/explore16.json +1 -0
  324. package/dist/collection/components/calcite-icon/assets/calcite-icon/explore24.json +1 -0
  325. package/dist/collection/components/calcite-icon/assets/calcite-icon/explore32.json +1 -0
  326. package/dist/collection/components/calcite-icon/assets/calcite-icon/formDropdown16.json +1 -0
  327. package/dist/collection/components/calcite-icon/assets/calcite-icon/formDropdown24.json +1 -0
  328. package/dist/collection/components/calcite-icon/assets/calcite-icon/formDropdown32.json +1 -0
  329. package/dist/collection/components/calcite-icon/assets/calcite-icon/language16.json +1 -0
  330. package/dist/collection/components/calcite-icon/assets/calcite-icon/language24.json +1 -0
  331. package/dist/collection/components/calcite-icon/assets/calcite-icon/language32.json +1 -0
  332. package/dist/collection/components/calcite-icon/assets/calcite-icon/languageTranslate16.json +1 -0
  333. package/dist/collection/components/calcite-icon/assets/calcite-icon/languageTranslate24.json +1 -0
  334. package/dist/collection/components/calcite-icon/assets/calcite-icon/languageTranslate32.json +1 -0
  335. package/dist/collection/components/calcite-icon/assets/calcite-icon/leftAlign16.json +1 -0
  336. package/dist/collection/components/calcite-icon/assets/calcite-icon/leftAlign24.json +1 -0
  337. package/dist/collection/components/calcite-icon/assets/calcite-icon/leftAlign32.json +1 -0
  338. package/dist/collection/components/calcite-icon/assets/calcite-icon/partlyCloudy16.json +1 -0
  339. package/dist/collection/components/calcite-icon/assets/calcite-icon/partlyCloudy24.json +1 -0
  340. package/dist/collection/components/calcite-icon/assets/calcite-icon/partlyCloudy32.json +1 -0
  341. package/dist/collection/components/calcite-icon/assets/calcite-icon/rightAlign16.json +1 -0
  342. package/dist/collection/components/calcite-icon/assets/calcite-icon/rightAlign24.json +1 -0
  343. package/dist/collection/components/calcite-icon/assets/calcite-icon/rightAlign32.json +1 -0
  344. package/dist/collection/components/calcite-icon/assets/calcite-icon/screenshotMode16.json +1 -0
  345. package/dist/collection/components/calcite-icon/assets/calcite-icon/screenshotMode24.json +1 -0
  346. package/dist/collection/components/calcite-icon/assets/calcite-icon/screenshotMode32.json +1 -0
  347. package/dist/collection/components/calcite-icon/assets/calcite-icon/terminal16.json +1 -0
  348. package/dist/collection/components/calcite-icon/assets/calcite-icon/terminal24.json +1 -0
  349. package/dist/collection/components/calcite-icon/assets/calcite-icon/terminal32.json +1 -0
  350. package/dist/collection/components/calcite-icon/assets/calcite-icon/touch16.json +1 -0
  351. package/dist/collection/components/calcite-icon/assets/calcite-icon/touch24.json +1 -0
  352. package/dist/collection/components/calcite-icon/assets/calcite-icon/touch32.json +1 -0
  353. package/dist/collection/components/calcite-icon/calcite-icon.css +17 -15
  354. package/dist/collection/components/calcite-inline-editable/calcite-inline-editable.css +11 -14
  355. package/dist/collection/components/calcite-inline-editable/calcite-inline-editable.js +15 -21
  356. package/dist/collection/components/calcite-input/calcite-input.css +118 -268
  357. package/dist/collection/components/calcite-input/calcite-input.js +124 -50
  358. package/dist/collection/components/calcite-input-date-picker/calcite-input-date-picker.css +33 -47
  359. package/dist/collection/components/calcite-input-date-picker/calcite-input-date-picker.js +83 -10
  360. package/dist/collection/components/calcite-input-message/calcite-input-message.css +21 -33
  361. package/dist/collection/components/calcite-input-message/calcite-input-message.js +2 -4
  362. package/dist/collection/components/calcite-input-time-picker/calcite-input-time-picker.css +6 -12
  363. package/dist/collection/components/calcite-input-time-picker/calcite-input-time-picker.js +84 -80
  364. package/dist/collection/components/calcite-label/calcite-label.css +28 -42
  365. package/dist/collection/components/calcite-label/calcite-label.js +1 -4
  366. package/dist/collection/components/calcite-link/calcite-link.css +31 -51
  367. package/dist/collection/components/calcite-link/calcite-link.js +31 -2
  368. package/dist/collection/components/calcite-list/calcite-list.css +14 -17
  369. package/dist/collection/components/calcite-list-item/calcite-list-item.css +28 -47
  370. package/dist/collection/components/calcite-list-item/calcite-list-item.js +12 -0
  371. package/dist/collection/components/calcite-list-item-group/calcite-list-item-group.css +12 -18
  372. package/dist/collection/components/calcite-loader/calcite-loader.css +47 -73
  373. package/dist/collection/components/calcite-modal/calcite-modal.css +107 -124
  374. package/dist/collection/components/calcite-modal/calcite-modal.js +8 -8
  375. package/dist/collection/components/calcite-notice/calcite-notice.css +66 -114
  376. package/dist/collection/components/calcite-notice/calcite-notice.js +9 -4
  377. package/dist/collection/components/calcite-option/calcite-option.css +6 -12
  378. package/dist/collection/components/calcite-option/calcite-option.js +3 -1
  379. package/dist/collection/components/calcite-option-group/calcite-option-group.css +6 -12
  380. package/dist/collection/components/calcite-pagination/calcite-pagination.css +26 -56
  381. package/dist/collection/components/calcite-pagination/calcite-pagination.js +2 -4
  382. package/dist/collection/components/calcite-panel/calcite-panel.css +60 -104
  383. package/dist/collection/components/calcite-panel/calcite-panel.js +24 -24
  384. package/dist/collection/components/calcite-pick-list/calcite-pick-list.css +21 -27
  385. package/dist/collection/components/calcite-pick-list/calcite-pick-list.js +12 -4
  386. package/dist/collection/components/calcite-pick-list/resources.js +1 -1
  387. package/dist/collection/components/calcite-pick-list/shared-list-logic.js +12 -2
  388. package/dist/collection/components/calcite-pick-list/shared-list-render.js +2 -3
  389. package/dist/collection/components/calcite-pick-list-group/calcite-pick-list-group.css +20 -34
  390. package/dist/collection/components/calcite-pick-list-group/calcite-pick-list-group.js +14 -5
  391. package/dist/collection/components/calcite-pick-list-item/calcite-pick-list-item.css +49 -67
  392. package/dist/collection/components/calcite-pick-list-item/calcite-pick-list-item.js +12 -0
  393. package/dist/collection/components/calcite-popover/calcite-popover.css +30 -39
  394. package/dist/collection/components/calcite-popover/calcite-popover.js +3 -6
  395. package/dist/collection/components/calcite-popover-manager/calcite-popover-manager.css +6 -12
  396. package/dist/collection/components/calcite-popover-manager/calcite-popover-manager.js +1 -1
  397. package/dist/collection/components/calcite-progress/calcite-progress.css +12 -21
  398. package/dist/collection/components/calcite-radio-button/calcite-radio-button.css +84 -14
  399. package/dist/collection/components/calcite-radio-button/calcite-radio-button.js +20 -10
  400. package/dist/collection/components/calcite-radio-button-group/calcite-radio-button-group.css +6 -15
  401. package/dist/collection/components/calcite-radio-group/calcite-radio-group.css +8 -16
  402. package/dist/collection/components/calcite-radio-group/calcite-radio-group.js +3 -4
  403. package/dist/collection/components/calcite-radio-group-item/calcite-radio-group-item.css +24 -31
  404. package/dist/collection/components/calcite-radio-group-item/calcite-radio-group-item.js +5 -60
  405. package/dist/collection/components/calcite-rating/calcite-rating.css +18 -43
  406. package/dist/collection/components/calcite-rating/calcite-rating.js +2 -5
  407. package/dist/collection/components/calcite-scrim/calcite-scrim.css +23 -31
  408. package/dist/collection/components/calcite-select/calcite-select.css +32 -61
  409. package/dist/collection/components/calcite-select/calcite-select.js +5 -7
  410. package/dist/collection/components/calcite-shell/calcite-shell.css +48 -44
  411. package/dist/collection/components/calcite-shell/calcite-shell.js +14 -2
  412. package/dist/collection/components/calcite-shell-center-row/calcite-shell-center-row.css +34 -46
  413. package/dist/collection/components/calcite-shell-center-row/calcite-shell-center-row.js +15 -5
  414. package/dist/collection/components/calcite-shell-panel/calcite-shell-panel.css +39 -54
  415. package/dist/collection/components/calcite-shell-panel/calcite-shell-panel.js +12 -7
  416. package/dist/collection/components/calcite-slider/calcite-slider.css +171 -232
  417. package/dist/collection/components/calcite-slider/calcite-slider.js +68 -33
  418. package/dist/collection/components/calcite-sortable-list/calcite-sortable-list.css +6 -12
  419. package/dist/collection/components/calcite-split-button/calcite-split-button.css +16 -29
  420. package/dist/collection/components/calcite-split-button/calcite-split-button.js +4 -6
  421. package/dist/collection/components/calcite-stepper/calcite-stepper.css +13 -19
  422. package/dist/collection/components/calcite-stepper/calcite-stepper.js +1 -2
  423. package/dist/collection/components/calcite-stepper-item/calcite-stepper-item.css +56 -144
  424. package/dist/collection/components/calcite-stepper-item/calcite-stepper-item.js +3 -6
  425. package/dist/collection/components/calcite-switch/calcite-switch.css +31 -68
  426. package/dist/collection/components/calcite-switch/calcite-switch.js +3 -6
  427. package/dist/collection/components/calcite-tab/calcite-tab.css +15 -22
  428. package/dist/collection/components/calcite-tab-nav/calcite-tab-nav.css +18 -26
  429. package/dist/collection/components/calcite-tab-nav/calcite-tab-nav.js +3 -3
  430. package/dist/collection/components/calcite-tab-title/calcite-tab-title.css +56 -88
  431. package/dist/collection/components/calcite-tab-title/calcite-tab-title.js +7 -11
  432. package/dist/collection/components/calcite-tabs/calcite-tabs.css +8 -14
  433. package/dist/collection/components/calcite-tile/calcite-tile.css +57 -86
  434. package/dist/collection/components/calcite-tile/calcite-tile.js +12 -0
  435. package/dist/collection/components/calcite-tile-select/calcite-tile-select.css +57 -100
  436. package/dist/collection/components/calcite-tile-select/calcite-tile-select.js +21 -5
  437. package/dist/collection/components/calcite-tile-select/resources.js +20 -0
  438. package/dist/collection/components/calcite-tile-select-group/calcite-tile-select-group.css +6 -13
  439. package/dist/collection/components/calcite-time-picker/calcite-time-picker.css +62 -125
  440. package/dist/collection/components/calcite-time-picker/calcite-time-picker.js +263 -298
  441. package/dist/collection/components/calcite-time-picker/resources.js +15 -9
  442. package/dist/collection/components/calcite-tip/calcite-tip.css +25 -37
  443. package/dist/collection/components/calcite-tip/calcite-tip.js +13 -1
  444. package/dist/collection/components/calcite-tip-group/calcite-tip-group.css +9 -15
  445. package/dist/collection/components/calcite-tip-manager/calcite-tip-manager.css +41 -61
  446. package/dist/collection/components/calcite-tip-manager/calcite-tip-manager.js +2 -2
  447. package/dist/collection/components/calcite-tooltip/calcite-tooltip.css +17 -21
  448. package/dist/collection/components/calcite-tooltip/calcite-tooltip.js +1 -1
  449. package/dist/collection/components/calcite-tooltip-manager/calcite-tooltip-manager.css +6 -12
  450. package/dist/collection/components/calcite-tooltip-manager/calcite-tooltip-manager.js +2 -3
  451. package/dist/collection/components/calcite-tree/calcite-tree.css +6 -12
  452. package/dist/collection/components/calcite-tree/calcite-tree.js +2 -1
  453. package/dist/collection/components/calcite-tree-item/calcite-tree-item.css +31 -63
  454. package/dist/collection/components/calcite-tree-item/calcite-tree-item.js +6 -3
  455. package/dist/collection/components/calcite-value-list/calcite-value-list.css +22 -26
  456. package/dist/collection/components/calcite-value-list/calcite-value-list.js +22 -8
  457. package/dist/collection/components/calcite-value-list-item/calcite-value-list-item.css +27 -34
  458. package/dist/collection/components/calcite-value-list-item/calcite-value-list-item.js +12 -0
  459. package/dist/collection/components/functional/CalciteExpandToggle.js +3 -3
  460. package/dist/collection/utils/conditionalSlot.js +37 -0
  461. package/dist/collection/utils/dom.js +44 -17
  462. package/dist/collection/utils/globalAttributes.js +59 -0
  463. package/dist/collection/utils/key.js +0 -23
  464. package/dist/collection/utils/label.js +4 -1
  465. package/dist/collection/utils/locale.js +43 -38
  466. package/dist/collection/utils/number.js +52 -19
  467. package/dist/collection/utils/observers.js +5 -1
  468. package/dist/collection/utils/time.js +144 -36
  469. package/dist/components/CalciteExpandToggle.js +3 -3
  470. package/dist/components/calcite-accordion-item.js +2 -3
  471. package/dist/components/calcite-accordion.js +2 -3
  472. package/dist/components/calcite-action-bar.js +4 -1
  473. package/dist/components/calcite-action-group2.js +13 -1
  474. package/dist/components/calcite-action-menu2.js +4 -1
  475. package/dist/components/calcite-action-pad.js +10 -8
  476. package/dist/components/calcite-action2.js +1 -1
  477. package/dist/components/calcite-alert.js +24 -16
  478. package/dist/components/calcite-avatar.js +4 -5
  479. package/dist/components/calcite-block-section.js +4 -4
  480. package/dist/components/calcite-block.js +20 -4
  481. package/dist/components/calcite-button2.js +11 -6
  482. package/dist/components/calcite-card.js +18 -12
  483. package/dist/components/calcite-checkbox2.js +2 -2
  484. package/dist/components/calcite-chip2.js +17 -6
  485. package/dist/components/calcite-color-picker-hex-input2.js +5 -7
  486. package/dist/components/calcite-color-picker-swatch2.js +21 -6
  487. package/dist/components/calcite-color-picker.js +9 -12
  488. package/dist/components/calcite-combobox-item-group.js +3 -4
  489. package/dist/components/calcite-combobox-item.js +9 -9
  490. package/dist/components/calcite-combobox.js +29 -20
  491. package/dist/components/calcite-date-picker-day2.js +2 -3
  492. package/dist/components/calcite-date-picker-month-header2.js +9 -11
  493. package/dist/components/calcite-date-picker-month2.js +7 -10
  494. package/dist/components/calcite-date-picker2.js +38 -22
  495. package/dist/components/calcite-dropdown-group.js +3 -4
  496. package/dist/components/calcite-dropdown-item.js +5 -8
  497. package/dist/components/calcite-dropdown2.js +29 -25
  498. package/dist/components/calcite-fab.js +4 -5
  499. package/dist/components/calcite-filter2.js +4 -20
  500. package/dist/components/calcite-flow.js +1 -1
  501. package/dist/components/calcite-graph2.js +14 -9
  502. package/dist/components/calcite-handle2.js +1 -1
  503. package/dist/components/calcite-icon2.js +1 -1
  504. package/dist/components/calcite-inline-editable.js +6 -6
  505. package/dist/components/calcite-input-date-picker.js +28 -11
  506. package/dist/components/calcite-input-message.js +3 -4
  507. package/dist/components/calcite-input-time-picker.js +54 -52
  508. package/dist/components/calcite-input2.js +126 -52
  509. package/dist/components/calcite-label2.js +2 -4
  510. package/dist/components/calcite-link2.js +15 -3
  511. package/dist/components/calcite-list-item-group.js +1 -1
  512. package/dist/components/calcite-list-item.js +13 -1
  513. package/dist/components/calcite-list.js +1 -1
  514. package/dist/components/calcite-loader2.js +1 -1
  515. package/dist/components/calcite-modal.js +9 -8
  516. package/dist/components/calcite-notice.js +10 -4
  517. package/dist/components/calcite-option-group.js +1 -1
  518. package/dist/components/calcite-option.js +4 -2
  519. package/dist/components/calcite-pagination.js +3 -5
  520. package/dist/components/calcite-panel.js +22 -21
  521. package/dist/components/calcite-pick-list-group.js +15 -5
  522. package/dist/components/calcite-pick-list-item2.js +13 -1
  523. package/dist/components/calcite-pick-list.js +3 -2
  524. package/dist/components/calcite-popover-manager.js +3 -3
  525. package/dist/components/calcite-popover2.js +4 -6
  526. package/dist/components/calcite-progress2.js +1 -1
  527. package/dist/components/calcite-radio-button-group.js +1 -1
  528. package/dist/components/calcite-radio-button.js +21 -17
  529. package/dist/components/calcite-radio-group-item.js +6 -59
  530. package/dist/components/calcite-radio-group.js +4 -5
  531. package/dist/components/calcite-rating.js +2 -4
  532. package/dist/components/calcite-scrim2.js +1 -1
  533. package/dist/components/calcite-select.js +5 -6
  534. package/dist/components/calcite-shell-center-row.js +16 -5
  535. package/dist/components/calcite-shell-panel.js +13 -8
  536. package/dist/components/calcite-shell.js +15 -3
  537. package/dist/components/calcite-slider.js +28 -15
  538. package/dist/components/calcite-sortable-list.js +1 -1
  539. package/dist/components/calcite-split-button.js +2 -4
  540. package/dist/components/calcite-stepper-item.js +4 -6
  541. package/dist/components/calcite-stepper.js +2 -3
  542. package/dist/components/calcite-switch2.js +4 -6
  543. package/dist/components/calcite-tab-nav2.js +4 -4
  544. package/dist/components/calcite-tab-title2.js +8 -11
  545. package/dist/components/calcite-tab2.js +1 -1
  546. package/dist/components/calcite-tabs2.js +1 -1
  547. package/dist/components/calcite-tile-select-group.js +1 -1
  548. package/dist/components/calcite-tile-select.js +37 -4
  549. package/dist/components/calcite-tile2.js +13 -1
  550. package/dist/components/calcite-time-picker2.js +328 -196
  551. package/dist/components/calcite-tip-group.js +1 -1
  552. package/dist/components/calcite-tip-manager.js +3 -3
  553. package/dist/components/calcite-tip.js +14 -2
  554. package/dist/components/calcite-tooltip-manager2.js +3 -4
  555. package/dist/components/calcite-tooltip.js +2 -2
  556. package/dist/components/calcite-tree-item.js +8 -5
  557. package/dist/components/calcite-tree.js +3 -2
  558. package/dist/components/calcite-value-list-item.js +13 -1
  559. package/dist/components/calcite-value-list.js +11 -4
  560. package/dist/components/conditionalSlot.js +40 -0
  561. package/dist/components/dom.js +45 -18
  562. package/dist/components/form.js +1 -1
  563. package/dist/components/label.js +5 -2
  564. package/dist/components/locale.js +43 -38
  565. package/dist/components/number.js +57 -21
  566. package/dist/components/observers.js +5 -1
  567. package/dist/components/popper.js +28 -9
  568. package/dist/components/resources3.js +1 -1
  569. package/dist/components/shared-list-render.js +16 -6
  570. package/dist/components/utils2.js +4 -1
  571. package/dist/custom-elements/index.d.ts +0 -6
  572. package/dist/custom-elements/index.js +1651 -1163
  573. package/dist/esm/{CalciteExpandToggle-4b38a7d1.js → CalciteExpandToggle-cff030be.js} +3 -3
  574. package/dist/esm/calcite-accordion_2.entry.js +5 -6
  575. package/dist/esm/calcite-action-bar.entry.js +7 -4
  576. package/dist/esm/calcite-action-group.entry.js +15 -2
  577. package/dist/esm/calcite-action-menu.entry.js +6 -3
  578. package/dist/esm/calcite-action-pad.entry.js +12 -9
  579. package/dist/esm/calcite-action.entry.js +2 -2
  580. package/dist/esm/calcite-alert.entry.js +23 -16
  581. package/dist/esm/calcite-avatar.entry.js +4 -5
  582. package/dist/esm/calcite-block_2.entry.js +25 -8
  583. package/dist/esm/calcite-button.entry.js +13 -8
  584. package/dist/esm/calcite-card.entry.js +19 -12
  585. package/dist/esm/calcite-checkbox.entry.js +5 -5
  586. package/dist/esm/calcite-chip.entry.js +18 -6
  587. package/dist/esm/calcite-color-picker_3.entry.js +33 -22
  588. package/dist/esm/calcite-combobox_3.entry.js +45 -34
  589. package/dist/esm/calcite-date-picker_4.entry.js +50 -38
  590. package/dist/esm/calcite-dropdown_3.entry.js +37 -36
  591. package/dist/esm/calcite-fab.entry.js +4 -5
  592. package/dist/esm/calcite-filter.entry.js +4 -19
  593. package/dist/esm/calcite-flow.entry.js +2 -2
  594. package/dist/esm/calcite-graph_2.entry.js +43 -24
  595. package/dist/esm/calcite-handle.entry.js +1 -1
  596. package/dist/esm/calcite-icon.entry.js +3 -3
  597. package/dist/esm/calcite-inline-editable.entry.js +8 -8
  598. package/dist/esm/calcite-input-date-picker.entry.js +31 -14
  599. package/dist/esm/calcite-input-message.entry.js +3 -4
  600. package/dist/esm/calcite-input-time-picker_2.entry.js +363 -238
  601. package/dist/esm/calcite-input.entry.js +130 -56
  602. package/dist/esm/calcite-label.entry.js +2 -5
  603. package/dist/esm/calcite-link.entry.js +15 -4
  604. package/dist/esm/calcite-list_3.entry.js +17 -4
  605. package/dist/esm/calcite-loader.entry.js +1 -1
  606. package/dist/esm/calcite-modal.entry.js +10 -9
  607. package/dist/esm/calcite-notice.entry.js +11 -4
  608. package/dist/esm/calcite-option_3.entry.js +13 -12
  609. package/dist/esm/calcite-pagination.entry.js +3 -6
  610. package/dist/esm/calcite-panel.entry.js +23 -21
  611. package/dist/esm/calcite-pick-list_3.entry.js +31 -9
  612. package/dist/esm/calcite-popover_2.entry.js +7 -9
  613. package/dist/esm/calcite-progress.entry.js +1 -1
  614. package/dist/esm/calcite-radio-button-group.entry.js +1 -1
  615. package/dist/esm/{calcite-radio_2.entry.js → calcite-radio-button.entry.js} +24 -54
  616. package/dist/esm/calcite-radio-group_2.entry.js +10 -63
  617. package/dist/esm/calcite-rating.entry.js +5 -6
  618. package/dist/esm/calcite-scrim.entry.js +1 -1
  619. package/dist/esm/calcite-shell_3.entry.js +42 -15
  620. package/dist/esm/calcite-sortable-list.entry.js +2 -2
  621. package/dist/esm/calcite-split-button.entry.js +2 -5
  622. package/dist/esm/calcite-stepper_2.entry.js +6 -8
  623. package/dist/esm/calcite-switch.entry.js +6 -8
  624. package/dist/esm/calcite-tab_4.entry.js +14 -17
  625. package/dist/esm/calcite-tile-select_2.entry.js +38 -5
  626. package/dist/esm/calcite-tile.entry.js +15 -2
  627. package/dist/esm/calcite-tip_3.entry.js +19 -7
  628. package/dist/esm/calcite-tooltip_2.entry.js +7 -8
  629. package/dist/esm/calcite-tree_2.entry.js +12 -7
  630. package/dist/esm/calcite-value-list_2.entry.js +26 -7
  631. package/dist/esm/calcite.js +2 -2
  632. package/dist/esm/conditionalSlot-9e7d8609.js +40 -0
  633. package/dist/esm/{dom-dc012a45.js → dom-e7fa77b9.js} +45 -18
  634. package/dist/esm/{form-6b717ce8.js → form-f90706b4.js} +1 -1
  635. package/dist/esm/{label-0d804a87.js → label-2bffc9f4.js} +5 -2
  636. package/dist/esm/loader.js +2 -2
  637. package/dist/esm/locale-fc850b7c.js +123 -0
  638. package/dist/esm/number-8779395f.js +76 -0
  639. package/dist/esm/{observers-8f0bc419.js → observers-46118290.js} +5 -1
  640. package/dist/esm/{popper-ed1eefa6.js → popper-ae231554.js} +29 -10
  641. package/dist/esm/{resources-eafda211.js → resources-95c5e8a6.js} +17 -7
  642. package/dist/esm/{resources-bece7a88.js → resources-c768953c.js} +7 -5
  643. package/dist/esm-es5/CalciteExpandToggle-cff030be.js +5 -0
  644. package/dist/esm-es5/calcite-accordion_2.entry.js +1 -1
  645. package/dist/esm-es5/calcite-action-bar.entry.js +2 -2
  646. package/dist/esm-es5/calcite-action-group.entry.js +1 -1
  647. package/dist/esm-es5/calcite-action-menu.entry.js +2 -2
  648. package/dist/esm-es5/calcite-action-pad.entry.js +2 -2
  649. package/dist/esm-es5/calcite-action.entry.js +2 -2
  650. package/dist/esm-es5/calcite-alert.entry.js +2 -2
  651. package/dist/esm-es5/calcite-avatar.entry.js +1 -1
  652. package/dist/esm-es5/calcite-block_2.entry.js +1 -1
  653. package/dist/esm-es5/calcite-button.entry.js +1 -1
  654. package/dist/esm-es5/calcite-card.entry.js +1 -1
  655. package/dist/esm-es5/calcite-checkbox.entry.js +2 -2
  656. package/dist/esm-es5/calcite-chip.entry.js +2 -2
  657. package/dist/esm-es5/calcite-color-picker_3.entry.js +1 -1
  658. package/dist/esm-es5/calcite-combobox_3.entry.js +2 -2
  659. package/dist/esm-es5/calcite-date-picker_4.entry.js +1 -1
  660. package/dist/esm-es5/calcite-dropdown_3.entry.js +2 -2
  661. package/dist/esm-es5/calcite-fab.entry.js +2 -2
  662. package/dist/esm-es5/calcite-filter.entry.js +2 -2
  663. package/dist/esm-es5/calcite-flow.entry.js +2 -2
  664. package/dist/esm-es5/calcite-graph_2.entry.js +2 -2
  665. package/dist/esm-es5/calcite-handle.entry.js +2 -2
  666. package/dist/esm-es5/calcite-icon.entry.js +2 -2
  667. package/dist/esm-es5/calcite-inline-editable.entry.js +2 -2
  668. package/dist/esm-es5/calcite-input-date-picker.entry.js +2 -2
  669. package/dist/esm-es5/calcite-input-message.entry.js +1 -1
  670. package/dist/esm-es5/calcite-input-time-picker_2.entry.js +2 -2
  671. package/dist/esm-es5/calcite-input.entry.js +2 -2
  672. package/dist/esm-es5/calcite-label.entry.js +1 -1
  673. package/dist/esm-es5/calcite-link.entry.js +2 -2
  674. package/dist/esm-es5/calcite-list_3.entry.js +2 -2
  675. package/dist/esm-es5/calcite-loader.entry.js +1 -1
  676. package/dist/esm-es5/calcite-modal.entry.js +2 -2
  677. package/dist/esm-es5/calcite-notice.entry.js +2 -2
  678. package/dist/esm-es5/calcite-option_3.entry.js +2 -2
  679. package/dist/esm-es5/calcite-pagination.entry.js +1 -1
  680. package/dist/esm-es5/calcite-panel.entry.js +2 -2
  681. package/dist/esm-es5/calcite-pick-list_3.entry.js +2 -2
  682. package/dist/esm-es5/calcite-popover_2.entry.js +2 -2
  683. package/dist/esm-es5/calcite-progress.entry.js +1 -1
  684. package/dist/esm-es5/calcite-radio-button-group.entry.js +1 -1
  685. package/dist/esm-es5/calcite-radio-button.entry.js +5 -0
  686. package/dist/esm-es5/calcite-radio-group_2.entry.js +2 -2
  687. package/dist/esm-es5/calcite-rating.entry.js +2 -2
  688. package/dist/esm-es5/calcite-scrim.entry.js +1 -1
  689. package/dist/esm-es5/calcite-shell_3.entry.js +1 -1
  690. package/dist/esm-es5/calcite-sortable-list.entry.js +1 -1
  691. package/dist/esm-es5/calcite-split-button.entry.js +1 -1
  692. package/dist/esm-es5/calcite-stepper_2.entry.js +2 -2
  693. package/dist/esm-es5/calcite-switch.entry.js +2 -2
  694. package/dist/esm-es5/calcite-tab_4.entry.js +1 -1
  695. package/dist/esm-es5/calcite-tile-select_2.entry.js +2 -2
  696. package/dist/esm-es5/calcite-tile.entry.js +1 -1
  697. package/dist/esm-es5/calcite-tip_3.entry.js +2 -2
  698. package/dist/esm-es5/calcite-tooltip_2.entry.js +2 -2
  699. package/dist/esm-es5/calcite-tree_2.entry.js +1 -1
  700. package/dist/esm-es5/calcite-value-list_2.entry.js +2 -2
  701. package/dist/esm-es5/calcite.js +1 -1
  702. package/dist/esm-es5/conditionalSlot-9e7d8609.js +5 -0
  703. package/dist/esm-es5/dom-e7fa77b9.js +5 -0
  704. package/dist/esm-es5/{form-6b717ce8.js → form-f90706b4.js} +1 -1
  705. package/dist/esm-es5/label-2bffc9f4.js +5 -0
  706. package/dist/esm-es5/loader.js +1 -1
  707. package/dist/esm-es5/locale-fc850b7c.js +5 -0
  708. package/dist/esm-es5/number-8779395f.js +5 -0
  709. package/dist/esm-es5/{observers-8f0bc419.js → observers-46118290.js} +1 -1
  710. package/dist/esm-es5/popper-ae231554.js +5 -0
  711. package/dist/esm-es5/resources-95c5e8a6.js +5 -0
  712. package/dist/esm-es5/resources-c768953c.js +5 -0
  713. package/dist/extras/docs-json.json +265 -286
  714. package/dist/types/components/calcite-accordion/calcite-accordion.d.ts +1 -1
  715. package/dist/types/components/calcite-accordion-item/calcite-accordion-item.d.ts +1 -1
  716. package/dist/types/components/calcite-action-bar/calcite-action-bar.d.ts +2 -1
  717. package/dist/types/components/calcite-action-group/calcite-action-group.d.ts +4 -1
  718. package/dist/types/components/calcite-action-menu/calcite-action-menu.d.ts +2 -1
  719. package/dist/types/components/calcite-action-pad/calcite-action-pad.d.ts +4 -1
  720. package/dist/types/components/calcite-alert/calcite-alert.d.ts +6 -2
  721. package/dist/types/components/calcite-alert/interfaces.d.ts +1 -0
  722. package/dist/types/components/calcite-block/calcite-block.d.ts +5 -1
  723. package/dist/types/components/calcite-button/resources.d.ts +2 -0
  724. package/dist/types/components/calcite-card/calcite-card.d.ts +4 -1
  725. package/dist/types/components/calcite-chip/calcite-chip.d.ts +4 -1
  726. package/dist/types/components/calcite-color-picker/calcite-color-picker.d.ts +1 -1
  727. package/dist/types/components/calcite-combobox/calcite-combobox.d.ts +4 -0
  728. package/dist/types/components/calcite-combobox/resources.d.ts +3 -0
  729. package/dist/types/components/calcite-combobox-item/calcite-combobox-item.d.ts +3 -3
  730. package/dist/types/components/calcite-date-picker/calcite-date-picker.d.ts +6 -0
  731. package/dist/types/components/calcite-date-picker/resources.d.ts +1 -0
  732. package/dist/types/components/calcite-date-picker-month-header/calcite-date-picker-month-header.d.ts +3 -1
  733. package/dist/types/components/calcite-dropdown/calcite-dropdown.d.ts +1 -0
  734. package/dist/types/components/calcite-filter/calcite-filter.d.ts +1 -10
  735. package/dist/types/components/calcite-graph/calcite-graph.d.ts +3 -4
  736. package/dist/types/components/calcite-inline-editable/calcite-inline-editable.d.ts +5 -5
  737. package/dist/types/components/calcite-input/calcite-input.d.ts +6 -1
  738. package/dist/types/components/calcite-input-date-picker/calcite-input-date-picker.d.ts +15 -0
  739. package/dist/types/components/calcite-input-time-picker/calcite-input-time-picker.d.ts +13 -5
  740. package/dist/types/components/calcite-link/calcite-link.d.ts +5 -0
  741. package/dist/types/components/calcite-list-item/calcite-list-item.d.ts +4 -1
  742. package/dist/types/components/calcite-modal/calcite-modal.d.ts +2 -1
  743. package/dist/types/components/calcite-notice/calcite-notice.d.ts +4 -1
  744. package/dist/types/components/calcite-panel/calcite-panel.d.ts +6 -7
  745. package/dist/types/components/calcite-pick-list/calcite-pick-list.d.ts +2 -1
  746. package/dist/types/components/calcite-pick-list/shared-list-logic.d.ts +1 -0
  747. package/dist/types/components/calcite-pick-list/shared-list-render.d.ts +2 -2
  748. package/dist/types/components/calcite-pick-list-group/calcite-pick-list-group.d.ts +4 -1
  749. package/dist/types/components/calcite-pick-list-item/calcite-pick-list-item.d.ts +4 -1
  750. package/dist/types/components/calcite-radio-button/calcite-radio-button.d.ts +1 -0
  751. package/dist/types/components/calcite-radio-group-item/calcite-radio-group-item.d.ts +0 -8
  752. package/dist/types/components/calcite-select/calcite-select.d.ts +1 -2
  753. package/dist/types/components/calcite-shell/calcite-shell.d.ts +4 -1
  754. package/dist/types/components/calcite-shell-center-row/calcite-shell-center-row.d.ts +4 -1
  755. package/dist/types/components/calcite-shell-panel/calcite-shell-panel.d.ts +3 -1
  756. package/dist/types/components/calcite-slider/calcite-slider.d.ts +5 -0
  757. package/dist/types/components/calcite-tile/calcite-tile.d.ts +4 -1
  758. package/dist/types/components/calcite-tile-select/resources.d.ts +16 -0
  759. package/dist/types/components/calcite-time-picker/calcite-time-picker.d.ts +36 -24
  760. package/dist/types/components/calcite-time-picker/resources.d.ts +14 -8
  761. package/dist/types/components/calcite-tip/calcite-tip.d.ts +4 -1
  762. package/dist/types/components/calcite-tree-item/calcite-tree-item.d.ts +3 -1
  763. package/dist/types/components/calcite-value-list/calcite-value-list.d.ts +4 -2
  764. package/dist/types/components/calcite-value-list-item/calcite-value-list-item.d.ts +4 -1
  765. package/dist/types/components.d.ts +103 -130
  766. package/dist/types/preact.d.ts +5 -6
  767. package/dist/types/stencil-public-runtime.d.ts +6 -4
  768. package/dist/types/utils/conditionalSlot.d.ts +17 -0
  769. package/dist/types/utils/dom.d.ts +21 -7
  770. package/dist/types/utils/globalAttributes.d.ts +35 -0
  771. package/dist/types/utils/key.d.ts +0 -4
  772. package/dist/types/utils/label.d.ts +4 -0
  773. package/dist/types/utils/number.d.ts +4 -1
  774. package/dist/types/utils/time.d.ts +18 -5
  775. package/hydrate/index.js +1688 -1202
  776. package/package.json +34 -35
  777. package/readme.md +2 -32
  778. package/dist/calcite/p-04a2538a.entry.js +0 -5
  779. package/dist/calcite/p-051cc8c6.entry.js +0 -5
  780. package/dist/calcite/p-058ee7b0.entry.js +0 -5
  781. package/dist/calcite/p-0c827dec.entry.js +0 -5
  782. package/dist/calcite/p-0f33798d.system.entry.js +0 -5
  783. package/dist/calcite/p-0f9f1f89.system.entry.js +0 -5
  784. package/dist/calcite/p-1161e56f.js +0 -5
  785. package/dist/calcite/p-18fbf2af.system.entry.js +0 -5
  786. package/dist/calcite/p-198902ca.entry.js +0 -5
  787. package/dist/calcite/p-1ad123f9.entry.js +0 -5
  788. package/dist/calcite/p-1eb04aad.system.entry.js +0 -5
  789. package/dist/calcite/p-1f809e6c.system.entry.js +0 -5
  790. package/dist/calcite/p-2033f545.system.entry.js +0 -5
  791. package/dist/calcite/p-20f91a4e.system.entry.js +0 -5
  792. package/dist/calcite/p-227bc238.system.entry.js +0 -5
  793. package/dist/calcite/p-239b44dd.system.entry.js +0 -5
  794. package/dist/calcite/p-23bc2d32.entry.js +0 -5
  795. package/dist/calcite/p-266ee9db.entry.js +0 -5
  796. package/dist/calcite/p-2c66fb61.entry.js +0 -5
  797. package/dist/calcite/p-33802886.entry.js +0 -5
  798. package/dist/calcite/p-343cd887.entry.js +0 -5
  799. package/dist/calcite/p-3d69fba9.entry.js +0 -5
  800. package/dist/calcite/p-3ec67fae.entry.js +0 -5
  801. package/dist/calcite/p-4035444d.system.js +0 -5
  802. package/dist/calcite/p-42091a1f.system.entry.js +0 -5
  803. package/dist/calcite/p-42c7e2f0.system.entry.js +0 -5
  804. package/dist/calcite/p-43020fb5.js +0 -5
  805. package/dist/calcite/p-44a07313.system.entry.js +0 -5
  806. package/dist/calcite/p-47f55191.system.js +0 -5
  807. package/dist/calcite/p-4a8b3cf3.system.entry.js +0 -5
  808. package/dist/calcite/p-4cc182af.system.entry.js +0 -5
  809. package/dist/calcite/p-4ee2f6cf.system.entry.js +0 -5
  810. package/dist/calcite/p-50273eed.entry.js +0 -5
  811. package/dist/calcite/p-5035488d.entry.js +0 -5
  812. package/dist/calcite/p-52578054.js +0 -5
  813. package/dist/calcite/p-538e542a.system.entry.js +0 -5
  814. package/dist/calcite/p-55bfe4fc.entry.js +0 -5
  815. package/dist/calcite/p-56b352bf.system.js +0 -5
  816. package/dist/calcite/p-57e9b7cb.system.entry.js +0 -5
  817. package/dist/calcite/p-659898bf.entry.js +0 -5
  818. package/dist/calcite/p-6c5b849f.system.entry.js +0 -5
  819. package/dist/calcite/p-6ca051ef.entry.js +0 -5
  820. package/dist/calcite/p-702140ce.entry.js +0 -5
  821. package/dist/calcite/p-71e299a6.system.js +0 -5
  822. package/dist/calcite/p-72563742.js +0 -5
  823. package/dist/calcite/p-730b8963.system.entry.js +0 -5
  824. package/dist/calcite/p-7325e7fc.system.entry.js +0 -5
  825. package/dist/calcite/p-784e4e32.system.entry.js +0 -5
  826. package/dist/calcite/p-80a527ef.entry.js +0 -5
  827. package/dist/calcite/p-82c6cd9a.entry.js +0 -5
  828. package/dist/calcite/p-832affcb.system.entry.js +0 -5
  829. package/dist/calcite/p-837f9bb4.system.entry.js +0 -5
  830. package/dist/calcite/p-83fca16e.system.entry.js +0 -5
  831. package/dist/calcite/p-84d6696b.entry.js +0 -5
  832. package/dist/calcite/p-87f1831b.entry.js +0 -5
  833. package/dist/calcite/p-88b4f504.entry.js +0 -5
  834. package/dist/calcite/p-89987575.entry.js +0 -5
  835. package/dist/calcite/p-8b2d4eac.system.entry.js +0 -5
  836. package/dist/calcite/p-8b2ead09.system.entry.js +0 -5
  837. package/dist/calcite/p-8da7ad4b.entry.js +0 -5
  838. package/dist/calcite/p-8e252799.system.js +0 -5
  839. package/dist/calcite/p-8fef13ca.system.entry.js +0 -5
  840. package/dist/calcite/p-91645bf7.system.js +0 -5
  841. package/dist/calcite/p-9470d123.system.entry.js +0 -5
  842. package/dist/calcite/p-95b9a0f2.system.entry.js +0 -5
  843. package/dist/calcite/p-99de28b4.system.entry.js +0 -5
  844. package/dist/calcite/p-99e52ea7.system.entry.js +0 -5
  845. package/dist/calcite/p-9abbbcbd.system.entry.js +0 -5
  846. package/dist/calcite/p-9be50494.entry.js +0 -5
  847. package/dist/calcite/p-a821e9b3.system.entry.js +0 -5
  848. package/dist/calcite/p-a98e5444.system.entry.js +0 -5
  849. package/dist/calcite/p-ab9c6a18.entry.js +0 -5
  850. package/dist/calcite/p-abdc7a4b.system.entry.js +0 -5
  851. package/dist/calcite/p-ac38b743.system.entry.js +0 -5
  852. package/dist/calcite/p-aced5f01.entry.js +0 -5
  853. package/dist/calcite/p-b0b6baf4.system.entry.js +0 -5
  854. package/dist/calcite/p-b16b831d.entry.js +0 -5
  855. package/dist/calcite/p-b174f9ac.entry.js +0 -5
  856. package/dist/calcite/p-b2ab0485.js +0 -5
  857. package/dist/calcite/p-b37b7b9e.system.entry.js +0 -5
  858. package/dist/calcite/p-b3e418f0.entry.js +0 -5
  859. package/dist/calcite/p-b4b1081f.system.entry.js +0 -5
  860. package/dist/calcite/p-b5d21a5d.system.entry.js +0 -5
  861. package/dist/calcite/p-b5f412fb.entry.js +0 -5
  862. package/dist/calcite/p-b6b6ec04.js +0 -5
  863. package/dist/calcite/p-b7518275.system.entry.js +0 -5
  864. package/dist/calcite/p-b75ffebb.system.entry.js +0 -5
  865. package/dist/calcite/p-bef1f0d9.entry.js +0 -5
  866. package/dist/calcite/p-c0690971.entry.js +0 -5
  867. package/dist/calcite/p-c12e88cd.entry.js +0 -5
  868. package/dist/calcite/p-c1794615.entry.js +0 -5
  869. package/dist/calcite/p-c3ba61ea.entry.js +0 -5
  870. package/dist/calcite/p-c937f25f.system.js +0 -5
  871. package/dist/calcite/p-c9551366.entry.js +0 -5
  872. package/dist/calcite/p-ca5c0679.entry.js +0 -5
  873. package/dist/calcite/p-cbe9f1a2.system.entry.js +0 -5
  874. package/dist/calcite/p-cd1cdf3c.entry.js +0 -5
  875. package/dist/calcite/p-d07ff1ee.system.js +0 -5
  876. package/dist/calcite/p-d102e280.system.entry.js +0 -5
  877. package/dist/calcite/p-d830efad.entry.js +0 -5
  878. package/dist/calcite/p-dacd3cf8.entry.js +0 -5
  879. package/dist/calcite/p-dcc6b40f.entry.js +0 -5
  880. package/dist/calcite/p-dccb5ffd.entry.js +0 -5
  881. package/dist/calcite/p-dff7dc90.system.js +0 -5
  882. package/dist/calcite/p-e2d18d39.system.entry.js +0 -5
  883. package/dist/calcite/p-e4acb5a8.js +0 -5
  884. package/dist/calcite/p-e5305b02.js +0 -5
  885. package/dist/calcite/p-e6a47d34.system.entry.js +0 -5
  886. package/dist/calcite/p-e78e743b.entry.js +0 -5
  887. package/dist/calcite/p-e956e279.js +0 -5
  888. package/dist/calcite/p-ea3fee96.entry.js +0 -5
  889. package/dist/calcite/p-eada9cef.entry.js +0 -5
  890. package/dist/calcite/p-eb0f1e0f.system.entry.js +0 -5
  891. package/dist/calcite/p-ed3f000d.system.entry.js +0 -5
  892. package/dist/calcite/p-ee40deba.system.entry.js +0 -5
  893. package/dist/calcite/p-ee45cff5.system.entry.js +0 -5
  894. package/dist/calcite/p-eeb8dfe5.system.entry.js +0 -5
  895. package/dist/calcite/p-f0338acf.system.entry.js +0 -5
  896. package/dist/calcite/p-f05b5dc9.system.entry.js +0 -5
  897. package/dist/calcite/p-f07d3627.js +0 -5
  898. package/dist/calcite/p-f1832595.system.entry.js +0 -5
  899. package/dist/calcite/p-f333e31b.entry.js +0 -5
  900. package/dist/calcite/p-f6323ffa.system.entry.js +0 -5
  901. package/dist/calcite/p-f87ba8eb.system.js +0 -5
  902. package/dist/calcite/p-f97e1a2d.entry.js +0 -5
  903. package/dist/calcite/p-fb817417.entry.js +0 -5
  904. package/dist/calcite/p-fb8b2c96.entry.js +0 -5
  905. package/dist/calcite/p-fba77b86.entry.js +0 -5
  906. package/dist/calcite/p-fc32b022.entry.js +0 -5
  907. package/dist/calcite/p-fc47547f.system.entry.js +0 -5
  908. package/dist/calcite/p-fccc1605.entry.js +0 -5
  909. package/dist/calcite/p-fd1ddcd2.system.entry.js +0 -5
  910. package/dist/cjs/key-8bfb93ec.js +0 -37
  911. package/dist/cjs/locale-69dc9583.js +0 -123
  912. package/dist/cjs/number-e6448e15.js +0 -45
  913. package/dist/collection/components/calcite-radio/calcite-radio.css +0 -162
  914. package/dist/collection/components/calcite-radio/calcite-radio.js +0 -169
  915. package/dist/components/calcite-radio.d.ts +0 -11
  916. package/dist/components/calcite-radio.js +0 -10
  917. package/dist/components/calcite-radio2.js +0 -71
  918. package/dist/components/key.js +0 -33
  919. package/dist/esm/key-69001a68.js +0 -33
  920. package/dist/esm/locale-6c1b85c7.js +0 -118
  921. package/dist/esm/number-e7393766.js +0 -40
  922. package/dist/esm-es5/CalciteExpandToggle-4b38a7d1.js +0 -5
  923. package/dist/esm-es5/calcite-radio_2.entry.js +0 -5
  924. package/dist/esm-es5/dom-dc012a45.js +0 -5
  925. package/dist/esm-es5/key-69001a68.js +0 -5
  926. package/dist/esm-es5/label-0d804a87.js +0 -5
  927. package/dist/esm-es5/locale-6c1b85c7.js +0 -5
  928. package/dist/esm-es5/number-e7393766.js +0 -5
  929. package/dist/esm-es5/popper-ed1eefa6.js +0 -5
  930. package/dist/esm-es5/resources-bece7a88.js +0 -5
  931. package/dist/esm-es5/resources-eafda211.js +0 -5
  932. package/dist/types/components/calcite-radio/calcite-radio.d.ts +0 -22
@@ -8,13 +8,78 @@ Object.defineProperty(exports, '__esModule', { value: true });
8
8
 
9
9
  const index = require('./index-6b5d2de5.js');
10
10
  const guid = require('./guid-b270f0db.js');
11
- const key = require('./key-8bfb93ec.js');
12
- const number = require('./number-e6448e15.js');
13
- const label = require('./label-98a31f7d.js');
14
- const form = require('./form-7f276aa5.js');
15
- require('./dom-41ce6029.js');
11
+ const number = require('./number-e813e801.js');
12
+ const label = require('./label-6b18ca08.js');
13
+ const form = require('./form-237cf392.js');
14
+ require('./dom-f3df220d.js');
16
15
 
17
16
  const maxTenthForMinuteAndSecond = 5;
17
+ function createLocaleDateTimeFormatter(locale, includeSeconds = true) {
18
+ try {
19
+ const options = {
20
+ hour: "2-digit",
21
+ minute: "2-digit",
22
+ timeZone: "UTC"
23
+ };
24
+ if (includeSeconds) {
25
+ options.second = "2-digit";
26
+ }
27
+ return new Intl.DateTimeFormat(locale, options);
28
+ }
29
+ catch (e) {
30
+ throw new Error(`Invalid locale supplied while attempting to create a DateTime formatter: ${locale}`);
31
+ }
32
+ }
33
+ function formatTimePart(number) {
34
+ const numberAsString = number.toString();
35
+ return number >= 0 && number <= 9 ? numberAsString.padStart(2, "0") : numberAsString;
36
+ }
37
+ function formatTimeString(value) {
38
+ if (!isValidTime(value)) {
39
+ return null;
40
+ }
41
+ const [hourString, minuteString, secondString] = value.split(":");
42
+ const hour = formatTimePart(parseInt(hourString));
43
+ const minute = formatTimePart(parseInt(minuteString));
44
+ if (secondString) {
45
+ const second = formatTimePart(parseInt(secondString));
46
+ return `${hour}:${minute}:${second}`;
47
+ }
48
+ return `${hour}:${minute}`;
49
+ }
50
+ function getLocaleHourCycle(locale) {
51
+ const formatter = createLocaleDateTimeFormatter(locale);
52
+ const parts = formatter.formatToParts(new Date(Date.UTC(0, 0, 0, 0, 0, 0)));
53
+ return getLocalizedTimePart("meridiem", parts) ? "12" : "24";
54
+ }
55
+ function getLocalizedTimePart(part, parts) {
56
+ var _a, _b, _c, _d;
57
+ if (!part || !parts) {
58
+ return null;
59
+ }
60
+ if (part === "hourSuffix") {
61
+ const hourIndex = parts.indexOf(parts.find(({ type }) => type === "hour"));
62
+ const minuteIndex = parts.indexOf(parts.find(({ type }) => type === "minute"));
63
+ const hourSuffix = parts[hourIndex + 1];
64
+ return hourSuffix && hourSuffix.type === "literal" && minuteIndex - hourIndex === 2
65
+ ? ((_a = hourSuffix.value) === null || _a === void 0 ? void 0 : _a.trim()) || null
66
+ : null;
67
+ }
68
+ if (part === "minuteSuffix") {
69
+ const minuteIndex = parts.indexOf(parts.find(({ type }) => type === "minute"));
70
+ const secondIndex = parts.indexOf(parts.find(({ type }) => type === "second"));
71
+ const minuteSuffix = parts[minuteIndex + 1];
72
+ return minuteSuffix && minuteSuffix.type === "literal" && secondIndex - minuteIndex === 2
73
+ ? ((_b = minuteSuffix.value) === null || _b === void 0 ? void 0 : _b.trim()) || null
74
+ : null;
75
+ }
76
+ if (part === "secondSuffix") {
77
+ const secondIndex = parts.indexOf(parts.find(({ type }) => type === "second"));
78
+ const secondSuffix = parts[secondIndex + 1];
79
+ return secondSuffix && secondSuffix.type === "literal" ? ((_c = secondSuffix.value) === null || _c === void 0 ? void 0 : _c.trim()) || null : null;
80
+ }
81
+ return ((_d = parts.find(({ type }) => (part == "meridiem" ? type === "dayPeriod" : type === part))) === null || _d === void 0 ? void 0 : _d.value) || null;
82
+ }
18
83
  function getMeridiem(hour) {
19
84
  if (!number.isValidNumber(hour)) {
20
85
  return null;
@@ -22,54 +87,96 @@ function getMeridiem(hour) {
22
87
  const hourAsNumber = parseInt(hour);
23
88
  return hourAsNumber >= 0 && hourAsNumber <= 11 ? "AM" : "PM";
24
89
  }
25
- function getMeridiemHour(hour) {
26
- if (!number.isValidNumber(hour)) {
27
- return null;
90
+ function isValidTime(value) {
91
+ if (!value || value.startsWith(":") || value.endsWith(":")) {
92
+ return false;
28
93
  }
29
- const hourAsNumber = parseInt(hour);
30
- if (hourAsNumber === 0) {
31
- return "12";
94
+ const splitValue = value.split(":");
95
+ const validLength = splitValue.length > 1 && splitValue.length < 4;
96
+ if (!validLength) {
97
+ return false;
98
+ }
99
+ const [hour, minute, second] = splitValue;
100
+ const hourAsNumber = parseInt(splitValue[0]);
101
+ const minuteAsNumber = parseInt(splitValue[1]);
102
+ const secondAsNumber = parseInt(splitValue[2]);
103
+ const hourValid = number.isValidNumber(hour) && hourAsNumber >= 0 && hourAsNumber < 24;
104
+ const minuteValid = number.isValidNumber(minute) && minuteAsNumber >= 0 && minuteAsNumber < 60;
105
+ const secondValid = number.isValidNumber(second) && secondAsNumber >= 0 && secondAsNumber < 60;
106
+ if ((hourValid && minuteValid && !second) || (hourValid && minuteValid && secondValid)) {
107
+ return true;
32
108
  }
33
- return hourAsNumber > 12 ? formatTimePart(hourAsNumber - 12) : hour;
34
109
  }
35
- function parseTimeString(value) {
36
- const timeString = formatTimeString(value);
37
- const [hour, minute, second] = timeString ? timeString.split(":") : [null, null, null];
38
- return {
39
- hour,
40
- minute,
41
- second: second || (hour && minute ? "00" : null)
42
- };
110
+ function isValidTimePart(value, part) {
111
+ if (part === "meridiem") {
112
+ return value === "AM" || value === "PM";
113
+ }
114
+ if (!number.isValidNumber(value)) {
115
+ return false;
116
+ }
117
+ const valueAsNumber = Number(value);
118
+ return part === "hour" ? valueAsNumber >= 0 && valueAsNumber < 24 : valueAsNumber >= 0 && valueAsNumber < 60;
43
119
  }
44
- function formatTimeString(value) {
45
- if (!value || value.endsWith(":") || value.startsWith(":")) {
120
+ function localizeTimePart(value, part, locale) {
121
+ if (!isValidTimePart(value, part)) {
122
+ return;
123
+ }
124
+ const valueAsNumber = parseInt(value);
125
+ const date = new Date(Date.UTC(0, 0, 0, part === "hour" ? valueAsNumber : part === "meridiem" ? (value === "AM" ? 0 : 12) : 0, part === "minute" ? valueAsNumber : 0, part === "second" ? valueAsNumber : 0));
126
+ if (!date) {
127
+ return;
128
+ }
129
+ const formatter = createLocaleDateTimeFormatter(locale);
130
+ const parts = formatter.formatToParts(date);
131
+ return getLocalizedTimePart(part, parts);
132
+ }
133
+ function localizeTimeString(value, locale = "en", includeSeconds = true) {
134
+ if (!isValidTime(value)) {
46
135
  return null;
47
136
  }
48
- const splitValue = value.split(":");
49
- if (splitValue.length > 1) {
50
- const [hour, minute, second] = splitValue;
51
- const hourAsNumber = parseInt(splitValue[0]);
52
- const minuteAsNumber = parseInt(splitValue[1]);
53
- const secondAsNumber = parseInt(splitValue[2]);
54
- const hourValid = number.isValidNumber(hour) && hourAsNumber >= 0 && hourAsNumber < 24;
55
- const minuteValid = number.isValidNumber(minute) && minuteAsNumber >= 0 && minuteAsNumber < 60;
56
- const secondValid = number.isValidNumber(second) && secondAsNumber >= 0 && secondAsNumber < 60;
57
- if ((hourValid && minuteValid && !second) || (hourValid && minuteValid && secondValid)) {
58
- let newValue = `${formatTimePart(hourAsNumber)}:${formatTimePart(minuteAsNumber)}`;
59
- if (secondValid) {
60
- newValue = `${newValue}:${formatTimePart(secondAsNumber)}`;
61
- }
62
- return newValue;
63
- }
137
+ const { hour, minute, second = "0" } = parseTimeString(value);
138
+ const dateFromTimeString = new Date(Date.UTC(0, 0, 0, parseInt(hour), parseInt(minute), parseInt(second)));
139
+ const formatter = createLocaleDateTimeFormatter(locale, includeSeconds);
140
+ return (formatter === null || formatter === void 0 ? void 0 : formatter.format(dateFromTimeString)) || null;
141
+ }
142
+ function localizeTimeStringToParts(value, locale = "en") {
143
+ if (!isValidTime(value)) {
144
+ return null;
145
+ }
146
+ const { hour, minute, second = "0" } = parseTimeString(value);
147
+ const dateFromTimeString = new Date(Date.UTC(0, 0, 0, parseInt(hour), parseInt(minute), parseInt(second)));
148
+ if (dateFromTimeString) {
149
+ const formatter = createLocaleDateTimeFormatter(locale);
150
+ const parts = formatter.formatToParts(dateFromTimeString);
151
+ return {
152
+ localizedHour: getLocalizedTimePart("hour", parts),
153
+ localizedHourSuffix: getLocalizedTimePart("hourSuffix", parts),
154
+ localizedMinute: getLocalizedTimePart("minute", parts),
155
+ localizedMinuteSuffix: getLocalizedTimePart("minuteSuffix", parts),
156
+ localizedSecond: getLocalizedTimePart("second", parts),
157
+ localizedSecondSuffix: getLocalizedTimePart("secondSuffix", parts),
158
+ localizedMeridiem: getLocalizedTimePart("meridiem", parts)
159
+ };
64
160
  }
65
161
  return null;
66
162
  }
67
- function formatTimePart(number) {
68
- const numberAsString = number.toString();
69
- return number >= 0 && number <= 9 ? numberAsString.padStart(2, "0") : numberAsString;
163
+ function parseTimeString(value) {
164
+ if (isValidTime(value)) {
165
+ const [hour, minute, second] = value.split(":");
166
+ return {
167
+ hour,
168
+ minute,
169
+ second
170
+ };
171
+ }
172
+ return {
173
+ hour: null,
174
+ minute: null,
175
+ second: null
176
+ };
70
177
  }
71
178
 
72
- const calciteInputTimePickerCss = "@-webkit-keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}@keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:300ms}.calcite-animate{opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--calcite-animation-timing);animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{-webkit-animation-name:in;animation-name:in}.calcite-animate__in-down{-webkit-animation-name:in-down;animation-name:in-down}.calcite-animate__in-up{-webkit-animation-name:in-up;animation-name:in-up}.calcite-animate__in-scale{-webkit-animation-name:in-scale;animation-name:in-scale}:root{--calcite-popper-transition:150ms ease-in-out}:host([hidden]){display:none}:host{display:inline-block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}::slotted(input[slot=hidden-form-input]){bottom:0 !important;left:0 !important;margin:0 !important;opacity:0 !important;outline:none !important;padding:0 !important;position:absolute !important;right:0 !important;top:0 !important;-webkit-transform:none !important;transform:none !important;-webkit-appearance:none !important;z-index:-1 !important}";
179
+ const calciteInputTimePickerCss = "@-webkit-keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}@keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--calcite-animation-timing);animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{-webkit-animation-name:in;animation-name:in}.calcite-animate__in-down{-webkit-animation-name:in-down;animation-name:in-down}.calcite-animate__in-up{-webkit-animation-name:in-up;animation-name:in-up}.calcite-animate__in-scale{-webkit-animation-name:in-scale;animation-name:in-scale}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{display:inline-block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}::slotted(input[slot=hidden-form-input]){bottom:0 !important;left:0 !important;margin:0 !important;opacity:0 !important;outline:none !important;padding:0 !important;position:absolute !important;right:0 !important;top:0 !important;-webkit-transform:none !important;transform:none !important;-webkit-appearance:none !important;z-index:-1 !important}";
73
180
 
74
181
  let CalciteInputTimePicker = class {
75
182
  constructor(hostRef) {
@@ -84,8 +191,11 @@ let CalciteInputTimePicker = class {
84
191
  this.active = false;
85
192
  /** The disabled state of the time input */
86
193
  this.disabled = false;
87
- /** Format of the hour value (12-hour or 24-hour) (this will be replaced by locale eventually) */
88
- this.hourDisplayFormat = "12";
194
+ /**
195
+ * BCP 47 language tag for desired language and country format
196
+ * @internal
197
+ */
198
+ this.locale = document.documentElement.lang || navigator.language || "en";
89
199
  /**
90
200
  * When true, makes the component required for form-submission.
91
201
  *
@@ -96,7 +206,7 @@ let CalciteInputTimePicker = class {
96
206
  this.scale = "m";
97
207
  /** number (seconds) that specifies the granularity that the value must adhere to */
98
208
  this.step = 60;
99
- /** The selected time (always 24-hour format)*/
209
+ /** The selected time in UTC (always 24-hour format) */
100
210
  this.value = null;
101
211
  /** whether the value of the input was changed as a result of user typing or not */
102
212
  this.internalValueChange = false;
@@ -109,56 +219,60 @@ let CalciteInputTimePicker = class {
109
219
  //--------------------------------------------------------------------------
110
220
  this.calciteInputBlurHandler = () => {
111
221
  this.active = false;
112
- const newValue = formatTimeString(this.calciteInputEl.value) || formatTimeString(this.value);
113
- if (newValue !== this.calciteInputEl.value) {
114
- this.setInputValue(newValue);
115
- }
222
+ const shouldIncludeSeconds = this.shouldIncludeSeconds();
223
+ const localizedInputValue = localizeTimeString(this.calciteInputEl.value, this.locale, shouldIncludeSeconds);
224
+ this.setInputValue(localizedInputValue || localizeTimeString(this.value, this.locale, shouldIncludeSeconds));
116
225
  };
117
226
  this.calciteInputFocusHandler = () => {
118
227
  this.active = true;
119
228
  };
120
229
  this.calciteInputInputHandler = (event) => {
121
- this.setValue({ value: event.detail.value });
230
+ const target = event.target;
231
+ this.setValue({ value: target.value });
232
+ };
233
+ this.timePickerChangeHandler = (event) => {
234
+ event.stopPropagation();
235
+ const target = event.target;
236
+ const value = target.value;
237
+ this.setValue({ value, origin: "time-picker" });
122
238
  };
123
239
  this.setCalciteInputEl = (el) => {
124
240
  this.calciteInputEl = el;
125
241
  };
242
+ this.setCalciteTimePickerEl = (el) => {
243
+ this.calciteTimePickerEl = el;
244
+ };
126
245
  this.setInputValue = (newInputValue) => {
127
246
  if (!this.calciteInputEl) {
128
247
  return;
129
248
  }
130
- if (this.hourDisplayFormat === "12") {
131
- const { hour, minute, second } = parseTimeString(newInputValue);
132
- this.calciteInputEl.value = newInputValue
133
- ? `${getMeridiemHour(hour)}:${minute}${this.step !== 60 ? ":" + second : ""} ${getMeridiem(hour)}`
134
- : null;
135
- }
136
- else {
137
- this.calciteInputEl.value = newInputValue;
138
- }
249
+ this.calciteInputEl.value = newInputValue;
139
250
  };
140
251
  this.setValue = ({ value, origin = "input" }) => {
141
252
  const previousValue = this.value;
142
- const validatedNewValue = formatTimeString(value);
253
+ const newValue = formatTimeString(value);
254
+ const newLocalizedValue = localizeTimeString(newValue, this.locale, this.shouldIncludeSeconds());
143
255
  this.internalValueChange = origin !== "external" && origin !== "loading";
144
256
  const shouldEmit = origin !== "loading" &&
145
257
  origin !== "external" &&
146
258
  ((value !== this.previousValidValue && !value) ||
147
- !!(!this.previousValidValue && validatedNewValue) ||
148
- (validatedNewValue !== this.previousValidValue && validatedNewValue));
259
+ !!(!this.previousValidValue && newValue) ||
260
+ (newValue !== this.previousValidValue && newValue));
149
261
  if (value) {
150
262
  if (shouldEmit) {
151
- this.previousValidValue = validatedNewValue;
263
+ this.previousValidValue = newValue;
152
264
  }
153
- if (validatedNewValue && validatedNewValue !== this.value) {
154
- this.value = validatedNewValue;
265
+ if (newValue && newValue !== this.value) {
266
+ this.value = newValue;
155
267
  }
268
+ this.localizedValue = newLocalizedValue;
156
269
  }
157
270
  else {
158
271
  this.value = value;
272
+ this.localizedValue = null;
159
273
  }
160
274
  if (origin === "time-picker" || origin === "external") {
161
- this.setInputValue(validatedNewValue);
275
+ this.setInputValue(newLocalizedValue);
162
276
  }
163
277
  if (shouldEmit) {
164
278
  const changeEvent = this.calciteInputTimePickerChange.emit();
@@ -169,19 +283,28 @@ let CalciteInputTimePicker = class {
169
283
  this.previousValidValue = previousValue;
170
284
  }
171
285
  else {
172
- this.previousValidValue = validatedNewValue;
286
+ this.previousValidValue = newValue;
173
287
  }
174
288
  }
175
289
  };
176
290
  }
291
+ localeWatcher(newLocale) {
292
+ this.setInputValue(localizeTimeString(this.value, newLocale, this.shouldIncludeSeconds()));
293
+ }
177
294
  valueWatcher(newValue) {
178
295
  if (!this.internalValueChange) {
179
296
  this.setValue({ value: newValue, origin: "external" });
180
297
  }
181
298
  this.internalValueChange = false;
182
299
  }
300
+ clickHandler(event) {
301
+ if (event.composedPath().includes(this.calciteTimePickerEl)) {
302
+ return;
303
+ }
304
+ this.setFocus();
305
+ }
183
306
  keyUpHandler(event) {
184
- if (key.getKey(event.key) === "Escape" && this.active) {
307
+ if (event.key === "Escape" && this.active) {
185
308
  this.active = false;
186
309
  }
187
310
  }
@@ -190,21 +313,6 @@ let CalciteInputTimePicker = class {
190
313
  event.stopPropagation();
191
314
  this.active = false;
192
315
  }
193
- timePickerChangeHandler(event) {
194
- event.preventDefault();
195
- event.stopPropagation();
196
- if (event.detail) {
197
- const { hour, minute, second } = event.detail;
198
- let value;
199
- if (hour && minute) {
200
- value = second && this.step !== 60 ? `${hour}:${minute}:${second}` : `${hour}:${minute}`;
201
- }
202
- else {
203
- value = "";
204
- }
205
- this.setValue({ value, origin: "time-picker" });
206
- }
207
- }
208
316
  timePickerFocusHandler(event) {
209
317
  event.preventDefault();
210
318
  event.stopPropagation();
@@ -227,6 +335,9 @@ let CalciteInputTimePicker = class {
227
335
  onLabelClick() {
228
336
  this.setFocus();
229
337
  }
338
+ shouldIncludeSeconds() {
339
+ return this.step < 60;
340
+ }
230
341
  //--------------------------------------------------------------------------
231
342
  //
232
343
  // Lifecycle
@@ -234,15 +345,13 @@ let CalciteInputTimePicker = class {
234
345
  //--------------------------------------------------------------------------
235
346
  connectedCallback() {
236
347
  if (this.value) {
237
- this.setValue({ value: this.value, origin: "loading" });
348
+ this.setValue({ value: isValidTime(this.value) ? this.value : undefined, origin: "loading" });
238
349
  }
239
350
  label.connectLabel(this);
240
351
  form.connectForm(this);
241
352
  }
242
353
  componentDidLoad() {
243
- if (this.calciteInputEl.value !== this.value) {
244
- this.setInputValue(this.value);
245
- }
354
+ this.setInputValue(this.localizedValue);
246
355
  }
247
356
  disconnectedCallback() {
248
357
  label.disconnectLabel(this);
@@ -254,38 +363,44 @@ let CalciteInputTimePicker = class {
254
363
  //
255
364
  // --------------------------------------------------------------------------
256
365
  render() {
257
- const { hour, minute, second } = parseTimeString(this.value);
258
366
  const popoverId = `${this.referenceElementId}-popover`;
259
- return (index.h(index.Host, null, index.h("div", { "aria-controls": popoverId, "aria-haspopup": "dialog", "aria-label": this.name, "aria-owns": popoverId, id: this.referenceElementId, role: "combobox" }, index.h("calcite-input", { disabled: this.disabled, icon: "clock", label: label.getLabelText(this), onCalciteInputBlur: this.calciteInputBlurHandler, onCalciteInputFocus: this.calciteInputFocusHandler, onCalciteInputInput: this.calciteInputInputHandler, ref: this.setCalciteInputEl, scale: this.scale, step: this.step })), index.h("calcite-popover", { id: popoverId, label: "Time Picker", open: this.active || false, referenceElement: this.referenceElementId }, index.h("calcite-time-picker", { hour: hour, "hour-display-format": this.hourDisplayFormat, intlHour: this.intlHour, intlHourDown: this.intlHourDown, intlHourUp: this.intlHourUp, intlMeridiem: this.intlMeridiem, intlMeridiemDown: this.intlMeridiemDown, intlMeridiemUp: this.intlMeridiemUp, intlMinute: this.intlMinute, intlMinuteDown: this.intlMinuteDown, intlMinuteUp: this.intlMinuteUp, intlSecond: this.intlSecond, intlSecondDown: this.intlSecondDown, intlSecondUp: this.intlSecondUp, minute: minute, scale: this.scale, second: second, step: this.step })), index.h(form.HiddenFormInputSlot, { component: this })));
367
+ return (index.h(index.Host, null, index.h("div", { "aria-controls": popoverId, "aria-haspopup": "dialog", "aria-label": this.name, "aria-owns": popoverId, id: this.referenceElementId, role: "combobox" }, index.h("calcite-input", { disabled: this.disabled, icon: "clock", label: label.getLabelText(this), onCalciteInputBlur: this.calciteInputBlurHandler, onCalciteInputFocus: this.calciteInputFocusHandler, onCalciteInputInput: this.calciteInputInputHandler, ref: this.setCalciteInputEl, scale: this.scale, step: this.step })), index.h("calcite-popover", { id: popoverId, label: "Time Picker", open: this.active || false, referenceElement: this.referenceElementId }, index.h("calcite-time-picker", { intlHour: this.intlHour, intlHourDown: this.intlHourDown, intlHourUp: this.intlHourUp, intlMeridiem: this.intlMeridiem, intlMeridiemDown: this.intlMeridiemDown, intlMeridiemUp: this.intlMeridiemUp, intlMinute: this.intlMinute, intlMinuteDown: this.intlMinuteDown, intlMinuteUp: this.intlMinuteUp, intlSecond: this.intlSecond, intlSecondDown: this.intlSecondDown, intlSecondUp: this.intlSecondUp, lang: this.locale, onCalciteTimePickerChange: this.timePickerChangeHandler, ref: this.setCalciteTimePickerEl, scale: this.scale, step: this.step, value: this.value })), index.h(form.HiddenFormInputSlot, { component: this })));
260
368
  }
261
369
  get el() { return index.getElement(this); }
262
370
  static get watchers() { return {
371
+ "locale": ["localeWatcher"],
263
372
  "value": ["valueWatcher"]
264
373
  }; }
265
374
  };
266
375
  CalciteInputTimePicker.style = calciteInputTimePickerCss;
267
376
 
268
377
  const CSS = {
378
+ button: "button",
269
379
  buttonBottomLeft: "button--bottom-left",
270
380
  buttonBottomRight: "button--bottom-right",
271
- button: "button",
272
- delimiter: "delimiter",
273
- hour: "hour",
274
381
  buttonHourDown: "button--hour-down",
275
382
  buttonHourUp: "button--hour-up",
276
- input: "input",
277
- meridiem: "meridiem",
278
383
  buttonMeridiemDown: "button--meridiem-down",
279
384
  buttonMeridiemUp: "button--meridiem-up",
280
- minute: "minute",
281
385
  buttonMinuteDown: "button--minute-down",
282
386
  buttonMinuteUp: "button--minute-up",
283
- second: "second",
284
387
  buttonSecondDown: "button--second-down",
285
388
  buttonSecondUp: "button--second-up",
286
- timePicker: "time-picker",
287
389
  buttonTopLeft: "button--top-left",
288
- buttonTopRight: "button--top-right"
390
+ buttonTopRight: "button--top-right",
391
+ column: "column",
392
+ delimiter: "delimiter",
393
+ hour: "hour",
394
+ input: "input",
395
+ meridiem: "meridiem",
396
+ minute: "minute",
397
+ second: "second",
398
+ showMeridiem: "show-meridiem",
399
+ showSecond: "show-second",
400
+ "scale-s": "scale-s",
401
+ "scale-m": "scale-m",
402
+ "scale-l": "scale-l",
403
+ timePicker: "time-picker"
289
404
  };
290
405
  const TEXT = {
291
406
  hour: "Hour",
@@ -302,8 +417,11 @@ const TEXT = {
302
417
  secondUp: "Increase second"
303
418
  };
304
419
 
305
- const calciteTimePickerCss = "@-webkit-keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}@keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:300ms}.calcite-animate{opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--calcite-animation-timing);animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{-webkit-animation-name:in;animation-name:in}.calcite-animate__in-down{-webkit-animation-name:in-down;animation-name:in-down}.calcite-animate__in-up{-webkit-animation-name:in-up;animation-name:in-up}.calcite-animate__in-scale{-webkit-animation-name:in-scale;animation-name:in-scale}:root{--calcite-popper-transition:150ms ease-in-out}:host([hidden]){display:none}:host{color:var(--calcite-ui-text-1);display:inline-block;font-weight:var(--calcite-font-weight-medium);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.time-picker{-webkit-box-shadow:0 6px 20px -4px rgba(0, 0, 0, 0.1), 0 4px 12px -2px rgba(0, 0, 0, 0.08);box-shadow:0 6px 20px -4px rgba(0, 0, 0, 0.1), 0 4px 12px -2px rgba(0, 0, 0, 0.08);-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;border-radius:var(--calcite-border-radius)}span{-ms-flex-align:center;align-items:center;background-color:var(--calcite-ui-foreground-1);display:-ms-inline-flexbox;display:inline-flex;-ms-flex-pack:center;justify-content:center}span.button{cursor:pointer}span.button:hover,span.button:focus{background-color:var(--calcite-ui-foreground-2)}span.button:focus{outline:2px solid transparent;outline-offset:2px}span.button:active{background-color:var(--calcite-ui-foreground-3)}span.button.top-left{border-top-left-radius:var(--calcite-border-radius)}span.button.bottom-left{border-bottom-left-radius:var(--calcite-border-radius)}span.button.top-right{border-top-right-radius:var(--calcite-border-radius)}span.button.bottom-right{border-bottom-right-radius:var(--calcite-border-radius)}span.button calcite-icon{color:var(--calcite-ui-text-3)}span.input{font-weight:var(--calcite-font-weight-medium);position:relative}span.input:hover{-webkit-box-shadow:inset 0 0 0 2px var(--calcite-ui-foreground-2);box-shadow:inset 0 0 0 2px var(--calcite-ui-foreground-2)}span.input:focus,span.input:hover:focus{outline:2px solid transparent;outline-offset:2px;-webkit-box-shadow:inset 0 0 0 2px var(--calcite-ui-brand);box-shadow:inset 0 0 0 2px var(--calcite-ui-brand)}:host([scale=s]){font-size:var(--calcite-font-size--1)}:host([scale=s]) span{height:24px;width:40px}:host([scale=s]) .delimiter{height:72px}:host([scale=s][hour-display-format=\"12\"]) .time-picker{width:124.2px}:host([scale=s][hour-display-format=\"12\"]:not([step=\"60\"])) .time-picker{width:168px}:host([scale=s][hour-display-format=\"24\"]) .time-picker{width:84.2px}:host([scale=s][hour-display-format=\"24\"]:not([step=\"60\"])) .time-picker{width:128.4px}:host([scale=m]){font-size:var(--calcite-font-size-0)}:host([scale=m]) span{height:32px;width:44px}:host([scale=m]) .delimiter{height:96px}:host([scale=m][hour-display-format=\"12\"]) .time-picker{width:136.8px}:host([scale=m][hour-display-format=\"12\"]:not([step=\"60\"])) .time-picker{width:186px}:host([scale=m][hour-display-format=\"24\"]) .time-picker{width:92.8px}:host([scale=m][hour-display-format=\"24\"]:not([step=\"60\"])) .time-picker{width:141.6px}:host([scale=l]){font-size:var(--calcite-font-size-1)}:host([scale=l]) span{height:48px;width:64px}:host([scale=l]) .delimiter{height:144px}:host([scale=l][hour-display-format=\"12\"]) .time-picker{width:198px}:host([scale=l][hour-display-format=\"12\"]:not([step=\"60\"])) .time-picker{width:268px}:host([scale=l][hour-display-format=\"24\"]) .time-picker{width:134px}:host([scale=l][hour-display-format=\"24\"]:not([step=\"60\"])) .time-picker{width:204px}";
420
+ const calciteTimePickerCss = "@-webkit-keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}@keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--calcite-animation-timing);animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{-webkit-animation-name:in;animation-name:in}.calcite-animate__in-down{-webkit-animation-name:in-down;animation-name:in-down}.calcite-animate__in-up{-webkit-animation-name:in-up;animation-name:in-up}.calcite-animate__in-scale{-webkit-animation-name:in-scale;animation-name:in-scale}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{display:inline-block}.time-picker{display:-ms-flexbox;display:flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-flex-align:center;align-items:center;background-color:var(--calcite-ui-foreground-1);font-weight:var(--calcite-font-weight-medium);color:var(--calcite-ui-text-1);--tw-shadow:0 6px 20px -4px rgba(0, 0, 0, 0.1), 0 4px 12px -2px rgba(0, 0, 0, 0.08);--tw-shadow-colored:0 6px 20px -4px var(--tw-shadow-color), 0 4px 12px -2px var(--tw-shadow-color);-webkit-box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);border-radius:var(--calcite-border-radius)}.time-picker .column{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.time-picker .button{display:-ms-inline-flexbox;display:inline-flex;cursor:pointer;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;background-color:var(--calcite-ui-foreground-1)}.time-picker .button:hover,.time-picker .button:focus{background-color:var(--calcite-ui-foreground-2);outline:2px solid transparent;outline-offset:2px}.time-picker .button:active{background-color:var(--calcite-ui-foreground-3)}.time-picker .button.top-left{border-top-left-radius:var(--calcite-border-radius)}.time-picker .button.bottom-left{border-bottom-left-radius:var(--calcite-border-radius)}.time-picker .button.top-right{border-top-right-radius:var(--calcite-border-radius)}.time-picker .button.bottom-right{border-bottom-right-radius:var(--calcite-border-radius)}.time-picker .button calcite-icon{color:var(--calcite-ui-text-3)}.time-picker .input{display:-ms-inline-flexbox;display:inline-flex;cursor:pointer;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;background-color:var(--calcite-ui-foreground-1);font-weight:var(--calcite-font-weight-medium)}.time-picker .input:hover{-webkit-box-shadow:inset 0 0 0 2px var(--calcite-ui-foreground-2);box-shadow:inset 0 0 0 2px var(--calcite-ui-foreground-2)}.time-picker .input:focus,.time-picker .input:hover:focus{outline:2px solid transparent;outline-offset:2px;-webkit-box-shadow:inset 0 0 0 2px var(--calcite-ui-brand);box-shadow:inset 0 0 0 2px var(--calcite-ui-brand)}.time-picker.scale-s{font-size:var(--calcite-font-size--1)}.time-picker.scale-s .button,.time-picker.scale-s .input{padding-left:0.75rem;padding-right:0.75rem;padding-top:0.25rem;padding-bottom:0.25rem}.time-picker.scale-s:not(.show-meridiem) .delimiter:last-child{-webkit-padding-end:0.75rem;padding-inline-end:0.75rem}.time-picker.scale-m{font-size:var(--calcite-font-size-0)}.time-picker.scale-m .button,.time-picker.scale-m .input{padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem}.time-picker.scale-m:not(.show-meridiem) .delimiter:last-child{-webkit-padding-end:1rem;padding-inline-end:1rem}.time-picker.scale-l{font-size:var(--calcite-font-size-1)}.time-picker.scale-l .button,.time-picker.scale-l .input{padding-left:1.25rem;padding-right:1.25rem;padding-top:0.75rem;padding-bottom:0.75rem}.time-picker.scale-l:not(.show-meridiem) .delimiter:last-child{-webkit-padding-end:1.25rem;padding-inline-end:1.25rem}";
306
421
 
422
+ function capitalize(str) {
423
+ return str.charAt(0).toUpperCase() + str.slice(1);
424
+ }
307
425
  let CalciteTimePicker = class {
308
426
  constructor(hostRef) {
309
427
  index.registerInstance(this, hostRef);
@@ -315,10 +433,6 @@ let CalciteTimePicker = class {
315
433
  // Properties
316
434
  //
317
435
  //--------------------------------------------------------------------------
318
- /** The hour value (24-hour format) */
319
- this.hour = null;
320
- /** Format of the hour value (12-hour or 24-hour) (this will be replaced by locale eventually) */
321
- this.hourDisplayFormat = "12";
322
436
  /** aria-label for the hour input
323
437
  * @default "Hour"
324
438
  */
@@ -367,35 +481,25 @@ let CalciteTimePicker = class {
367
481
  * @default "Increase second"
368
482
  */
369
483
  this.intlSecondUp = TEXT.secondUp;
370
- /** The minute value */
371
- this.minute = null;
372
- /** The second value */
373
- this.second = null;
484
+ /**
485
+ * BCP 47 language tag for desired language and country format
486
+ * @internal
487
+ */
488
+ this.locale = document.documentElement.lang || navigator.language || "en";
374
489
  /** The scale (size) of the time picker */
375
490
  this.scale = "m";
376
- /** number that specifies the granularity that the value must adhere to */
491
+ /** number (seconds) that specifies the granularity that the value must adhere to */
377
492
  this.step = 60;
378
- this.timeChanged = false;
379
- // --------------------------------------------------------------------------
380
- //
381
- // State
382
- //
383
- // --------------------------------------------------------------------------
384
- /** The am/pm value */
385
- this.meridiem = null;
386
- this.displayHour = this.getDisplayHour();
387
- // --------------------------------------------------------------------------
388
- //
389
- // Private Methods
390
- //
391
- // --------------------------------------------------------------------------
493
+ /** The selected time in UTC (always 24-hour format) */
494
+ this.value = null;
495
+ this.showSecond = this.step < 60;
392
496
  this.decrementHour = () => {
393
497
  const newHour = !this.hour ? 0 : this.hour === "00" ? 23 : parseInt(this.hour) - 1;
394
- this.setTime("hour", newHour);
498
+ this.setValuePart("hour", newHour);
395
499
  };
396
500
  this.decrementMeridiem = () => {
397
501
  const newMeridiem = this.meridiem === "PM" ? "AM" : "PM";
398
- this.setTime("meridiem", newMeridiem);
502
+ this.setValuePart("meridiem", newMeridiem);
399
503
  };
400
504
  this.decrementMinuteOrSecond = (key) => {
401
505
  let newValue;
@@ -406,7 +510,7 @@ let CalciteTimePicker = class {
406
510
  else {
407
511
  newValue = 59;
408
512
  }
409
- this.setTime(key, newValue);
513
+ this.setValuePart(key, newValue);
410
514
  };
411
515
  this.decrementMinute = () => {
412
516
  this.decrementMinuteOrSecond("minute");
@@ -423,12 +527,12 @@ let CalciteTimePicker = class {
423
527
  }
424
528
  };
425
529
  this.hourKeyDownHandler = (event) => {
426
- const key$1 = key.getKey(event.key);
427
- if (key.numberKeys.includes(key$1)) {
428
- const keyAsNumber = parseInt(key$1);
530
+ const key = event.key;
531
+ if (number.numberKeys.includes(key)) {
532
+ const keyAsNumber = parseInt(key);
429
533
  let newHour;
430
534
  if (number.isValidNumber(this.hour)) {
431
- switch (this.hourDisplayFormat) {
535
+ switch (this.hourCycle) {
432
536
  case "12":
433
537
  newHour =
434
538
  this.hour === "01" && keyAsNumber >= 0 && keyAsNumber <= 2
@@ -451,13 +555,13 @@ let CalciteTimePicker = class {
451
555
  else {
452
556
  newHour = keyAsNumber;
453
557
  }
454
- this.setTime("hour", newHour);
558
+ this.setValuePart("hour", newHour);
455
559
  }
456
560
  else {
457
- switch (key$1) {
561
+ switch (key) {
458
562
  case "Backspace":
459
563
  case "Delete":
460
- this.setTime("hour", null);
564
+ this.setValuePart("hour", null);
461
565
  break;
462
566
  case "ArrowDown":
463
567
  event.preventDefault();
@@ -481,7 +585,7 @@ let CalciteTimePicker = class {
481
585
  };
482
586
  this.incrementMeridiem = () => {
483
587
  const newMeridiem = this.meridiem === "AM" ? "PM" : "AM";
484
- this.setTime("meridiem", newMeridiem);
588
+ this.setValuePart("meridiem", newMeridiem);
485
589
  };
486
590
  this.incrementHour = () => {
487
591
  const newHour = number.isValidNumber(this.hour)
@@ -489,7 +593,7 @@ let CalciteTimePicker = class {
489
593
  ? 0
490
594
  : parseInt(this.hour) + 1
491
595
  : 1;
492
- this.setTime("hour", newHour);
596
+ this.setValuePart("hour", newHour);
493
597
  };
494
598
  this.incrementMinuteOrSecond = (key) => {
495
599
  const newValue = number.isValidNumber(this[key])
@@ -497,7 +601,7 @@ let CalciteTimePicker = class {
497
601
  ? 0
498
602
  : parseInt(this[key]) + 1
499
603
  : 0;
500
- this.setTime(key, newValue);
604
+ this.setValuePart(key, newValue);
501
605
  };
502
606
  this.incrementMinute = () => {
503
607
  this.incrementMinuteOrSecond("minute");
@@ -511,16 +615,16 @@ let CalciteTimePicker = class {
511
615
  }
512
616
  };
513
617
  this.meridiemKeyDownHandler = (event) => {
514
- switch (key.getKey(event.key)) {
618
+ switch (event.key) {
515
619
  case "a":
516
- this.setTime("meridiem", "AM");
620
+ this.setValuePart("meridiem", "AM");
517
621
  break;
518
622
  case "p":
519
- this.setTime("meridiem", "PM");
623
+ this.setValuePart("meridiem", "PM");
520
624
  break;
521
625
  case "Backspace":
522
626
  case "Delete":
523
- this.setTime("meridiem", null);
627
+ this.setValuePart("meridiem", null);
524
628
  break;
525
629
  case "ArrowUp":
526
630
  event.preventDefault();
@@ -547,9 +651,9 @@ let CalciteTimePicker = class {
547
651
  }
548
652
  };
549
653
  this.minuteKeyDownHandler = (event) => {
550
- const key$1 = key.getKey(event.key);
551
- if (key.numberKeys.includes(key$1)) {
552
- const keyAsNumber = parseInt(key$1);
654
+ const key = event.key;
655
+ if (number.numberKeys.includes(key)) {
656
+ const keyAsNumber = parseInt(key);
553
657
  let newMinute;
554
658
  if (number.isValidNumber(this.minute) && this.minute.startsWith("0")) {
555
659
  const minuteAsNumber = parseInt(this.minute);
@@ -561,13 +665,13 @@ let CalciteTimePicker = class {
561
665
  else {
562
666
  newMinute = keyAsNumber;
563
667
  }
564
- this.setTime("minute", newMinute);
668
+ this.setValuePart("minute", newMinute);
565
669
  }
566
670
  else {
567
- switch (key$1) {
671
+ switch (key) {
568
672
  case "Backspace":
569
673
  case "Delete":
570
- this.setTime("minute", null);
674
+ this.setValuePart("minute", null);
571
675
  break;
572
676
  case "ArrowDown":
573
677
  event.preventDefault();
@@ -595,9 +699,9 @@ let CalciteTimePicker = class {
595
699
  }
596
700
  };
597
701
  this.secondKeyDownHandler = (event) => {
598
- const key$1 = key.getKey(event.key);
599
- if (key.numberKeys.includes(key$1)) {
600
- const keyAsNumber = parseInt(key$1);
702
+ const key = event.key;
703
+ if (number.numberKeys.includes(key)) {
704
+ const keyAsNumber = parseInt(key);
601
705
  let newSecond;
602
706
  if (number.isValidNumber(this.second) && this.second.startsWith("0")) {
603
707
  const secondAsNumber = parseInt(this.second);
@@ -609,13 +713,13 @@ let CalciteTimePicker = class {
609
713
  else {
610
714
  newSecond = keyAsNumber;
611
715
  }
612
- this.setTime("second", newSecond);
716
+ this.setValuePart("second", newSecond);
613
717
  }
614
718
  else {
615
- switch (key$1) {
719
+ switch (key) {
616
720
  case "Backspace":
617
721
  case "Delete":
618
- this.setTime("second", null);
722
+ this.setValuePart("second", null);
619
723
  break;
620
724
  case "ArrowDown":
621
725
  event.preventDefault();
@@ -637,59 +741,96 @@ let CalciteTimePicker = class {
637
741
  this.incrementSecond();
638
742
  }
639
743
  };
640
- this.setTime = (key, value, emit = true) => {
641
- switch (key) {
642
- default:
643
- return;
644
- case "hour":
645
- this.hour = typeof value === "number" ? formatTimePart(value) : value;
646
- break;
647
- case "minute":
648
- this.minute = typeof value === "number" ? formatTimePart(value) : value;
649
- break;
650
- case "second":
651
- this.second = typeof value === "number" ? formatTimePart(value) : value;
652
- break;
653
- case "meridiem":
654
- if (number.isValidNumber(this.hour)) {
655
- const hourAsNumber = parseInt(this.hour);
656
- switch (value) {
657
- case "AM":
658
- if (hourAsNumber >= 12) {
659
- this.hour = formatTimePart(hourAsNumber - 12);
660
- }
661
- break;
662
- case "PM":
663
- if (hourAsNumber < 12) {
664
- this.hour = formatTimePart(hourAsNumber + 12);
665
- }
666
- break;
667
- }
668
- this.meridiem = value;
669
- }
670
- else {
671
- this.meridiem = value;
744
+ this.setHourEl = (el) => (this.hourEl = el);
745
+ this.setMeridiemEl = (el) => (this.meridiemEl = el);
746
+ this.setMinuteEl = (el) => (this.minuteEl = el);
747
+ this.setSecondEl = (el) => (this.secondEl = el);
748
+ this.setValue = (value, emit = true) => {
749
+ if (isValidTime(value)) {
750
+ const { hour, minute, second } = parseTimeString(value);
751
+ const { localizedHour, localizedHourSuffix, localizedMinute, localizedMinuteSuffix, localizedSecond, localizedSecondSuffix, localizedMeridiem } = localizeTimeStringToParts(value, this.locale);
752
+ this.localizedHour = localizedHour;
753
+ this.localizedHourSuffix = localizedHourSuffix;
754
+ this.localizedMinute = localizedMinute;
755
+ this.localizedMinuteSuffix = localizedMinuteSuffix;
756
+ this.localizedSecond = localizedSecond;
757
+ this.localizedSecondSuffix = localizedSecondSuffix;
758
+ this.hour = hour;
759
+ this.minute = minute;
760
+ this.second = second;
761
+ if (localizedMeridiem) {
762
+ this.localizedMeridiem = localizedMeridiem;
763
+ this.meridiem = getMeridiem(this.hour);
764
+ }
765
+ }
766
+ else {
767
+ this.hour = null;
768
+ this.localizedHour = null;
769
+ this.localizedHourSuffix = null;
770
+ this.localizedMeridiem = null;
771
+ this.localizedMinute = null;
772
+ this.localizedMinuteSuffix = null;
773
+ this.localizedSecond = null;
774
+ this.localizedSecondSuffix = null;
775
+ this.meridiem = null;
776
+ this.minute = null;
777
+ this.second = null;
778
+ this.value = null;
779
+ }
780
+ if (emit) {
781
+ this.calciteTimePickerChange.emit();
782
+ }
783
+ };
784
+ this.setValuePart = (key, value, emit = true) => {
785
+ var _a;
786
+ if (key === "meridiem") {
787
+ this.meridiem = value;
788
+ if (number.isValidNumber(this.hour)) {
789
+ const hourAsNumber = parseInt(this.hour);
790
+ switch (value) {
791
+ case "AM":
792
+ if (hourAsNumber >= 12) {
793
+ this.hour = formatTimePart(hourAsNumber - 12);
794
+ }
795
+ break;
796
+ case "PM":
797
+ if (hourAsNumber < 12) {
798
+ this.hour = formatTimePart(hourAsNumber + 12);
799
+ }
800
+ break;
672
801
  }
673
- break;
802
+ this.localizedHour = localizeTimePart(this.hour, "hour", this.locale);
803
+ }
804
+ }
805
+ else {
806
+ this[key] = typeof value === "number" ? formatTimePart(value) : value;
807
+ this[`localized${capitalize(key)}`] = localizeTimePart(this[key], key, this.locale);
808
+ }
809
+ if (this.hour && this.minute) {
810
+ const showSeconds = this.second && this.showSecond;
811
+ this.value = `${this.hour}:${this.minute}:${showSeconds ? this.second : "00"}`;
674
812
  }
675
- this.timeChanged = true;
813
+ else {
814
+ this.value = null;
815
+ }
816
+ this.localizedMeridiem = this.value
817
+ ? ((_a = localizeTimeStringToParts(this.value, this.locale)) === null || _a === void 0 ? void 0 : _a.localizedMeridiem) || null
818
+ : localizeTimePart(this.meridiem, "meridiem", this.locale);
676
819
  if (emit) {
677
- this.calciteTimePickerChange.emit(this.getTime());
820
+ this.calciteTimePickerChange.emit();
678
821
  }
679
822
  };
680
823
  }
681
- hourChanged(newHour) {
682
- if (this.hourDisplayFormat === "12" && number.isValidNumber(newHour)) {
683
- this.meridiem = getMeridiem(newHour);
684
- }
824
+ localeWatcher(newLocale) {
825
+ this.hourCycle = getLocaleHourCycle(newLocale);
826
+ this.setValue(this.value, false);
685
827
  }
686
- timeChangeHandler() {
687
- const { hour, minute } = this.getTime();
688
- if (!hour && !minute) {
689
- this.setTime("meridiem", null, false);
690
- }
691
- if (this.timeChanged) {
692
- this.timeChanged = false;
828
+ valueWatcher(newValue) {
829
+ this.setValue(newValue, false);
830
+ }
831
+ hourChanged(newHour) {
832
+ if (this.meridiem && number.isValidNumber(newHour)) {
833
+ this.setValuePart("meridiem", getMeridiem(newHour));
693
834
  }
694
835
  }
695
836
  //--------------------------------------------------------------------------
@@ -704,15 +845,15 @@ let CalciteTimePicker = class {
704
845
  this.calciteTimePickerFocus.emit();
705
846
  }
706
847
  keyDownHandler(event) {
707
- const key$1 = key.getKey(event.key);
848
+ const key = event.key;
708
849
  switch (this.activeEl) {
709
850
  case this.hourEl:
710
- if (key$1 === "ArrowRight") {
851
+ if (key === "ArrowRight") {
711
852
  this.setFocus("minute");
712
853
  }
713
854
  break;
714
855
  case this.minuteEl:
715
- switch (key$1) {
856
+ switch (key) {
716
857
  case "ArrowLeft":
717
858
  this.setFocus("hour");
718
859
  break;
@@ -720,26 +861,26 @@ let CalciteTimePicker = class {
720
861
  if (this.step !== 60) {
721
862
  this.setFocus("second");
722
863
  }
723
- else if (this.hourDisplayFormat === "12") {
864
+ else if (this.hourCycle === "12") {
724
865
  this.setFocus("meridiem");
725
866
  }
726
867
  break;
727
868
  }
728
869
  break;
729
870
  case this.secondEl:
730
- switch (key$1) {
871
+ switch (key) {
731
872
  case "ArrowLeft":
732
873
  this.setFocus("minute");
733
874
  break;
734
875
  case "ArrowRight":
735
- if (this.hourDisplayFormat === "12") {
876
+ if (this.hourCycle === "12") {
736
877
  this.setFocus("meridiem");
737
878
  }
738
879
  break;
739
880
  }
740
881
  break;
741
882
  case this.meridiemEl:
742
- switch (key$1) {
883
+ switch (key) {
743
884
  case "ArrowLeft":
744
885
  if (this.step !== 60) {
745
886
  this.setFocus("second");
@@ -762,28 +903,17 @@ let CalciteTimePicker = class {
762
903
  var _a;
763
904
  (_a = this[`${target || "hour"}El`]) === null || _a === void 0 ? void 0 : _a.focus();
764
905
  }
906
+ // --------------------------------------------------------------------------
907
+ //
908
+ // Private Methods
909
+ //
910
+ // --------------------------------------------------------------------------
765
911
  buttonActivated(event) {
766
- const key$1 = key.getKey(event.key);
767
- if (key$1 === " ") {
912
+ const key = event.key;
913
+ if (key === " ") {
768
914
  event.preventDefault();
769
915
  }
770
- return key.isActivationKey(key$1);
771
- }
772
- getDisplayHour() {
773
- if (!this.hour) {
774
- return "--";
775
- }
776
- if (this.hourDisplayFormat === "12") {
777
- return getMeridiemHour(this.hour);
778
- }
779
- return this.hour;
780
- }
781
- getTime() {
782
- return {
783
- hour: this.hour,
784
- minute: this.minute,
785
- second: this.second
786
- };
916
+ return number.isActivationKey(key);
787
917
  }
788
918
  // --------------------------------------------------------------------------
789
919
  //
@@ -791,18 +921,8 @@ let CalciteTimePicker = class {
791
921
  //
792
922
  // --------------------------------------------------------------------------
793
923
  connectedCallback() {
794
- if (this.hourDisplayFormat === "12") {
795
- this.meridiem = getMeridiem(this.hour);
796
- }
797
- if (number.isValidNumber(this.hour)) {
798
- this.hour = formatTimePart(parseInt(this.hour));
799
- }
800
- if (number.isValidNumber(this.minute)) {
801
- this.minute = formatTimePart(parseInt(this.minute));
802
- }
803
- if (number.isValidNumber(this.second)) {
804
- this.second = formatTimePart(parseInt(this.second));
805
- }
924
+ this.setValue(this.value, false);
925
+ this.hourCycle = getLocaleHourCycle(this.locale);
806
926
  }
807
927
  // --------------------------------------------------------------------------
808
928
  //
@@ -810,58 +930,63 @@ let CalciteTimePicker = class {
810
930
  //
811
931
  // --------------------------------------------------------------------------
812
932
  render() {
813
- const iconScale = this.scale === "s" || this.scale === "m" ? "s" : "m";
814
- const includeSeconds = this.step !== 60;
815
933
  const hourIsNumber = number.isValidNumber(this.hour);
934
+ const iconScale = this.scale === "s" || this.scale === "m" ? "s" : "m";
816
935
  const minuteIsNumber = number.isValidNumber(this.minute);
817
936
  const secondIsNumber = number.isValidNumber(this.second);
818
- return (index.h(index.Host, null, index.h("div", { class: CSS.timePicker }, index.h("div", { role: "group" }, index.h("span", { "aria-label": this.intlHourUp, class: {
937
+ const showMeridiem = this.hourCycle === "12";
938
+ return (index.h("div", { class: {
939
+ [CSS.timePicker]: true,
940
+ [CSS.showMeridiem]: showMeridiem,
941
+ [CSS.showSecond]: this.showSecond,
942
+ [CSS[`scale-${this.scale}`]]: true
943
+ } }, index.h("div", { class: CSS.column, role: "group" }, index.h("span", { "aria-label": this.intlHourUp, class: {
819
944
  [CSS.button]: true,
820
945
  [CSS.buttonHourUp]: true,
821
946
  [CSS.buttonTopLeft]: true
822
- }, onClick: this.incrementHour, onKeyDown: this.hourUpButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-up", scale: iconScale })), index.h("span", { "aria-label": this.intlHour, "aria-valuemax": "23", "aria-valuemin": "1", "aria-valuenow": hourIsNumber && parseInt(this.hour), "aria-valuetext": this.hour, class: {
947
+ }, onClick: this.incrementHour, onKeyDown: this.hourUpButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-up", scale: iconScale })), index.h("span", { "aria-label": this.intlHour, "aria-valuemax": "23", "aria-valuemin": "1", "aria-valuenow": (hourIsNumber && parseInt(this.hour)) || "0", "aria-valuetext": this.hour, class: {
823
948
  [CSS.input]: true,
824
949
  [CSS.hour]: true
825
- }, onFocus: this.focusHandler, onKeyDown: this.hourKeyDownHandler, ref: (el) => (this.hourEl = el), role: "spinbutton", tabIndex: 0 }, this.getDisplayHour()), index.h("span", { "aria-label": this.intlHourDown, class: {
950
+ }, onFocus: this.focusHandler, onKeyDown: this.hourKeyDownHandler, ref: this.setHourEl, role: "spinbutton", tabIndex: 0 }, this.localizedHour || "--"), index.h("span", { "aria-label": this.intlHourDown, class: {
826
951
  [CSS.button]: true,
827
952
  [CSS.buttonHourDown]: true,
828
953
  [CSS.buttonBottomLeft]: true
829
- }, onClick: this.decrementHour, onKeyDown: this.hourDownButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-down", scale: iconScale }))), index.h("span", { class: CSS.delimiter }, ":"), index.h("div", { role: "group" }, index.h("span", { "aria-label": this.intlMinuteUp, class: {
954
+ }, onClick: this.decrementHour, onKeyDown: this.hourDownButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-down", scale: iconScale }))), index.h("span", { class: CSS.delimiter }, this.localizedHourSuffix), index.h("div", { class: CSS.column, role: "group" }, index.h("span", { "aria-label": this.intlMinuteUp, class: {
830
955
  [CSS.button]: true,
831
956
  [CSS.buttonMinuteUp]: true
832
- }, onClick: this.incrementMinute, onKeyDown: this.minuteUpButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-up", scale: iconScale })), index.h("span", { "aria-label": this.intlMinute, "aria-valuemax": "12", "aria-valuemin": "1", "aria-valuenow": minuteIsNumber && parseInt(this.minute), "aria-valuetext": this.minute, class: {
957
+ }, onClick: this.incrementMinute, onKeyDown: this.minuteUpButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-up", scale: iconScale })), index.h("span", { "aria-label": this.intlMinute, "aria-valuemax": "12", "aria-valuemin": "1", "aria-valuenow": (minuteIsNumber && parseInt(this.minute)) || "0", "aria-valuetext": this.minute, class: {
833
958
  [CSS.input]: true,
834
959
  [CSS.minute]: true
835
- }, onFocus: this.focusHandler, onKeyDown: this.minuteKeyDownHandler, ref: (el) => (this.minuteEl = el), role: "spinbutton", tabIndex: 0 }, this.minute ? this.minute : "--"), index.h("span", { "aria-label": this.intlMinuteDown, class: {
960
+ }, onFocus: this.focusHandler, onKeyDown: this.minuteKeyDownHandler, ref: this.setMinuteEl, role: "spinbutton", tabIndex: 0 }, this.localizedMinute || "--"), index.h("span", { "aria-label": this.intlMinuteDown, class: {
836
961
  [CSS.button]: true,
837
962
  [CSS.buttonMinuteDown]: true
838
- }, onClick: this.decrementMinute, onKeyDown: this.minuteDownButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-down", scale: iconScale }))), includeSeconds && index.h("span", { class: CSS.delimiter }, ":"), includeSeconds && (index.h("div", { role: "group" }, index.h("span", { "aria-label": this.intlSecondUp, class: {
963
+ }, onClick: this.decrementMinute, onKeyDown: this.minuteDownButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-down", scale: iconScale }))), this.showSecond && index.h("span", { class: CSS.delimiter }, this.localizedMinuteSuffix), this.showSecond && (index.h("div", { class: CSS.column, role: "group" }, index.h("span", { "aria-label": this.intlSecondUp, class: {
839
964
  [CSS.button]: true,
840
965
  [CSS.buttonSecondUp]: true
841
- }, onClick: this.incrementSecond, onKeyDown: this.secondUpButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-up", scale: iconScale })), index.h("span", { "aria-label": this.intlSecond, "aria-valuemax": "59", "aria-valuemin": "0", "aria-valuenow": secondIsNumber && parseInt(this.second), "aria-valuetext": this.second, class: {
966
+ }, onClick: this.incrementSecond, onKeyDown: this.secondUpButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-up", scale: iconScale })), index.h("span", { "aria-label": this.intlSecond, "aria-valuemax": "59", "aria-valuemin": "0", "aria-valuenow": (secondIsNumber && parseInt(this.second)) || "0", "aria-valuetext": this.second, class: {
842
967
  [CSS.input]: true,
843
968
  [CSS.second]: true
844
- }, onFocus: this.focusHandler, onKeyDown: this.secondKeyDownHandler, ref: (el) => (this.secondEl = el), role: "spinbutton", tabIndex: 0 }, this.second ? this.second : "--"), index.h("span", { "aria-label": this.intlSecondDown, class: {
969
+ }, onFocus: this.focusHandler, onKeyDown: this.secondKeyDownHandler, ref: this.setSecondEl, role: "spinbutton", tabIndex: 0 }, this.localizedSecond || "--"), index.h("span", { "aria-label": this.intlSecondDown, class: {
845
970
  [CSS.button]: true,
846
971
  [CSS.buttonSecondDown]: true
847
- }, onClick: this.decrementSecond, onKeyDown: this.secondDownButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-down", scale: iconScale })))), this.hourDisplayFormat === "12" && (index.h("div", { role: "group" }, index.h("span", { "aria-label": this.intlMeridiemUp, class: {
972
+ }, onClick: this.decrementSecond, onKeyDown: this.secondDownButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-down", scale: iconScale })))), this.localizedSecondSuffix && (index.h("span", { class: CSS.delimiter }, this.localizedSecondSuffix)), showMeridiem && (index.h("div", { class: CSS.column, role: "group" }, index.h("span", { "aria-label": this.intlMeridiemUp, class: {
848
973
  [CSS.button]: true,
849
974
  [CSS.buttonMeridiemUp]: true,
850
975
  [CSS.buttonTopRight]: true
851
- }, onClick: this.incrementMeridiem, onKeyDown: this.meridiemUpButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-up", scale: iconScale })), index.h("span", { "aria-label": this.intlMeridiem, "aria-valuemax": "2", "aria-valuemin": "1", "aria-valuenow": this.meridiem === "AM" ? "1" : this.meridiem === "PM" ? "2" : undefined, "aria-valuetext": this.meridiem, class: {
976
+ }, onClick: this.incrementMeridiem, onKeyDown: this.meridiemUpButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-up", scale: iconScale })), index.h("span", { "aria-label": this.intlMeridiem, "aria-valuemax": "2", "aria-valuemin": "1", "aria-valuenow": (this.meridiem === "PM" && "2") || "1", "aria-valuetext": this.meridiem, class: {
852
977
  [CSS.input]: true,
853
978
  [CSS.meridiem]: true
854
- }, onFocus: this.focusHandler, onKeyDown: this.meridiemKeyDownHandler, ref: (el) => (this.meridiemEl = el), role: "spinbutton", tabIndex: 0 }, this.meridiem ? this.meridiem : "--"), index.h("span", { "aria-label": this.intlMeridiemDown, class: {
979
+ }, onFocus: this.focusHandler, onKeyDown: this.meridiemKeyDownHandler, ref: this.setMeridiemEl, role: "spinbutton", tabIndex: 0 }, this.localizedMeridiem || "--"), index.h("span", { "aria-label": this.intlMeridiemDown, class: {
855
980
  [CSS.button]: true,
856
981
  [CSS.buttonMeridiemDown]: true,
857
982
  [CSS.buttonBottomRight]: true
858
- }, onClick: this.decrementMeridiem, onKeyDown: this.meridiemDownButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-down", scale: iconScale })))))));
983
+ }, onClick: this.decrementMeridiem, onKeyDown: this.meridiemDownButtonKeyDownHandler, role: "button", tabIndex: -1 }, index.h("calcite-icon", { icon: "chevron-down", scale: iconScale }))))));
859
984
  }
860
985
  get el() { return index.getElement(this); }
861
986
  static get watchers() { return {
862
- "hour": ["hourChanged", "timeChangeHandler"],
863
- "minute": ["timeChangeHandler"],
864
- "second": ["timeChangeHandler"]
987
+ "locale": ["localeWatcher"],
988
+ "value": ["valueWatcher"],
989
+ "hour": ["hourChanged"]
865
990
  }; }
866
991
  };
867
992
  CalciteTimePicker.style = calciteTimePickerCss;