@esri/calcite-components 1.0.0-next.412 → 1.0.0-next.415

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 (492) hide show
  1. package/dist/calcite/assets/icon/clockForward16.json +1 -0
  2. package/dist/calcite/assets/icon/clockForward24.json +1 -0
  3. package/dist/calcite/assets/icon/clockForward32.json +1 -0
  4. package/dist/calcite/assets/icon/contingentValues16.json +1 -0
  5. package/dist/calcite/assets/icon/contingentValues24.json +1 -0
  6. package/dist/calcite/assets/icon/contingentValues32.json +1 -0
  7. package/dist/calcite/assets/icon/creditCard16.json +1 -0
  8. package/dist/calcite/assets/icon/creditCard24.json +1 -0
  9. package/dist/calcite/assets/icon/creditCard32.json +1 -0
  10. package/dist/calcite/assets/icon/credits16.json +1 -1
  11. package/dist/calcite/assets/icon/credits24.json +1 -1
  12. package/dist/calcite/assets/icon/credits32.json +1 -1
  13. package/dist/calcite/assets/icon/keyboard16.json +1 -0
  14. package/dist/calcite/assets/icon/keyboard24.json +1 -0
  15. package/dist/calcite/assets/icon/keyboard32.json +1 -0
  16. package/dist/calcite/assets/icon/premiumContentUserCredit24.json +1 -1
  17. package/dist/calcite/assets/icon/premiumContentUserCredit32.json +1 -1
  18. package/dist/calcite/assets/icon/select16.json +1 -1
  19. package/dist/calcite/assets/icon/select24.json +1 -1
  20. package/dist/calcite/assets/icon/select32.json +1 -1
  21. package/dist/calcite/assets/icon/userDown16.json +1 -0
  22. package/dist/calcite/assets/icon/userDown24.json +1 -0
  23. package/dist/calcite/assets/icon/userDown32.json +1 -0
  24. package/dist/calcite/assets/icon/userKey16.json +1 -0
  25. package/dist/calcite/assets/icon/userKey24.json +1 -0
  26. package/dist/calcite/assets/icon/userKey32.json +1 -0
  27. package/dist/calcite/assets/icon/userMinus16.json +1 -0
  28. package/dist/calcite/assets/icon/userMinus24.json +1 -0
  29. package/dist/calcite/assets/icon/userMinus32.json +1 -0
  30. package/dist/calcite/assets/icon/userUp16.json +1 -0
  31. package/dist/calcite/assets/icon/userUp24.json +1 -0
  32. package/dist/calcite/assets/icon/userUp32.json +1 -0
  33. package/dist/calcite/assets/icon/userX16.json +1 -0
  34. package/dist/calcite/assets/icon/userX24.json +1 -0
  35. package/dist/calcite/assets/icon/userX32.json +1 -0
  36. package/dist/calcite/assets/icon/utilityNetworkTrace16.json +1 -0
  37. package/dist/calcite/assets/icon/utilityNetworkTrace24.json +1 -0
  38. package/dist/calcite/assets/icon/utilityNetworkTrace32.json +1 -0
  39. package/dist/calcite/calcite.esm.js +1 -1
  40. package/dist/calcite/p-00009c01.system.entry.js +5 -0
  41. package/dist/calcite/p-01f877b3.entry.js +5 -0
  42. package/dist/calcite/p-04708565.system.entry.js +5 -0
  43. package/dist/calcite/p-04859cc3.entry.js +5 -0
  44. package/dist/calcite/p-0a565a2a.entry.js +5 -0
  45. package/dist/calcite/p-18d1b401.system.entry.js +5 -0
  46. package/dist/calcite/p-18ea4373.system.js +5 -0
  47. package/dist/calcite/p-190e3d04.entry.js +5 -0
  48. package/dist/calcite/p-1984c1b1.system.entry.js +5 -0
  49. package/dist/calcite/p-1ff6776b.entry.js +5 -0
  50. package/dist/calcite/p-22cef177.entry.js +5 -0
  51. package/dist/calcite/p-24e1de98.entry.js +5 -0
  52. package/dist/calcite/p-2f20293c.system.entry.js +5 -0
  53. package/dist/calcite/p-2fcab9f8.entry.js +5 -0
  54. package/dist/calcite/p-3119ffce.system.js +5 -0
  55. package/dist/calcite/p-31c3b490.system.entry.js +5 -0
  56. package/dist/calcite/p-38b1f6b5.entry.js +5 -0
  57. package/dist/calcite/p-42d258d4.system.entry.js +5 -0
  58. package/dist/calcite/p-4392cf25.system.entry.js +5 -0
  59. package/dist/calcite/p-44032496.system.entry.js +5 -0
  60. package/dist/calcite/p-45dce037.system.entry.js +5 -0
  61. package/dist/calcite/p-467318a0.system.entry.js +5 -0
  62. package/dist/calcite/p-46741fa4.entry.js +5 -0
  63. package/dist/calcite/p-46c177ec.system.entry.js +5 -0
  64. package/dist/calcite/p-4a3a1b46.entry.js +5 -0
  65. package/dist/calcite/p-5653a345.entry.js +5 -0
  66. package/dist/calcite/p-58274475.system.entry.js +5 -0
  67. package/dist/calcite/p-5be670bf.system.entry.js +5 -0
  68. package/dist/calcite/p-5c237680.entry.js +5 -0
  69. package/dist/calcite/p-5d1c8466.entry.js +5 -0
  70. package/dist/calcite/p-614d8925.js +5 -0
  71. package/dist/calcite/p-66a7bd24.system.entry.js +5 -0
  72. package/dist/calcite/p-7375cf4f.system.entry.js +5 -0
  73. package/dist/calcite/p-78bb06e5.system.entry.js +5 -0
  74. package/dist/calcite/p-7ab80118.entry.js +5 -0
  75. package/dist/calcite/p-807e32d8.entry.js +5 -0
  76. package/dist/calcite/p-88f949f4.entry.js +5 -0
  77. package/dist/calcite/p-8afbcf9e.entry.js +5 -0
  78. package/dist/calcite/p-8bb762f9.system.entry.js +5 -0
  79. package/dist/calcite/p-8dbb756d.entry.js +5 -0
  80. package/dist/calcite/p-8e198935.entry.js +5 -0
  81. package/dist/calcite/p-8f93be14.system.js +1 -1
  82. package/dist/calcite/p-9127d01c.entry.js +5 -0
  83. package/dist/calcite/p-93d9d3e7.entry.js +5 -0
  84. package/dist/calcite/p-98962bd9.entry.js +5 -0
  85. package/dist/calcite/p-9a69d12a.system.entry.js +5 -0
  86. package/dist/calcite/p-9b514f77.entry.js +5 -0
  87. package/dist/calcite/p-9e56f30f.system.entry.js +5 -0
  88. package/dist/calcite/p-a400f6dc.system.entry.js +5 -0
  89. package/dist/calcite/p-a72718b5.system.entry.js +5 -0
  90. package/dist/calcite/p-b5afe88b.system.entry.js +5 -0
  91. package/dist/calcite/p-b84e5b34.entry.js +5 -0
  92. package/dist/calcite/p-bce112c4.system.entry.js +5 -0
  93. package/dist/calcite/p-bd38ff21.js +5 -0
  94. package/dist/calcite/p-c5086019.system.entry.js +5 -0
  95. package/dist/calcite/p-c7f36800.system.entry.js +5 -0
  96. package/dist/calcite/p-c82c4418.entry.js +5 -0
  97. package/dist/calcite/p-c908ce40.system.entry.js +5 -0
  98. package/dist/calcite/p-cfb7be80.system.entry.js +5 -0
  99. package/dist/calcite/p-d74ca1cf.system.entry.js +5 -0
  100. package/dist/calcite/p-d74e933c.entry.js +5 -0
  101. package/dist/calcite/p-daf5f04c.system.js +5 -0
  102. package/dist/calcite/p-db73225f.system.entry.js +5 -0
  103. package/dist/calcite/p-e01879bf.js +5 -0
  104. package/dist/calcite/p-e33d149d.system.entry.js +5 -0
  105. package/dist/calcite/p-e8f17533.entry.js +5 -0
  106. package/dist/calcite/p-ea32a5ac.system.entry.js +5 -0
  107. package/dist/calcite/p-eaf79f20.entry.js +5 -0
  108. package/dist/calcite/p-f2433871.entry.js +5 -0
  109. package/dist/calcite/p-f71b551d.entry.js +5 -0
  110. package/dist/calcite/p-fa078a42.entry.js +5 -0
  111. package/dist/cjs/calcite-action.cjs.entry.js +5 -1
  112. package/dist/cjs/calcite-block_2.cjs.entry.js +14 -5
  113. package/dist/cjs/calcite-button.cjs.entry.js +6 -2
  114. package/dist/cjs/calcite-checkbox.cjs.entry.js +6 -2
  115. package/dist/cjs/calcite-color-picker_3.cjs.entry.js +15 -2
  116. package/dist/cjs/calcite-combobox_3.cjs.entry.js +18 -3
  117. package/dist/cjs/calcite-date-picker_4.cjs.entry.js +9 -2
  118. package/dist/cjs/calcite-dropdown_3.cjs.entry.js +22 -6
  119. package/dist/cjs/calcite-fab.cjs.entry.js +10 -1
  120. package/dist/cjs/calcite-filter.cjs.entry.js +36 -3
  121. package/dist/cjs/calcite-graph_2.cjs.entry.js +4 -2
  122. package/dist/cjs/calcite-inline-editable.cjs.entry.js +11 -9
  123. package/dist/cjs/calcite-input-date-picker.cjs.entry.js +21 -4
  124. package/dist/cjs/calcite-input-time-picker_2.cjs.entry.js +19 -3
  125. package/dist/cjs/calcite-input.cjs.entry.js +6 -2
  126. package/dist/cjs/calcite-label.cjs.entry.js +15 -2
  127. package/dist/cjs/calcite-link.cjs.entry.js +6 -2
  128. package/dist/cjs/calcite-list_3.cjs.entry.js +28 -2
  129. package/dist/cjs/calcite-option_3.cjs.entry.js +6 -2
  130. package/dist/cjs/calcite-panel.cjs.entry.js +12 -3
  131. package/dist/cjs/calcite-pick-list_3.cjs.entry.js +10 -6
  132. package/dist/cjs/calcite-radio-button.cjs.entry.js +6 -2
  133. package/dist/cjs/calcite-radio-group_2.cjs.entry.js +7 -3
  134. package/dist/cjs/calcite-rating.cjs.entry.js +11 -5
  135. package/dist/cjs/calcite-sortable-list.cjs.entry.js +5 -1
  136. package/dist/cjs/calcite-split-button.cjs.entry.js +25 -2
  137. package/dist/cjs/calcite-stepper_2.cjs.entry.js +6 -2
  138. package/dist/cjs/calcite-switch.cjs.entry.js +6 -9
  139. package/dist/cjs/calcite-tab_4.cjs.entry.js +6 -3
  140. package/dist/cjs/calcite-tile-select_2.cjs.entry.js +17 -2
  141. package/dist/cjs/calcite-tile.cjs.entry.js +5 -1
  142. package/dist/cjs/calcite-value-list_2.cjs.entry.js +12 -7
  143. package/dist/cjs/calcite.cjs.js +1 -1
  144. package/dist/cjs/interactive-87406231.js +44 -0
  145. package/dist/cjs/{label-6b18ca08.js → label-980508de.js} +40 -6
  146. package/dist/cjs/loader.cjs.js +1 -1
  147. package/dist/cjs/{resources-415f797b.js → resources-65327c4a.js} +33 -8
  148. package/dist/collection/components/action/action.css +9 -0
  149. package/dist/collection/components/action/action.js +4 -0
  150. package/dist/collection/components/block/block.css +13 -9
  151. package/dist/collection/components/block/block.js +13 -4
  152. package/dist/collection/components/button/button.css +15 -2
  153. package/dist/collection/components/button/button.js +4 -0
  154. package/dist/collection/components/checkbox/checkbox.css +7 -0
  155. package/dist/collection/components/checkbox/checkbox.js +4 -0
  156. package/dist/collection/components/color-picker/color-picker.css +13 -0
  157. package/dist/collection/components/color-picker/color-picker.js +32 -1
  158. package/dist/collection/components/combobox/combobox.css +7 -1
  159. package/dist/collection/components/combobox/combobox.js +14 -0
  160. package/dist/collection/components/combobox-item/combobox-item.css +13 -0
  161. package/dist/collection/components/combobox-item/combobox-item.js +4 -0
  162. package/dist/collection/components/date-picker-day/date-picker-day.css +13 -5
  163. package/dist/collection/components/date-picker-day/date-picker-day.js +8 -1
  164. package/dist/collection/components/dropdown/dropdown.css +8 -0
  165. package/dist/collection/components/dropdown/dropdown.js +23 -5
  166. package/dist/collection/components/fab/fab.css +13 -0
  167. package/dist/collection/components/fab/fab.js +9 -0
  168. package/dist/collection/components/filter/filter.css +13 -0
  169. package/dist/collection/components/filter/filter.js +41 -7
  170. package/dist/collection/components/icon/assets/icon/clockForward16.json +1 -0
  171. package/dist/collection/components/icon/assets/icon/clockForward24.json +1 -0
  172. package/dist/collection/components/icon/assets/icon/clockForward32.json +1 -0
  173. package/dist/collection/components/icon/assets/icon/contingentValues16.json +1 -0
  174. package/dist/collection/components/icon/assets/icon/contingentValues24.json +1 -0
  175. package/dist/collection/components/icon/assets/icon/contingentValues32.json +1 -0
  176. package/dist/collection/components/icon/assets/icon/creditCard16.json +1 -0
  177. package/dist/collection/components/icon/assets/icon/creditCard24.json +1 -0
  178. package/dist/collection/components/icon/assets/icon/creditCard32.json +1 -0
  179. package/dist/collection/components/icon/assets/icon/credits16.json +1 -1
  180. package/dist/collection/components/icon/assets/icon/credits24.json +1 -1
  181. package/dist/collection/components/icon/assets/icon/credits32.json +1 -1
  182. package/dist/collection/components/icon/assets/icon/keyboard16.json +1 -0
  183. package/dist/collection/components/icon/assets/icon/keyboard24.json +1 -0
  184. package/dist/collection/components/icon/assets/icon/keyboard32.json +1 -0
  185. package/dist/collection/components/icon/assets/icon/premiumContentUserCredit24.json +1 -1
  186. package/dist/collection/components/icon/assets/icon/premiumContentUserCredit32.json +1 -1
  187. package/dist/collection/components/icon/assets/icon/select16.json +1 -1
  188. package/dist/collection/components/icon/assets/icon/select24.json +1 -1
  189. package/dist/collection/components/icon/assets/icon/select32.json +1 -1
  190. package/dist/collection/components/icon/assets/icon/userDown16.json +1 -0
  191. package/dist/collection/components/icon/assets/icon/userDown24.json +1 -0
  192. package/dist/collection/components/icon/assets/icon/userDown32.json +1 -0
  193. package/dist/collection/components/icon/assets/icon/userKey16.json +1 -0
  194. package/dist/collection/components/icon/assets/icon/userKey24.json +1 -0
  195. package/dist/collection/components/icon/assets/icon/userKey32.json +1 -0
  196. package/dist/collection/components/icon/assets/icon/userMinus16.json +1 -0
  197. package/dist/collection/components/icon/assets/icon/userMinus24.json +1 -0
  198. package/dist/collection/components/icon/assets/icon/userMinus32.json +1 -0
  199. package/dist/collection/components/icon/assets/icon/userUp16.json +1 -0
  200. package/dist/collection/components/icon/assets/icon/userUp24.json +1 -0
  201. package/dist/collection/components/icon/assets/icon/userUp32.json +1 -0
  202. package/dist/collection/components/icon/assets/icon/userX16.json +1 -0
  203. package/dist/collection/components/icon/assets/icon/userX24.json +1 -0
  204. package/dist/collection/components/icon/assets/icon/userX32.json +1 -0
  205. package/dist/collection/components/icon/assets/icon/utilityNetworkTrace16.json +1 -0
  206. package/dist/collection/components/icon/assets/icon/utilityNetworkTrace24.json +1 -0
  207. package/dist/collection/components/icon/assets/icon/utilityNetworkTrace32.json +1 -0
  208. package/dist/collection/components/inline-editable/inline-editable.css +12 -0
  209. package/dist/collection/components/inline-editable/inline-editable.js +9 -7
  210. package/dist/collection/components/input/input.css +8 -7
  211. package/dist/collection/components/input/input.js +4 -0
  212. package/dist/collection/components/input-date-picker/input-date-picker.css +64 -27
  213. package/dist/collection/components/input-date-picker/input-date-picker.js +21 -2
  214. package/dist/collection/components/input-time-picker/input-time-picker.css +13 -0
  215. package/dist/collection/components/input-time-picker/input-time-picker.js +21 -1
  216. package/dist/collection/components/label/label.css +12 -0
  217. package/dist/collection/components/label/label.js +16 -2
  218. package/dist/collection/components/link/link.css +13 -8
  219. package/dist/collection/components/link/link.js +5 -1
  220. package/dist/collection/components/list/list.css +13 -0
  221. package/dist/collection/components/list/list.js +38 -0
  222. package/dist/collection/components/list-item/list-item.css +8 -0
  223. package/dist/collection/components/list-item/list-item.js +9 -0
  224. package/dist/collection/components/panel/panel.css +13 -0
  225. package/dist/collection/components/panel/panel.js +11 -2
  226. package/dist/collection/components/pick-list/pick-list.css +13 -0
  227. package/dist/collection/components/pick-list/pick-list.js +4 -0
  228. package/dist/collection/components/pick-list/shared-list-logic.js +30 -6
  229. package/dist/collection/components/pick-list/shared-list-render.js +2 -2
  230. package/dist/collection/components/pick-list-item/pick-list-item.css +13 -0
  231. package/dist/collection/components/pick-list-item/pick-list-item.js +5 -4
  232. package/dist/collection/components/radio-button/radio-button.css +10 -1
  233. package/dist/collection/components/radio-button/radio-button.js +4 -0
  234. package/dist/collection/components/radio-group/radio-group.css +13 -5
  235. package/dist/collection/components/radio-group/radio-group.js +5 -1
  236. package/dist/collection/components/rating/rating.css +13 -5
  237. package/dist/collection/components/rating/rating.js +9 -3
  238. package/dist/collection/components/select/select.css +13 -7
  239. package/dist/collection/components/select/select.js +4 -0
  240. package/dist/collection/components/slider/slider.css +8 -0
  241. package/dist/collection/components/slider/slider.js +2 -0
  242. package/dist/collection/components/sortable-list/sortable-list.css +13 -0
  243. package/dist/collection/components/sortable-list/sortable-list.js +4 -0
  244. package/dist/collection/components/split-button/split-button.css +12 -0
  245. package/dist/collection/components/split-button/split-button.js +29 -3
  246. package/dist/collection/components/stepper-item/stepper-item.css +8 -4
  247. package/dist/collection/components/stepper-item/stepper-item.js +6 -2
  248. package/dist/collection/components/switch/switch.css +7 -0
  249. package/dist/collection/components/switch/switch.js +5 -13
  250. package/dist/collection/components/tab-title/tab-title.css +9 -0
  251. package/dist/collection/components/tab-title/tab-title.js +6 -3
  252. package/dist/collection/components/tile/tile.css +17 -1
  253. package/dist/collection/components/tile/tile.js +4 -0
  254. package/dist/collection/components/tile-select/tile-select.css +9 -1
  255. package/dist/collection/components/tile-select/tile-select.js +4 -0
  256. package/dist/collection/components/tile-select-group/tile-select-group.css +13 -0
  257. package/dist/collection/components/tile-select-group/tile-select-group.js +31 -1
  258. package/dist/collection/components/value-list/value-list.css +13 -0
  259. package/dist/collection/components/value-list/value-list.js +6 -5
  260. package/dist/collection/components/value-list-item/value-list-item.css +13 -0
  261. package/dist/collection/components/value-list-item/value-list-item.js +5 -1
  262. package/dist/collection/utils/interactive.js +42 -0
  263. package/dist/collection/utils/label.js +38 -6
  264. package/dist/components/action.js +5 -1
  265. package/dist/components/button.js +5 -1
  266. package/dist/components/calcite-block.js +14 -5
  267. package/dist/components/calcite-color-picker.js +16 -2
  268. package/dist/components/calcite-combobox-item.js +5 -1
  269. package/dist/components/calcite-combobox.js +13 -1
  270. package/dist/components/calcite-fab.js +10 -1
  271. package/dist/components/calcite-inline-editable.js +10 -8
  272. package/dist/components/calcite-input-date-picker.js +20 -3
  273. package/dist/components/calcite-input-time-picker.js +18 -2
  274. package/dist/components/calcite-list-item.js +10 -1
  275. package/dist/components/calcite-list.js +20 -1
  276. package/dist/components/calcite-panel.js +12 -3
  277. package/dist/components/calcite-pick-list.js +5 -1
  278. package/dist/components/calcite-radio-button.js +5 -1
  279. package/dist/components/calcite-radio-group.js +6 -2
  280. package/dist/components/calcite-rating.js +10 -4
  281. package/dist/components/calcite-select.js +5 -1
  282. package/dist/components/calcite-slider.js +3 -1
  283. package/dist/components/calcite-sortable-list.js +5 -1
  284. package/dist/components/calcite-split-button.js +26 -3
  285. package/dist/components/calcite-stepper-item.js +7 -3
  286. package/dist/components/calcite-tile-select-group.js +14 -1
  287. package/dist/components/calcite-tile-select.js +5 -1
  288. package/dist/components/calcite-value-list-item.js +5 -1
  289. package/dist/components/calcite-value-list.js +7 -6
  290. package/dist/components/checkbox.js +5 -1
  291. package/dist/components/date-picker-day.js +9 -2
  292. package/dist/components/dropdown.js +22 -6
  293. package/dist/components/filter.js +42 -21
  294. package/dist/components/input.js +5 -1
  295. package/dist/components/interactive.js +42 -0
  296. package/dist/components/label.js +39 -7
  297. package/dist/components/label2.js +13 -2
  298. package/dist/components/link.js +6 -2
  299. package/dist/components/pick-list-item.js +5 -4
  300. package/dist/components/shared-list-render.js +33 -9
  301. package/dist/components/switch.js +5 -9
  302. package/dist/components/tab-title.js +6 -3
  303. package/dist/components/tile.js +5 -1
  304. package/dist/custom-elements/index.js +448 -105
  305. package/dist/esm/calcite-action.entry.js +5 -1
  306. package/dist/esm/calcite-block_2.entry.js +14 -5
  307. package/dist/esm/calcite-button.entry.js +6 -2
  308. package/dist/esm/calcite-checkbox.entry.js +6 -2
  309. package/dist/esm/calcite-color-picker_3.entry.js +15 -2
  310. package/dist/esm/calcite-combobox_3.entry.js +18 -3
  311. package/dist/esm/calcite-date-picker_4.entry.js +9 -2
  312. package/dist/esm/calcite-dropdown_3.entry.js +22 -6
  313. package/dist/esm/calcite-fab.entry.js +10 -1
  314. package/dist/esm/calcite-filter.entry.js +36 -3
  315. package/dist/esm/calcite-graph_2.entry.js +4 -2
  316. package/dist/esm/calcite-inline-editable.entry.js +11 -9
  317. package/dist/esm/calcite-input-date-picker.entry.js +21 -4
  318. package/dist/esm/calcite-input-time-picker_2.entry.js +19 -3
  319. package/dist/esm/calcite-input.entry.js +6 -2
  320. package/dist/esm/calcite-label.entry.js +15 -2
  321. package/dist/esm/calcite-link.entry.js +6 -2
  322. package/dist/esm/calcite-list_3.entry.js +28 -2
  323. package/dist/esm/calcite-option_3.entry.js +6 -2
  324. package/dist/esm/calcite-panel.entry.js +12 -3
  325. package/dist/esm/calcite-pick-list_3.entry.js +10 -6
  326. package/dist/esm/calcite-radio-button.entry.js +6 -2
  327. package/dist/esm/calcite-radio-group_2.entry.js +7 -3
  328. package/dist/esm/calcite-rating.entry.js +11 -5
  329. package/dist/esm/calcite-sortable-list.entry.js +5 -1
  330. package/dist/esm/calcite-split-button.entry.js +25 -2
  331. package/dist/esm/calcite-stepper_2.entry.js +6 -2
  332. package/dist/esm/calcite-switch.entry.js +6 -9
  333. package/dist/esm/calcite-tab_4.entry.js +6 -3
  334. package/dist/esm/calcite-tile-select_2.entry.js +17 -2
  335. package/dist/esm/calcite-tile.entry.js +5 -1
  336. package/dist/esm/calcite-value-list_2.entry.js +12 -7
  337. package/dist/esm/calcite.js +1 -1
  338. package/dist/esm/interactive-48b5cc0f.js +42 -0
  339. package/dist/esm/{label-2bffc9f4.js → label-68f22660.js} +39 -7
  340. package/dist/esm/loader.js +1 -1
  341. package/dist/esm/{resources-999109fa.js → resources-77c12cea.js} +33 -9
  342. package/dist/esm-es5/calcite-action.entry.js +1 -1
  343. package/dist/esm-es5/calcite-block_2.entry.js +1 -1
  344. package/dist/esm-es5/calcite-button.entry.js +1 -1
  345. package/dist/esm-es5/calcite-checkbox.entry.js +1 -1
  346. package/dist/esm-es5/calcite-color-picker_3.entry.js +1 -1
  347. package/dist/esm-es5/calcite-combobox_3.entry.js +1 -1
  348. package/dist/esm-es5/calcite-date-picker_4.entry.js +1 -1
  349. package/dist/esm-es5/calcite-dropdown_3.entry.js +1 -1
  350. package/dist/esm-es5/calcite-fab.entry.js +2 -2
  351. package/dist/esm-es5/calcite-filter.entry.js +1 -1
  352. package/dist/esm-es5/calcite-graph_2.entry.js +1 -1
  353. package/dist/esm-es5/calcite-inline-editable.entry.js +1 -1
  354. package/dist/esm-es5/calcite-input-date-picker.entry.js +1 -1
  355. package/dist/esm-es5/calcite-input-time-picker_2.entry.js +2 -2
  356. package/dist/esm-es5/calcite-input.entry.js +1 -1
  357. package/dist/esm-es5/calcite-label.entry.js +1 -1
  358. package/dist/esm-es5/calcite-link.entry.js +2 -2
  359. package/dist/esm-es5/calcite-list_3.entry.js +2 -2
  360. package/dist/esm-es5/calcite-option_3.entry.js +2 -2
  361. package/dist/esm-es5/calcite-panel.entry.js +2 -2
  362. package/dist/esm-es5/calcite-pick-list_3.entry.js +2 -2
  363. package/dist/esm-es5/calcite-radio-button.entry.js +1 -1
  364. package/dist/esm-es5/calcite-radio-group_2.entry.js +1 -1
  365. package/dist/esm-es5/calcite-rating.entry.js +2 -2
  366. package/dist/esm-es5/calcite-sortable-list.entry.js +1 -1
  367. package/dist/esm-es5/calcite-split-button.entry.js +1 -1
  368. package/dist/esm-es5/calcite-stepper_2.entry.js +1 -1
  369. package/dist/esm-es5/calcite-switch.entry.js +1 -1
  370. package/dist/esm-es5/calcite-tab_4.entry.js +2 -2
  371. package/dist/esm-es5/calcite-tile-select_2.entry.js +2 -2
  372. package/dist/esm-es5/calcite-tile.entry.js +1 -1
  373. package/dist/esm-es5/calcite-value-list_2.entry.js +1 -1
  374. package/dist/esm-es5/calcite.js +1 -1
  375. package/dist/esm-es5/interactive-48b5cc0f.js +5 -0
  376. package/dist/esm-es5/label-68f22660.js +5 -0
  377. package/dist/esm-es5/loader.js +1 -1
  378. package/dist/esm-es5/resources-77c12cea.js +5 -0
  379. package/dist/extras/docs-json.json +72 -24
  380. package/dist/types/components/action/action.d.ts +3 -1
  381. package/dist/types/components/block/block.d.ts +3 -1
  382. package/dist/types/components/button/button.d.ts +3 -1
  383. package/dist/types/components/checkbox/checkbox.d.ts +3 -1
  384. package/dist/types/components/color-picker/color-picker.d.ts +9 -1
  385. package/dist/types/components/combobox/combobox.d.ts +3 -1
  386. package/dist/types/components/combobox-item/combobox-item.d.ts +3 -1
  387. package/dist/types/components/date-picker-day/date-picker-day.d.ts +4 -1
  388. package/dist/types/components/dropdown/dropdown.d.ts +4 -1
  389. package/dist/types/components/fab/fab.d.ts +3 -1
  390. package/dist/types/components/filter/filter.d.ts +5 -2
  391. package/dist/types/components/inline-editable/inline-editable.d.ts +4 -1
  392. package/dist/types/components/input/input.d.ts +3 -1
  393. package/dist/types/components/input-date-picker/input-date-picker.d.ts +4 -1
  394. package/dist/types/components/input-time-picker/input-time-picker.d.ts +5 -1
  395. package/dist/types/components/label/label.d.ts +7 -1
  396. package/dist/types/components/link/link.d.ts +3 -1
  397. package/dist/types/components/list/list.d.ts +7 -1
  398. package/dist/types/components/list-item/list-item.d.ts +3 -1
  399. package/dist/types/components/panel/panel.d.ts +3 -1
  400. package/dist/types/components/pick-list/pick-list.d.ts +3 -1
  401. package/dist/types/components/pick-list/shared-list-logic.d.ts +1 -0
  402. package/dist/types/components/pick-list-item/pick-list-item.d.ts +4 -2
  403. package/dist/types/components/radio-button/radio-button.d.ts +3 -1
  404. package/dist/types/components/radio-group/radio-group.d.ts +3 -1
  405. package/dist/types/components/rating/rating.d.ts +3 -1
  406. package/dist/types/components/select/select.d.ts +3 -1
  407. package/dist/types/components/slider/slider.d.ts +2 -1
  408. package/dist/types/components/sortable-list/sortable-list.d.ts +3 -1
  409. package/dist/types/components/split-button/split-button.d.ts +5 -1
  410. package/dist/types/components/stepper-item/stepper-item.d.ts +3 -1
  411. package/dist/types/components/switch/switch.d.ts +3 -4
  412. package/dist/types/components/tab-title/tab-title.d.ts +3 -1
  413. package/dist/types/components/tile/tile.d.ts +3 -1
  414. package/dist/types/components/tile-select/tile-select.d.ts +3 -1
  415. package/dist/types/components/tile-select-group/tile-select-group.d.ts +6 -1
  416. package/dist/types/components/value-list/value-list.d.ts +3 -1
  417. package/dist/types/components/value-list-item/value-list-item.d.ts +4 -2
  418. package/dist/types/components.d.ts +30 -4
  419. package/dist/types/utils/interactive.d.ts +28 -0
  420. package/dist/types/utils/label.d.ts +3 -1
  421. package/hydrate/index.js +451 -106
  422. package/package.json +6 -7
  423. package/dist/calcite/p-00d4b36e.entry.js +0 -5
  424. package/dist/calcite/p-02a3ad67.entry.js +0 -5
  425. package/dist/calcite/p-02cc50b9.entry.js +0 -5
  426. package/dist/calcite/p-11413626.system.entry.js +0 -5
  427. package/dist/calcite/p-12a4eac6.system.entry.js +0 -5
  428. package/dist/calcite/p-13e36552.system.entry.js +0 -5
  429. package/dist/calcite/p-1a34e1df.system.entry.js +0 -5
  430. package/dist/calcite/p-1a3a366d.system.js +0 -5
  431. package/dist/calcite/p-1fe5a777.entry.js +0 -5
  432. package/dist/calcite/p-2a3d08b7.entry.js +0 -5
  433. package/dist/calcite/p-2fbc2a9b.system.entry.js +0 -5
  434. package/dist/calcite/p-313fa6fa.system.entry.js +0 -5
  435. package/dist/calcite/p-322195bf.system.entry.js +0 -5
  436. package/dist/calcite/p-35461165.system.entry.js +0 -5
  437. package/dist/calcite/p-383b48a0.system.entry.js +0 -5
  438. package/dist/calcite/p-3a7606c8.entry.js +0 -5
  439. package/dist/calcite/p-417c7d5d.entry.js +0 -5
  440. package/dist/calcite/p-43ec3d32.system.entry.js +0 -5
  441. package/dist/calcite/p-458933db.system.entry.js +0 -5
  442. package/dist/calcite/p-4cd8449b.system.entry.js +0 -5
  443. package/dist/calcite/p-5a4b0056.system.entry.js +0 -5
  444. package/dist/calcite/p-5a7b1bd1.system.entry.js +0 -5
  445. package/dist/calcite/p-5c425028.entry.js +0 -5
  446. package/dist/calcite/p-5ecd3b72.system.entry.js +0 -5
  447. package/dist/calcite/p-633a2c7f.entry.js +0 -5
  448. package/dist/calcite/p-673a3cd9.entry.js +0 -5
  449. package/dist/calcite/p-743597e4.entry.js +0 -5
  450. package/dist/calcite/p-783bfba1.entry.js +0 -5
  451. package/dist/calcite/p-7863deb5.entry.js +0 -5
  452. package/dist/calcite/p-793659d0.entry.js +0 -5
  453. package/dist/calcite/p-7a0e8fab.system.entry.js +0 -5
  454. package/dist/calcite/p-7ccf6273.entry.js +0 -5
  455. package/dist/calcite/p-7dfe915f.entry.js +0 -5
  456. package/dist/calcite/p-802a05a2.entry.js +0 -5
  457. package/dist/calcite/p-818b3ac7.entry.js +0 -5
  458. package/dist/calcite/p-81a3de30.system.entry.js +0 -5
  459. package/dist/calcite/p-81f7b919.entry.js +0 -5
  460. package/dist/calcite/p-82c142d8.entry.js +0 -5
  461. package/dist/calcite/p-874ac36f.entry.js +0 -5
  462. package/dist/calcite/p-93bf2f70.entry.js +0 -5
  463. package/dist/calcite/p-99da584e.system.entry.js +0 -5
  464. package/dist/calcite/p-9a7c4812.js +0 -5
  465. package/dist/calcite/p-9cfa3928.entry.js +0 -5
  466. package/dist/calcite/p-9d102b23.system.entry.js +0 -5
  467. package/dist/calcite/p-9f2e3d1e.entry.js +0 -5
  468. package/dist/calcite/p-ad7fbabd.entry.js +0 -5
  469. package/dist/calcite/p-b03b03d5.entry.js +0 -5
  470. package/dist/calcite/p-b76ee102.system.entry.js +0 -5
  471. package/dist/calcite/p-bfaed65e.entry.js +0 -5
  472. package/dist/calcite/p-c6851d0b.system.entry.js +0 -5
  473. package/dist/calcite/p-d08d1450.entry.js +0 -5
  474. package/dist/calcite/p-d359def7.system.entry.js +0 -5
  475. package/dist/calcite/p-d7395b71.system.entry.js +0 -5
  476. package/dist/calcite/p-da78fbb6.system.entry.js +0 -5
  477. package/dist/calcite/p-dc9ff95e.system.entry.js +0 -5
  478. package/dist/calcite/p-dcf17450.system.entry.js +0 -5
  479. package/dist/calcite/p-de562f92.system.js +0 -5
  480. package/dist/calcite/p-e7dd0a9f.entry.js +0 -5
  481. package/dist/calcite/p-e88fd904.system.entry.js +0 -5
  482. package/dist/calcite/p-e9460f3c.js +0 -5
  483. package/dist/calcite/p-eb43eb28.system.entry.js +0 -5
  484. package/dist/calcite/p-efb21590.system.entry.js +0 -5
  485. package/dist/calcite/p-f20b0a41.system.entry.js +0 -5
  486. package/dist/calcite/p-f31de031.system.entry.js +0 -5
  487. package/dist/calcite/p-f542ba26.entry.js +0 -5
  488. package/dist/calcite/p-f9d1a58e.entry.js +0 -5
  489. package/dist/calcite/p-fad60503.entry.js +0 -5
  490. package/dist/calcite/p-fd0d5d44.system.entry.js +0 -5
  491. package/dist/esm-es5/label-2bffc9f4.js +0 -5
  492. package/dist/esm-es5/resources-999109fa.js +0 -5
@@ -7,6 +7,7 @@ import { getElementProp, getSlotted } from "../../utils/dom";
7
7
  import { TEXT, CSS } from "./resources";
8
8
  import { connectLabel, disconnectLabel, getLabelText } from "../../utils/label";
9
9
  import { createObserver } from "../../utils/observers";
10
+ import { updateHostInteraction } from "../../utils/interactive";
10
11
  /**
11
12
  * @slot - A slot for adding a `calcite-input`.
12
13
  */
@@ -70,7 +71,6 @@ export class InlineEditable {
70
71
  }
71
72
  if (!!e.shiftKey && e.target === this.cancelEditingButton) {
72
73
  e.preventDefault();
73
- e.stopPropagation();
74
74
  (_a = this.inputElement) === null || _a === void 0 ? void 0 : _a.setFocus();
75
75
  }
76
76
  }
@@ -80,22 +80,21 @@ export class InlineEditable {
80
80
  };
81
81
  this.cancelEditingHandler = async (e) => {
82
82
  e.preventDefault();
83
- e.stopPropagation();
84
83
  this.cancelEditing();
85
84
  };
86
85
  this.enableEditingHandler = async (e) => {
87
- e.preventDefault();
88
- e.stopPropagation();
89
- if (this.disabled) {
86
+ if (this.disabled ||
87
+ e.target === this.cancelEditingButton ||
88
+ e.target === this.confirmEditingButton) {
90
89
  return;
91
90
  }
91
+ e.preventDefault();
92
92
  if (!this.editingEnabled) {
93
93
  this.enableEditing();
94
94
  }
95
95
  };
96
96
  this.confirmChangesHandler = async (e) => {
97
97
  e.preventDefault();
98
- e.stopPropagation();
99
98
  this.calciteInlineEditableEditConfirm.emit();
100
99
  try {
101
100
  if (this.afterConfirm) {
@@ -141,6 +140,9 @@ export class InlineEditable {
141
140
  disconnectLabel(this);
142
141
  (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
143
142
  }
143
+ componentDidRender() {
144
+ updateHostInteraction(this);
145
+ }
144
146
  render() {
145
147
  return (h("div", { class: CSS.wrapper, onClick: this.enableEditingHandler, onKeyDown: this.escapeKeyHandler, onTransitionEnd: this.transitionEnd },
146
148
  h("div", { class: CSS.inputWrapper },
@@ -153,7 +155,7 @@ export class InlineEditable {
153
155
  this.shouldShowControls && [
154
156
  h("div", { class: CSS.cancelEditingButtonWrapper },
155
157
  h("calcite-button", { appearance: "transparent", class: CSS.cancelEditingButton, color: "neutral", disabled: this.disabled, iconStart: "x", label: this.intlCancelEditing, onClick: this.cancelEditingHandler, ref: (el) => (this.cancelEditingButton = el), scale: this.scale, type: "button" })),
156
- h("calcite-button", { appearance: "solid", class: CSS.confirmChangesButton, color: "blue", disabled: this.disabled, iconStart: "check", label: this.intlConfirmChanges, loading: this.loading, onClick: this.confirmChangesHandler, scale: this.scale, type: "button" })
158
+ h("calcite-button", { appearance: "solid", class: CSS.confirmChangesButton, color: "blue", disabled: this.disabled, iconStart: "check", label: this.intlConfirmChanges, loading: this.loading, onClick: this.confirmChangesHandler, ref: (el) => (this.confirmEditingButton = el), scale: this.scale, type: "button" })
157
159
  ])));
158
160
  }
159
161
  //--------------------------------------------------------------------------
@@ -172,18 +172,19 @@
172
172
 
173
173
  :host([disabled]) {
174
174
  pointer-events: none;
175
+ cursor: default;
176
+ -webkit-user-select: none;
177
+ user-select: none;
175
178
  opacity: var(--calcite-ui-opacity-disabled);
176
179
  }
177
- :host([disabled]) .wrapper {
178
- pointer-events: none;
179
- --tw-text-opacity: var(--calcite-ui-opacity-disabled);
180
- }
181
- :host([disabled]) button, :host([disabled]) textarea, :host([disabled]) input {
182
- pointer-events: none;
183
- }
184
180
  :host([disabled]) textarea {
185
181
  resize: none;
186
182
  }
183
+ :host([disabled]) ::slotted([calcite-hydrated][disabled]),
184
+ :host([disabled]) [calcite-hydrated][disabled] {
185
+ /* prevent opacity stacking */
186
+ opacity: 1;
187
+ }
187
188
 
188
189
  :host textarea,
189
190
  :host input {
@@ -13,6 +13,7 @@ import { isValidNumber, parseNumberString, sanitizeNumberString } from "../../ut
13
13
  import { CSS_UTILITY, TEXT } from "../../utils/resources";
14
14
  import { decimalPlaces } from "../../utils/math";
15
15
  import { createObserver } from "../../utils/observers";
16
+ import { updateHostInteraction } from "../../utils/interactive";
16
17
  /**
17
18
  * @slot action - A slot for positioning a button next to an input
18
19
  */
@@ -403,6 +404,9 @@ export class Input {
403
404
  }
404
405
  return true;
405
406
  }
407
+ componentDidRender() {
408
+ updateHostInteraction(this);
409
+ }
406
410
  //--------------------------------------------------------------------------
407
411
  //
408
412
  // Public Methods
@@ -104,32 +104,18 @@
104
104
  --tw-shadow-colored: 0 0 #0000;
105
105
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
106
106
  }
107
- :host .menu-container .calcite-popper-anim {
108
- position: relative;
109
- z-index: 1;
110
- transition: var(--calcite-popper-transition);
111
- visibility: hidden;
112
- transition-property: transform, visibility, opacity;
113
- opacity: 0;
114
- box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.16);
115
- border-radius: 0.25rem;
116
- }
117
- :host .menu-container[data-popper-placement^=bottom] .calcite-popper-anim {
118
- transform: translateY(-5px);
119
- }
120
- :host .menu-container[data-popper-placement^=top] .calcite-popper-anim {
121
- transform: translateY(5px);
122
- }
123
- :host .menu-container[data-popper-placement^=left] .calcite-popper-anim {
124
- transform: translateX(5px);
125
- }
126
- :host .menu-container[data-popper-placement^=right] .calcite-popper-anim {
127
- transform: translateX(-5px);
128
- }
129
- :host .menu-container[data-popper-placement] .calcite-popper-anim--active {
107
+
108
+ :host([disabled]) {
109
+ pointer-events: none;
110
+ cursor: default;
111
+ -webkit-user-select: none;
112
+ user-select: none;
113
+ opacity: var(--calcite-ui-opacity-disabled);
114
+ }
115
+ :host([disabled]) ::slotted([calcite-hydrated][disabled]),
116
+ :host([disabled]) [calcite-hydrated][disabled] {
117
+ /* prevent opacity stacking */
130
118
  opacity: 1;
131
- visibility: visible;
132
- transform: translate(0);
133
119
  }
134
120
 
135
121
  .calendar-picker-wrapper {
@@ -205,13 +191,64 @@
205
191
  position: absolute;
206
192
  z-index: 900;
207
193
  transform: scale(0);
194
+ visibility: hidden;
208
195
  pointer-events: none;
196
+ }
197
+
198
+ .menu-container .calcite-popper-anim {
199
+ position: relative;
200
+ z-index: 1;
201
+ transition: var(--calcite-popper-transition);
209
202
  visibility: hidden;
203
+ transition-property: transform, visibility, opacity;
204
+ opacity: 0;
205
+ box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.16);
206
+ border-radius: 0.25rem;
207
+ }
208
+ .menu-container[data-popper-placement^=bottom] .calcite-popper-anim {
209
+ transform: translateY(-5px);
210
+ }
211
+ .menu-container[data-popper-placement^=top] .calcite-popper-anim {
212
+ transform: translateY(5px);
213
+ }
214
+ .menu-container[data-popper-placement^=left] .calcite-popper-anim {
215
+ transform: translateX(5px);
216
+ }
217
+ .menu-container[data-popper-placement^=right] .calcite-popper-anim {
218
+ transform: translateX(-5px);
219
+ }
220
+ .menu-container[data-popper-placement] .calcite-popper-anim--active {
221
+ opacity: 1;
222
+ visibility: visible;
223
+ transform: translate(0);
210
224
  }
211
225
 
212
- :host([active]) .menu-container {
213
- pointer-events: auto;
226
+ .menu-container--active .menu-container .calcite-popper-anim {
227
+ position: relative;
228
+ z-index: 1;
229
+ transition: var(--calcite-popper-transition);
230
+ visibility: hidden;
231
+ transition-property: transform, visibility, opacity;
232
+ opacity: 0;
233
+ box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.16);
234
+ border-radius: 0.25rem;
235
+ }
236
+ .menu-container--active .menu-container[data-popper-placement^=bottom] .calcite-popper-anim {
237
+ transform: translateY(-5px);
238
+ }
239
+ .menu-container--active .menu-container[data-popper-placement^=top] .calcite-popper-anim {
240
+ transform: translateY(5px);
241
+ }
242
+ .menu-container--active .menu-container[data-popper-placement^=left] .calcite-popper-anim {
243
+ transform: translateX(5px);
244
+ }
245
+ .menu-container--active .menu-container[data-popper-placement^=right] .calcite-popper-anim {
246
+ transform: translateX(-5px);
247
+ }
248
+ .menu-container--active .menu-container[data-popper-placement] .calcite-popper-anim--active {
249
+ opacity: 1;
214
250
  visibility: visible;
251
+ transform: translate(0);
215
252
  }
216
253
 
217
254
  .input .calcite-input__wrapper {
@@ -9,6 +9,7 @@ import { TEXT } from "../date-picker/resources";
9
9
  import { connectLabel, disconnectLabel, getLabelText } from "../../utils/label";
10
10
  import { connectForm, disconnectForm, HiddenFormInputSlot } from "../../utils/form";
11
11
  import { createPopper, updatePopper, CSS as PopperCSS } from "../../utils/popper";
12
+ import { updateHostInteraction } from "../../utils/interactive";
12
13
  const DEFAULT_PLACEMENT = "bottom-leading";
13
14
  export class InputDatePicker {
14
15
  constructor() {
@@ -130,6 +131,11 @@ export class InputDatePicker {
130
131
  }
131
132
  };
132
133
  }
134
+ handleDisabledChange(value) {
135
+ if (!value) {
136
+ this.active = false;
137
+ }
138
+ }
133
139
  valueHandler(value) {
134
140
  if (Array.isArray(value)) {
135
141
  this.valueAsDate = value.map((v) => dateFromISO(v));
@@ -154,7 +160,11 @@ export class InputDatePicker {
154
160
  this.maxAsDate = dateFromISO(max);
155
161
  }
156
162
  activeHandler() {
157
- this.reposition();
163
+ if (!this.disabled) {
164
+ this.reposition();
165
+ return;
166
+ }
167
+ this.active = false;
158
168
  }
159
169
  //--------------------------------------------------------------------------
160
170
  //
@@ -235,6 +245,9 @@ export class InputDatePicker {
235
245
  disconnectLabel(this);
236
246
  disconnectForm(this);
237
247
  }
248
+ componentDidRender() {
249
+ updateHostInteraction(this);
250
+ }
238
251
  render() {
239
252
  var _a, _b;
240
253
  const { disabled } = this;
@@ -248,7 +261,10 @@ export class InputDatePicker {
248
261
  this.localeData && (h("div", { "aria-expanded": this.active.toString(), class: "input-container", role: "application" },
249
262
  h("div", { class: "input-wrapper", ref: this.setStartWrapper },
250
263
  h("calcite-input", { class: `input ${this.layout === "vertical" && this.range ? `no-bottom-border` : ``}`, disabled: disabled, icon: "calendar", label: getLabelText(this), "number-button-type": "none", onCalciteInputBlur: this.inputBlur, onCalciteInputFocus: this.startInputFocus, onCalciteInputInput: this.inputInput, placeholder: (_a = this.localeData) === null || _a === void 0 ? void 0 : _a.placeholder, ref: this.setStartInput, scale: this.scale, type: "text", value: formattedDate })),
251
- h("div", { "aria-hidden": (!this.active).toString(), class: "menu-container", ref: this.setMenuEl },
264
+ h("div", { "aria-hidden": (!this.active).toString(), class: {
265
+ "menu-container": true,
266
+ "menu-container--active": this.active
267
+ }, ref: this.setMenuEl },
252
268
  h("div", { class: {
253
269
  ["calendar-picker-wrapper"]: true,
254
270
  ["calendar-picker-wrapper--end"]: this.focusedInput === "end",
@@ -1058,6 +1074,9 @@ export class InputDatePicker {
1058
1074
  }; }
1059
1075
  static get elementRef() { return "el"; }
1060
1076
  static get watchers() { return [{
1077
+ "propName": "disabled",
1078
+ "methodName": "handleDisabledChange"
1079
+ }, {
1061
1080
  "propName": "value",
1062
1081
  "methodName": "valueHandler"
1063
1082
  }, {
@@ -84,6 +84,19 @@
84
84
  user-select: none;
85
85
  }
86
86
 
87
+ :host([disabled]) {
88
+ pointer-events: none;
89
+ cursor: default;
90
+ -webkit-user-select: none;
91
+ user-select: none;
92
+ opacity: var(--calcite-ui-opacity-disabled);
93
+ }
94
+ :host([disabled]) ::slotted([calcite-hydrated][disabled]),
95
+ :host([disabled]) [calcite-hydrated][disabled] {
96
+ /* prevent opacity stacking */
97
+ opacity: 1;
98
+ }
99
+
87
100
  ::slotted(input[slot=hidden-form-input]) {
88
101
  bottom: 0 !important;
89
102
  left: 0 !important;
@@ -7,6 +7,7 @@ import { guid } from "../../utils/guid";
7
7
  import { formatTimeString, isValidTime, localizeTimeString } from "../../utils/time";
8
8
  import { connectLabel, disconnectLabel, getLabelText } from "../../utils/label";
9
9
  import { connectForm, disconnectForm, HiddenFormInputSlot } from "../../utils/form";
10
+ import { updateHostInteraction } from "../../utils/interactive";
10
11
  export class InputTimePicker {
11
12
  constructor() {
12
13
  //--------------------------------------------------------------------------
@@ -115,6 +116,16 @@ export class InputTimePicker {
115
116
  }
116
117
  };
117
118
  }
119
+ activeHandler() {
120
+ if (this.disabled) {
121
+ this.active = false;
122
+ }
123
+ }
124
+ handleDisabledChange(value) {
125
+ if (!value) {
126
+ this.active = false;
127
+ }
128
+ }
118
129
  localeWatcher(newLocale) {
119
130
  this.setInputValue(localizeTimeString(this.value, newLocale, this.shouldIncludeSeconds()));
120
131
  }
@@ -184,6 +195,9 @@ export class InputTimePicker {
184
195
  disconnectLabel(this);
185
196
  disconnectForm(this);
186
197
  }
198
+ componentDidRender() {
199
+ updateHostInteraction(this);
200
+ }
187
201
  // --------------------------------------------------------------------------
188
202
  //
189
203
  // Render Methods
@@ -194,7 +208,7 @@ export class InputTimePicker {
194
208
  return (h(Host, null,
195
209
  h("div", { "aria-controls": popoverId, "aria-haspopup": "dialog", "aria-label": this.name, "aria-owns": popoverId, id: this.referenceElementId, role: "combobox" },
196
210
  h("calcite-input", { disabled: this.disabled, icon: "clock", label: getLabelText(this), onCalciteInputBlur: this.calciteInputBlurHandler, onCalciteInputFocus: this.calciteInputFocusHandler, onCalciteInputInput: this.calciteInputInputHandler, ref: this.setCalciteInputEl, scale: this.scale, step: this.step })),
197
- h("calcite-popover", { id: popoverId, label: "Time Picker", open: this.active || false, referenceElement: this.referenceElementId },
211
+ h("calcite-popover", { id: popoverId, label: "Time Picker", open: this.active, referenceElement: this.referenceElementId },
198
212
  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 })),
199
213
  h(HiddenFormInputSlot, { component: this })));
200
214
  }
@@ -605,6 +619,12 @@ export class InputTimePicker {
605
619
  }; }
606
620
  static get elementRef() { return "el"; }
607
621
  static get watchers() { return [{
622
+ "propName": "active",
623
+ "methodName": "activeHandler"
624
+ }, {
625
+ "propName": "disabled",
626
+ "methodName": "handleDisabledChange"
627
+ }, {
608
628
  "propName": "locale",
609
629
  "methodName": "localeWatcher"
610
630
  }, {
@@ -142,6 +142,13 @@
142
142
  justify-content: space-between;
143
143
  }
144
144
 
145
+ :host([disabled]) {
146
+ pointer-events: none;
147
+ cursor: default;
148
+ -webkit-user-select: none;
149
+ user-select: none;
150
+ opacity: var(--calcite-ui-opacity-disabled);
151
+ }
145
152
  :host([disabled]) > .container {
146
153
  pointer-events: none;
147
154
  opacity: var(--calcite-ui-opacity-disabled);
@@ -155,6 +162,11 @@
155
162
  :host([disabled]) ::slotted(calcite-input-message:not([active])) {
156
163
  --tw-bg-opacity: 0;
157
164
  }
165
+ :host([disabled]) ::slotted([calcite-hydrated][disabled]),
166
+ :host([disabled]) [calcite-hydrated][disabled] {
167
+ /* prevent opacity stacking */
168
+ opacity: 1;
169
+ }
158
170
 
159
171
  :host([disable-spacing]) .container {
160
172
  margin: 0px;
@@ -3,6 +3,7 @@
3
3
  * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
4
4
  */
5
5
  import { Component, Element, Event, h, Prop, Host } from "@stencil/core";
6
+ import { labelDisconnectedEvent, labelConnectedEvent } from "../../utils/label";
6
7
  import { CSS } from "./resources";
7
8
  /**
8
9
  * @slot - A slot for adding text and a component that can be labeled.
@@ -27,7 +28,11 @@ export class Label {
27
28
  this.layout = "default";
28
29
  /** eliminates any space around the label */
29
30
  this.disableSpacing = false;
30
- /** is the label disabled */
31
+ /**
32
+ * is the label disabled
33
+ *
34
+ * @deprecated use the `disabled` property on the interactive components instead
35
+ */
31
36
  this.disabled = false;
32
37
  //--------------------------------------------------------------------------
33
38
  //
@@ -45,6 +50,12 @@ export class Label {
45
50
  // Lifecycle
46
51
  //
47
52
  //--------------------------------------------------------------------------
53
+ connectedCallback() {
54
+ document.dispatchEvent(new CustomEvent(labelConnectedEvent));
55
+ }
56
+ disconnectedCallback() {
57
+ document.dispatchEvent(new CustomEvent(labelDisconnectedEvent));
58
+ }
48
59
  render() {
49
60
  return (h(Host, { onClick: this.labelClickHandler },
50
61
  h("div", { class: CSS.container },
@@ -195,7 +206,10 @@ export class Label {
195
206
  "required": false,
196
207
  "optional": false,
197
208
  "docs": {
198
- "tags": [],
209
+ "tags": [{
210
+ "name": "deprecated",
211
+ "text": "use the `disabled` property on the interactive components instead"
212
+ }],
199
213
  "text": "is the label disabled"
200
214
  },
201
215
  "attribute": "disabled",
@@ -131,14 +131,6 @@ calcite-icon {
131
131
  margin-top: 0.125rem;
132
132
  }
133
133
 
134
- :host([disabled]) {
135
- pointer-events: none;
136
- }
137
- :host([disabled]) span, :host([disabled]) a {
138
- pointer-events: none;
139
- opacity: var(--calcite-ui-opacity-disabled);
140
- }
141
-
142
134
  :host .calcite-link--icon.icon-start {
143
135
  margin-inline-end: 0.5rem;
144
136
  }
@@ -177,4 +169,17 @@ calcite-icon {
177
169
  :host span.calcite--rtl,
178
170
  :host a.calcite--rtl {
179
171
  background-position: 100% 100%, 100% 100%;
172
+ }
173
+
174
+ :host([disabled]) {
175
+ pointer-events: none;
176
+ cursor: default;
177
+ -webkit-user-select: none;
178
+ user-select: none;
179
+ opacity: var(--calcite-ui-opacity-disabled);
180
+ }
181
+ :host([disabled]) ::slotted([calcite-hydrated][disabled]),
182
+ :host([disabled]) [calcite-hydrated][disabled] {
183
+ /* prevent opacity stacking */
184
+ opacity: 1;
180
185
  }
@@ -5,6 +5,7 @@
5
5
  import { Component, Element, h, Host, Method, Prop } from "@stencil/core";
6
6
  import { focusElement, getElementDir } from "../../utils/dom";
7
7
  import { CSS_UTILITY } from "../../utils/resources";
8
+ import { updateHostInteraction } from "../../utils/interactive";
8
9
  /** Any attributes placed on <calcite-link> component will propagate to the rendered child */
9
10
  /** Passing a 'href' will render an anchor link, instead of a span. Role will be set to link, or link, depending on this. */
10
11
  /** It is the consumers responsibility to add aria information, rel, target, for links, and any link attributes for form submission */
@@ -37,6 +38,9 @@ export class Link {
37
38
  // Lifecycle
38
39
  //
39
40
  //--------------------------------------------------------------------------
41
+ componentDidRender() {
42
+ updateHostInteraction(this);
43
+ }
40
44
  render() {
41
45
  const { download, el } = this;
42
46
  const dir = getElementDir(el);
@@ -45,7 +49,7 @@ export class Link {
45
49
  const iconEndEl = (h("calcite-icon", { class: "calcite-link--icon icon-end", flipRtl: this.iconFlipRtl === "end" || this.iconFlipRtl === "both", icon: this.iconEnd, scale: "s" }));
46
50
  const Tag = childElType;
47
51
  const role = childElType === "span" ? "link" : null;
48
- const tabIndex = this.disabled ? -1 : childElType === "span" ? 0 : null;
52
+ const tabIndex = childElType === "span" ? 0 : null;
49
53
  return (h(Host, { role: "presentation" },
50
54
  h(Tag, { class: { [CSS_UTILITY.rtl]: dir === "rtl" },
51
55
  /*
@@ -82,6 +82,19 @@
82
82
  display: block;
83
83
  }
84
84
 
85
+ :host([disabled]) {
86
+ pointer-events: none;
87
+ cursor: default;
88
+ -webkit-user-select: none;
89
+ user-select: none;
90
+ opacity: var(--calcite-ui-opacity-disabled);
91
+ }
92
+ :host([disabled]) ::slotted([calcite-hydrated][disabled]),
93
+ :host([disabled]) [calcite-hydrated][disabled] {
94
+ /* prevent opacity stacking */
95
+ opacity: 1;
96
+ }
97
+
85
98
  .container {
86
99
  box-sizing: border-box;
87
100
  display: flex;
@@ -4,11 +4,31 @@
4
4
  */
5
5
  import { Component, Element, h, Host, Prop, Method } from "@stencil/core";
6
6
  import { CSS } from "./resources";
7
+ import { updateHostInteraction } from "../../utils/interactive";
7
8
  /**
8
9
  * A general purpose list that enables users to construct list items that conform to Calcite styling.
9
10
  * @slot - A slot for adding `calcite-list-item` elements.
10
11
  */
11
12
  export class List {
13
+ constructor() {
14
+ // --------------------------------------------------------------------------
15
+ //
16
+ // Properties
17
+ //
18
+ // --------------------------------------------------------------------------
19
+ /**
20
+ * When true, disabled prevents user interaction.
21
+ */
22
+ this.disabled = false;
23
+ }
24
+ //--------------------------------------------------------------------------
25
+ //
26
+ // Lifecycle
27
+ //
28
+ //--------------------------------------------------------------------------
29
+ componentDidRender() {
30
+ updateHostInteraction(this);
31
+ }
12
32
  // --------------------------------------------------------------------------
13
33
  //
14
34
  // Public Methods
@@ -38,6 +58,24 @@ export class List {
38
58
  "$": ["list.css"]
39
59
  }; }
40
60
  static get properties() { return {
61
+ "disabled": {
62
+ "type": "boolean",
63
+ "mutable": false,
64
+ "complexType": {
65
+ "original": "boolean",
66
+ "resolved": "boolean",
67
+ "references": {}
68
+ },
69
+ "required": false,
70
+ "optional": false,
71
+ "docs": {
72
+ "tags": [],
73
+ "text": "When true, disabled prevents user interaction."
74
+ },
75
+ "attribute": "disabled",
76
+ "reflect": true,
77
+ "defaultValue": "false"
78
+ },
41
79
  "headingLevel": {
42
80
  "type": "number",
43
81
  "mutable": false,
@@ -86,6 +86,14 @@
86
86
  :host([disabled]) {
87
87
  pointer-events: none;
88
88
  cursor: default;
89
+ -webkit-user-select: none;
90
+ user-select: none;
91
+ opacity: var(--calcite-ui-opacity-disabled);
92
+ }
93
+ :host([disabled]) ::slotted([calcite-hydrated][disabled]),
94
+ :host([disabled]) [calcite-hydrated][disabled] {
95
+ /* prevent opacity stacking */
96
+ opacity: 1;
89
97
  }
90
98
 
91
99
  .container {
@@ -6,6 +6,7 @@ import { Component, Element, Prop, h, Host, Method } from "@stencil/core";
6
6
  import { SLOTS, CSS } from "./resources";
7
7
  import { getSlotted } from "../../utils/dom";
8
8
  import { connectConditionalSlotComponent, disconnectConditionalSlotComponent } from "../../utils/conditionalSlot";
9
+ import { updateHostInteraction } from "../../utils/interactive";
9
10
  /**
10
11
  * @slot - A slot for adding `calcite-list-item` and `calcite-list-item-group` elements.
11
12
  * @slot actions-start - A slot for adding actionable `calcite-action` elements before the content of the list item.
@@ -29,6 +30,14 @@ export class ListItem {
29
30
  */
30
31
  this.disabled = false;
31
32
  }
33
+ //--------------------------------------------------------------------------
34
+ //
35
+ // Lifecycle
36
+ //
37
+ //--------------------------------------------------------------------------
38
+ componentDidRender() {
39
+ updateHostInteraction(this);
40
+ }
32
41
  // --------------------------------------------------------------------------
33
42
  //
34
43
  // Lifecycle
@@ -111,6 +111,19 @@
111
111
  --calcite-panel-max-width: unset;
112
112
  }
113
113
 
114
+ :host([disabled]) {
115
+ pointer-events: none;
116
+ cursor: default;
117
+ -webkit-user-select: none;
118
+ user-select: none;
119
+ opacity: var(--calcite-ui-opacity-disabled);
120
+ }
121
+ :host([disabled]) ::slotted([calcite-hydrated][disabled]),
122
+ :host([disabled]) [calcite-hydrated][disabled] {
123
+ /* prevent opacity stacking */
124
+ opacity: 1;
125
+ }
126
+
114
127
  /* Shared styles for header elements */
115
128
  .header {
116
129
  margin: 0px;
@@ -8,6 +8,7 @@ import { getElementDir, getSlotted } from "../../utils/dom";
8
8
  import { Heading } from "../functional/Heading";
9
9
  import { SLOTS as ACTION_MENU_SLOTS } from "../action-menu/resources";
10
10
  import { connectConditionalSlotComponent, disconnectConditionalSlotComponent } from "../../utils/conditionalSlot";
11
+ import { updateHostInteraction } from "../../utils/interactive";
11
12
  /**
12
13
  * @slot - A slot for adding custom content.
13
14
  * @slot header-actions-start - A slot for adding actions or content to the start side of the panel header.
@@ -81,6 +82,14 @@ export class Panel {
81
82
  dismissedHandler() {
82
83
  this.calcitePanelDismissedChange.emit();
83
84
  }
85
+ //--------------------------------------------------------------------------
86
+ //
87
+ // Lifecycle
88
+ //
89
+ //--------------------------------------------------------------------------
90
+ componentDidRender() {
91
+ updateHostInteraction(this);
92
+ }
84
93
  // --------------------------------------------------------------------------
85
94
  //
86
95
  // Lifecycle
@@ -218,13 +227,13 @@ export class Panel {
218
227
  h("slot", { name: SLOTS.fab })));
219
228
  }
220
229
  render() {
221
- const { dismissed, disabled, dismissible, loading, panelKeyDownHandler } = this;
230
+ const { dismissed, dismissible, loading, panelKeyDownHandler } = this;
222
231
  const panelNode = (h("article", { "aria-busy": loading.toString(), class: CSS.container, hidden: dismissible && dismissed, onKeyDown: panelKeyDownHandler, ref: this.setContainerRef, tabIndex: dismissible ? 0 : -1 },
223
232
  this.renderHeaderNode(),
224
233
  this.renderContent(),
225
234
  this.renderFooterNode()));
226
235
  return (h(Fragment, null,
227
- loading || disabled ? h("calcite-scrim", { loading: loading }) : null,
236
+ loading ? h("calcite-scrim", { loading: loading }) : null,
228
237
  panelNode));
229
238
  }
230
239
  static get is() { return "calcite-panel"; }