@carbon/web-components 2.49.0 → 2.50.0-rc.0

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 (826) hide show
  1. package/custom-elements.json +278 -228
  2. package/es/components/accordion/accordion-item-skeleton.js +3 -3
  3. package/es/components/accordion/accordion-item-skeleton.js.map +1 -1
  4. package/es/components/accordion/accordion-item.js +3 -3
  5. package/es/components/accordion/accordion-item.js.map +1 -1
  6. package/es/components/accordion/accordion-skeleton.js +3 -3
  7. package/es/components/accordion/accordion-skeleton.js.map +1 -1
  8. package/es/components/accordion/accordion.js +2 -2
  9. package/es/components/accordion/accordion.js.map +1 -1
  10. package/es/components/ai-label/ai-label-action-button.js +2 -2
  11. package/es/components/ai-label/ai-label-action-button.js.map +1 -1
  12. package/es/components/ai-label/ai-label.js +3 -3
  13. package/es/components/ai-label/ai-label.js.map +1 -1
  14. package/es/components/ai-skeleton/ai-skeleton-icon.js +2 -2
  15. package/es/components/ai-skeleton/ai-skeleton-icon.js.map +1 -1
  16. package/es/components/ai-skeleton/ai-skeleton-placeholder.js +2 -2
  17. package/es/components/ai-skeleton/ai-skeleton-placeholder.js.map +1 -1
  18. package/es/components/ai-skeleton/ai-skeleton-text.js +2 -2
  19. package/es/components/ai-skeleton/ai-skeleton-text.js.map +1 -1
  20. package/es/components/badge-indicator/badge-indicator.js +2 -2
  21. package/es/components/badge-indicator/badge-indicator.js.map +1 -1
  22. package/es/components/breadcrumb/breadcrumb-item.d.ts +1 -1
  23. package/es/components/breadcrumb/breadcrumb-item.js +15 -12
  24. package/es/components/breadcrumb/breadcrumb-item.js.map +1 -1
  25. package/es/components/breadcrumb/breadcrumb-link.js +2 -2
  26. package/es/components/breadcrumb/breadcrumb-link.js.map +1 -1
  27. package/es/components/breadcrumb/breadcrumb-overflow-menu.js +3 -3
  28. package/es/components/breadcrumb/breadcrumb-overflow-menu.js.map +1 -1
  29. package/es/components/breadcrumb/breadcrumb-skeleton.js +2 -2
  30. package/es/components/breadcrumb/breadcrumb-skeleton.js.map +1 -1
  31. package/es/components/breadcrumb/breadcrumb.js +2 -2
  32. package/es/components/breadcrumb/breadcrumb.js.map +1 -1
  33. package/es/components/button/button-set.js +2 -2
  34. package/es/components/button/button-set.js.map +1 -1
  35. package/es/components/button/button-skeleton.js +3 -2
  36. package/es/components/button/button-skeleton.js.map +1 -1
  37. package/es/components/button/button.d.ts +14 -16
  38. package/es/components/button/button.js +27 -24
  39. package/es/components/button/button.js.map +1 -1
  40. package/es/components/button/button.scss.js +1 -1
  41. package/es/components/chat-button/chat-button-skeleton.js +2 -2
  42. package/es/components/chat-button/chat-button-skeleton.js.map +1 -1
  43. package/es/components/chat-button/chat-button.js +2 -2
  44. package/es/components/chat-button/chat-button.js.map +1 -1
  45. package/es/components/checkbox/checkbox-group.js +3 -3
  46. package/es/components/checkbox/checkbox-group.js.map +1 -1
  47. package/es/components/checkbox/checkbox-skeleton.js +2 -2
  48. package/es/components/checkbox/checkbox-skeleton.js.map +1 -1
  49. package/es/components/checkbox/checkbox.js +1 -1
  50. package/es/components/code-snippet/code-snippet-skeleton.js +2 -2
  51. package/es/components/code-snippet/code-snippet-skeleton.js.map +1 -1
  52. package/es/components/code-snippet/code-snippet.js +3 -3
  53. package/es/components/code-snippet/code-snippet.js.map +1 -1
  54. package/es/components/combo-box/combo-box-item.js +2 -2
  55. package/es/components/combo-box/combo-box-item.js.map +1 -1
  56. package/es/components/combo-box/combo-box.js +16 -8
  57. package/es/components/combo-box/combo-box.js.map +1 -1
  58. package/es/components/combo-button/combo-button.js +3 -3
  59. package/es/components/combo-button/combo-button.js.map +1 -1
  60. package/es/components/contained-list/contained-list-description.js +2 -2
  61. package/es/components/contained-list/contained-list-description.js.map +1 -1
  62. package/es/components/contained-list/contained-list-item.js +2 -2
  63. package/es/components/contained-list/contained-list-item.js.map +1 -1
  64. package/es/components/contained-list/contained-list.js +2 -2
  65. package/es/components/contained-list/contained-list.js.map +1 -1
  66. package/es/components/copy/copy.js +2 -2
  67. package/es/components/copy/copy.js.map +1 -1
  68. package/es/components/copy-button/copy-button.js +3 -3
  69. package/es/components/copy-button/copy-button.js.map +1 -1
  70. package/es/components/data-table/table-batch-actions.js +2 -2
  71. package/es/components/data-table/table-batch-actions.js.map +1 -1
  72. package/es/components/data-table/table-body.js +2 -2
  73. package/es/components/data-table/table-body.js.map +1 -1
  74. package/es/components/data-table/table-cell-content.js +2 -2
  75. package/es/components/data-table/table-cell-content.js.map +1 -1
  76. package/es/components/data-table/table-cell.js +2 -2
  77. package/es/components/data-table/table-cell.js.map +1 -1
  78. package/es/components/data-table/table-expanded-row.js +2 -2
  79. package/es/components/data-table/table-expanded-row.js.map +1 -1
  80. package/es/components/data-table/table-head.js +2 -2
  81. package/es/components/data-table/table-head.js.map +1 -1
  82. package/es/components/data-table/table-header-cell.js +3 -3
  83. package/es/components/data-table/table-header-cell.js.map +1 -1
  84. package/es/components/data-table/table-header-description.js +2 -2
  85. package/es/components/data-table/table-header-description.js.map +1 -1
  86. package/es/components/data-table/table-header-row.js +2 -2
  87. package/es/components/data-table/table-header-row.js.map +1 -1
  88. package/es/components/data-table/table-header-title.js +2 -2
  89. package/es/components/data-table/table-header-title.js.map +1 -1
  90. package/es/components/data-table/table-row.js +1 -1
  91. package/es/components/data-table/table-skeleton.js +2 -2
  92. package/es/components/data-table/table-skeleton.js.map +1 -1
  93. package/es/components/data-table/table-toolbar-content.js +2 -2
  94. package/es/components/data-table/table-toolbar-content.js.map +1 -1
  95. package/es/components/data-table/table-toolbar-search.js +2 -2
  96. package/es/components/data-table/table-toolbar-search.js.map +1 -1
  97. package/es/components/data-table/table-toolbar.js +2 -2
  98. package/es/components/data-table/table-toolbar.js.map +1 -1
  99. package/es/components/data-table/table.js +2 -2
  100. package/es/components/data-table/table.js.map +1 -1
  101. package/es/components/date-picker/date-picker-input-skeleton.js +2 -2
  102. package/es/components/date-picker/date-picker-input-skeleton.js.map +1 -1
  103. package/es/components/date-picker/date-picker-input.js +1 -1
  104. package/es/components/date-picker/date-picker.js +2 -2
  105. package/es/components/date-picker/date-picker.js.map +1 -1
  106. package/es/components/date-picker/icon-plugin.js +1 -1
  107. package/es/components/dropdown/dropdown-item.js +1 -1
  108. package/es/components/dropdown/dropdown-skeleton.js +2 -2
  109. package/es/components/dropdown/dropdown-skeleton.js.map +1 -1
  110. package/es/components/dropdown/dropdown.js +1 -1
  111. package/es/components/feature-flags/index.d.ts +1 -1
  112. package/es/components/feature-flags/index.js +7 -4
  113. package/es/components/feature-flags/index.js.map +1 -1
  114. package/es/components/file-uploader/demo-file-uploader.js +2 -2
  115. package/es/components/file-uploader/demo-file-uploader.js.map +1 -1
  116. package/es/components/file-uploader/file-uploader-button.js +2 -2
  117. package/es/components/file-uploader/file-uploader-button.js.map +1 -1
  118. package/es/components/file-uploader/file-uploader-drop-container.js +2 -2
  119. package/es/components/file-uploader/file-uploader-drop-container.js.map +1 -1
  120. package/es/components/file-uploader/file-uploader-item.js +3 -3
  121. package/es/components/file-uploader/file-uploader-item.js.map +1 -1
  122. package/es/components/file-uploader/file-uploader-skeleton.js +2 -2
  123. package/es/components/file-uploader/file-uploader-skeleton.js.map +1 -1
  124. package/es/components/file-uploader/file-uploader.js +2 -2
  125. package/es/components/file-uploader/file-uploader.js.map +1 -1
  126. package/es/components/floating-menu/defs.d.ts +10 -2
  127. package/es/components/floating-menu/defs.js +9 -1
  128. package/es/components/floating-menu/defs.js.map +1 -1
  129. package/es/components/floating-menu/floating-menu.d.ts +31 -1
  130. package/es/components/floating-menu/floating-menu.js +110 -43
  131. package/es/components/floating-menu/floating-menu.js.map +1 -1
  132. package/es/components/fluid-number-input/fluid-number-input-skeleton.js +2 -2
  133. package/es/components/fluid-number-input/fluid-number-input-skeleton.js.map +1 -1
  134. package/es/components/fluid-number-input/fluid-number-input.js +2 -2
  135. package/es/components/fluid-number-input/fluid-number-input.js.map +1 -1
  136. package/es/components/fluid-search/fluid-search-skeleton.js +2 -2
  137. package/es/components/fluid-search/fluid-search-skeleton.js.map +1 -1
  138. package/es/components/fluid-search/fluid-search.js +2 -2
  139. package/es/components/fluid-search/fluid-search.js.map +1 -1
  140. package/es/components/fluid-select/fluid-select-skeleton.js +2 -2
  141. package/es/components/fluid-select/fluid-select-skeleton.js.map +1 -1
  142. package/es/components/fluid-text-input/fluid-text-input-skeleton.js +2 -2
  143. package/es/components/fluid-text-input/fluid-text-input-skeleton.js.map +1 -1
  144. package/es/components/fluid-text-input/fluid-text-input.js +2 -2
  145. package/es/components/fluid-text-input/fluid-text-input.js.map +1 -1
  146. package/es/components/fluid-textarea/fluid-textarea-skeleton.js +2 -2
  147. package/es/components/fluid-textarea/fluid-textarea-skeleton.js.map +1 -1
  148. package/es/components/fluid-textarea/fluid-textarea.js +2 -2
  149. package/es/components/fluid-textarea/fluid-textarea.js.map +1 -1
  150. package/es/components/fluid-time-picker/fluid-time-picker-select.js +2 -2
  151. package/es/components/fluid-time-picker/fluid-time-picker-select.js.map +1 -1
  152. package/es/components/fluid-time-picker/fluid-time-picker-skeleton.js +2 -2
  153. package/es/components/fluid-time-picker/fluid-time-picker-skeleton.js.map +1 -1
  154. package/es/components/fluid-time-picker/fluid-time-picker.js +3 -3
  155. package/es/components/fluid-time-picker/fluid-time-picker.js.map +1 -1
  156. package/es/components/form/form-item.js +2 -2
  157. package/es/components/form/form-item.js.map +1 -1
  158. package/es/components/form/form.js +2 -2
  159. package/es/components/form/form.js.map +1 -1
  160. package/es/components/form-group/form-group.js +2 -2
  161. package/es/components/form-group/form-group.js.map +1 -1
  162. package/es/components/grid/column-hang.js +2 -2
  163. package/es/components/grid/column-hang.js.map +1 -1
  164. package/es/components/grid/column.js +2 -2
  165. package/es/components/grid/column.js.map +1 -1
  166. package/es/components/grid/grid.js +2 -2
  167. package/es/components/grid/grid.js.map +1 -1
  168. package/es/components/heading/heading.js +2 -2
  169. package/es/components/heading/heading.js.map +1 -1
  170. package/es/components/icon/icon.js +2 -2
  171. package/es/components/icon/icon.js.map +1 -1
  172. package/es/components/icon-indicator/icon-indicator.js +3 -3
  173. package/es/components/icon-indicator/icon-indicator.js.map +1 -1
  174. package/es/components/inline-loading/inline-loading.js +3 -3
  175. package/es/components/inline-loading/inline-loading.js.map +1 -1
  176. package/es/components/layer/layer.js +2 -2
  177. package/es/components/layer/layer.js.map +1 -1
  178. package/es/components/list/list-item.js +2 -2
  179. package/es/components/list/list-item.js.map +1 -1
  180. package/es/components/list/ordered-list.js +2 -2
  181. package/es/components/list/ordered-list.js.map +1 -1
  182. package/es/components/loading/loading.js +2 -2
  183. package/es/components/loading/loading.js.map +1 -1
  184. package/es/components/menu/menu-item-divider.js +2 -2
  185. package/es/components/menu/menu-item-divider.js.map +1 -1
  186. package/es/components/menu/menu-item-group.js +2 -2
  187. package/es/components/menu/menu-item-group.js.map +1 -1
  188. package/es/components/menu/menu-item-radio-group.js +2 -2
  189. package/es/components/menu/menu-item-radio-group.js.map +1 -1
  190. package/es/components/menu/menu-item-selectable.js +2 -2
  191. package/es/components/menu/menu-item-selectable.js.map +1 -1
  192. package/es/components/menu/menu-item.js +3 -3
  193. package/es/components/menu/menu-item.js.map +1 -1
  194. package/es/components/menu/menu.js +2 -2
  195. package/es/components/menu/menu.js.map +1 -1
  196. package/es/components/menu-button/menu-button.js +3 -3
  197. package/es/components/menu-button/menu-button.js.map +1 -1
  198. package/es/components/modal/modal-body-content.js +2 -2
  199. package/es/components/modal/modal-body-content.js.map +1 -1
  200. package/es/components/modal/modal-body.js +2 -2
  201. package/es/components/modal/modal-body.js.map +1 -1
  202. package/es/components/modal/modal-close-button.js +3 -3
  203. package/es/components/modal/modal-close-button.js.map +1 -1
  204. package/es/components/modal/modal-footer-button.js +2 -2
  205. package/es/components/modal/modal-footer-button.js.map +1 -1
  206. package/es/components/modal/modal-footer.js +2 -2
  207. package/es/components/modal/modal-footer.js.map +1 -1
  208. package/es/components/modal/modal-header.js +2 -2
  209. package/es/components/modal/modal-header.js.map +1 -1
  210. package/es/components/modal/modal-heading.js +2 -2
  211. package/es/components/modal/modal-heading.js.map +1 -1
  212. package/es/components/modal/modal-label.js +2 -2
  213. package/es/components/modal/modal-label.js.map +1 -1
  214. package/es/components/modal/modal.js +2 -2
  215. package/es/components/modal/modal.js.map +1 -1
  216. package/es/components/multi-select/multi-select-item.js +2 -2
  217. package/es/components/multi-select/multi-select-item.js.map +1 -1
  218. package/es/components/multi-select/multi-select.d.ts +9 -0
  219. package/es/components/multi-select/multi-select.js +58 -11
  220. package/es/components/multi-select/multi-select.js.map +1 -1
  221. package/es/components/notification/actionable-notification-button.js +2 -2
  222. package/es/components/notification/actionable-notification-button.js.map +1 -1
  223. package/es/components/notification/actionable-notification.js +1 -1
  224. package/es/components/notification/callout-notification.js +3 -3
  225. package/es/components/notification/callout-notification.js.map +1 -1
  226. package/es/components/notification/inline-notification.js +1 -1
  227. package/es/components/notification/toast-notification.js +2 -2
  228. package/es/components/notification/toast-notification.js.map +1 -1
  229. package/es/components/number-input/number-input.js +1 -1
  230. package/es/components/overflow-menu/overflow-menu-body.d.ts +18 -2
  231. package/es/components/overflow-menu/overflow-menu-body.js +25 -4
  232. package/es/components/overflow-menu/overflow-menu-body.js.map +1 -1
  233. package/es/components/overflow-menu/overflow-menu-item.js +2 -2
  234. package/es/components/overflow-menu/overflow-menu-item.js.map +1 -1
  235. package/es/components/overflow-menu/overflow-menu.scss.js +1 -1
  236. package/es/components/page-header/page-header-breadcrumb.js +2 -2
  237. package/es/components/page-header/page-header-breadcrumb.js.map +1 -1
  238. package/es/components/page-header/page-header-content-text.js +2 -2
  239. package/es/components/page-header/page-header-content-text.js.map +1 -1
  240. package/es/components/page-header/page-header-content.js +2 -2
  241. package/es/components/page-header/page-header-content.js.map +1 -1
  242. package/es/components/page-header/page-header-hero-image.js +2 -2
  243. package/es/components/page-header/page-header-hero-image.js.map +1 -1
  244. package/es/components/page-header/page-header-tabs.js +2 -2
  245. package/es/components/page-header/page-header-tabs.js.map +1 -1
  246. package/es/components/page-header/page-header.js +2 -2
  247. package/es/components/page-header/page-header.js.map +1 -1
  248. package/es/components/pagination/pagination.js +4 -4
  249. package/es/components/pagination/pagination.js.map +1 -1
  250. package/es/components/pagination-nav/pagination-nav.js +3 -3
  251. package/es/components/pagination-nav/pagination-nav.js.map +1 -1
  252. package/es/components/password-input/password-input-skeleton.js +2 -2
  253. package/es/components/password-input/password-input-skeleton.js.map +1 -1
  254. package/es/components/password-input/password-input.js +3 -3
  255. package/es/components/password-input/password-input.js.map +1 -1
  256. package/es/components/progress-bar/progress-bar.js +3 -3
  257. package/es/components/progress-bar/progress-bar.js.map +1 -1
  258. package/es/components/progress-indicator/progress-indicator-skeleton.js +2 -2
  259. package/es/components/progress-indicator/progress-indicator-skeleton.js.map +1 -1
  260. package/es/components/progress-indicator/progress-indicator.js +2 -2
  261. package/es/components/progress-indicator/progress-indicator.js.map +1 -1
  262. package/es/components/progress-indicator/progress-step-skeleton.js +3 -3
  263. package/es/components/progress-indicator/progress-step-skeleton.js.map +1 -1
  264. package/es/components/progress-indicator/progress-step.js +3 -3
  265. package/es/components/progress-indicator/progress-step.js.map +1 -1
  266. package/es/components/radio-button/radio-button-group.js +3 -3
  267. package/es/components/radio-button/radio-button-group.js.map +1 -1
  268. package/es/components/radio-button/radio-button-skeleton.js +2 -2
  269. package/es/components/radio-button/radio-button-skeleton.js.map +1 -1
  270. package/es/components/radio-button/radio-button.js +2 -2
  271. package/es/components/radio-button/radio-button.js.map +1 -1
  272. package/es/components/search/search.js +1 -1
  273. package/es/components/select/select-item-group.js +2 -2
  274. package/es/components/select/select-item-group.js.map +1 -1
  275. package/es/components/select/select-item.js +2 -2
  276. package/es/components/select/select-item.js.map +1 -1
  277. package/es/components/select/select.js +1 -1
  278. package/es/components/shape-indicator/shape-indicator.js +3 -3
  279. package/es/components/shape-indicator/shape-indicator.js.map +1 -1
  280. package/es/components/side-panel/side-panel.js +3 -3
  281. package/es/components/side-panel/side-panel.js.map +1 -1
  282. package/es/components/skeleton-icon/skeleton-icon.js +2 -2
  283. package/es/components/skeleton-icon/skeleton-icon.js.map +1 -1
  284. package/es/components/skeleton-placeholder/skeleton-placeholder.js +2 -2
  285. package/es/components/skeleton-placeholder/skeleton-placeholder.js.map +1 -1
  286. package/es/components/skeleton-text/skeleton-text.js +2 -2
  287. package/es/components/skeleton-text/skeleton-text.js.map +1 -1
  288. package/es/components/skip-to-content/skip-to-content.js +2 -2
  289. package/es/components/skip-to-content/skip-to-content.js.map +1 -1
  290. package/es/components/slider/slider-input.js +3 -3
  291. package/es/components/slider/slider-input.js.map +1 -1
  292. package/es/components/slider/slider-skeleton.js +2 -2
  293. package/es/components/slider/slider-skeleton.js.map +1 -1
  294. package/es/components/slider/slider.js +2 -2
  295. package/es/components/slider/slider.js.map +1 -1
  296. package/es/components/slug/slug-action-button.js +2 -2
  297. package/es/components/slug/slug-action-button.js.map +1 -1
  298. package/es/components/slug/slug.js +3 -3
  299. package/es/components/slug/slug.js.map +1 -1
  300. package/es/components/stack/stack.js +2 -2
  301. package/es/components/stack/stack.js.map +1 -1
  302. package/es/components/structured-list/structured-list-body.js +2 -2
  303. package/es/components/structured-list/structured-list-body.js.map +1 -1
  304. package/es/components/structured-list/structured-list-cell.js +2 -2
  305. package/es/components/structured-list/structured-list-cell.js.map +1 -1
  306. package/es/components/structured-list/structured-list-head.js +2 -2
  307. package/es/components/structured-list/structured-list-head.js.map +1 -1
  308. package/es/components/structured-list/structured-list-header-cell-skeleton.js +2 -2
  309. package/es/components/structured-list/structured-list-header-cell-skeleton.js.map +1 -1
  310. package/es/components/structured-list/structured-list-header-cell.js +2 -2
  311. package/es/components/structured-list/structured-list-header-cell.js.map +1 -1
  312. package/es/components/structured-list/structured-list-header-row.js +2 -2
  313. package/es/components/structured-list/structured-list-header-row.js.map +1 -1
  314. package/es/components/structured-list/structured-list-row.js +3 -3
  315. package/es/components/structured-list/structured-list-row.js.map +1 -1
  316. package/es/components/structured-list/structured-list.js +2 -2
  317. package/es/components/structured-list/structured-list.js.map +1 -1
  318. package/es/components/tabs/tab-skeleton.js +2 -2
  319. package/es/components/tabs/tab-skeleton.js.map +1 -1
  320. package/es/components/tabs/tab.js +2 -2
  321. package/es/components/tabs/tab.js.map +1 -1
  322. package/es/components/tabs/tabs-skeleton.js +2 -2
  323. package/es/components/tabs/tabs-skeleton.js.map +1 -1
  324. package/es/components/tabs/tabs.js +3 -3
  325. package/es/components/tabs/tabs.js.map +1 -1
  326. package/es/components/tabs/tabs.scss.js +1 -1
  327. package/es/components/tag/dismissible-tag.js +3 -3
  328. package/es/components/tag/dismissible-tag.js.map +1 -1
  329. package/es/components/tag/operational-tag.js +2 -2
  330. package/es/components/tag/operational-tag.js.map +1 -1
  331. package/es/components/tag/selectable-tag.js +2 -2
  332. package/es/components/tag/selectable-tag.js.map +1 -1
  333. package/es/components/tag/tag-skeleton.js +2 -2
  334. package/es/components/tag/tag-skeleton.js.map +1 -1
  335. package/es/components/tag/tag.js +1 -1
  336. package/es/components/tearsheet/tearsheet.js +2 -2
  337. package/es/components/tearsheet/tearsheet.js.map +1 -1
  338. package/es/components/text-input/text-input.js +1 -1
  339. package/es/components/textarea/textarea.js +1 -1
  340. package/es/components/tile/clickable-tile.js +3 -3
  341. package/es/components/tile/clickable-tile.js.map +1 -1
  342. package/es/components/tile/expandable-tile.js +3 -3
  343. package/es/components/tile/expandable-tile.js.map +1 -1
  344. package/es/components/tile/radio-tile.js +3 -3
  345. package/es/components/tile/radio-tile.js.map +1 -1
  346. package/es/components/tile/selectable-tile.js +1 -1
  347. package/es/components/tile/tile-group.js +2 -2
  348. package/es/components/tile/tile-group.js.map +1 -1
  349. package/es/components/tile/tile.js +2 -2
  350. package/es/components/tile/tile.js.map +1 -1
  351. package/es/components/time-picker/time-picker-select.js +3 -3
  352. package/es/components/time-picker/time-picker-select.js.map +1 -1
  353. package/es/components/time-picker/time-picker.js +1 -1
  354. package/es/components/toggle/toggle-skeleton.js +2 -2
  355. package/es/components/toggle/toggle-skeleton.js.map +1 -1
  356. package/es/components/toggle/toggle.js +2 -2
  357. package/es/components/toggle/toggle.js.map +1 -1
  358. package/es/components/toggle-tip/toggletip.js +1 -1
  359. package/es/components/tooltip/definition-tooltip.js +2 -2
  360. package/es/components/tooltip/definition-tooltip.js.map +1 -1
  361. package/es/components/tooltip/tooltip-content.js +2 -2
  362. package/es/components/tooltip/tooltip-content.js.map +1 -1
  363. package/es/components/tooltip/tooltip.js +2 -2
  364. package/es/components/tooltip/tooltip.js.map +1 -1
  365. package/es/components/tree-view/tree-node.js +3 -3
  366. package/es/components/tree-view/tree-node.js.map +1 -1
  367. package/es/components/tree-view/tree-view.js +2 -2
  368. package/es/components/tree-view/tree-view.js.map +1 -1
  369. package/es/components/ui-shell/header-global-action.js +2 -2
  370. package/es/components/ui-shell/header-global-action.js.map +1 -1
  371. package/es/components/ui-shell/header-menu-button.js +3 -3
  372. package/es/components/ui-shell/header-menu-button.js.map +1 -1
  373. package/es/components/ui-shell/header-menu-item.js +2 -2
  374. package/es/components/ui-shell/header-menu-item.js.map +1 -1
  375. package/es/components/ui-shell/header-menu.js +3 -3
  376. package/es/components/ui-shell/header-menu.js.map +1 -1
  377. package/es/components/ui-shell/header-name.js +2 -2
  378. package/es/components/ui-shell/header-name.js.map +1 -1
  379. package/es/components/ui-shell/header-nav.js +2 -2
  380. package/es/components/ui-shell/header-nav.js.map +1 -1
  381. package/es/components/ui-shell/header-panel.js +2 -2
  382. package/es/components/ui-shell/header-panel.js.map +1 -1
  383. package/es/components/ui-shell/header-side-nav-items.js +2 -2
  384. package/es/components/ui-shell/header-side-nav-items.js.map +1 -1
  385. package/es/components/ui-shell/header.js +2 -2
  386. package/es/components/ui-shell/header.js.map +1 -1
  387. package/es/components/ui-shell/side-nav-divider.js +2 -2
  388. package/es/components/ui-shell/side-nav-divider.js.map +1 -1
  389. package/es/components/ui-shell/side-nav-items.js +2 -2
  390. package/es/components/ui-shell/side-nav-items.js.map +1 -1
  391. package/es/components/ui-shell/side-nav-link.js +2 -2
  392. package/es/components/ui-shell/side-nav-link.js.map +1 -1
  393. package/es/components/ui-shell/side-nav-menu-item.js +2 -2
  394. package/es/components/ui-shell/side-nav-menu-item.js.map +1 -1
  395. package/es/components/ui-shell/side-nav-menu.js +3 -3
  396. package/es/components/ui-shell/side-nav-menu.js.map +1 -1
  397. package/es/components/ui-shell/side-nav.js +2 -2
  398. package/es/components/ui-shell/side-nav.js.map +1 -1
  399. package/es/components/ui-shell/switcher-divider.js +2 -2
  400. package/es/components/ui-shell/switcher-divider.js.map +1 -1
  401. package/es/components/ui-shell/switcher-item.js +2 -2
  402. package/es/components/ui-shell/switcher-item.js.map +1 -1
  403. package/es/components/ui-shell/switcher.js +2 -2
  404. package/es/components/ui-shell/switcher.js.map +1 -1
  405. package/es/feature-flags/es/index.js +153 -144
  406. package/es/feature-flags/es/index.js.map +1 -1
  407. package/es-custom/components/accordion/accordion-item-skeleton.js +3 -3
  408. package/es-custom/components/accordion/accordion-item-skeleton.js.map +1 -1
  409. package/es-custom/components/accordion/accordion-item.js +3 -3
  410. package/es-custom/components/accordion/accordion-item.js.map +1 -1
  411. package/es-custom/components/accordion/accordion-skeleton.js +3 -3
  412. package/es-custom/components/accordion/accordion-skeleton.js.map +1 -1
  413. package/es-custom/components/accordion/accordion.js +2 -2
  414. package/es-custom/components/accordion/accordion.js.map +1 -1
  415. package/es-custom/components/ai-label/ai-label-action-button.js +2 -2
  416. package/es-custom/components/ai-label/ai-label-action-button.js.map +1 -1
  417. package/es-custom/components/ai-label/ai-label.js +3 -3
  418. package/es-custom/components/ai-label/ai-label.js.map +1 -1
  419. package/es-custom/components/ai-skeleton/ai-skeleton-icon.js +2 -2
  420. package/es-custom/components/ai-skeleton/ai-skeleton-icon.js.map +1 -1
  421. package/es-custom/components/ai-skeleton/ai-skeleton-placeholder.js +2 -2
  422. package/es-custom/components/ai-skeleton/ai-skeleton-placeholder.js.map +1 -1
  423. package/es-custom/components/ai-skeleton/ai-skeleton-text.js +2 -2
  424. package/es-custom/components/ai-skeleton/ai-skeleton-text.js.map +1 -1
  425. package/es-custom/components/badge-indicator/badge-indicator.js +2 -2
  426. package/es-custom/components/badge-indicator/badge-indicator.js.map +1 -1
  427. package/es-custom/components/breadcrumb/breadcrumb-item.d.ts +1 -1
  428. package/es-custom/components/breadcrumb/breadcrumb-item.js +15 -12
  429. package/es-custom/components/breadcrumb/breadcrumb-item.js.map +1 -1
  430. package/es-custom/components/breadcrumb/breadcrumb-link.js +2 -2
  431. package/es-custom/components/breadcrumb/breadcrumb-link.js.map +1 -1
  432. package/es-custom/components/breadcrumb/breadcrumb-overflow-menu.js +3 -3
  433. package/es-custom/components/breadcrumb/breadcrumb-overflow-menu.js.map +1 -1
  434. package/es-custom/components/breadcrumb/breadcrumb-skeleton.js +2 -2
  435. package/es-custom/components/breadcrumb/breadcrumb-skeleton.js.map +1 -1
  436. package/es-custom/components/breadcrumb/breadcrumb.js +2 -2
  437. package/es-custom/components/breadcrumb/breadcrumb.js.map +1 -1
  438. package/es-custom/components/button/button-set.js +2 -2
  439. package/es-custom/components/button/button-set.js.map +1 -1
  440. package/es-custom/components/button/button-skeleton.js +3 -2
  441. package/es-custom/components/button/button-skeleton.js.map +1 -1
  442. package/es-custom/components/button/button.d.ts +14 -16
  443. package/es-custom/components/button/button.js +27 -24
  444. package/es-custom/components/button/button.js.map +1 -1
  445. package/es-custom/components/button/button.scss.js +1 -1
  446. package/es-custom/components/chat-button/chat-button-skeleton.js +2 -2
  447. package/es-custom/components/chat-button/chat-button-skeleton.js.map +1 -1
  448. package/es-custom/components/chat-button/chat-button.js +2 -2
  449. package/es-custom/components/chat-button/chat-button.js.map +1 -1
  450. package/es-custom/components/checkbox/checkbox-group.js +3 -3
  451. package/es-custom/components/checkbox/checkbox-group.js.map +1 -1
  452. package/es-custom/components/checkbox/checkbox-skeleton.js +2 -2
  453. package/es-custom/components/checkbox/checkbox-skeleton.js.map +1 -1
  454. package/es-custom/components/checkbox/checkbox.js +1 -1
  455. package/es-custom/components/code-snippet/code-snippet-skeleton.js +2 -2
  456. package/es-custom/components/code-snippet/code-snippet-skeleton.js.map +1 -1
  457. package/es-custom/components/code-snippet/code-snippet.js +3 -3
  458. package/es-custom/components/code-snippet/code-snippet.js.map +1 -1
  459. package/es-custom/components/combo-box/combo-box-item.js +2 -2
  460. package/es-custom/components/combo-box/combo-box-item.js.map +1 -1
  461. package/es-custom/components/combo-box/combo-box.js +16 -8
  462. package/es-custom/components/combo-box/combo-box.js.map +1 -1
  463. package/es-custom/components/combo-button/combo-button.js +3 -3
  464. package/es-custom/components/combo-button/combo-button.js.map +1 -1
  465. package/es-custom/components/contained-list/contained-list-description.js +2 -2
  466. package/es-custom/components/contained-list/contained-list-description.js.map +1 -1
  467. package/es-custom/components/contained-list/contained-list-item.js +2 -2
  468. package/es-custom/components/contained-list/contained-list-item.js.map +1 -1
  469. package/es-custom/components/contained-list/contained-list.js +2 -2
  470. package/es-custom/components/contained-list/contained-list.js.map +1 -1
  471. package/es-custom/components/copy/copy.js +2 -2
  472. package/es-custom/components/copy/copy.js.map +1 -1
  473. package/es-custom/components/copy-button/copy-button.js +3 -3
  474. package/es-custom/components/copy-button/copy-button.js.map +1 -1
  475. package/es-custom/components/data-table/table-batch-actions.js +2 -2
  476. package/es-custom/components/data-table/table-batch-actions.js.map +1 -1
  477. package/es-custom/components/data-table/table-body.js +2 -2
  478. package/es-custom/components/data-table/table-body.js.map +1 -1
  479. package/es-custom/components/data-table/table-cell-content.js +2 -2
  480. package/es-custom/components/data-table/table-cell-content.js.map +1 -1
  481. package/es-custom/components/data-table/table-cell.js +2 -2
  482. package/es-custom/components/data-table/table-cell.js.map +1 -1
  483. package/es-custom/components/data-table/table-expanded-row.js +2 -2
  484. package/es-custom/components/data-table/table-expanded-row.js.map +1 -1
  485. package/es-custom/components/data-table/table-head.js +2 -2
  486. package/es-custom/components/data-table/table-head.js.map +1 -1
  487. package/es-custom/components/data-table/table-header-cell.js +3 -3
  488. package/es-custom/components/data-table/table-header-cell.js.map +1 -1
  489. package/es-custom/components/data-table/table-header-description.js +2 -2
  490. package/es-custom/components/data-table/table-header-description.js.map +1 -1
  491. package/es-custom/components/data-table/table-header-row.js +2 -2
  492. package/es-custom/components/data-table/table-header-row.js.map +1 -1
  493. package/es-custom/components/data-table/table-header-title.js +2 -2
  494. package/es-custom/components/data-table/table-header-title.js.map +1 -1
  495. package/es-custom/components/data-table/table-row.js +1 -1
  496. package/es-custom/components/data-table/table-skeleton.js +2 -2
  497. package/es-custom/components/data-table/table-skeleton.js.map +1 -1
  498. package/es-custom/components/data-table/table-toolbar-content.js +2 -2
  499. package/es-custom/components/data-table/table-toolbar-content.js.map +1 -1
  500. package/es-custom/components/data-table/table-toolbar-search.js +2 -2
  501. package/es-custom/components/data-table/table-toolbar-search.js.map +1 -1
  502. package/es-custom/components/data-table/table-toolbar.js +2 -2
  503. package/es-custom/components/data-table/table-toolbar.js.map +1 -1
  504. package/es-custom/components/data-table/table.js +2 -2
  505. package/es-custom/components/data-table/table.js.map +1 -1
  506. package/es-custom/components/date-picker/date-picker-input-skeleton.js +2 -2
  507. package/es-custom/components/date-picker/date-picker-input-skeleton.js.map +1 -1
  508. package/es-custom/components/date-picker/date-picker-input.js +1 -1
  509. package/es-custom/components/date-picker/date-picker.js +2 -2
  510. package/es-custom/components/date-picker/date-picker.js.map +1 -1
  511. package/es-custom/components/date-picker/icon-plugin.js +1 -1
  512. package/es-custom/components/dropdown/dropdown-item.js +1 -1
  513. package/es-custom/components/dropdown/dropdown-skeleton.js +2 -2
  514. package/es-custom/components/dropdown/dropdown-skeleton.js.map +1 -1
  515. package/es-custom/components/dropdown/dropdown.js +1 -1
  516. package/es-custom/components/feature-flags/index.d.ts +1 -1
  517. package/es-custom/components/feature-flags/index.js +7 -4
  518. package/es-custom/components/feature-flags/index.js.map +1 -1
  519. package/es-custom/components/file-uploader/demo-file-uploader.js +2 -2
  520. package/es-custom/components/file-uploader/demo-file-uploader.js.map +1 -1
  521. package/es-custom/components/file-uploader/file-uploader-button.js +2 -2
  522. package/es-custom/components/file-uploader/file-uploader-button.js.map +1 -1
  523. package/es-custom/components/file-uploader/file-uploader-drop-container.js +2 -2
  524. package/es-custom/components/file-uploader/file-uploader-drop-container.js.map +1 -1
  525. package/es-custom/components/file-uploader/file-uploader-item.js +3 -3
  526. package/es-custom/components/file-uploader/file-uploader-item.js.map +1 -1
  527. package/es-custom/components/file-uploader/file-uploader-skeleton.js +2 -2
  528. package/es-custom/components/file-uploader/file-uploader-skeleton.js.map +1 -1
  529. package/es-custom/components/file-uploader/file-uploader.js +2 -2
  530. package/es-custom/components/file-uploader/file-uploader.js.map +1 -1
  531. package/es-custom/components/floating-menu/defs.d.ts +10 -2
  532. package/es-custom/components/floating-menu/defs.js +9 -1
  533. package/es-custom/components/floating-menu/defs.js.map +1 -1
  534. package/es-custom/components/floating-menu/floating-menu.d.ts +31 -1
  535. package/es-custom/components/floating-menu/floating-menu.js +110 -43
  536. package/es-custom/components/floating-menu/floating-menu.js.map +1 -1
  537. package/es-custom/components/fluid-number-input/fluid-number-input-skeleton.js +2 -2
  538. package/es-custom/components/fluid-number-input/fluid-number-input-skeleton.js.map +1 -1
  539. package/es-custom/components/fluid-number-input/fluid-number-input.js +2 -2
  540. package/es-custom/components/fluid-number-input/fluid-number-input.js.map +1 -1
  541. package/es-custom/components/fluid-search/fluid-search-skeleton.js +2 -2
  542. package/es-custom/components/fluid-search/fluid-search-skeleton.js.map +1 -1
  543. package/es-custom/components/fluid-search/fluid-search.js +2 -2
  544. package/es-custom/components/fluid-search/fluid-search.js.map +1 -1
  545. package/es-custom/components/fluid-select/fluid-select-skeleton.js +2 -2
  546. package/es-custom/components/fluid-select/fluid-select-skeleton.js.map +1 -1
  547. package/es-custom/components/fluid-text-input/fluid-text-input-skeleton.js +2 -2
  548. package/es-custom/components/fluid-text-input/fluid-text-input-skeleton.js.map +1 -1
  549. package/es-custom/components/fluid-text-input/fluid-text-input.js +2 -2
  550. package/es-custom/components/fluid-text-input/fluid-text-input.js.map +1 -1
  551. package/es-custom/components/fluid-textarea/fluid-textarea-skeleton.js +2 -2
  552. package/es-custom/components/fluid-textarea/fluid-textarea-skeleton.js.map +1 -1
  553. package/es-custom/components/fluid-textarea/fluid-textarea.js +2 -2
  554. package/es-custom/components/fluid-textarea/fluid-textarea.js.map +1 -1
  555. package/es-custom/components/fluid-time-picker/fluid-time-picker-select.js +2 -2
  556. package/es-custom/components/fluid-time-picker/fluid-time-picker-select.js.map +1 -1
  557. package/es-custom/components/fluid-time-picker/fluid-time-picker-skeleton.js +2 -2
  558. package/es-custom/components/fluid-time-picker/fluid-time-picker-skeleton.js.map +1 -1
  559. package/es-custom/components/fluid-time-picker/fluid-time-picker.js +3 -3
  560. package/es-custom/components/fluid-time-picker/fluid-time-picker.js.map +1 -1
  561. package/es-custom/components/form/form-item.js +2 -2
  562. package/es-custom/components/form/form-item.js.map +1 -1
  563. package/es-custom/components/form/form.js +2 -2
  564. package/es-custom/components/form/form.js.map +1 -1
  565. package/es-custom/components/form-group/form-group.js +2 -2
  566. package/es-custom/components/form-group/form-group.js.map +1 -1
  567. package/es-custom/components/grid/column-hang.js +2 -2
  568. package/es-custom/components/grid/column-hang.js.map +1 -1
  569. package/es-custom/components/grid/column.js +2 -2
  570. package/es-custom/components/grid/column.js.map +1 -1
  571. package/es-custom/components/grid/grid.js +2 -2
  572. package/es-custom/components/grid/grid.js.map +1 -1
  573. package/es-custom/components/heading/heading.js +2 -2
  574. package/es-custom/components/heading/heading.js.map +1 -1
  575. package/es-custom/components/icon/icon.js +2 -2
  576. package/es-custom/components/icon/icon.js.map +1 -1
  577. package/es-custom/components/icon-indicator/icon-indicator.js +3 -3
  578. package/es-custom/components/icon-indicator/icon-indicator.js.map +1 -1
  579. package/es-custom/components/inline-loading/inline-loading.js +3 -3
  580. package/es-custom/components/inline-loading/inline-loading.js.map +1 -1
  581. package/es-custom/components/layer/layer.js +2 -2
  582. package/es-custom/components/layer/layer.js.map +1 -1
  583. package/es-custom/components/list/list-item.js +2 -2
  584. package/es-custom/components/list/list-item.js.map +1 -1
  585. package/es-custom/components/list/ordered-list.js +2 -2
  586. package/es-custom/components/list/ordered-list.js.map +1 -1
  587. package/es-custom/components/loading/loading.js +2 -2
  588. package/es-custom/components/loading/loading.js.map +1 -1
  589. package/es-custom/components/menu/menu-item-divider.js +2 -2
  590. package/es-custom/components/menu/menu-item-divider.js.map +1 -1
  591. package/es-custom/components/menu/menu-item-group.js +2 -2
  592. package/es-custom/components/menu/menu-item-group.js.map +1 -1
  593. package/es-custom/components/menu/menu-item-radio-group.js +2 -2
  594. package/es-custom/components/menu/menu-item-radio-group.js.map +1 -1
  595. package/es-custom/components/menu/menu-item-selectable.js +2 -2
  596. package/es-custom/components/menu/menu-item-selectable.js.map +1 -1
  597. package/es-custom/components/menu/menu-item.js +3 -3
  598. package/es-custom/components/menu/menu-item.js.map +1 -1
  599. package/es-custom/components/menu/menu.js +2 -2
  600. package/es-custom/components/menu/menu.js.map +1 -1
  601. package/es-custom/components/menu-button/menu-button.js +3 -3
  602. package/es-custom/components/menu-button/menu-button.js.map +1 -1
  603. package/es-custom/components/modal/modal-body-content.js +2 -2
  604. package/es-custom/components/modal/modal-body-content.js.map +1 -1
  605. package/es-custom/components/modal/modal-body.js +2 -2
  606. package/es-custom/components/modal/modal-body.js.map +1 -1
  607. package/es-custom/components/modal/modal-close-button.js +3 -3
  608. package/es-custom/components/modal/modal-close-button.js.map +1 -1
  609. package/es-custom/components/modal/modal-footer-button.js +2 -2
  610. package/es-custom/components/modal/modal-footer-button.js.map +1 -1
  611. package/es-custom/components/modal/modal-footer.js +2 -2
  612. package/es-custom/components/modal/modal-footer.js.map +1 -1
  613. package/es-custom/components/modal/modal-header.js +2 -2
  614. package/es-custom/components/modal/modal-header.js.map +1 -1
  615. package/es-custom/components/modal/modal-heading.js +2 -2
  616. package/es-custom/components/modal/modal-heading.js.map +1 -1
  617. package/es-custom/components/modal/modal-label.js +2 -2
  618. package/es-custom/components/modal/modal-label.js.map +1 -1
  619. package/es-custom/components/modal/modal.js +2 -2
  620. package/es-custom/components/modal/modal.js.map +1 -1
  621. package/es-custom/components/multi-select/multi-select-item.js +2 -2
  622. package/es-custom/components/multi-select/multi-select-item.js.map +1 -1
  623. package/es-custom/components/multi-select/multi-select.d.ts +9 -0
  624. package/es-custom/components/multi-select/multi-select.js +58 -11
  625. package/es-custom/components/multi-select/multi-select.js.map +1 -1
  626. package/es-custom/components/notification/actionable-notification-button.js +2 -2
  627. package/es-custom/components/notification/actionable-notification-button.js.map +1 -1
  628. package/es-custom/components/notification/actionable-notification.js +1 -1
  629. package/es-custom/components/notification/callout-notification.js +3 -3
  630. package/es-custom/components/notification/callout-notification.js.map +1 -1
  631. package/es-custom/components/notification/inline-notification.js +1 -1
  632. package/es-custom/components/notification/toast-notification.js +2 -2
  633. package/es-custom/components/notification/toast-notification.js.map +1 -1
  634. package/es-custom/components/number-input/number-input.js +1 -1
  635. package/es-custom/components/overflow-menu/overflow-menu-body.d.ts +18 -2
  636. package/es-custom/components/overflow-menu/overflow-menu-body.js +25 -4
  637. package/es-custom/components/overflow-menu/overflow-menu-body.js.map +1 -1
  638. package/es-custom/components/overflow-menu/overflow-menu-item.js +2 -2
  639. package/es-custom/components/overflow-menu/overflow-menu-item.js.map +1 -1
  640. package/es-custom/components/overflow-menu/overflow-menu.scss.js +1 -1
  641. package/es-custom/components/page-header/page-header-breadcrumb.js +2 -2
  642. package/es-custom/components/page-header/page-header-breadcrumb.js.map +1 -1
  643. package/es-custom/components/page-header/page-header-content-text.js +2 -2
  644. package/es-custom/components/page-header/page-header-content-text.js.map +1 -1
  645. package/es-custom/components/page-header/page-header-content.js +2 -2
  646. package/es-custom/components/page-header/page-header-content.js.map +1 -1
  647. package/es-custom/components/page-header/page-header-hero-image.js +2 -2
  648. package/es-custom/components/page-header/page-header-hero-image.js.map +1 -1
  649. package/es-custom/components/page-header/page-header-tabs.js +2 -2
  650. package/es-custom/components/page-header/page-header-tabs.js.map +1 -1
  651. package/es-custom/components/page-header/page-header.js +2 -2
  652. package/es-custom/components/page-header/page-header.js.map +1 -1
  653. package/es-custom/components/pagination/pagination.js +4 -4
  654. package/es-custom/components/pagination/pagination.js.map +1 -1
  655. package/es-custom/components/pagination-nav/pagination-nav.js +3 -3
  656. package/es-custom/components/pagination-nav/pagination-nav.js.map +1 -1
  657. package/es-custom/components/password-input/password-input-skeleton.js +2 -2
  658. package/es-custom/components/password-input/password-input-skeleton.js.map +1 -1
  659. package/es-custom/components/password-input/password-input.js +3 -3
  660. package/es-custom/components/password-input/password-input.js.map +1 -1
  661. package/es-custom/components/progress-bar/progress-bar.js +3 -3
  662. package/es-custom/components/progress-bar/progress-bar.js.map +1 -1
  663. package/es-custom/components/progress-indicator/progress-indicator-skeleton.js +2 -2
  664. package/es-custom/components/progress-indicator/progress-indicator-skeleton.js.map +1 -1
  665. package/es-custom/components/progress-indicator/progress-indicator.js +2 -2
  666. package/es-custom/components/progress-indicator/progress-indicator.js.map +1 -1
  667. package/es-custom/components/progress-indicator/progress-step-skeleton.js +3 -3
  668. package/es-custom/components/progress-indicator/progress-step-skeleton.js.map +1 -1
  669. package/es-custom/components/progress-indicator/progress-step.js +3 -3
  670. package/es-custom/components/progress-indicator/progress-step.js.map +1 -1
  671. package/es-custom/components/radio-button/radio-button-group.js +3 -3
  672. package/es-custom/components/radio-button/radio-button-group.js.map +1 -1
  673. package/es-custom/components/radio-button/radio-button-skeleton.js +2 -2
  674. package/es-custom/components/radio-button/radio-button-skeleton.js.map +1 -1
  675. package/es-custom/components/radio-button/radio-button.js +2 -2
  676. package/es-custom/components/radio-button/radio-button.js.map +1 -1
  677. package/es-custom/components/search/search.js +1 -1
  678. package/es-custom/components/select/select-item-group.js +2 -2
  679. package/es-custom/components/select/select-item-group.js.map +1 -1
  680. package/es-custom/components/select/select-item.js +2 -2
  681. package/es-custom/components/select/select-item.js.map +1 -1
  682. package/es-custom/components/select/select.js +1 -1
  683. package/es-custom/components/shape-indicator/shape-indicator.js +3 -3
  684. package/es-custom/components/shape-indicator/shape-indicator.js.map +1 -1
  685. package/es-custom/components/side-panel/side-panel.js +3 -3
  686. package/es-custom/components/side-panel/side-panel.js.map +1 -1
  687. package/es-custom/components/skeleton-icon/skeleton-icon.js +2 -2
  688. package/es-custom/components/skeleton-icon/skeleton-icon.js.map +1 -1
  689. package/es-custom/components/skeleton-placeholder/skeleton-placeholder.js +2 -2
  690. package/es-custom/components/skeleton-placeholder/skeleton-placeholder.js.map +1 -1
  691. package/es-custom/components/skeleton-text/skeleton-text.js +2 -2
  692. package/es-custom/components/skeleton-text/skeleton-text.js.map +1 -1
  693. package/es-custom/components/skip-to-content/skip-to-content.js +2 -2
  694. package/es-custom/components/skip-to-content/skip-to-content.js.map +1 -1
  695. package/es-custom/components/slider/slider-input.js +3 -3
  696. package/es-custom/components/slider/slider-input.js.map +1 -1
  697. package/es-custom/components/slider/slider-skeleton.js +2 -2
  698. package/es-custom/components/slider/slider-skeleton.js.map +1 -1
  699. package/es-custom/components/slider/slider.js +2 -2
  700. package/es-custom/components/slider/slider.js.map +1 -1
  701. package/es-custom/components/slug/slug-action-button.js +2 -2
  702. package/es-custom/components/slug/slug-action-button.js.map +1 -1
  703. package/es-custom/components/slug/slug.js +3 -3
  704. package/es-custom/components/slug/slug.js.map +1 -1
  705. package/es-custom/components/stack/stack.js +2 -2
  706. package/es-custom/components/stack/stack.js.map +1 -1
  707. package/es-custom/components/structured-list/structured-list-body.js +2 -2
  708. package/es-custom/components/structured-list/structured-list-body.js.map +1 -1
  709. package/es-custom/components/structured-list/structured-list-cell.js +2 -2
  710. package/es-custom/components/structured-list/structured-list-cell.js.map +1 -1
  711. package/es-custom/components/structured-list/structured-list-head.js +2 -2
  712. package/es-custom/components/structured-list/structured-list-head.js.map +1 -1
  713. package/es-custom/components/structured-list/structured-list-header-cell-skeleton.js +2 -2
  714. package/es-custom/components/structured-list/structured-list-header-cell-skeleton.js.map +1 -1
  715. package/es-custom/components/structured-list/structured-list-header-cell.js +2 -2
  716. package/es-custom/components/structured-list/structured-list-header-cell.js.map +1 -1
  717. package/es-custom/components/structured-list/structured-list-header-row.js +2 -2
  718. package/es-custom/components/structured-list/structured-list-header-row.js.map +1 -1
  719. package/es-custom/components/structured-list/structured-list-row.js +3 -3
  720. package/es-custom/components/structured-list/structured-list-row.js.map +1 -1
  721. package/es-custom/components/structured-list/structured-list.js +2 -2
  722. package/es-custom/components/structured-list/structured-list.js.map +1 -1
  723. package/es-custom/components/tabs/tab-skeleton.js +2 -2
  724. package/es-custom/components/tabs/tab-skeleton.js.map +1 -1
  725. package/es-custom/components/tabs/tab.js +2 -2
  726. package/es-custom/components/tabs/tab.js.map +1 -1
  727. package/es-custom/components/tabs/tabs-skeleton.js +2 -2
  728. package/es-custom/components/tabs/tabs-skeleton.js.map +1 -1
  729. package/es-custom/components/tabs/tabs.js +3 -3
  730. package/es-custom/components/tabs/tabs.js.map +1 -1
  731. package/es-custom/components/tabs/tabs.scss.js +1 -1
  732. package/es-custom/components/tag/dismissible-tag.js +3 -3
  733. package/es-custom/components/tag/dismissible-tag.js.map +1 -1
  734. package/es-custom/components/tag/operational-tag.js +2 -2
  735. package/es-custom/components/tag/operational-tag.js.map +1 -1
  736. package/es-custom/components/tag/selectable-tag.js +2 -2
  737. package/es-custom/components/tag/selectable-tag.js.map +1 -1
  738. package/es-custom/components/tag/tag-skeleton.js +2 -2
  739. package/es-custom/components/tag/tag-skeleton.js.map +1 -1
  740. package/es-custom/components/tag/tag.js +1 -1
  741. package/es-custom/components/tearsheet/tearsheet.js +2 -2
  742. package/es-custom/components/tearsheet/tearsheet.js.map +1 -1
  743. package/es-custom/components/text-input/text-input.js +1 -1
  744. package/es-custom/components/textarea/textarea.js +1 -1
  745. package/es-custom/components/tile/clickable-tile.js +3 -3
  746. package/es-custom/components/tile/clickable-tile.js.map +1 -1
  747. package/es-custom/components/tile/expandable-tile.js +3 -3
  748. package/es-custom/components/tile/expandable-tile.js.map +1 -1
  749. package/es-custom/components/tile/radio-tile.js +3 -3
  750. package/es-custom/components/tile/radio-tile.js.map +1 -1
  751. package/es-custom/components/tile/selectable-tile.js +1 -1
  752. package/es-custom/components/tile/tile-group.js +2 -2
  753. package/es-custom/components/tile/tile-group.js.map +1 -1
  754. package/es-custom/components/tile/tile.js +2 -2
  755. package/es-custom/components/tile/tile.js.map +1 -1
  756. package/es-custom/components/time-picker/time-picker-select.js +3 -3
  757. package/es-custom/components/time-picker/time-picker-select.js.map +1 -1
  758. package/es-custom/components/time-picker/time-picker.js +1 -1
  759. package/es-custom/components/toggle/toggle-skeleton.js +2 -2
  760. package/es-custom/components/toggle/toggle-skeleton.js.map +1 -1
  761. package/es-custom/components/toggle/toggle.js +2 -2
  762. package/es-custom/components/toggle/toggle.js.map +1 -1
  763. package/es-custom/components/toggle-tip/toggletip.js +1 -1
  764. package/es-custom/components/tooltip/definition-tooltip.js +2 -2
  765. package/es-custom/components/tooltip/definition-tooltip.js.map +1 -1
  766. package/es-custom/components/tooltip/tooltip-content.js +2 -2
  767. package/es-custom/components/tooltip/tooltip-content.js.map +1 -1
  768. package/es-custom/components/tooltip/tooltip.js +2 -2
  769. package/es-custom/components/tooltip/tooltip.js.map +1 -1
  770. package/es-custom/components/tree-view/tree-node.js +3 -3
  771. package/es-custom/components/tree-view/tree-node.js.map +1 -1
  772. package/es-custom/components/tree-view/tree-view.js +2 -2
  773. package/es-custom/components/tree-view/tree-view.js.map +1 -1
  774. package/es-custom/components/ui-shell/header-global-action.js +2 -2
  775. package/es-custom/components/ui-shell/header-global-action.js.map +1 -1
  776. package/es-custom/components/ui-shell/header-menu-button.js +3 -3
  777. package/es-custom/components/ui-shell/header-menu-button.js.map +1 -1
  778. package/es-custom/components/ui-shell/header-menu-item.js +2 -2
  779. package/es-custom/components/ui-shell/header-menu-item.js.map +1 -1
  780. package/es-custom/components/ui-shell/header-menu.js +3 -3
  781. package/es-custom/components/ui-shell/header-menu.js.map +1 -1
  782. package/es-custom/components/ui-shell/header-name.js +2 -2
  783. package/es-custom/components/ui-shell/header-name.js.map +1 -1
  784. package/es-custom/components/ui-shell/header-nav.js +2 -2
  785. package/es-custom/components/ui-shell/header-nav.js.map +1 -1
  786. package/es-custom/components/ui-shell/header-panel.js +2 -2
  787. package/es-custom/components/ui-shell/header-panel.js.map +1 -1
  788. package/es-custom/components/ui-shell/header-side-nav-items.js +2 -2
  789. package/es-custom/components/ui-shell/header-side-nav-items.js.map +1 -1
  790. package/es-custom/components/ui-shell/header.js +2 -2
  791. package/es-custom/components/ui-shell/header.js.map +1 -1
  792. package/es-custom/components/ui-shell/side-nav-divider.js +2 -2
  793. package/es-custom/components/ui-shell/side-nav-divider.js.map +1 -1
  794. package/es-custom/components/ui-shell/side-nav-items.js +2 -2
  795. package/es-custom/components/ui-shell/side-nav-items.js.map +1 -1
  796. package/es-custom/components/ui-shell/side-nav-link.js +2 -2
  797. package/es-custom/components/ui-shell/side-nav-link.js.map +1 -1
  798. package/es-custom/components/ui-shell/side-nav-menu-item.js +2 -2
  799. package/es-custom/components/ui-shell/side-nav-menu-item.js.map +1 -1
  800. package/es-custom/components/ui-shell/side-nav-menu.js +3 -3
  801. package/es-custom/components/ui-shell/side-nav-menu.js.map +1 -1
  802. package/es-custom/components/ui-shell/side-nav.js +2 -2
  803. package/es-custom/components/ui-shell/side-nav.js.map +1 -1
  804. package/es-custom/components/ui-shell/switcher-divider.js +2 -2
  805. package/es-custom/components/ui-shell/switcher-divider.js.map +1 -1
  806. package/es-custom/components/ui-shell/switcher-item.js +2 -2
  807. package/es-custom/components/ui-shell/switcher-item.js.map +1 -1
  808. package/es-custom/components/ui-shell/switcher.js +2 -2
  809. package/es-custom/components/ui-shell/switcher.js.map +1 -1
  810. package/es-custom/feature-flags/es/index.js +153 -144
  811. package/es-custom/feature-flags/es/index.js.map +1 -1
  812. package/lib/components/breadcrumb/breadcrumb-item.d.ts +1 -1
  813. package/lib/components/button/button.d.ts +14 -16
  814. package/lib/components/feature-flags/index.d.ts +1 -1
  815. package/lib/components/floating-menu/defs.d.ts +10 -2
  816. package/lib/components/floating-menu/defs.js +9 -1
  817. package/lib/components/floating-menu/defs.js.map +1 -1
  818. package/lib/components/floating-menu/floating-menu.d.ts +31 -1
  819. package/lib/components/multi-select/multi-select.d.ts +9 -0
  820. package/lib/components/overflow-menu/overflow-menu-body.d.ts +18 -2
  821. package/package.json +3 -3
  822. package/scss/components/button/button.scss +2 -0
  823. package/scss/components/overflow-menu/overflow-menu.scss +7 -1
  824. package/scss/components/tabs/tabs-story.scss +15 -1
  825. package/scss/components/tabs/tabs.scss +16 -3
  826. package/telemetry.yml +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"expandable-tile.js","sources":["../../../src/components/tile/expandable-tile.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2026\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ChevronDown16 from '@carbon/icons/es/chevron--down/16.js';\nimport { prefix } from '../../globals/settings';\nimport { iconLoader } from '../../globals/internal/icon-loader';\nimport HostListener from '../../globals/decorators/host-listener';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss?lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Expandable tile.\n *\n * @element cds-expandable-tile\n * @fires cds-expandable-tile-beingtoggled\n * The custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n * @fires cds-expandable-tile-toggled - The custom event fired after a the expanded state is changed upon a user gesture.\n */\n@customElement(`${prefix}-expandable-tile`)\nclass CDSExpandableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n /**\n * The computed height of the below-the-fold content.\n */\n private _belowTheContentHeight = 0;\n\n /**\n * `true` if there is an AI Label.\n */\n protected _hasAILabel = false;\n\n /**\n * Handles `slotchange` event.\n */\n protected _handleSlotChange({ target }: Event) {\n const hasContent = (target as HTMLSlotElement)\n .assignedNodes()\n .filter((elem) =>\n (elem as HTMLElement).matches !== undefined\n ? (elem as HTMLElement).matches(\n (this.constructor as typeof CDSExpandableTile)?.aiLabelItem\n ) ||\n // remove reference of slug in v12\n (elem as HTMLElement).matches(\n (this.constructor as typeof CDSExpandableTile)?.slugItem\n )\n : false\n );\n\n if (hasContent.length > 0) {\n this._hasAILabel = Boolean(hasContent);\n (hasContent[0] as HTMLElement).setAttribute('size', 'xs');\n }\n this.requestUpdate();\n }\n\n /**\n * Handles `slotchange` event on the below-the-fold content.\n *\n * @param event The event.\n */\n private _handleSlotChangeBelowTheFoldContent(event: Event) {\n this._belowTheContentHeight = (event.target as HTMLSlotElement)\n .assignedNodes()\n .reduce(\n (acc, item) => acc + ((item as HTMLElement).offsetHeight ?? 0),\n 0\n );\n\n if (!this._belowTheContentHeight) {\n const element = getComputedStyle(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n this.querySelector('cds-tile-below-the-fold-content') as any\n );\n this._belowTheContentHeight = parseInt(element.height, 10);\n }\n this.requestUpdate();\n }\n\n private _handleExpand() {\n const expanded = !this.expanded;\n this.focus();\n const init = {\n bubbles: true,\n composed: true,\n detail: {\n expanded,\n },\n };\n const constructor = this.constructor as typeof CDSExpandableTile;\n const beforeChangeEvent = new CustomEvent(constructor.eventBeforeToggle, {\n ...init,\n cancelable: true,\n });\n if (this.dispatchEvent(beforeChangeEvent)) {\n this.expanded = expanded;\n const afterChangeEvent = new CustomEvent(constructor.eventToggle, init);\n this.dispatchEvent(afterChangeEvent);\n }\n }\n\n @HostListener('click')\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- https://github.com/carbon-design-system/carbon/issues/20452\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = () => {\n if (!this.withInteractive) {\n this._handleExpand();\n }\n };\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true })\n expanded = false;\n\n /**\n * Specify if the `ExpandableTile` component should be rendered with rounded corners.\n * Only valid when `ai-label` prop is present\n */\n @property({ type: Boolean, attribute: 'has-rounded-corners' })\n hasRoundedCorners = false;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true, attribute: 'with-interactive' })\n withInteractive = false;\n\n updated() {\n if (this._hasAILabel) {\n this.setAttribute('ai-label', '');\n } else {\n this.removeAttribute('ai-label');\n }\n }\n\n render() {\n const {\n expanded,\n withInteractive,\n _belowTheContentHeight: belowTheContentHeight,\n _handleSlotChangeBelowTheFoldContent: handleSlotChangeBelowTheFoldContent,\n } = this;\n\n const classes = classMap({\n [`${prefix}--tile__chevron`]: true,\n [`${prefix}--tile__chevron--interactive`]: withInteractive,\n });\n return html`\n <button\n class=\"${classes}\"\n aria-labelledby=\"above-the-fold-content\"\n aria-controls=\"below-the-fold-content\"\n tabindex=\"0\"\n @click=\"${withInteractive ? this._handleExpand : ''}\"\n aria-expanded=\"${String(expanded)}\">\n ${iconLoader(ChevronDown16, { id: 'icon' })}\n </button>\n <slot name=\"ai-label\" @slotchange=\"${this._handleSlotChange}\"></slot>\n <slot name=\"slug\" @slotchange=\"${this._handleSlotChange}\"></slot>\n <slot name=\"decorator\"></slot>\n <div id=\"content\" class=\"${prefix}--tile-content\">\n <div><slot name=\"above-the-fold-content\"></slot></div>\n <div\n class=\"${prefix}-ce--expandable-tile--below-the-fold-content\"\n style=\"${ifDefined(\n !expanded ? undefined : `max-height: ${belowTheContentHeight}px`\n )}\">\n <slot @slotchange=\"${handleSlotChangeBelowTheFoldContent}\"></slot>\n </div>\n </div>\n `;\n }\n\n /**\n * A selector that will return the slug item.\n *\n * remove in v12\n */\n static get slugItem() {\n return `${prefix}-slug`;\n }\n\n /**\n * A selector that will return the AI Label item.\n */\n static get aiLabelItem() {\n return `${prefix}-ai-label`;\n }\n\n /**\n * The name of the custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n */\n static get eventBeforeToggle() {\n return `${prefix}-expandable-tile-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after a the expanded state is changed upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-expandable-tile-toggled`;\n }\n\n static styles = styles;\n}\n\nexport default CDSExpandableTile;\n"],"names":["TILE_COLOR_SCHEME","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"expandable-tile.js","sources":["../../../src/components/tile/expandable-tile.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2026\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ChevronDown16 from '@carbon/icons/es/chevron--down/16.js';\nimport { prefix } from '../../globals/settings';\nimport { iconLoader } from '../../globals/internal/icon-loader';\nimport HostListener from '../../globals/decorators/host-listener';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss?lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Expandable tile.\n *\n * @element cds-expandable-tile\n * @fires cds-expandable-tile-beingtoggled\n * The custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n * @fires cds-expandable-tile-toggled - The custom event fired after a the expanded state is changed upon a user gesture.\n */\n@customElement(`${prefix}-expandable-tile`)\nclass CDSExpandableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n /**\n * The computed height of the below-the-fold content.\n */\n private _belowTheContentHeight = 0;\n\n /**\n * `true` if there is an AI Label.\n */\n protected _hasAILabel = false;\n\n /**\n * Handles `slotchange` event.\n */\n protected _handleSlotChange({ target }: Event) {\n const hasContent = (target as HTMLSlotElement)\n .assignedNodes()\n .filter((elem) =>\n (elem as HTMLElement).matches !== undefined\n ? (elem as HTMLElement).matches(\n (this.constructor as typeof CDSExpandableTile)?.aiLabelItem\n ) ||\n // remove reference of slug in v12\n (elem as HTMLElement).matches(\n (this.constructor as typeof CDSExpandableTile)?.slugItem\n )\n : false\n );\n\n if (hasContent.length > 0) {\n this._hasAILabel = Boolean(hasContent);\n (hasContent[0] as HTMLElement).setAttribute('size', 'xs');\n }\n this.requestUpdate();\n }\n\n /**\n * Handles `slotchange` event on the below-the-fold content.\n *\n * @param event The event.\n */\n private _handleSlotChangeBelowTheFoldContent(event: Event) {\n this._belowTheContentHeight = (event.target as HTMLSlotElement)\n .assignedNodes()\n .reduce(\n (acc, item) => acc + ((item as HTMLElement).offsetHeight ?? 0),\n 0\n );\n\n if (!this._belowTheContentHeight) {\n const element = getComputedStyle(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n this.querySelector('cds-tile-below-the-fold-content') as any\n );\n this._belowTheContentHeight = parseInt(element.height, 10);\n }\n this.requestUpdate();\n }\n\n private _handleExpand() {\n const expanded = !this.expanded;\n this.focus();\n const init = {\n bubbles: true,\n composed: true,\n detail: {\n expanded,\n },\n };\n const constructor = this.constructor as typeof CDSExpandableTile;\n const beforeChangeEvent = new CustomEvent(constructor.eventBeforeToggle, {\n ...init,\n cancelable: true,\n });\n if (this.dispatchEvent(beforeChangeEvent)) {\n this.expanded = expanded;\n const afterChangeEvent = new CustomEvent(constructor.eventToggle, init);\n this.dispatchEvent(afterChangeEvent);\n }\n }\n\n @HostListener('click')\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- https://github.com/carbon-design-system/carbon/issues/20452\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = () => {\n if (!this.withInteractive) {\n this._handleExpand();\n }\n };\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true })\n expanded = false;\n\n /**\n * Specify if the `ExpandableTile` component should be rendered with rounded corners.\n * Only valid when `ai-label` prop is present\n */\n @property({ type: Boolean, attribute: 'has-rounded-corners' })\n hasRoundedCorners = false;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true, attribute: 'with-interactive' })\n withInteractive = false;\n\n updated() {\n if (this._hasAILabel) {\n this.setAttribute('ai-label', '');\n } else {\n this.removeAttribute('ai-label');\n }\n }\n\n render() {\n const {\n expanded,\n withInteractive,\n _belowTheContentHeight: belowTheContentHeight,\n _handleSlotChangeBelowTheFoldContent: handleSlotChangeBelowTheFoldContent,\n } = this;\n\n const classes = classMap({\n [`${prefix}--tile__chevron`]: true,\n [`${prefix}--tile__chevron--interactive`]: withInteractive,\n });\n return html`\n <button\n class=\"${classes}\"\n aria-labelledby=\"above-the-fold-content\"\n aria-controls=\"below-the-fold-content\"\n tabindex=\"0\"\n @click=\"${withInteractive ? this._handleExpand : ''}\"\n aria-expanded=\"${String(expanded)}\">\n ${iconLoader(ChevronDown16, { id: 'icon' })}\n </button>\n <slot name=\"ai-label\" @slotchange=\"${this._handleSlotChange}\"></slot>\n <slot name=\"slug\" @slotchange=\"${this._handleSlotChange}\"></slot>\n <slot name=\"decorator\"></slot>\n <div id=\"content\" class=\"${prefix}--tile-content\">\n <div><slot name=\"above-the-fold-content\"></slot></div>\n <div\n class=\"${prefix}-ce--expandable-tile--below-the-fold-content\"\n style=\"${ifDefined(\n !expanded ? undefined : `max-height: ${belowTheContentHeight}px`\n )}\">\n <slot @slotchange=\"${handleSlotChangeBelowTheFoldContent}\"></slot>\n </div>\n </div>\n `;\n }\n\n /**\n * A selector that will return the slug item.\n *\n * remove in v12\n */\n static get slugItem() {\n return `${prefix}-slug`;\n }\n\n /**\n * A selector that will return the AI Label item.\n */\n static get aiLabelItem() {\n return `${prefix}-ai-label`;\n }\n\n /**\n * The name of the custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n */\n static get eventBeforeToggle() {\n return `${prefix}-expandable-tile-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after a the expanded state is changed upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-expandable-tile-toggled`;\n }\n\n static styles = styles;\n}\n\nexport default CDSExpandableTile;\n"],"names":["TILE_COLOR_SCHEME","customElement"],"mappings":"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"}
@@ -13,7 +13,7 @@ import { prefix } from '../../globals/settings.js';
13
13
  import SelectableTile from './selectable-tile.js';
14
14
  import CheckmarkFilled16 from '@carbon/icons/es/checkmark--filled/16.js';
15
15
  import { carbonElement } from '../../globals/decorators/carbon-element.js';
16
- import { iconLoader } from '../../globals/internal/icon-loader.js';
16
+ import iconLoader from '../../globals/internal/icon-loader.js';
17
17
 
18
18
  /**
19
19
  * Copyright IBM Corp. 2019, 2024
@@ -97,7 +97,7 @@ let CDSRadioTile = class CDSRadioTile extends SelectableTile {
97
97
  CDSRadioTile = __decorate([
98
98
  carbonElement(`${prefix}-radio-tile`)
99
99
  ], CDSRadioTile);
100
- var CDSRadioTile$1 = CDSRadioTile;
100
+ var CDSRadioTile_default = CDSRadioTile;
101
101
 
102
- export { CDSRadioTile$1 as default };
102
+ export { CDSRadioTile_default as default };
103
103
  //# sourceMappingURL=radio-tile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio-tile.js","sources":["../../../src/components/tile/radio-tile.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { prefix } from '../../globals/settings';\nimport SelectableTile from './selectable-tile';\nimport CheckmarkFilled16 from '@carbon/icons/es/checkmark--filled/16.js';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport { iconLoader } from '../../globals/internal/icon-loader';\n\n/**\n * Radio tile.\n *\n * @element cds-radio-tile\n * @fires cds-radio-tile-selected\n * The name of the custom event fired after this radio tile changes its selected state.\n */\n@customElement(`${prefix}-radio-tile`)\nclass CDSRadioTile extends SelectableTile {\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = true;\n const { selected, name } = this;\n const { eventRadioChange } = this.constructor as typeof CDSRadioTile;\n this.dispatchEvent(\n new CustomEvent(eventRadioChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n name,\n },\n })\n );\n }\n\n protected _handleKeydown = (event: KeyboardEvent) => {\n if (event.key === ' ' || event.key === 'Enter') {\n event.preventDefault();\n }\n };\n\n render() {\n const {\n colorScheme,\n checkmarkLabel,\n disabled,\n hasRoundedCorners,\n name,\n selected,\n value,\n _handleChange: handleChange,\n _handleKeydown: handleKeydown,\n _hasAILabel: hasAILabel,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--radio`]: true,\n [`${prefix}--tile--disabled`]: disabled,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n [`${prefix}--tile--slug-rounded`]: hasAILabel && hasRoundedCorners,\n });\n\n return html`\n <input\n type=\"radio\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n ?disabled=\"${disabled}\"\n tabindex=\"${selected ? 0 : -1}\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${!disabled ? handleChange : undefined}\n @keydown=\"${!disabled ? handleKeydown : undefined}\" />\n <label part=\"label\" for=\"input\" class=\"${classes}\">\n ${iconLoader(CheckmarkFilled16, {\n class: `${prefix}--tile__checkmark`,\n title: checkmarkLabel,\n })}\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n <slot name=\"decorator\"></slot>\n <slot name=\"ai-label\" @slotchange=\"${this._handleSlotChange}\"></slot>\n `;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventRadioChange() {\n return `${prefix}-radio-tile-selected`;\n }\n}\n\nexport default CDSRadioTile;\n"],"names":["customElement"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;;AAKG;AAWH;;;;;;AAMG;AAEH,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,cAAc,CAAA;AAAzC,IAAA,WAAA,GAAA;;AAoBY,QAAA,IAAA,CAAA,cAAc,GAAG,CAAC,KAAoB,KAAI;AAClD,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,EAAE;gBAC9C,KAAK,CAAC,cAAc,EAAE;YACxB;AACF,QAAA,CAAC;IAuDH;AA9EE;;AAEG;IACO,aAAa,GAAA;AACrB,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;AACpB,QAAA,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI;AAC/B,QAAA,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,WAAkC;AACpE,QAAA,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAAC,gBAAgB,EAAE;AAChC,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,MAAM,EAAE;gBACN,QAAQ;gBACR,IAAI;AACL,aAAA;AACF,SAAA,CAAC,CACH;IACH;IAQA,MAAM,GAAA;AACJ,QAAA,MAAM,EACJ,WAAW,EACX,cAAc,EACd,QAAQ,EACR,iBAAiB,EACjB,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,aAAa,EAAE,YAAY,EAC3B,cAAc,EAAE,aAAa,EAC7B,WAAW,EAAE,UAAU,GACxB,GAAG,IAAI;QACR,MAAM,OAAO,GAAG,QAAQ,CAAC;AACvB,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,MAAA,CAAQ,GAAG,IAAI;AACzB,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,kBAAA,CAAoB,GAAG,IAAI;AACrC,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,aAAA,CAAe,GAAG,IAAI;AAChC,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,gBAAA,CAAkB,GAAG,QAAQ;AACvC,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,mBAAA,CAAqB,GAAG,QAAQ;AAC1C,YAAA,CAAC,GAAG,MAAM,CAAA,QAAA,EAAW,WAAW,CAAA,CAAE,GAAG,WAAW;AAChD,YAAA,CAAC,GAAG,MAAM,CAAA,oBAAA,CAAsB,GAAG,UAAU,IAAI,iBAAiB;AACnE,SAAA,CAAC;AAEF,QAAA,OAAO,IAAI,CAAA;;;;iBAIE,MAAM,CAAA;qBACF,QAAQ,CAAA;oBACT,QAAQ,GAAG,CAAC,GAAG,EAAE,CAAA;gBACrB,SAAS,CAAC,IAAI,CAAC,CAAA;iBACd,SAAS,CAAC,KAAK,CAAC,CAAA;mBACd,QAAQ;kBACT,CAAC,QAAQ,GAAG,YAAY,GAAG,SAAS;oBAClC,CAAC,QAAQ,GAAG,aAAa,GAAG,SAAS,CAAA;+CACV,OAAO,CAAA;UAC5C,UAAU,CAAC,iBAAiB,EAAE;YAC9B,KAAK,EAAE,CAAA,EAAG,MAAM,CAAA,iBAAA,CAAmB;AACnC,YAAA,KAAK,EAAE,cAAc;SACtB,CAAC;sBACY,MAAM,CAAA;;;AAGe,yCAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;KAC5D;IACH;AAEA;;AAEG;AACH,IAAA,WAAW,gBAAgB,GAAA;QACzB,OAAO,CAAA,EAAG,MAAM,CAAA,oBAAA,CAAsB;IACxC;CACD;AA/EK,YAAY,GAAA,UAAA,CAAA;AADjB,IAAAA,aAAa,CAAC,CAAA,EAAG,MAAM,CAAA,WAAA,CAAa;AAC/B,CAAA,EAAA,YAAY,CA+EjB;AAED,qBAAe,YAAY;;;;"}
1
+ {"version":3,"file":"radio-tile.js","sources":["../../../src/components/tile/radio-tile.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { prefix } from '../../globals/settings';\nimport SelectableTile from './selectable-tile';\nimport CheckmarkFilled16 from '@carbon/icons/es/checkmark--filled/16.js';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport { iconLoader } from '../../globals/internal/icon-loader';\n\n/**\n * Radio tile.\n *\n * @element cds-radio-tile\n * @fires cds-radio-tile-selected\n * The name of the custom event fired after this radio tile changes its selected state.\n */\n@customElement(`${prefix}-radio-tile`)\nclass CDSRadioTile extends SelectableTile {\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = true;\n const { selected, name } = this;\n const { eventRadioChange } = this.constructor as typeof CDSRadioTile;\n this.dispatchEvent(\n new CustomEvent(eventRadioChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n name,\n },\n })\n );\n }\n\n protected _handleKeydown = (event: KeyboardEvent) => {\n if (event.key === ' ' || event.key === 'Enter') {\n event.preventDefault();\n }\n };\n\n render() {\n const {\n colorScheme,\n checkmarkLabel,\n disabled,\n hasRoundedCorners,\n name,\n selected,\n value,\n _handleChange: handleChange,\n _handleKeydown: handleKeydown,\n _hasAILabel: hasAILabel,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--radio`]: true,\n [`${prefix}--tile--disabled`]: disabled,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n [`${prefix}--tile--slug-rounded`]: hasAILabel && hasRoundedCorners,\n });\n\n return html`\n <input\n type=\"radio\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n ?disabled=\"${disabled}\"\n tabindex=\"${selected ? 0 : -1}\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${!disabled ? handleChange : undefined}\n @keydown=\"${!disabled ? handleKeydown : undefined}\" />\n <label part=\"label\" for=\"input\" class=\"${classes}\">\n ${iconLoader(CheckmarkFilled16, {\n class: `${prefix}--tile__checkmark`,\n title: checkmarkLabel,\n })}\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n <slot name=\"decorator\"></slot>\n <slot name=\"ai-label\" @slotchange=\"${this._handleSlotChange}\"></slot>\n `;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventRadioChange() {\n return `${prefix}-radio-tile-selected`;\n }\n}\n\nexport default CDSRadioTile;\n"],"names":["customElement"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;;AAKG;AAWH;;;;;;AAMG;AAEH,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,cAAc,CAAA;AAAzC,IAAA,WAAA,GAAA;;AAoBY,QAAA,IAAA,CAAA,cAAc,GAAG,CAAC,KAAoB,KAAI;AAClD,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,EAAE;gBAC9C,KAAK,CAAC,cAAc,EAAE;YACxB;AACF,QAAA,CAAC;IAuDH;AA9EE;;AAEG;IACO,aAAa,GAAA;AACrB,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;AACpB,QAAA,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI;AAC/B,QAAA,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,WAAkC;AACpE,QAAA,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAAC,gBAAgB,EAAE;AAChC,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,MAAM,EAAE;gBACN,QAAQ;gBACR,IAAI;AACL,aAAA;AACF,SAAA,CAAC,CACH;IACH;IAQA,MAAM,GAAA;AACJ,QAAA,MAAM,EACJ,WAAW,EACX,cAAc,EACd,QAAQ,EACR,iBAAiB,EACjB,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,aAAa,EAAE,YAAY,EAC3B,cAAc,EAAE,aAAa,EAC7B,WAAW,EAAE,UAAU,GACxB,GAAG,IAAI;QACR,MAAM,OAAO,GAAG,QAAQ,CAAC;AACvB,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,MAAA,CAAQ,GAAG,IAAI;AACzB,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,kBAAA,CAAoB,GAAG,IAAI;AACrC,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,aAAA,CAAe,GAAG,IAAI;AAChC,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,gBAAA,CAAkB,GAAG,QAAQ;AACvC,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,mBAAA,CAAqB,GAAG,QAAQ;AAC1C,YAAA,CAAC,GAAG,MAAM,CAAA,QAAA,EAAW,WAAW,CAAA,CAAE,GAAG,WAAW;AAChD,YAAA,CAAC,GAAG,MAAM,CAAA,oBAAA,CAAsB,GAAG,UAAU,IAAI,iBAAiB;AACnE,SAAA,CAAC;AAEF,QAAA,OAAO,IAAI,CAAA;;;;iBAIE,MAAM,CAAA;qBACF,QAAQ,CAAA;oBACT,QAAQ,GAAG,CAAC,GAAG,EAAE,CAAA;gBACrB,SAAS,CAAC,IAAI,CAAC,CAAA;iBACd,SAAS,CAAC,KAAK,CAAC,CAAA;mBACd,QAAQ;kBACT,CAAC,QAAQ,GAAG,YAAY,GAAG,SAAS;oBAClC,CAAC,QAAQ,GAAG,aAAa,GAAG,SAAS,CAAA;+CACV,OAAO,CAAA;UAC5C,UAAU,CAAC,iBAAiB,EAAE;YAC9B,KAAK,EAAE,CAAA,EAAG,MAAM,CAAA,iBAAA,CAAmB;AACnC,YAAA,KAAK,EAAE,cAAc;SACtB,CAAC;sBACY,MAAM,CAAA;;;AAGe,yCAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;KAC5D;IACH;AAEA;;AAEG;AACH,IAAA,WAAW,gBAAgB,GAAA;QACzB,OAAO,CAAA,EAAG,MAAM,CAAA,oBAAA,CAAsB;IACxC;CACD;AA/EK,YAAY,GAAA,UAAA,CAAA;AADjB,IAAAA,aAAa,CAAC,CAAA,EAAG,MAAM,CAAA,WAAA,CAAa;AAC/B,CAAA,EAAA,YAAY,CA+EjB;AAED,2BAAe,YAAY;;;;"}
@@ -17,7 +17,7 @@ import HostListenerMixin from '../../globals/mixins/host-listener.js';
17
17
  import { FORM_ELEMENT_COLOR_SCHEME } from '../../globals/shared-enums.js';
18
18
  import styles from './tile.scss.js';
19
19
  import { carbonElement } from '../../globals/decorators/carbon-element.js';
20
- import { iconLoader } from '../../globals/internal/icon-loader.js';
20
+ import iconLoader from '../../globals/internal/icon-loader.js';
21
21
 
22
22
  /**
23
23
  * Copyright IBM Corp. 2019, 2023
@@ -277,7 +277,7 @@ __decorate([
277
277
  CDSTileGroup = __decorate([
278
278
  carbonElement(`${prefix}-tile-group`)
279
279
  ], CDSTileGroup);
280
- var CDSTileGroup$1 = CDSTileGroup;
280
+ var CDSTileGroup_default = CDSTileGroup;
281
281
 
282
- export { CDSTileGroup$1 as default };
282
+ export { CDSTileGroup_default as default };
283
283
  //# sourceMappingURL=tile-group.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tile-group.js","sources":["../../../src/components/tile/tile-group.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { NAVIGATION_DIRECTION } from '../../globals/internal/radio-group-manager';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport styles from './tile.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Map of navigation direction by key.\n */\nconst navigationDirectionForKey = {\n ArrowUp: NAVIGATION_DIRECTION.BACKWARD,\n Up: NAVIGATION_DIRECTION.BACKWARD, // IE\n ArrowLeft: NAVIGATION_DIRECTION.BACKWARD,\n Left: NAVIGATION_DIRECTION.BACKWARD, // IE\n ArrowDown: NAVIGATION_DIRECTION.FORWARD,\n Down: NAVIGATION_DIRECTION.FORWARD, // IE\n ArrowRight: NAVIGATION_DIRECTION.FORWARD,\n Right: NAVIGATION_DIRECTION.FORWARD, // IE\n};\n\n/**\n * Tile group.\n *\n * @element cds-tile-group\n * @fires cds-current-radio-tile-selection\n * The name of the custom event fired after a radio tile changes its selected state.\n * @fires cds-current-selectable-tile-selections\n * The name of the custom event fired after a selectable tile changes its selected state.\n */\n@customElement(`${prefix}-tile-group`)\nclass CDSTileGroup extends HostListenerMixin(LitElement) {\n private _handleRadioClick(event) {\n const { target } = event;\n const { currentRadioSelection } = this;\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (target.matches(`${prefix}-ai-label`)) {\n return;\n }\n\n if (!currentRadioSelection) {\n this.currentRadioSelection = target;\n } else if (currentRadioSelection !== target) {\n currentRadioSelection.toggleAttribute('selected');\n this.currentRadioSelection = target;\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n target,\n },\n })\n );\n }\n\n /**\n * Click listener to ensure selectability.\n *\n * @param event click\n */\n @HostListener('click')\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n private _handleTileSelect(event: Event) {\n if (this.radioTiles.length) {\n this._handleRadioClick(event);\n }\n }\n\n /**\n * Handle keyboard navigation for radio tiles\n *\n * @param nextSibling to focus on\n */\n private _handleKeydownRadio(nextSibling) {\n const { currentRadioSelection } = this;\n\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (currentRadioSelection) {\n currentRadioSelection.toggleAttribute('selected');\n }\n nextSibling.focus();\n nextSibling.toggleAttribute('selected');\n this.currentRadioSelection = nextSibling;\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n nextSibling,\n },\n })\n );\n }\n\n /**\n * Handle keyboard navigation for selectable tiles\n *\n * @param event to get target\n * @param nextSibling to focus on\n */\n private _handleKeydownSelectable(event, nextSibling?) {\n const { target } = event;\n const { currentSelections } = this;\n const { eventCurrentSelectableTilesSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (nextSibling) {\n nextSibling.focus();\n } else {\n if (!currentSelections.includes(target)) {\n currentSelections.push(target);\n } else {\n currentSelections.splice(currentSelections.indexOf(target), 1);\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentSelectableTilesSelection, {\n bubbles: true,\n composed: true,\n detail: {\n currentSelections,\n },\n })\n );\n }\n }\n\n /**\n * Keyboard listener to ensure keyboard navigation.\n *\n * @param event to get key pressed\n */\n @HostListener('keydown')\n // @ts-expect-error: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { target, key } = event;\n const { radioTiles, selectableTiles } = this;\n const navigationDirection = navigationDirectionForKey[key];\n\n if ((target as HTMLElement)?.matches(`${prefix}-ai-label`)) {\n return;\n }\n\n const tiles = radioTiles.length ? radioTiles : selectableTiles;\n const currentIndex = [...tiles].findIndex((e) => e == target);\n const nextIndex = currentIndex + navigationDirection;\n const nextSibling =\n nextIndex !== -1\n ? tiles[nextIndex % tiles.length]\n : tiles[tiles.length - 1];\n\n if (navigationDirection) {\n event.preventDefault(); // Prevent default (scrolling) behavior\n\n if (this.radioTiles.length) {\n this._handleKeydownRadio(nextSibling);\n } else {\n this._handleKeydownSelectable(event, nextSibling);\n }\n } else if (key === ' ' || key === 'Enter') {\n this._handleKeydownSelectable(event);\n }\n };\n\n /**\n * Focus listener to focus on selected element upon focusing\n *\n * @param event to get focused\n */\n @HostListener('focusin')\n // @ts-expect-error: The decorator refers to this method but TS thinks this method is not referred to\n private _handleFocus = (event: KeyboardEvent) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n const { relatedTarget, target } = event as any;\n if ((target as HTMLElement)?.matches(`${prefix}-ai-label`)) {\n return;\n }\n\n if (this.radioTiles.length) {\n if (!this.currentRadioSelection) {\n target.toggleAttribute('selected');\n this.currentRadioSelection = target;\n } else if (\n !relatedTarget?.matches(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n ) &&\n target !== this.currentRadioSelection\n ) {\n this.currentRadioSelection.focus();\n }\n }\n };\n\n /**\n * Provide an optional className to be applied to the component\n */\n @property({ reflect: true, attribute: 'fieldset-class-name' })\n fieldsetClassName;\n\n /**\n * Specify whether the group is disabled\n */\n @property({ reflect: true, type: Boolean })\n disabled;\n\n @property()\n currentRadioSelection;\n\n @property()\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n currentSelections = [] as any;\n\n @property()\n radioTiles;\n\n @property()\n selectableTiles;\n\n firstUpdated() {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'group');\n }\n\n if (!this.radioTiles) {\n this.radioTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n );\n this.radioTiles.forEach((tile) => {\n if (tile.selected) {\n this.currentRadioSelection = tile;\n }\n });\n }\n\n if (!this.selectableTiles) {\n this.selectableTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorSelectableTile\n );\n }\n\n if (this.disabled) {\n this.radioTiles.forEach((e) => e.toggleAttribute('disabled'));\n this.selectableTiles.forEach((e) => e.toggleAttribute('disabled'));\n }\n }\n\n render() {\n const { fieldsetClassName, disabled } = this;\n return html`\n <fieldset class=\"${fieldsetClassName}\" ?disabled=${disabled}>\n <slot name=\"legend\" class=\"${prefix}--label\"></slot>\n <slot></slot>\n </fieldset>\n `;\n }\n\n /**\n * A selector that selects a radio tile component.\n */\n static get selectorRadioTile() {\n return `${prefix}-radio-tile`;\n }\n\n /**\n * A selector that selects a selectable tile component.\n */\n static get selectorSelectableTile() {\n return `${prefix}-selectable-tile`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentRadioTileSelection() {\n return `${prefix}-current-radio-tile-selection`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentSelectableTilesSelection() {\n return `${prefix}-current-selectable-tile-selections`;\n }\n\n static styles = styles;\n}\n\nexport default CDSTileGroup;\n"],"names":["customElement"],"mappings":"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"}
1
+ {"version":3,"file":"tile-group.js","sources":["../../../src/components/tile/tile-group.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { NAVIGATION_DIRECTION } from '../../globals/internal/radio-group-manager';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport styles from './tile.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Map of navigation direction by key.\n */\nconst navigationDirectionForKey = {\n ArrowUp: NAVIGATION_DIRECTION.BACKWARD,\n Up: NAVIGATION_DIRECTION.BACKWARD, // IE\n ArrowLeft: NAVIGATION_DIRECTION.BACKWARD,\n Left: NAVIGATION_DIRECTION.BACKWARD, // IE\n ArrowDown: NAVIGATION_DIRECTION.FORWARD,\n Down: NAVIGATION_DIRECTION.FORWARD, // IE\n ArrowRight: NAVIGATION_DIRECTION.FORWARD,\n Right: NAVIGATION_DIRECTION.FORWARD, // IE\n};\n\n/**\n * Tile group.\n *\n * @element cds-tile-group\n * @fires cds-current-radio-tile-selection\n * The name of the custom event fired after a radio tile changes its selected state.\n * @fires cds-current-selectable-tile-selections\n * The name of the custom event fired after a selectable tile changes its selected state.\n */\n@customElement(`${prefix}-tile-group`)\nclass CDSTileGroup extends HostListenerMixin(LitElement) {\n private _handleRadioClick(event) {\n const { target } = event;\n const { currentRadioSelection } = this;\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (target.matches(`${prefix}-ai-label`)) {\n return;\n }\n\n if (!currentRadioSelection) {\n this.currentRadioSelection = target;\n } else if (currentRadioSelection !== target) {\n currentRadioSelection.toggleAttribute('selected');\n this.currentRadioSelection = target;\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n target,\n },\n })\n );\n }\n\n /**\n * Click listener to ensure selectability.\n *\n * @param event click\n */\n @HostListener('click')\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n private _handleTileSelect(event: Event) {\n if (this.radioTiles.length) {\n this._handleRadioClick(event);\n }\n }\n\n /**\n * Handle keyboard navigation for radio tiles\n *\n * @param nextSibling to focus on\n */\n private _handleKeydownRadio(nextSibling) {\n const { currentRadioSelection } = this;\n\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (currentRadioSelection) {\n currentRadioSelection.toggleAttribute('selected');\n }\n nextSibling.focus();\n nextSibling.toggleAttribute('selected');\n this.currentRadioSelection = nextSibling;\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n nextSibling,\n },\n })\n );\n }\n\n /**\n * Handle keyboard navigation for selectable tiles\n *\n * @param event to get target\n * @param nextSibling to focus on\n */\n private _handleKeydownSelectable(event, nextSibling?) {\n const { target } = event;\n const { currentSelections } = this;\n const { eventCurrentSelectableTilesSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (nextSibling) {\n nextSibling.focus();\n } else {\n if (!currentSelections.includes(target)) {\n currentSelections.push(target);\n } else {\n currentSelections.splice(currentSelections.indexOf(target), 1);\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentSelectableTilesSelection, {\n bubbles: true,\n composed: true,\n detail: {\n currentSelections,\n },\n })\n );\n }\n }\n\n /**\n * Keyboard listener to ensure keyboard navigation.\n *\n * @param event to get key pressed\n */\n @HostListener('keydown')\n // @ts-expect-error: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { target, key } = event;\n const { radioTiles, selectableTiles } = this;\n const navigationDirection = navigationDirectionForKey[key];\n\n if ((target as HTMLElement)?.matches(`${prefix}-ai-label`)) {\n return;\n }\n\n const tiles = radioTiles.length ? radioTiles : selectableTiles;\n const currentIndex = [...tiles].findIndex((e) => e == target);\n const nextIndex = currentIndex + navigationDirection;\n const nextSibling =\n nextIndex !== -1\n ? tiles[nextIndex % tiles.length]\n : tiles[tiles.length - 1];\n\n if (navigationDirection) {\n event.preventDefault(); // Prevent default (scrolling) behavior\n\n if (this.radioTiles.length) {\n this._handleKeydownRadio(nextSibling);\n } else {\n this._handleKeydownSelectable(event, nextSibling);\n }\n } else if (key === ' ' || key === 'Enter') {\n this._handleKeydownSelectable(event);\n }\n };\n\n /**\n * Focus listener to focus on selected element upon focusing\n *\n * @param event to get focused\n */\n @HostListener('focusin')\n // @ts-expect-error: The decorator refers to this method but TS thinks this method is not referred to\n private _handleFocus = (event: KeyboardEvent) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n const { relatedTarget, target } = event as any;\n if ((target as HTMLElement)?.matches(`${prefix}-ai-label`)) {\n return;\n }\n\n if (this.radioTiles.length) {\n if (!this.currentRadioSelection) {\n target.toggleAttribute('selected');\n this.currentRadioSelection = target;\n } else if (\n !relatedTarget?.matches(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n ) &&\n target !== this.currentRadioSelection\n ) {\n this.currentRadioSelection.focus();\n }\n }\n };\n\n /**\n * Provide an optional className to be applied to the component\n */\n @property({ reflect: true, attribute: 'fieldset-class-name' })\n fieldsetClassName;\n\n /**\n * Specify whether the group is disabled\n */\n @property({ reflect: true, type: Boolean })\n disabled;\n\n @property()\n currentRadioSelection;\n\n @property()\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n currentSelections = [] as any;\n\n @property()\n radioTiles;\n\n @property()\n selectableTiles;\n\n firstUpdated() {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'group');\n }\n\n if (!this.radioTiles) {\n this.radioTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n );\n this.radioTiles.forEach((tile) => {\n if (tile.selected) {\n this.currentRadioSelection = tile;\n }\n });\n }\n\n if (!this.selectableTiles) {\n this.selectableTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorSelectableTile\n );\n }\n\n if (this.disabled) {\n this.radioTiles.forEach((e) => e.toggleAttribute('disabled'));\n this.selectableTiles.forEach((e) => e.toggleAttribute('disabled'));\n }\n }\n\n render() {\n const { fieldsetClassName, disabled } = this;\n return html`\n <fieldset class=\"${fieldsetClassName}\" ?disabled=${disabled}>\n <slot name=\"legend\" class=\"${prefix}--label\"></slot>\n <slot></slot>\n </fieldset>\n `;\n }\n\n /**\n * A selector that selects a radio tile component.\n */\n static get selectorRadioTile() {\n return `${prefix}-radio-tile`;\n }\n\n /**\n * A selector that selects a selectable tile component.\n */\n static get selectorSelectableTile() {\n return `${prefix}-selectable-tile`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentRadioTileSelection() {\n return `${prefix}-current-radio-tile-selection`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentSelectableTilesSelection() {\n return `${prefix}-current-selectable-tile-selections`;\n }\n\n static styles = styles;\n}\n\nexport default CDSTileGroup;\n"],"names":["customElement"],"mappings":"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"}
@@ -99,7 +99,7 @@ __decorate([
99
99
  CDSTile = __decorate([
100
100
  carbonElement(`${prefix}-tile`)
101
101
  ], CDSTile);
102
- var CDSTile$1 = CDSTile;
102
+ var CDSTile_default = CDSTile;
103
103
 
104
- export { FORM_ELEMENT_COLOR_SCHEME as TILE_COLOR_SCHEME, CDSTile$1 as default };
104
+ export { FORM_ELEMENT_COLOR_SCHEME as TILE_COLOR_SCHEME, CDSTile_default as default };
105
105
  //# sourceMappingURL=tile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tile.js","sources":["../../../src/components/tile/tile.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nexport { TILE_COLOR_SCHEME };\n\n/**\n * Basic tile.\n *\n * @element cds-tile\n */\n@customElement(`${prefix}-tile`)\nclass CDSTile extends LitElement {\n /**\n * `true` if there is an AI Label.\n */\n protected _hasAILabel = false;\n\n /**\n * Handles `slotchange` event.\n */\n protected _handleSlotChange({ target }: Event) {\n const hasContent = (target as HTMLSlotElement)\n .assignedNodes()\n .filter((elem) =>\n (elem as HTMLElement).matches !== undefined\n ? (elem as HTMLElement).matches(\n (this.constructor as typeof CDSTile).aiLabelItem\n ) ||\n // remove reference of slug in v12\n (elem as HTMLElement).matches(\n (this.constructor as typeof CDSTile).slugItem\n )\n : false\n );\n if (hasContent.length > 0) {\n this._hasAILabel = Boolean(hasContent);\n (hasContent[0] as HTMLElement).setAttribute('size', 'xs');\n }\n this.requestUpdate();\n }\n\n /**\n * The color scheme.\n *\n * @deprecated\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * Specify if the `Tile` component should be rendered with rounded corners.\n * Only valid when `ai-label` prop is present\n */\n @property({ type: Boolean, attribute: 'has-rounded-corners' })\n hasRoundedCorners = false;\n\n updated() {\n if (this._hasAILabel) {\n this.setAttribute('ai-label', '');\n } else {\n this.removeAttribute('ai-label');\n }\n }\n\n render() {\n return html` <slot></slot\n ><slot name=\"decorator\" @slotchange=\"${this._handleSlotChange}\"></slot>\n <slot name=\"ai-label\" @slotchange=\"${this._handleSlotChange}\"></slot\n ><slot name=\"slug\" @slotchange=\"${this._handleSlotChange}\"></slot>`;\n }\n\n /**\n * A selector that will return the slug item.\n *\n * TODO: remove in v12\n */\n static get slugItem() {\n return `${prefix}-slug`;\n }\n\n /**\n * A selector that will return the AI Label item.\n */\n static get aiLabelItem() {\n return `${prefix}-ai-label`;\n }\n\n static styles = styles;\n}\n\nexport default CDSTile;\n"],"names":["TILE_COLOR_SCHEME","customElement"],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;AAKG;AAWH;;;;AAIG;AAEH,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,UAAU,CAAA;AAAhC,IAAA,WAAA,GAAA;;AACE;;AAEG;QACO,IAAA,CAAA,WAAW,GAAG,KAAK;AA0B7B;;;;AAIG;AAEH,QAAA,IAAA,CAAA,WAAW,GAAGA,yBAAiB,CAAC,OAAO;AAEvC;;;AAGG;QAEH,IAAA,CAAA,iBAAiB,GAAG,KAAK;IAkC3B;AAvEE;;AAEG;IACO,iBAAiB,CAAC,EAAE,MAAM,EAAS,EAAA;QAC3C,MAAM,UAAU,GAAI;AACjB,aAAA,aAAa;aACb,MAAM,CAAC,CAAC,IAAI,KACV,IAAoB,CAAC,OAAO,KAAK;cAC7B,IAAoB,CAAC,OAAO,CAC1B,IAAI,CAAC,WAA8B,CAAC,WAAW,CACjD;;gBAEA,IAAoB,CAAC,OAAO,CAC1B,IAAI,CAAC,WAA8B,CAAC,QAAQ;cAE/C,KAAK,CACV;AACH,QAAA,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;AACzB,YAAA,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;YACrC,UAAU,CAAC,CAAC,CAAiB,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC;QAC3D;QACA,IAAI,CAAC,aAAa,EAAE;IACtB;IAiBA,OAAO,GAAA;AACL,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,YAAA,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,CAAC;QACnC;aAAO;AACL,YAAA,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;QAClC;IACF;IAEA,MAAM,GAAA;AACJ,QAAA,OAAO,IAAI,CAAA,CAAA;AAC8B,2CAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;AACxB,yCAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;wCACzB,IAAI,CAAC,iBAAiB,CAAA,SAAA,CAAW;IACvE;AAEA;;;;AAIG;AACH,IAAA,WAAW,QAAQ,GAAA;QACjB,OAAO,CAAA,EAAG,MAAM,CAAA,KAAA,CAAO;IACzB;AAEA;;AAEG;AACH,IAAA,WAAW,WAAW,GAAA;QACpB,OAAO,CAAA,EAAG,MAAM,CAAA,SAAA,CAAW;IAC7B;;AAEO,OAAA,CAAA,MAAM,GAAG,MAAH;AAxCb,UAAA,CAAA;IADC,QAAQ,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE;AACd,CAAA,EAAA,OAAA,CAAA,SAAA,EAAA,aAAA,EAAA,MAAA,CAAA;AAOxC,UAAA,CAAA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE;AACnC,CAAA,EAAA,OAAA,CAAA,SAAA,EAAA,mBAAA,EAAA,MAAA,CAAA;AA3CtB,OAAO,GAAA,UAAA,CAAA;AADZ,IAAAC,aAAa,CAAC,CAAA,EAAG,MAAM,CAAA,KAAA,CAAO;AACzB,CAAA,EAAA,OAAO,CA6EZ;AAED,gBAAe,OAAO;;;;"}
1
+ {"version":3,"file":"tile.js","sources":["../../../src/components/tile/tile.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nexport { TILE_COLOR_SCHEME };\n\n/**\n * Basic tile.\n *\n * @element cds-tile\n */\n@customElement(`${prefix}-tile`)\nclass CDSTile extends LitElement {\n /**\n * `true` if there is an AI Label.\n */\n protected _hasAILabel = false;\n\n /**\n * Handles `slotchange` event.\n */\n protected _handleSlotChange({ target }: Event) {\n const hasContent = (target as HTMLSlotElement)\n .assignedNodes()\n .filter((elem) =>\n (elem as HTMLElement).matches !== undefined\n ? (elem as HTMLElement).matches(\n (this.constructor as typeof CDSTile).aiLabelItem\n ) ||\n // remove reference of slug in v12\n (elem as HTMLElement).matches(\n (this.constructor as typeof CDSTile).slugItem\n )\n : false\n );\n if (hasContent.length > 0) {\n this._hasAILabel = Boolean(hasContent);\n (hasContent[0] as HTMLElement).setAttribute('size', 'xs');\n }\n this.requestUpdate();\n }\n\n /**\n * The color scheme.\n *\n * @deprecated\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * Specify if the `Tile` component should be rendered with rounded corners.\n * Only valid when `ai-label` prop is present\n */\n @property({ type: Boolean, attribute: 'has-rounded-corners' })\n hasRoundedCorners = false;\n\n updated() {\n if (this._hasAILabel) {\n this.setAttribute('ai-label', '');\n } else {\n this.removeAttribute('ai-label');\n }\n }\n\n render() {\n return html` <slot></slot\n ><slot name=\"decorator\" @slotchange=\"${this._handleSlotChange}\"></slot>\n <slot name=\"ai-label\" @slotchange=\"${this._handleSlotChange}\"></slot\n ><slot name=\"slug\" @slotchange=\"${this._handleSlotChange}\"></slot>`;\n }\n\n /**\n * A selector that will return the slug item.\n *\n * TODO: remove in v12\n */\n static get slugItem() {\n return `${prefix}-slug`;\n }\n\n /**\n * A selector that will return the AI Label item.\n */\n static get aiLabelItem() {\n return `${prefix}-ai-label`;\n }\n\n static styles = styles;\n}\n\nexport default CDSTile;\n"],"names":["TILE_COLOR_SCHEME","customElement"],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;AAKG;AAWH;;;;AAIG;AAEH,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,UAAU,CAAA;AAAhC,IAAA,WAAA,GAAA;;AACE;;AAEG;QACO,IAAA,CAAA,WAAW,GAAG,KAAK;AA0B7B;;;;AAIG;AAEH,QAAA,IAAA,CAAA,WAAW,GAAGA,yBAAiB,CAAC,OAAO;AAEvC;;;AAGG;QAEH,IAAA,CAAA,iBAAiB,GAAG,KAAK;IAkC3B;AAvEE;;AAEG;IACO,iBAAiB,CAAC,EAAE,MAAM,EAAS,EAAA;QAC3C,MAAM,UAAU,GAAI;AACjB,aAAA,aAAa;aACb,MAAM,CAAC,CAAC,IAAI,KACV,IAAoB,CAAC,OAAO,KAAK;cAC7B,IAAoB,CAAC,OAAO,CAC1B,IAAI,CAAC,WAA8B,CAAC,WAAW,CACjD;;gBAEA,IAAoB,CAAC,OAAO,CAC1B,IAAI,CAAC,WAA8B,CAAC,QAAQ;cAE/C,KAAK,CACV;AACH,QAAA,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;AACzB,YAAA,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;YACrC,UAAU,CAAC,CAAC,CAAiB,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC;QAC3D;QACA,IAAI,CAAC,aAAa,EAAE;IACtB;IAiBA,OAAO,GAAA;AACL,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,YAAA,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,CAAC;QACnC;aAAO;AACL,YAAA,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;QAClC;IACF;IAEA,MAAM,GAAA;AACJ,QAAA,OAAO,IAAI,CAAA,CAAA;AAC8B,2CAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;AACxB,yCAAA,EAAA,IAAI,CAAC,iBAAiB,CAAA;wCACzB,IAAI,CAAC,iBAAiB,CAAA,SAAA,CAAW;IACvE;AAEA;;;;AAIG;AACH,IAAA,WAAW,QAAQ,GAAA;QACjB,OAAO,CAAA,EAAG,MAAM,CAAA,KAAA,CAAO;IACzB;AAEA;;AAEG;AACH,IAAA,WAAW,WAAW,GAAA;QACpB,OAAO,CAAA,EAAG,MAAM,CAAA,SAAA,CAAW;IAC7B;;AAEO,OAAA,CAAA,MAAM,GAAG,MAAH;AAxCb,UAAA,CAAA;IADC,QAAQ,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE;AACd,CAAA,EAAA,OAAA,CAAA,SAAA,EAAA,aAAA,EAAA,MAAA,CAAA;AAOxC,UAAA,CAAA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE;AACnC,CAAA,EAAA,OAAA,CAAA,SAAA,EAAA,mBAAA,EAAA,MAAA,CAAA;AA3CtB,OAAO,GAAA,UAAA,CAAA;AADZ,IAAAC,aAAa,CAAC,CAAA,EAAG,MAAM,CAAA,KAAA,CAAO;AACzB,CAAA,EAAA,OAAO,CA6EZ;AAED,sBAAe,OAAO;;;;"}
@@ -11,7 +11,7 @@ import { query, property } from 'lit/decorators.js';
11
11
  import { classMap } from 'lit/directives/class-map.js';
12
12
  import { ifDefined } from 'lit/directives/if-defined.js';
13
13
  import { prefix } from '../../globals/settings.js';
14
- import { iconLoader } from '../../globals/internal/icon-loader.js';
14
+ import iconLoader from '../../globals/internal/icon-loader.js';
15
15
  import ChevronDown16 from '@carbon/icons/es/chevron--down/16.js';
16
16
  import { filter } from '../../globals/internal/collection-helpers.js';
17
17
  import styles from './time-picker.scss.js';
@@ -212,7 +212,7 @@ __decorate([
212
212
  CDSTimePickerSelect = __decorate([
213
213
  carbonElement(`${prefix}-time-picker-select`)
214
214
  ], CDSTimePickerSelect);
215
- var CDSTimePickerSelect$1 = CDSTimePickerSelect;
215
+ var CDSTimePickerSelect_default = CDSTimePickerSelect;
216
216
 
217
- export { CDSTimePickerSelect$1 as default };
217
+ export { CDSTimePickerSelect_default as default };
218
218
  //# sourceMappingURL=time-picker-select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"time-picker-select.js","sources":["../../../src/components/time-picker/time-picker-select.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2020, 2026\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, LitElement } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { prefix } from '../../globals/settings';\nimport { iconLoader } from '../../globals/internal/icon-loader';\nimport ChevronDown16 from '@carbon/icons/es/chevron--down/16.js';\nimport { filter } from '../../globals/internal/collection-helpers';\nimport styles from './time-picker.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport { TIME_PICKER_SIZE } from './defs';\nimport FormMixin from '../../globals/mixins/form';\n\n/**\n * Time picker select dropdown.\n *\n * @element cds-time-picker-select\n */\n@customElement(`${prefix}-time-picker-select`)\nclass CDSTimePickerSelect extends FormMixin(LitElement) {\n /**\n * The mutation observer for DOM mutation.\n */\n private _observerMutation: MutationObserver | null = null;\n\n /**\n * The select element.\n */\n @query('select')\n private _selectNode!: HTMLSelectElement;\n\n /**\n * The ARIA label for the UI control.\n */\n @property({ attribute: 'aria-label' })\n ariaLabel = 'open list of options';\n\n /**\n * Optionally provide the default value of the select\n */\n @property({ attribute: 'default-value' })\n defaultValue = '';\n\n /**\n * Controls the readOnly state of the select\n */\n @property({ type: Boolean, reflect: true })\n readOnly = false;\n\n /**\n * Specify whether the control is disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * Specify a custom id for the select box\n */\n @property({ reflect: true })\n id = '';\n\n /**\n * Name for the select in the `FormData`\n */\n @property()\n name = '';\n\n /**\n * The value of the select.\n */\n @property({ reflect: true })\n value = '';\n\n /**\n * Size of the time picker select\n */\n @property({ reflect: true })\n size = TIME_PICKER_SIZE.MEDIUM;\n\n /**\n * Handles `oninput` event on the `<select>`.\n *\n * @param event The event.\n * @param event.target The event target.\n */\n private _handleInput(event: Event) {\n const { value } = event.target as HTMLSelectElement;\n this.value = value;\n const { eventSelect } = this.constructor as typeof CDSTimePickerSelect;\n this.dispatchEvent(\n new CustomEvent(eventSelect, {\n bubbles: true,\n composed: true,\n detail: {\n value,\n },\n })\n );\n }\n\n /**\n * Handles DOM mutation of select items\n */\n private _handleMutation = () => {\n this.requestUpdate();\n };\n\n /**\n * @returns The template containing child `<option>` elements from select items.\n */\n private _renderItems() {\n const selectorItem = `${prefix}-select-item`;\n\n return filter(\n this.childNodes,\n (item) =>\n item.nodeType === Node.ELEMENT_NODE &&\n (item as Element).matches(selectorItem)\n ).map((item) => {\n const disabled = item.hasAttribute('disabled');\n const label = item.getAttribute('label');\n const selected = item.hasAttribute('selected');\n const value = item.getAttribute('value');\n const { textContent } = item;\n\n return html`\n <option\n ?disabled=\"${disabled}\"\n label=\"${ifDefined(label)}\"\n ?selected=\"${selected}\"\n value=\"${ifDefined(value)}\">\n ${textContent}\n </option>\n `;\n });\n }\n\n _handleFormdata(event: Event) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n const { formData } = event as any; // TODO: Wait for `FormDataEvent` being available in `lib.dom.d.ts`\n const { disabled, name, value } = this;\n if (!disabled) {\n formData.append(name, value);\n }\n }\n\n connectedCallback() {\n super.connectedCallback();\n this._observerMutation = new MutationObserver(this._handleMutation);\n this._observerMutation.observe(this, {\n attributes: true,\n childList: true,\n subtree: true,\n });\n }\n\n disconnectedCallback() {\n if (this._observerMutation) {\n this._observerMutation.disconnect();\n this._observerMutation = null;\n }\n super.disconnectedCallback();\n }\n\n updated(changedProperties) {\n if (\n changedProperties.has('defaultValue') &&\n this.defaultValue &&\n !this.value\n ) {\n this.value = this.defaultValue;\n }\n\n if (changedProperties.has('value')) {\n if (this._selectNode) {\n this._selectNode.value = this.value;\n }\n }\n }\n\n render() {\n const {\n ariaLabel,\n disabled,\n size,\n id,\n value,\n readOnly,\n _handleInput: handleInput,\n } = this;\n\n const inputClasses = classMap({\n [`${prefix}--select-input`]: true,\n [`${prefix}--select-input--${size}`]: size,\n });\n\n return html`\n <select\n id=\"${ifDefined(id)}\"\n class=\"${inputClasses}\"\n aria-readonly=\"${String(readOnly)}\"\n ?disabled=\"${disabled}\"\n aria-label=\"${ifDefined(ariaLabel)}\"\n .value=\"${ifDefined(value)}\"\n @input=\"${handleInput}\">\n ${this._renderItems()}\n </select>\n ${iconLoader(ChevronDown16, {\n class: `${prefix}--select__arrow`,\n 'aria-hidden': 'true',\n })}\n `;\n }\n static get eventSelect() {\n return `${prefix}-select-selected`;\n }\n\n static shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n static styles = styles;\n}\n\nexport default CDSTimePickerSelect;\n"],"names":["customElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;AAKG;AAeH;;;;AAIG;AAEH,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,SAAS,CAAC,UAAU,CAAC,CAAA;AAAvD,IAAA,WAAA,GAAA;;AACE;;AAEG;QACK,IAAA,CAAA,iBAAiB,GAA4B,IAAI;AAQzD;;AAEG;QAEH,IAAA,CAAA,SAAS,GAAG,sBAAsB;AAElC;;AAEG;QAEH,IAAA,CAAA,YAAY,GAAG,EAAE;AAEjB;;AAEG;QAEH,IAAA,CAAA,QAAQ,GAAG,KAAK;AAEhB;;AAEG;QAEH,IAAA,CAAA,QAAQ,GAAG,KAAK;AAEhB;;AAEG;QAEH,IAAA,CAAA,EAAE,GAAG,EAAE;AAEP;;AAEG;QAEH,IAAA,CAAA,IAAI,GAAG,EAAE;AAET;;AAEG;QAEH,IAAA,CAAA,KAAK,GAAG,EAAE;AAEV;;AAEG;AAEH,QAAA,IAAA,CAAA,IAAI,GAAG,gBAAgB,CAAC,MAAM;AAuB9B;;AAEG;QACK,IAAA,CAAA,eAAe,GAAG,MAAK;YAC7B,IAAI,CAAC,aAAa,EAAE;AACtB,QAAA,CAAC;IAsHH;AAhJE;;;;;AAKG;AACK,IAAA,YAAY,CAAC,KAAY,EAAA;AAC/B,QAAA,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,MAA2B;AACnD,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK;AAClB,QAAA,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,WAAyC;AACtE,QAAA,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAAC,WAAW,EAAE;AAC3B,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,MAAM,EAAE;gBACN,KAAK;AACN,aAAA;AACF,SAAA,CAAC,CACH;IACH;AASA;;AAEG;IACK,YAAY,GAAA;AAClB,QAAA,MAAM,YAAY,GAAG,CAAA,EAAG,MAAM,cAAc;AAE5C,QAAA,OAAO,MAAM,CACX,IAAI,CAAC,UAAU,EACf,CAAC,IAAI,KACH,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY;AAClC,YAAA,IAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,CAC1C,CAAC,GAAG,CAAC,CAAC,IAAI,KAAI;YACb,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;YAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;YAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;AACxC,YAAA,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI;AAE5B,YAAA,OAAO,IAAI,CAAA;;uBAEM,QAAQ,CAAA;mBACZ,SAAS,CAAC,KAAK,CAAC,CAAA;uBACZ,QAAQ,CAAA;mBACZ,SAAS,CAAC,KAAK,CAAC,CAAA;YACvB,WAAW;;OAEhB;AACH,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,eAAe,CAAC,KAAY,EAAA;;AAE1B,QAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAY,CAAC;QAClC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI;QACtC,IAAI,CAAC,QAAQ,EAAE;AACb,YAAA,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC;QAC9B;IACF;IAEA,iBAAiB,GAAA;QACf,KAAK,CAAC,iBAAiB,EAAE;QACzB,IAAI,CAAC,iBAAiB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC;AACnE,QAAA,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE;AACnC,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,OAAO,EAAE,IAAI;AACd,SAAA,CAAC;IACJ;IAEA,oBAAoB,GAAA;AAClB,QAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAC1B,YAAA,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE;AACnC,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;QAC/B;QACA,KAAK,CAAC,oBAAoB,EAAE;IAC9B;AAEA,IAAA,OAAO,CAAC,iBAAiB,EAAA;AACvB,QAAA,IACE,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC;AACrC,YAAA,IAAI,CAAC,YAAY;AACjB,YAAA,CAAC,IAAI,CAAC,KAAK,EACX;AACA,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY;QAChC;AAEA,QAAA,IAAI,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;AAClC,YAAA,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK;YACrC;QACF;IACF;IAEA,MAAM,GAAA;AACJ,QAAA,MAAM,EACJ,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,EAAE,EACF,KAAK,EACL,QAAQ,EACR,YAAY,EAAE,WAAW,GAC1B,GAAG,IAAI;QAER,MAAM,YAAY,GAAG,QAAQ,CAAC;AAC5B,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,cAAA,CAAgB,GAAG,IAAI;AACjC,YAAA,CAAC,GAAG,MAAM,CAAA,gBAAA,EAAmB,IAAI,CAAA,CAAE,GAAG,IAAI;AAC3C,SAAA,CAAC;AAEF,QAAA,OAAO,IAAI,CAAA;;cAED,SAAS,CAAC,EAAE,CAAC,CAAA;iBACV,YAAY,CAAA;yBACJ,MAAM,CAAC,QAAQ,CAAC,CAAA;qBACpB,QAAQ,CAAA;sBACP,SAAS,CAAC,SAAS,CAAC,CAAA;kBACxB,SAAS,CAAC,KAAK,CAAC,CAAA;kBAChB,WAAW,CAAA;UACnB,IAAI,CAAC,YAAY,EAAE;;QAErB,UAAU,CAAC,aAAa,EAAE;YAC1B,KAAK,EAAE,CAAA,EAAG,MAAM,CAAA,eAAA,CAAiB;AACjC,YAAA,aAAa,EAAE,MAAM;SACtB,CAAC;KACH;IACH;AACA,IAAA,WAAW,WAAW,GAAA;QACpB,OAAO,CAAA,EAAG,MAAM,CAAA,gBAAA,CAAkB;IACpC;;AAEO,mBAAA,CAAA,iBAAiB,GAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACnB,UAAU,CAAC,iBAAiB,KAC/B,cAAc,EAAE,IAAI,EAAA,CAFE;AAKjB,mBAAA,CAAA,MAAM,GAAG,MAAH;AAjML,UAAA,CAAA;IADP,KAAK,CAAC,QAAQ;AACyB,CAAA,EAAA,mBAAA,CAAA,SAAA,EAAA,aAAA,EAAA,MAAA,CAAA;AAMxC,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE;AACF,CAAA,EAAA,mBAAA,CAAA,SAAA,EAAA,WAAA,EAAA,MAAA,CAAA;AAMnC,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE;AACtB,CAAA,EAAA,mBAAA,CAAA,SAAA,EAAA,cAAA,EAAA,MAAA,CAAA;AAMlB,UAAA,CAAA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;AACzB,CAAA,EAAA,mBAAA,CAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA;AAMjB,UAAA,CAAA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;AACzB,CAAA,EAAA,mBAAA,CAAA,SAAA,EAAA,UAAA,EAAA,MAAA,CAAA;AAMjB,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;AACnB,CAAA,EAAA,mBAAA,CAAA,SAAA,EAAA,IAAA,EAAA,MAAA,CAAA;AAMR,UAAA,CAAA;AADC,IAAA,QAAQ;AACC,CAAA,EAAA,mBAAA,CAAA,SAAA,EAAA,MAAA,EAAA,MAAA,CAAA;AAMV,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;AAChB,CAAA,EAAA,mBAAA,CAAA,SAAA,EAAA,OAAA,EAAA,MAAA,CAAA;AAMX,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;AACI,CAAA,EAAA,mBAAA,CAAA,SAAA,EAAA,MAAA,EAAA,MAAA,CAAA;AA1D3B,mBAAmB,GAAA,UAAA,CAAA;AADxB,IAAAA,aAAa,CAAC,CAAA,EAAG,MAAM,CAAA,mBAAA,CAAqB;AACvC,CAAA,EAAA,mBAAmB,CA4MxB;AAED,4BAAe,mBAAmB;;;;"}
1
+ {"version":3,"file":"time-picker-select.js","sources":["../../../src/components/time-picker/time-picker-select.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2020, 2026\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, LitElement } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { prefix } from '../../globals/settings';\nimport { iconLoader } from '../../globals/internal/icon-loader';\nimport ChevronDown16 from '@carbon/icons/es/chevron--down/16.js';\nimport { filter } from '../../globals/internal/collection-helpers';\nimport styles from './time-picker.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport { TIME_PICKER_SIZE } from './defs';\nimport FormMixin from '../../globals/mixins/form';\n\n/**\n * Time picker select dropdown.\n *\n * @element cds-time-picker-select\n */\n@customElement(`${prefix}-time-picker-select`)\nclass CDSTimePickerSelect extends FormMixin(LitElement) {\n /**\n * The mutation observer for DOM mutation.\n */\n private _observerMutation: MutationObserver | null = null;\n\n /**\n * The select element.\n */\n @query('select')\n private _selectNode!: HTMLSelectElement;\n\n /**\n * The ARIA label for the UI control.\n */\n @property({ attribute: 'aria-label' })\n ariaLabel = 'open list of options';\n\n /**\n * Optionally provide the default value of the select\n */\n @property({ attribute: 'default-value' })\n defaultValue = '';\n\n /**\n * Controls the readOnly state of the select\n */\n @property({ type: Boolean, reflect: true })\n readOnly = false;\n\n /**\n * Specify whether the control is disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * Specify a custom id for the select box\n */\n @property({ reflect: true })\n id = '';\n\n /**\n * Name for the select in the `FormData`\n */\n @property()\n name = '';\n\n /**\n * The value of the select.\n */\n @property({ reflect: true })\n value = '';\n\n /**\n * Size of the time picker select\n */\n @property({ reflect: true })\n size = TIME_PICKER_SIZE.MEDIUM;\n\n /**\n * Handles `oninput` event on the `<select>`.\n *\n * @param event The event.\n * @param event.target The event target.\n */\n private _handleInput(event: Event) {\n const { value } = event.target as HTMLSelectElement;\n this.value = value;\n const { eventSelect } = this.constructor as typeof CDSTimePickerSelect;\n this.dispatchEvent(\n new CustomEvent(eventSelect, {\n bubbles: true,\n composed: true,\n detail: {\n value,\n },\n })\n );\n }\n\n /**\n * Handles DOM mutation of select items\n */\n private _handleMutation = () => {\n this.requestUpdate();\n };\n\n /**\n * @returns The template containing child `<option>` elements from select items.\n */\n private _renderItems() {\n const selectorItem = `${prefix}-select-item`;\n\n return filter(\n this.childNodes,\n (item) =>\n item.nodeType === Node.ELEMENT_NODE &&\n (item as Element).matches(selectorItem)\n ).map((item) => {\n const disabled = item.hasAttribute('disabled');\n const label = item.getAttribute('label');\n const selected = item.hasAttribute('selected');\n const value = item.getAttribute('value');\n const { textContent } = item;\n\n return html`\n <option\n ?disabled=\"${disabled}\"\n label=\"${ifDefined(label)}\"\n ?selected=\"${selected}\"\n value=\"${ifDefined(value)}\">\n ${textContent}\n </option>\n `;\n });\n }\n\n _handleFormdata(event: Event) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n const { formData } = event as any; // TODO: Wait for `FormDataEvent` being available in `lib.dom.d.ts`\n const { disabled, name, value } = this;\n if (!disabled) {\n formData.append(name, value);\n }\n }\n\n connectedCallback() {\n super.connectedCallback();\n this._observerMutation = new MutationObserver(this._handleMutation);\n this._observerMutation.observe(this, {\n attributes: true,\n childList: true,\n subtree: true,\n });\n }\n\n disconnectedCallback() {\n if (this._observerMutation) {\n this._observerMutation.disconnect();\n this._observerMutation = null;\n }\n super.disconnectedCallback();\n }\n\n updated(changedProperties) {\n if (\n changedProperties.has('defaultValue') &&\n this.defaultValue &&\n !this.value\n ) {\n this.value = this.defaultValue;\n }\n\n if (changedProperties.has('value')) {\n if (this._selectNode) {\n this._selectNode.value = this.value;\n }\n }\n }\n\n render() {\n const {\n ariaLabel,\n disabled,\n size,\n id,\n value,\n readOnly,\n _handleInput: handleInput,\n } = this;\n\n const inputClasses = classMap({\n [`${prefix}--select-input`]: true,\n [`${prefix}--select-input--${size}`]: size,\n });\n\n return html`\n <select\n id=\"${ifDefined(id)}\"\n class=\"${inputClasses}\"\n aria-readonly=\"${String(readOnly)}\"\n ?disabled=\"${disabled}\"\n aria-label=\"${ifDefined(ariaLabel)}\"\n .value=\"${ifDefined(value)}\"\n @input=\"${handleInput}\">\n ${this._renderItems()}\n </select>\n ${iconLoader(ChevronDown16, {\n class: `${prefix}--select__arrow`,\n 'aria-hidden': 'true',\n })}\n `;\n }\n static get eventSelect() {\n return `${prefix}-select-selected`;\n }\n\n static shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n static styles = styles;\n}\n\nexport default CDSTimePickerSelect;\n"],"names":["customElement"],"mappings":"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"}
@@ -10,7 +10,7 @@ import { LitElement, html } from 'lit';
10
10
  import { query, property } from 'lit/decorators.js';
11
11
  import { classMap } from 'lit/directives/class-map.js';
12
12
  import { carbonElement } from '../../globals/decorators/carbon-element.js';
13
- import { iconLoader } from '../../globals/internal/icon-loader.js';
13
+ import iconLoader from '../../globals/internal/icon-loader.js';
14
14
  import WarningFilled16 from '@carbon/icons/es/warning--filled/16.js';
15
15
  import WarningAltFilled16 from '@carbon/icons/es/warning--alt--filled/16.js';
16
16
  import ValidityMixin from '../../globals/mixins/validity.js';
@@ -41,7 +41,7 @@ CDSToggleSkeleton.styles = styles;
41
41
  CDSToggleSkeleton = __decorate([
42
42
  carbonElement(`${prefix}-toggle-skeleton`)
43
43
  ], CDSToggleSkeleton);
44
- var CDSToggleSkeleton$1 = CDSToggleSkeleton;
44
+ var CDSToggleSkeleton_default = CDSToggleSkeleton;
45
45
 
46
- export { CDSToggleSkeleton$1 as default };
46
+ export { CDSToggleSkeleton_default as default };
47
47
  //# sourceMappingURL=toggle-skeleton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-skeleton.js","sources":["../../../src/components/toggle/toggle-skeleton.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2025\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport { prefix } from '../../globals/settings';\nimport styles from './toggle.scss?lit';\n\n/**\n * @element cds-toggle-skeleton\n *\n * Skeleton of toggle.\n */\n@customElement(`${prefix}-toggle-skeleton`)\nclass CDSToggleSkeleton extends LitElement {\n render() {\n const skeletonClasses = classMap({\n [`${prefix}--toggle`]: true,\n [`${prefix}--toggle--skeleton`]: true,\n });\n\n return html`\n <div class=${skeletonClasses}>\n <div class=\"${prefix}--toggle__skeleton-circle\"></div>\n <div class=\"${prefix}--toggle__skeleton-rectangle\"></div>\n </div>\n `;\n }\n\n static styles = styles;\n}\n\nexport default CDSToggleSkeleton;\n"],"names":["customElement"],"mappings":";;;;;;;;;;;;;;AAAA;;;;;AAKG;AAQH;;;;AAIG;AAEH,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,UAAU,CAAA;IACxC,MAAM,GAAA;QACJ,MAAM,eAAe,GAAG,QAAQ,CAAC;AAC/B,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,QAAA,CAAU,GAAG,IAAI;AAC3B,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,kBAAA,CAAoB,GAAG,IAAI;AACtC,SAAA,CAAC;AAEF,QAAA,OAAO,IAAI,CAAA;mBACI,eAAe,CAAA;sBACZ,MAAM,CAAA;sBACN,MAAM,CAAA;;KAEvB;IACH;;AAEO,iBAAA,CAAA,MAAM,GAAG,MAAH;AAfT,iBAAiB,GAAA,UAAA,CAAA;AADtB,IAAAA,aAAa,CAAC,CAAA,EAAG,MAAM,CAAA,gBAAA,CAAkB;AACpC,CAAA,EAAA,iBAAiB,CAgBtB;AAED,0BAAe,iBAAiB;;;;"}
1
+ {"version":3,"file":"toggle-skeleton.js","sources":["../../../src/components/toggle/toggle-skeleton.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2025\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport { prefix } from '../../globals/settings';\nimport styles from './toggle.scss?lit';\n\n/**\n * @element cds-toggle-skeleton\n *\n * Skeleton of toggle.\n */\n@customElement(`${prefix}-toggle-skeleton`)\nclass CDSToggleSkeleton extends LitElement {\n render() {\n const skeletonClasses = classMap({\n [`${prefix}--toggle`]: true,\n [`${prefix}--toggle--skeleton`]: true,\n });\n\n return html`\n <div class=${skeletonClasses}>\n <div class=\"${prefix}--toggle__skeleton-circle\"></div>\n <div class=\"${prefix}--toggle__skeleton-rectangle\"></div>\n </div>\n `;\n }\n\n static styles = styles;\n}\n\nexport default CDSToggleSkeleton;\n"],"names":["customElement"],"mappings":";;;;;;;;;;;;;;AAAA;;;;;AAKG;AAQH;;;;AAIG;AAEH,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,UAAU,CAAA;IACxC,MAAM,GAAA;QACJ,MAAM,eAAe,GAAG,QAAQ,CAAC;AAC/B,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,QAAA,CAAU,GAAG,IAAI;AAC3B,YAAA,CAAC,CAAA,EAAG,MAAM,CAAA,kBAAA,CAAoB,GAAG,IAAI;AACtC,SAAA,CAAC;AAEF,QAAA,OAAO,IAAI,CAAA;mBACI,eAAe,CAAA;sBACZ,MAAM,CAAA;sBACN,MAAM,CAAA;;KAEvB;IACH;;AAEO,iBAAA,CAAA,MAAM,GAAG,MAAH;AAfT,iBAAiB,GAAA,UAAA,CAAA;AADtB,IAAAA,aAAa,CAAC,CAAA,EAAG,MAAM,CAAA,gBAAA,CAAkB;AACpC,CAAA,EAAA,iBAAiB,CAgBtB;AAED,gCAAe,iBAAiB;;;;"}
@@ -244,7 +244,7 @@ __decorate([
244
244
  CDSToggle = __decorate([
245
245
  carbonElement(`${prefix}-toggle`)
246
246
  ], CDSToggle);
247
- var CDSToggle$1 = CDSToggle;
247
+ var CDSToggle_default = CDSToggle;
248
248
 
249
- export { TOGGLE_SIZE, CDSToggle$1 as default };
249
+ export { TOGGLE_SIZE, CDSToggle_default as default };
250
250
  //# sourceMappingURL=toggle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"toggle.js","sources":["../../../src/components/toggle/toggle.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2025\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit/directives/class-map.js';\nimport { html } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { prefix } from '../../globals/settings';\nimport CDSCheckbox from '../checkbox/checkbox';\nimport { TOGGLE_SIZE } from './defs';\nimport styles from './toggle.scss?lit';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nexport { TOGGLE_SIZE };\n\n/**\n * Basic toggle.\n *\n * @element cds-toggle\n * @slot label-text - The label text.\n * @slot checked-text - The text for the checked state.\n * @slot unchecked-text - The text for the unchecked state.\n * @fires cds-toggle-changed - The custom event fired after this changebox changes its checked state.\n */\n@customElement(`${prefix}-toggle`)\nclass CDSToggle extends HostListenerMixin(CDSCheckbox) {\n @query('button')\n protected _checkboxNode!: HTMLInputElement;\n\n /**\n * Handles `click` event on the `<button>` in the shadow DOM.\n */\n protected _handleChange() {\n const { checked } = this._checkboxNode;\n if (this.disabled || this.readOnly) {\n return;\n }\n this.toggled = !checked;\n const { eventChange } = this.constructor as typeof CDSToggle;\n this.dispatchEvent(\n new CustomEvent(eventChange, {\n bubbles: true,\n composed: true,\n detail: {\n checked: this.toggled, // TODO: remove in v12\n toggled: this.toggled,\n },\n })\n );\n }\n\n protected _renderCheckmark() {\n if (this.size !== TOGGLE_SIZE.SMALL || this.readOnly == true) {\n return undefined;\n }\n return html`\n <svg\n class=\"${prefix}--toggle__check\"\n width=\"6px\"\n height=\"5px\"\n viewBox=\"0 0 6 5\">\n <path d=\"M2.2 2.7L5 0 6 1 2.2 5 0 2.7 1 1.5z\" />\n </svg>\n `;\n }\n\n // TODO: remove in v12\n /**\n * @deprecated Use `toggled` instead.\n * The `checked` attribute will be removed in the next major version.\n */\n declare checked: boolean;\n // TODO: remove in v12\n /**\n *\n * **Deprecated:** Use `toggled` instead.\n * The `checked` attribute will be removed in the next major version.\n */\n @property({ type: Boolean, attribute: 'checked', reflect: true })\n get _checkedAttributeAlias() {\n return this.toggled;\n }\n set _checkedAttributeAlias(v: boolean) {\n this.toggled = v;\n }\n\n // TODO: remove get() and set() in v12\n /**\n * Specify whether the control is toggled\n */\n @property({ type: Boolean, reflect: true })\n get toggled(): boolean {\n return this.checked;\n }\n set toggled(v: boolean) {\n const prev = this.checked;\n const next = v;\n if (prev === next) return;\n this.checked = v;\n\n this.requestUpdate('toggled', prev);\n this.requestUpdate('_checkedAttributeAlias');\n }\n /**\n * Specify another element's id to be used as the label for this toggle\n */\n @property({ type: String, attribute: 'aria-labelledby' })\n ariaLabelledby?: string;\n\n // TODO: swap value with labelB in v12 to match React\n /**\n * Specify the label for the \"on\" position\n */\n @property({ attribute: 'label-a' })\n labelA = 'On';\n\n /**\n * Hide label text.\n */\n @property({ reflect: true, type: Boolean })\n hideLabel = false;\n\n /**\n * Read only boolean.\n */\n @property({ reflect: true, attribute: 'read-only', type: Boolean })\n readOnly = false;\n\n /**\n * Toggle size.\n */\n @property({ reflect: true })\n size = TOGGLE_SIZE.REGULAR;\n\n // TODO: swap value with labelA in v12 to match React\n /**\n * Specify the label for the \"off\" position\n */\n @property({ attribute: 'label-b' })\n labelB = 'Off';\n\n /**\n * Private references of external <label> elements that are\n * `for=\"this-toggle-element-id\"`\n */\n private _externalLabels: HTMLLabelElement[] = [];\n\n /**\n * Handles `click` on external `<label>`\n */\n private _onExternalLabelClick = () => {\n this._checkboxNode?.focus();\n this._handleChange();\n };\n\n /**\n * Finds external toggle `<label>`s and attaches handlers.\n */\n private _attachExternalLabels() {\n const doc = this.ownerDocument || document;\n\n const found = this.id\n ? [...doc.querySelectorAll<HTMLLabelElement>(`label[for=\"${this.id}\"]`)]\n : [];\n\n this._externalLabels = Array.from(new Set(found));\n this._externalLabels.forEach((lbl) => {\n lbl.addEventListener('click', this._onExternalLabelClick);\n });\n }\n\n connectedCallback() {\n super.connectedCallback?.();\n this._attachExternalLabels();\n }\n\n disconnectedCallback() {\n super.disconnectedCallback?.();\n this._externalLabels.forEach((lbl) =>\n lbl.removeEventListener('click', this._onExternalLabelClick)\n );\n }\n\n render() {\n const {\n toggled,\n disabled,\n labelText,\n hideLabel,\n id,\n name,\n size,\n labelA,\n labelB,\n value,\n _handleChange: handleChange,\n } = this;\n const inputClasses = classMap({\n [`${prefix}--toggle__appearance`]: true,\n [`${prefix}--toggle__appearance--${size}`]: size,\n });\n const toggleClasses = classMap({\n [`${prefix}--toggle__switch`]: true,\n [`${prefix}--toggle__switch--checked`]: toggled,\n });\n\n const labelTextClasses = classMap({\n [`${prefix}--toggle__label-text`]: labelText,\n [`${prefix}--visually-hidden`]: hideLabel,\n });\n\n let stateText = '';\n\n if (hideLabel) {\n stateText = labelText || '';\n } else {\n stateText = toggled ? labelA : labelB;\n }\n\n const labelId = id ? `${id}_label` : undefined;\n\n const hasLabelText = (this.labelText ?? '') !== '';\n\n const ariaLabelledby = this.ariaLabelledby ?? (hasLabelText && labelId);\n\n return html`\n <button\n class=\"${prefix}--toggle__button\"\n role=\"switch\"\n type=\"button\"\n aria-checked=${toggled}\n aria-labelledby=${ifDefined(ariaLabelledby)}\n .checked=${toggled}\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n ?disabled=${disabled}\n id=\"${id}\"\n @click=${handleChange}></button>\n <label for=\"${id}\" class=\"${prefix}--toggle__label\">\n ${labelText\n ? html`<span class=\"${labelTextClasses}\">${labelText}</span>`\n : null}\n <div class=\"${inputClasses}\">\n <div class=\"${toggleClasses}\">${this._renderCheckmark()}</div>\n <span class=\"${prefix}--toggle__text\" aria-hidden=\"true\"\n >${stateText}</span\n >\n </div>\n </label>\n `;\n }\n\n /**\n * The name of the custom event fired after this changebox changes its toggled state.\n */\n static get eventChange() {\n return `${prefix}-toggle-changed`;\n }\n\n static styles = styles;\n}\n\nexport default CDSToggle;\n"],"names":["customElement"],"mappings":"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"}
1
+ {"version":3,"file":"toggle.js","sources":["../../../src/components/toggle/toggle.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2025\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit/directives/class-map.js';\nimport { html } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { prefix } from '../../globals/settings';\nimport CDSCheckbox from '../checkbox/checkbox';\nimport { TOGGLE_SIZE } from './defs';\nimport styles from './toggle.scss?lit';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nexport { TOGGLE_SIZE };\n\n/**\n * Basic toggle.\n *\n * @element cds-toggle\n * @slot label-text - The label text.\n * @slot checked-text - The text for the checked state.\n * @slot unchecked-text - The text for the unchecked state.\n * @fires cds-toggle-changed - The custom event fired after this changebox changes its checked state.\n */\n@customElement(`${prefix}-toggle`)\nclass CDSToggle extends HostListenerMixin(CDSCheckbox) {\n @query('button')\n protected _checkboxNode!: HTMLInputElement;\n\n /**\n * Handles `click` event on the `<button>` in the shadow DOM.\n */\n protected _handleChange() {\n const { checked } = this._checkboxNode;\n if (this.disabled || this.readOnly) {\n return;\n }\n this.toggled = !checked;\n const { eventChange } = this.constructor as typeof CDSToggle;\n this.dispatchEvent(\n new CustomEvent(eventChange, {\n bubbles: true,\n composed: true,\n detail: {\n checked: this.toggled, // TODO: remove in v12\n toggled: this.toggled,\n },\n })\n );\n }\n\n protected _renderCheckmark() {\n if (this.size !== TOGGLE_SIZE.SMALL || this.readOnly == true) {\n return undefined;\n }\n return html`\n <svg\n class=\"${prefix}--toggle__check\"\n width=\"6px\"\n height=\"5px\"\n viewBox=\"0 0 6 5\">\n <path d=\"M2.2 2.7L5 0 6 1 2.2 5 0 2.7 1 1.5z\" />\n </svg>\n `;\n }\n\n // TODO: remove in v12\n /**\n * @deprecated Use `toggled` instead.\n * The `checked` attribute will be removed in the next major version.\n */\n declare checked: boolean;\n // TODO: remove in v12\n /**\n *\n * **Deprecated:** Use `toggled` instead.\n * The `checked` attribute will be removed in the next major version.\n */\n @property({ type: Boolean, attribute: 'checked', reflect: true })\n get _checkedAttributeAlias() {\n return this.toggled;\n }\n set _checkedAttributeAlias(v: boolean) {\n this.toggled = v;\n }\n\n // TODO: remove get() and set() in v12\n /**\n * Specify whether the control is toggled\n */\n @property({ type: Boolean, reflect: true })\n get toggled(): boolean {\n return this.checked;\n }\n set toggled(v: boolean) {\n const prev = this.checked;\n const next = v;\n if (prev === next) return;\n this.checked = v;\n\n this.requestUpdate('toggled', prev);\n this.requestUpdate('_checkedAttributeAlias');\n }\n /**\n * Specify another element's id to be used as the label for this toggle\n */\n @property({ type: String, attribute: 'aria-labelledby' })\n ariaLabelledby?: string;\n\n // TODO: swap value with labelB in v12 to match React\n /**\n * Specify the label for the \"on\" position\n */\n @property({ attribute: 'label-a' })\n labelA = 'On';\n\n /**\n * Hide label text.\n */\n @property({ reflect: true, type: Boolean })\n hideLabel = false;\n\n /**\n * Read only boolean.\n */\n @property({ reflect: true, attribute: 'read-only', type: Boolean })\n readOnly = false;\n\n /**\n * Toggle size.\n */\n @property({ reflect: true })\n size = TOGGLE_SIZE.REGULAR;\n\n // TODO: swap value with labelA in v12 to match React\n /**\n * Specify the label for the \"off\" position\n */\n @property({ attribute: 'label-b' })\n labelB = 'Off';\n\n /**\n * Private references of external <label> elements that are\n * `for=\"this-toggle-element-id\"`\n */\n private _externalLabels: HTMLLabelElement[] = [];\n\n /**\n * Handles `click` on external `<label>`\n */\n private _onExternalLabelClick = () => {\n this._checkboxNode?.focus();\n this._handleChange();\n };\n\n /**\n * Finds external toggle `<label>`s and attaches handlers.\n */\n private _attachExternalLabels() {\n const doc = this.ownerDocument || document;\n\n const found = this.id\n ? [...doc.querySelectorAll<HTMLLabelElement>(`label[for=\"${this.id}\"]`)]\n : [];\n\n this._externalLabels = Array.from(new Set(found));\n this._externalLabels.forEach((lbl) => {\n lbl.addEventListener('click', this._onExternalLabelClick);\n });\n }\n\n connectedCallback() {\n super.connectedCallback?.();\n this._attachExternalLabels();\n }\n\n disconnectedCallback() {\n super.disconnectedCallback?.();\n this._externalLabels.forEach((lbl) =>\n lbl.removeEventListener('click', this._onExternalLabelClick)\n );\n }\n\n render() {\n const {\n toggled,\n disabled,\n labelText,\n hideLabel,\n id,\n name,\n size,\n labelA,\n labelB,\n value,\n _handleChange: handleChange,\n } = this;\n const inputClasses = classMap({\n [`${prefix}--toggle__appearance`]: true,\n [`${prefix}--toggle__appearance--${size}`]: size,\n });\n const toggleClasses = classMap({\n [`${prefix}--toggle__switch`]: true,\n [`${prefix}--toggle__switch--checked`]: toggled,\n });\n\n const labelTextClasses = classMap({\n [`${prefix}--toggle__label-text`]: labelText,\n [`${prefix}--visually-hidden`]: hideLabel,\n });\n\n let stateText = '';\n\n if (hideLabel) {\n stateText = labelText || '';\n } else {\n stateText = toggled ? labelA : labelB;\n }\n\n const labelId = id ? `${id}_label` : undefined;\n\n const hasLabelText = (this.labelText ?? '') !== '';\n\n const ariaLabelledby = this.ariaLabelledby ?? (hasLabelText && labelId);\n\n return html`\n <button\n class=\"${prefix}--toggle__button\"\n role=\"switch\"\n type=\"button\"\n aria-checked=${toggled}\n aria-labelledby=${ifDefined(ariaLabelledby)}\n .checked=${toggled}\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n ?disabled=${disabled}\n id=\"${id}\"\n @click=${handleChange}></button>\n <label for=\"${id}\" class=\"${prefix}--toggle__label\">\n ${labelText\n ? html`<span class=\"${labelTextClasses}\">${labelText}</span>`\n : null}\n <div class=\"${inputClasses}\">\n <div class=\"${toggleClasses}\">${this._renderCheckmark()}</div>\n <span class=\"${prefix}--toggle__text\" aria-hidden=\"true\"\n >${stateText}</span\n >\n </div>\n </label>\n `;\n }\n\n /**\n * The name of the custom event fired after this changebox changes its toggled state.\n */\n static get eventChange() {\n return `${prefix}-toggle-changed`;\n }\n\n static styles = styles;\n}\n\nexport default CDSToggle;\n"],"names":["customElement"],"mappings":"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"}
@@ -19,7 +19,7 @@ import { POPOVER_ALIGNMENT } from '../popover/defs.js';
19
19
  import FloatingController from '../../globals/controllers/floating-controller.js';
20
20
  import toggletipStyles from './toggletip.scss.js';
21
21
  import popoverStyles from '../popover/popover.scss.js';
22
- import { iconLoader } from '../../globals/internal/icon-loader.js';
22
+ import iconLoader from '../../globals/internal/icon-loader.js';
23
23
  import { deepShadowContains } from '../../globals/internal/deep-shadow-contains.js';
24
24
 
25
25
  /**
@@ -125,7 +125,7 @@ __decorate([
125
125
  CDSDefinitionTooltip = __decorate([
126
126
  carbonElement(`${prefix}-definition-tooltip`)
127
127
  ], CDSDefinitionTooltip);
128
- var CDSDefinitionTooltip$1 = CDSDefinitionTooltip;
128
+ var CDSDefinitionTooltip_default = CDSDefinitionTooltip;
129
129
 
130
- export { CDSDefinitionTooltip$1 as default };
130
+ export { CDSDefinitionTooltip_default as default };
131
131
  //# sourceMappingURL=definition-tooltip.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"definition-tooltip.js","sources":["../../../src/components/tooltip/definition-tooltip.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { adoptStyles, html, LitElement } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { POPOVER_ALIGNMENT } from '../popover/defs';\nimport '../popover/index';\nimport popoverStyles from '../popover/popover.scss?lit';\nimport styles from './tooltip.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Definition tooltip.\n *\n * @element cds-definition-tooltip\n */\n@customElement(`${prefix}-definition-tooltip`)\nclass CDSDefinitionTooltip extends LitElement {\n /**\n * Specify how the trigger should align with the tooltip\n */\n @property({ reflect: true, type: POPOVER_ALIGNMENT })\n align = 'bottom';\n\n /**\n * Will auto-align Definition Tooltip. This prop is currently experimental and is subject to future changes.\n */\n @property({ type: Boolean, reflect: true })\n autoalign = false;\n\n /**\n * Specify whether the tooltip should be open when it first renders\n */\n @property({ type: Boolean, reflect: true, attribute: 'default-open' })\n defaultOpen = false;\n\n /**\n * Specifies whether the `DefinitionTooltip` should open on hover or not\n */\n @property({ reflect: true, type: Boolean, attribute: 'open-on-hover' })\n openOnHover = false;\n\n @state()\n open = false;\n\n connectedCallback() {\n super.connectedCallback();\n\n adoptStyles(this.renderRoot as ShadowRoot, [popoverStyles, styles]);\n\n if (this.hasAttribute('default-open')) {\n this.open = true;\n }\n }\n\n protected _handleBlur() {\n this.open = false;\n }\n\n protected _handleMouseDown() {\n this.open = !this.open;\n }\n\n protected _handleKeyDown(event: KeyboardEvent) {\n const { key } = event;\n\n if (this.open && (key === 'Esc' || key === 'Escape')) {\n event.stopPropagation();\n this.open = false;\n }\n }\n\n protected _handleHover() {\n if (this.openOnHover && !this.open) {\n this.open = true;\n } else {\n this.open = false;\n }\n }\n\n protected _handleFocus() {\n this.open = true;\n }\n\n render() {\n const { align, open } = this;\n\n return html`\n <cds-popover\n @mouseenter=${this._handleHover}\n @mouseleave=${this._handleHover}\n highContrast\n dropShadow=${false}\n align=${align}\n .open=${open}>\n <button\n @focus=${this._handleFocus}\n @blur=${this._handleBlur}\n @mousedown=${this._handleMouseDown}\n @keydown=${this._handleKeyDown}\n aria-expanded=${open}\n part=\"definition-term\"\n class=\"${prefix}--definition-term\">\n <slot></slot>\n </button>\n <cds-popover-content>\n <slot name=\"definition\"></slot>\n </cds-popover-content>\n </cds-popover>\n `;\n }\n\n static styles = styles;\n}\n\nexport default CDSDefinitionTooltip;\n"],"names":["styles","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"definition-tooltip.js","sources":["../../../src/components/tooltip/definition-tooltip.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { adoptStyles, html, LitElement } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { POPOVER_ALIGNMENT } from '../popover/defs';\nimport '../popover/index';\nimport popoverStyles from '../popover/popover.scss?lit';\nimport styles from './tooltip.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Definition tooltip.\n *\n * @element cds-definition-tooltip\n */\n@customElement(`${prefix}-definition-tooltip`)\nclass CDSDefinitionTooltip extends LitElement {\n /**\n * Specify how the trigger should align with the tooltip\n */\n @property({ reflect: true, type: POPOVER_ALIGNMENT })\n align = 'bottom';\n\n /**\n * Will auto-align Definition Tooltip. This prop is currently experimental and is subject to future changes.\n */\n @property({ type: Boolean, reflect: true })\n autoalign = false;\n\n /**\n * Specify whether the tooltip should be open when it first renders\n */\n @property({ type: Boolean, reflect: true, attribute: 'default-open' })\n defaultOpen = false;\n\n /**\n * Specifies whether the `DefinitionTooltip` should open on hover or not\n */\n @property({ reflect: true, type: Boolean, attribute: 'open-on-hover' })\n openOnHover = false;\n\n @state()\n open = false;\n\n connectedCallback() {\n super.connectedCallback();\n\n adoptStyles(this.renderRoot as ShadowRoot, [popoverStyles, styles]);\n\n if (this.hasAttribute('default-open')) {\n this.open = true;\n }\n }\n\n protected _handleBlur() {\n this.open = false;\n }\n\n protected _handleMouseDown() {\n this.open = !this.open;\n }\n\n protected _handleKeyDown(event: KeyboardEvent) {\n const { key } = event;\n\n if (this.open && (key === 'Esc' || key === 'Escape')) {\n event.stopPropagation();\n this.open = false;\n }\n }\n\n protected _handleHover() {\n if (this.openOnHover && !this.open) {\n this.open = true;\n } else {\n this.open = false;\n }\n }\n\n protected _handleFocus() {\n this.open = true;\n }\n\n render() {\n const { align, open } = this;\n\n return html`\n <cds-popover\n @mouseenter=${this._handleHover}\n @mouseleave=${this._handleHover}\n highContrast\n dropShadow=${false}\n align=${align}\n .open=${open}>\n <button\n @focus=${this._handleFocus}\n @blur=${this._handleBlur}\n @mousedown=${this._handleMouseDown}\n @keydown=${this._handleKeyDown}\n aria-expanded=${open}\n part=\"definition-term\"\n class=\"${prefix}--definition-term\">\n <slot></slot>\n </button>\n <cds-popover-content>\n <slot name=\"definition\"></slot>\n </cds-popover-content>\n </cds-popover>\n `;\n }\n\n static styles = styles;\n}\n\nexport default CDSDefinitionTooltip;\n"],"names":["styles","customElement"],"mappings":"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"}
@@ -37,7 +37,7 @@ let CDSTooltipContent = class CDSTooltipContent extends CDSPopoverContent {
37
37
  CDSTooltipContent = __decorate([
38
38
  carbonElement(`${prefix}-tooltip-content`)
39
39
  ], CDSTooltipContent);
40
- var CDSTooltipContent$1 = CDSTooltipContent;
40
+ var CDSTooltipContent_default = CDSTooltipContent;
41
41
 
42
- export { CDSTooltipContent$1 as default };
42
+ export { CDSTooltipContent_default as default };
43
43
  //# sourceMappingURL=tooltip-content.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip-content.js","sources":["../../../src/components/tooltip/tooltip-content.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { adoptStyles } from 'lit';\nimport { prefix } from '../../globals/settings';\nimport CDSPopoverContent from '../popover/popover-content';\nimport styles from './tooltip.scss?lit';\nimport popoverStyles from '../popover/popover.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Tooltip content.\n *\n * @element cds-tooltip-content\n */\n@customElement(`${prefix}-tooltip-content`)\nclass CDSTooltipContent extends CDSPopoverContent {\n connectedCallback() {\n if (!this.hasAttribute('aria-hidden')) {\n this.setAttribute('aria-hidden', 'true');\n }\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'tooltip');\n }\n super.connectedCallback();\n\n adoptStyles(this.renderRoot as ShadowRoot, [popoverStyles, styles]);\n }\n\n updated() {\n this.shadowRoot\n ?.querySelector(`.${prefix}--popover-content`)\n ?.classList.add(`${prefix}--tooltip-content`);\n }\n}\n\nexport default CDSTooltipContent;\n"],"names":["styles","customElement"],"mappings":";;;;;;;;;;;;;;;AAaA;;;;AAIG;AAEH,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,iBAAiB,CAAA;IAC/C,iBAAiB,GAAA;QACf,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE;AACrC,YAAA,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC;QAC1C;QACA,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;AAC9B,YAAA,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC;QACtC;QACA,KAAK,CAAC,iBAAiB,EAAE;QAEzB,WAAW,CAAC,IAAI,CAAC,UAAwB,EAAE,CAAC,aAAa,EAAEA,aAAM,CAAC,CAAC;IACrE;IAEA,OAAO,GAAA;;QACL,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAI,CAAC,UAAU,0CACX,aAAa,CAAC,IAAI,MAAM,CAAA,iBAAA,CAAmB,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAC5C,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAA,iBAAA,CAAmB,CAAC;IACjD;CACD;AAlBK,iBAAiB,GAAA,UAAA,CAAA;AADtB,IAAAC,aAAa,CAAC,CAAA,EAAG,MAAM,CAAA,gBAAA,CAAkB;AACpC,CAAA,EAAA,iBAAiB,CAkBtB;AAED,0BAAe,iBAAiB;;;;"}
1
+ {"version":3,"file":"tooltip-content.js","sources":["../../../src/components/tooltip/tooltip-content.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { adoptStyles } from 'lit';\nimport { prefix } from '../../globals/settings';\nimport CDSPopoverContent from '../popover/popover-content';\nimport styles from './tooltip.scss?lit';\nimport popoverStyles from '../popover/popover.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Tooltip content.\n *\n * @element cds-tooltip-content\n */\n@customElement(`${prefix}-tooltip-content`)\nclass CDSTooltipContent extends CDSPopoverContent {\n connectedCallback() {\n if (!this.hasAttribute('aria-hidden')) {\n this.setAttribute('aria-hidden', 'true');\n }\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'tooltip');\n }\n super.connectedCallback();\n\n adoptStyles(this.renderRoot as ShadowRoot, [popoverStyles, styles]);\n }\n\n updated() {\n this.shadowRoot\n ?.querySelector(`.${prefix}--popover-content`)\n ?.classList.add(`${prefix}--tooltip-content`);\n }\n}\n\nexport default CDSTooltipContent;\n"],"names":["styles","customElement"],"mappings":";;;;;;;;;;;;;;;AAaA;;;;AAIG;AAEH,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,iBAAiB,CAAA;IAC/C,iBAAiB,GAAA;QACf,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE;AACrC,YAAA,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC;QAC1C;QACA,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;AAC9B,YAAA,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC;QACtC;QACA,KAAK,CAAC,iBAAiB,EAAE;QAEzB,WAAW,CAAC,IAAI,CAAC,UAAwB,EAAE,CAAC,aAAa,EAAEA,aAAM,CAAC,CAAC;IACrE;IAEA,OAAO,GAAA;;QACL,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAI,CAAC,UAAU,0CACX,aAAa,CAAC,IAAI,MAAM,CAAA,iBAAA,CAAmB,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAC5C,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAA,iBAAA,CAAmB,CAAC;IACjD;CACD;AAlBK,iBAAiB,GAAA,UAAA,CAAA;AADtB,IAAAC,aAAa,CAAC,CAAA,EAAG,MAAM,CAAA,gBAAA,CAAkB;AACpC,CAAA,EAAA,iBAAiB,CAkBtB;AAED,gCAAe,iBAAiB;;;;"}
@@ -260,7 +260,7 @@ __decorate([
260
260
  CDSTooltip = __decorate([
261
261
  carbonElement(`${prefix}-tooltip`)
262
262
  ], CDSTooltip);
263
- var CDSTooltip$1 = CDSTooltip;
263
+ var CDSTooltip_default = CDSTooltip;
264
264
 
265
- export { CDSTooltip$1 as default };
265
+ export { CDSTooltip_default as default };
266
266
  //# sourceMappingURL=tooltip.js.map