@carbon/web-components 2.57.0 → 2.58.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 (1334) hide show
  1. package/custom-elements.json +6 -6
  2. package/es/_virtual/{_@oxc-project_runtime@0.126.0/helpers → _@oxc-project_runtime@0.135.0/helpers/esm}/decorate.js +1 -1
  3. package/es/components/accordion/accordion-item-skeleton.js +1 -1
  4. package/es/components/accordion/accordion-item-skeleton.js.map +1 -1
  5. package/es/components/accordion/accordion-item.js +1 -1
  6. package/es/components/accordion/accordion-item.js.map +1 -1
  7. package/es/components/accordion/accordion-skeleton.js +1 -1
  8. package/es/components/accordion/accordion-skeleton.js.map +1 -1
  9. package/es/components/accordion/accordion.js +1 -1
  10. package/es/components/accordion/accordion.js.map +1 -1
  11. package/es/components/accordion/accordion.scss.js +1 -1
  12. package/es/components/accordion/accordion.scss.js.map +1 -1
  13. package/es/components/accordion/defs.js.map +1 -1
  14. package/es/components/ai-label/ai-label-action-button.js +1 -1
  15. package/es/components/ai-label/ai-label-action-button.js.map +1 -1
  16. package/es/components/ai-label/ai-label.js +1 -1
  17. package/es/components/ai-label/ai-label.js.map +1 -1
  18. package/es/components/ai-label/ai-label.scss.js +1 -1
  19. package/es/components/ai-label/defs.js.map +1 -1
  20. package/es/components/ai-skeleton/ai-skeleton-icon.js +1 -1
  21. package/es/components/ai-skeleton/ai-skeleton-icon.js.map +1 -1
  22. package/es/components/ai-skeleton/ai-skeleton-placeholder.js +1 -1
  23. package/es/components/ai-skeleton/ai-skeleton-placeholder.js.map +1 -1
  24. package/es/components/ai-skeleton/ai-skeleton-text.js +1 -1
  25. package/es/components/ai-skeleton/ai-skeleton-text.js.map +1 -1
  26. package/es/components/badge-indicator/badge-indicator.js +1 -1
  27. package/es/components/badge-indicator/badge-indicator.js.map +1 -1
  28. package/es/components/breadcrumb/breadcrumb-item.js +1 -1
  29. package/es/components/breadcrumb/breadcrumb-item.js.map +1 -1
  30. package/es/components/breadcrumb/breadcrumb-link.js +1 -1
  31. package/es/components/breadcrumb/breadcrumb-link.js.map +1 -1
  32. package/es/components/breadcrumb/breadcrumb-overflow-menu.js +1 -1
  33. package/es/components/breadcrumb/breadcrumb-overflow-menu.js.map +1 -1
  34. package/es/components/breadcrumb/breadcrumb-skeleton.js +1 -1
  35. package/es/components/breadcrumb/breadcrumb-skeleton.js.map +1 -1
  36. package/es/components/breadcrumb/breadcrumb.js +1 -1
  37. package/es/components/breadcrumb/breadcrumb.js.map +1 -1
  38. package/es/components/breadcrumb/breadcrumb.scss.js +1 -1
  39. package/es/components/breadcrumb/defs.js.map +1 -1
  40. package/es/components/button/button-set-base.js +1 -1
  41. package/es/components/button/button-set-base.js.map +1 -1
  42. package/es/components/button/button-set.d.ts +4 -0
  43. package/es/components/button/button-set.d.ts.map +1 -1
  44. package/es/components/button/button-set.js +5 -5
  45. package/es/components/button/button-set.js.map +1 -1
  46. package/es/components/button/button-skeleton.js +1 -1
  47. package/es/components/button/button-skeleton.js.map +1 -1
  48. package/es/components/button/button.js +1 -1
  49. package/es/components/button/button.js.map +1 -1
  50. package/es/components/button/button.scss.js +1 -1
  51. package/es/components/button/defs.js.map +1 -1
  52. package/es/components/chat-button/chat-button-skeleton.js +1 -1
  53. package/es/components/chat-button/chat-button-skeleton.js.map +1 -1
  54. package/es/components/chat-button/chat-button.js +1 -1
  55. package/es/components/chat-button/chat-button.js.map +1 -1
  56. package/es/components/chat-button/defs.js.map +1 -1
  57. package/es/components/checkbox/checkbox-group.js +1 -1
  58. package/es/components/checkbox/checkbox-group.js.map +1 -1
  59. package/es/components/checkbox/checkbox-skeleton.js +1 -1
  60. package/es/components/checkbox/checkbox-skeleton.js.map +1 -1
  61. package/es/components/checkbox/checkbox.js +1 -1
  62. package/es/components/checkbox/checkbox.js.map +1 -1
  63. package/es/components/checkbox/defs.js.map +1 -1
  64. package/es/components/code-snippet/code-snippet-skeleton.js +1 -1
  65. package/es/components/code-snippet/code-snippet-skeleton.js.map +1 -1
  66. package/es/components/code-snippet/code-snippet.js +1 -1
  67. package/es/components/code-snippet/code-snippet.js.map +1 -1
  68. package/es/components/code-snippet/code-snippet.scss.js +1 -1
  69. package/es/components/code-snippet/defs.js.map +1 -1
  70. package/es/components/combo-box/combo-box-item.js +1 -1
  71. package/es/components/combo-box/combo-box-item.js.map +1 -1
  72. package/es/components/combo-box/combo-box.js +1 -1
  73. package/es/components/combo-box/combo-box.js.map +1 -1
  74. package/es/components/combo-button/combo-button.js +1 -1
  75. package/es/components/combo-button/combo-button.js.map +1 -1
  76. package/es/components/combo-button/combo-button.scss.js +1 -1
  77. package/es/components/combo-button/defs.js.map +1 -1
  78. package/es/components/contained-list/contained-list-description.js +1 -1
  79. package/es/components/contained-list/contained-list-description.js.map +1 -1
  80. package/es/components/contained-list/contained-list-item.js +1 -1
  81. package/es/components/contained-list/contained-list-item.js.map +1 -1
  82. package/es/components/contained-list/contained-list.js +1 -1
  83. package/es/components/contained-list/contained-list.js.map +1 -1
  84. package/es/components/contained-list/contained-list.scss.js +1 -1
  85. package/es/components/content-switcher/content-switcher-item.js +1 -1
  86. package/es/components/content-switcher/content-switcher-item.js.map +1 -1
  87. package/es/components/content-switcher/content-switcher.js +1 -1
  88. package/es/components/content-switcher/content-switcher.js.map +1 -1
  89. package/es/components/content-switcher/content-switcher.scss.js +1 -1
  90. package/es/components/content-switcher/defs.js.map +1 -1
  91. package/es/components/copy/copy.js +1 -1
  92. package/es/components/copy/copy.js.map +1 -1
  93. package/es/components/copy-button/copy-button.js +1 -1
  94. package/es/components/copy-button/copy-button.js.map +1 -1
  95. package/es/components/copy-button/copy-button.scss.js +1 -1
  96. package/es/components/data-table/data-table.scss.js +1 -1
  97. package/es/components/data-table/defs.js.map +1 -1
  98. package/es/components/data-table/table-batch-actions.d.ts +8 -0
  99. package/es/components/data-table/table-batch-actions.d.ts.map +1 -1
  100. package/es/components/data-table/table-batch-actions.js +10 -9
  101. package/es/components/data-table/table-batch-actions.js.map +1 -1
  102. package/es/components/data-table/table-body.js +1 -1
  103. package/es/components/data-table/table-body.js.map +1 -1
  104. package/es/components/data-table/table-cell-content.js +1 -1
  105. package/es/components/data-table/table-cell-content.js.map +1 -1
  106. package/es/components/data-table/table-cell.js +1 -1
  107. package/es/components/data-table/table-cell.js.map +1 -1
  108. package/es/components/data-table/table-expanded-row.js +1 -1
  109. package/es/components/data-table/table-expanded-row.js.map +1 -1
  110. package/es/components/data-table/table-head.js +1 -1
  111. package/es/components/data-table/table-head.js.map +1 -1
  112. package/es/components/data-table/table-header-cell.js +1 -1
  113. package/es/components/data-table/table-header-cell.js.map +1 -1
  114. package/es/components/data-table/table-header-description.js +1 -1
  115. package/es/components/data-table/table-header-description.js.map +1 -1
  116. package/es/components/data-table/table-header-row.js +1 -1
  117. package/es/components/data-table/table-header-row.js.map +1 -1
  118. package/es/components/data-table/table-header-title.js +1 -1
  119. package/es/components/data-table/table-header-title.js.map +1 -1
  120. package/es/components/data-table/table-row.js +1 -1
  121. package/es/components/data-table/table-row.js.map +1 -1
  122. package/es/components/data-table/table-skeleton.js +1 -1
  123. package/es/components/data-table/table-skeleton.js.map +1 -1
  124. package/es/components/data-table/table-toolbar-content.js +1 -1
  125. package/es/components/data-table/table-toolbar-content.js.map +1 -1
  126. package/es/components/data-table/table-toolbar-search.js +1 -1
  127. package/es/components/data-table/table-toolbar-search.js.map +1 -1
  128. package/es/components/data-table/table-toolbar.js +1 -1
  129. package/es/components/data-table/table-toolbar.js.map +1 -1
  130. package/es/components/data-table/table.js +1 -1
  131. package/es/components/data-table/table.js.map +1 -1
  132. package/es/components/date-picker/append-to-plugin.js.map +1 -1
  133. package/es/components/date-picker/css-class-plugin.js.map +1 -1
  134. package/es/components/date-picker/date-picker-input-skeleton.js +1 -1
  135. package/es/components/date-picker/date-picker-input-skeleton.js.map +1 -1
  136. package/es/components/date-picker/date-picker-input.js +1 -1
  137. package/es/components/date-picker/date-picker-input.js.map +1 -1
  138. package/es/components/date-picker/date-picker.js +1 -1
  139. package/es/components/date-picker/date-picker.js.map +1 -1
  140. package/es/components/date-picker/defs.js.map +1 -1
  141. package/es/components/date-picker/fix-events-plugin.js.map +1 -1
  142. package/es/components/date-picker/focus-plugin.js.map +1 -1
  143. package/es/components/date-picker/icon-plugin.js.map +1 -1
  144. package/es/components/date-picker/iso-date.js.map +1 -1
  145. package/es/components/date-picker/month-select-plugin.js.map +1 -1
  146. package/es/components/date-picker/range-plugin.js.map +1 -1
  147. package/es/components/date-picker/shadow-dom-events-plugin.js.map +1 -1
  148. package/es/components/date-picker/state-handshake-plugin.js.map +1 -1
  149. package/es/components/dialog/dialog-body.js +1 -1
  150. package/es/components/dialog/dialog-body.js.map +1 -1
  151. package/es/components/dialog/dialog-close-button.js +1 -1
  152. package/es/components/dialog/dialog-close-button.js.map +1 -1
  153. package/es/components/dialog/dialog-controls.js +1 -1
  154. package/es/components/dialog/dialog-controls.js.map +1 -1
  155. package/es/components/dialog/dialog-footer-button.js +1 -1
  156. package/es/components/dialog/dialog-footer-button.js.map +1 -1
  157. package/es/components/dialog/dialog-footer.js +1 -1
  158. package/es/components/dialog/dialog-footer.js.map +1 -1
  159. package/es/components/dialog/dialog-header.js +1 -1
  160. package/es/components/dialog/dialog-header.js.map +1 -1
  161. package/es/components/dialog/dialog-subtitle.js +1 -1
  162. package/es/components/dialog/dialog-subtitle.js.map +1 -1
  163. package/es/components/dialog/dialog-title.js +1 -1
  164. package/es/components/dialog/dialog-title.js.map +1 -1
  165. package/es/components/dialog/dialog.js +1 -1
  166. package/es/components/dialog/dialog.js.map +1 -1
  167. package/es/components/dialog/dialog.scss.js +1 -1
  168. package/es/components/dropdown/defs.js.map +1 -1
  169. package/es/components/dropdown/dropdown-item.js +1 -1
  170. package/es/components/dropdown/dropdown-item.js.map +1 -1
  171. package/es/components/dropdown/dropdown-skeleton.js +1 -1
  172. package/es/components/dropdown/dropdown-skeleton.js.map +1 -1
  173. package/es/components/dropdown/dropdown.js +1 -1
  174. package/es/components/dropdown/dropdown.js.map +1 -1
  175. package/es/components/feature-flags/index.js +1 -1
  176. package/es/components/feature-flags/index.js.map +1 -1
  177. package/es/components/file-uploader/defs.js.map +1 -1
  178. package/es/components/file-uploader/demo-file-uploader.js +1 -1
  179. package/es/components/file-uploader/demo-file-uploader.js.map +1 -1
  180. package/es/components/file-uploader/file-uploader-button.js +1 -1
  181. package/es/components/file-uploader/file-uploader-button.js.map +1 -1
  182. package/es/components/file-uploader/file-uploader-drop-container.js +1 -1
  183. package/es/components/file-uploader/file-uploader-drop-container.js.map +1 -1
  184. package/es/components/file-uploader/file-uploader-item.js +1 -1
  185. package/es/components/file-uploader/file-uploader-item.js.map +1 -1
  186. package/es/components/file-uploader/file-uploader-skeleton.js +1 -1
  187. package/es/components/file-uploader/file-uploader-skeleton.js.map +1 -1
  188. package/es/components/file-uploader/file-uploader.js +1 -1
  189. package/es/components/file-uploader/file-uploader.js.map +1 -1
  190. package/es/components/file-uploader/file-uploader.scss.js +1 -1
  191. package/es/components/floating-menu/defs.js.map +1 -1
  192. package/es/components/floating-menu/floating-menu.js +1 -1
  193. package/es/components/floating-menu/floating-menu.js.map +1 -1
  194. package/es/components/fluid-combo-box/fluid-combo-box-skeleton.js +1 -1
  195. package/es/components/fluid-combo-box/fluid-combo-box-skeleton.js.map +1 -1
  196. package/es/components/fluid-combo-box/fluid-combo-box.js +1 -1
  197. package/es/components/fluid-combo-box/fluid-combo-box.js.map +1 -1
  198. package/es/components/fluid-dropdown/fluid-dropdown-skeleton.js +1 -1
  199. package/es/components/fluid-dropdown/fluid-dropdown-skeleton.js.map +1 -1
  200. package/es/components/fluid-dropdown/fluid-dropdown.js +1 -1
  201. package/es/components/fluid-dropdown/fluid-dropdown.js.map +1 -1
  202. package/es/components/fluid-form/fluid-form.js +1 -1
  203. package/es/components/fluid-form/fluid-form.js.map +1 -1
  204. package/es/components/fluid-multi-select/fluid-multi-select-skeleton.js +1 -1
  205. package/es/components/fluid-multi-select/fluid-multi-select-skeleton.js.map +1 -1
  206. package/es/components/fluid-multi-select/fluid-multi-select.js +1 -1
  207. package/es/components/fluid-multi-select/fluid-multi-select.js.map +1 -1
  208. package/es/components/fluid-multi-select/fluid-multi-select.scss.js +1 -1
  209. package/es/components/fluid-number-input/fluid-number-input-skeleton.js +1 -1
  210. package/es/components/fluid-number-input/fluid-number-input-skeleton.js.map +1 -1
  211. package/es/components/fluid-number-input/fluid-number-input.js +1 -1
  212. package/es/components/fluid-number-input/fluid-number-input.js.map +1 -1
  213. package/es/components/fluid-password-input/fluid-password-input.d.ts +1 -0
  214. package/es/components/fluid-password-input/fluid-password-input.d.ts.map +1 -1
  215. package/es/components/fluid-password-input/fluid-password-input.js +4 -3
  216. package/es/components/fluid-password-input/fluid-password-input.js.map +1 -1
  217. package/es/components/fluid-search/fluid-search-skeleton.js +1 -1
  218. package/es/components/fluid-search/fluid-search-skeleton.js.map +1 -1
  219. package/es/components/fluid-search/fluid-search.js +1 -1
  220. package/es/components/fluid-search/fluid-search.js.map +1 -1
  221. package/es/components/fluid-select/fluid-select-skeleton.js +1 -1
  222. package/es/components/fluid-select/fluid-select-skeleton.js.map +1 -1
  223. package/es/components/fluid-select/fluid-select.js +1 -1
  224. package/es/components/fluid-select/fluid-select.js.map +1 -1
  225. package/es/components/fluid-text-input/fluid-text-input-skeleton.js +1 -1
  226. package/es/components/fluid-text-input/fluid-text-input-skeleton.js.map +1 -1
  227. package/es/components/fluid-text-input/fluid-text-input.d.ts +1 -0
  228. package/es/components/fluid-text-input/fluid-text-input.d.ts.map +1 -1
  229. package/es/components/fluid-text-input/fluid-text-input.js +4 -3
  230. package/es/components/fluid-text-input/fluid-text-input.js.map +1 -1
  231. package/es/components/fluid-textarea/fluid-textarea-skeleton.js +1 -1
  232. package/es/components/fluid-textarea/fluid-textarea-skeleton.js.map +1 -1
  233. package/es/components/fluid-textarea/fluid-textarea.js +1 -1
  234. package/es/components/fluid-textarea/fluid-textarea.js.map +1 -1
  235. package/es/components/fluid-time-picker/fluid-time-picker-select.js +1 -1
  236. package/es/components/fluid-time-picker/fluid-time-picker-select.js.map +1 -1
  237. package/es/components/fluid-time-picker/fluid-time-picker-skeleton.js +1 -1
  238. package/es/components/fluid-time-picker/fluid-time-picker-skeleton.js.map +1 -1
  239. package/es/components/fluid-time-picker/fluid-time-picker.js +1 -1
  240. package/es/components/fluid-time-picker/fluid-time-picker.js.map +1 -1
  241. package/es/components/form/form-item.js +1 -1
  242. package/es/components/form/form-item.js.map +1 -1
  243. package/es/components/form/form.js +1 -1
  244. package/es/components/form/form.js.map +1 -1
  245. package/es/components/form-group/form-group.js +1 -1
  246. package/es/components/form-group/form-group.js.map +1 -1
  247. package/es/components/grid/column-hang.js +1 -1
  248. package/es/components/grid/column-hang.js.map +1 -1
  249. package/es/components/grid/column.js +1 -1
  250. package/es/components/grid/column.js.map +1 -1
  251. package/es/components/grid/defs.js.map +1 -1
  252. package/es/components/grid/grid-context.js.map +1 -1
  253. package/es/components/grid/grid.js +1 -1
  254. package/es/components/grid/grid.js.map +1 -1
  255. package/es/components/heading/heading.js +1 -1
  256. package/es/components/heading/heading.js.map +1 -1
  257. package/es/components/icon/icon.js +1 -1
  258. package/es/components/icon/icon.js.map +1 -1
  259. package/es/components/icon-button/defs.js.map +1 -1
  260. package/es/components/icon-button/icon-button.js +1 -1
  261. package/es/components/icon-button/icon-button.js.map +1 -1
  262. package/es/components/icon-indicator/defs.js.map +1 -1
  263. package/es/components/icon-indicator/icon-indicator.js +1 -1
  264. package/es/components/icon-indicator/icon-indicator.js.map +1 -1
  265. package/es/components/inline-loading/defs.js.map +1 -1
  266. package/es/components/inline-loading/inline-loading.js +1 -1
  267. package/es/components/inline-loading/inline-loading.js.map +1 -1
  268. package/es/components/layer/layer.js +1 -1
  269. package/es/components/layer/layer.js.map +1 -1
  270. package/es/components/layout/layout-constraint.js +1 -1
  271. package/es/components/layout/layout-constraint.js.map +1 -1
  272. package/es/components/layout/layout.js +1 -1
  273. package/es/components/layout/layout.js.map +1 -1
  274. package/es/components/link/link.d.ts +1 -1
  275. package/es/components/link/link.js +1 -1
  276. package/es/components/link/link.js.map +1 -1
  277. package/es/components/link/link.scss.js +1 -1
  278. package/es/components/list/list-item.js +1 -1
  279. package/es/components/list/list-item.js.map +1 -1
  280. package/es/components/list/ordered-list.js +1 -1
  281. package/es/components/list/ordered-list.js.map +1 -1
  282. package/es/components/list/unordered-list.js +1 -1
  283. package/es/components/list/unordered-list.js.map +1 -1
  284. package/es/components/loading/defs.js.map +1 -1
  285. package/es/components/loading/loading-icon.js.map +1 -1
  286. package/es/components/loading/loading.js +1 -1
  287. package/es/components/loading/loading.js.map +1 -1
  288. package/es/components/menu/defs.js.map +1 -1
  289. package/es/components/menu/menu-context.js.map +1 -1
  290. package/es/components/menu/menu-item-divider.js +1 -1
  291. package/es/components/menu/menu-item-divider.js.map +1 -1
  292. package/es/components/menu/menu-item-group.js +1 -1
  293. package/es/components/menu/menu-item-group.js.map +1 -1
  294. package/es/components/menu/menu-item-radio-group.js +1 -1
  295. package/es/components/menu/menu-item-radio-group.js.map +1 -1
  296. package/es/components/menu/menu-item-selectable.d.ts +4 -0
  297. package/es/components/menu/menu-item-selectable.d.ts.map +1 -1
  298. package/es/components/menu/menu-item-selectable.js +4 -4
  299. package/es/components/menu/menu-item-selectable.js.map +1 -1
  300. package/es/components/menu/menu-item.js +1 -1
  301. package/es/components/menu/menu-item.js.map +1 -1
  302. package/es/components/menu/menu.d.ts +14 -6
  303. package/es/components/menu/menu.d.ts.map +1 -1
  304. package/es/components/menu/menu.js +9 -7
  305. package/es/components/menu/menu.js.map +1 -1
  306. package/es/components/menu-button/defs.js.map +1 -1
  307. package/es/components/menu-button/menu-button.js +1 -1
  308. package/es/components/menu-button/menu-button.js.map +1 -1
  309. package/es/components/menu-button/menu-button.scss.js +1 -1
  310. package/es/components/modal/defs.js.map +1 -1
  311. package/es/components/modal/modal-base.js +1 -1
  312. package/es/components/modal/modal-base.js.map +1 -1
  313. package/es/components/modal/modal-body-content.js +1 -1
  314. package/es/components/modal/modal-body-content.js.map +1 -1
  315. package/es/components/modal/modal-body.js +1 -1
  316. package/es/components/modal/modal-body.js.map +1 -1
  317. package/es/components/modal/modal-close-button.js +1 -1
  318. package/es/components/modal/modal-close-button.js.map +1 -1
  319. package/es/components/modal/modal-footer-button.js +1 -1
  320. package/es/components/modal/modal-footer-button.js.map +1 -1
  321. package/es/components/modal/modal-footer.js +1 -1
  322. package/es/components/modal/modal-footer.js.map +1 -1
  323. package/es/components/modal/modal-header.js +1 -1
  324. package/es/components/modal/modal-header.js.map +1 -1
  325. package/es/components/modal/modal-heading.js +1 -1
  326. package/es/components/modal/modal-heading.js.map +1 -1
  327. package/es/components/modal/modal-label.js +1 -1
  328. package/es/components/modal/modal-label.js.map +1 -1
  329. package/es/components/modal/modal.js +1 -1
  330. package/es/components/modal/modal.js.map +1 -1
  331. package/es/components/modal/modal.scss.js +1 -1
  332. package/es/components/multi-select/defs.js.map +1 -1
  333. package/es/components/multi-select/multi-select-item.js +1 -1
  334. package/es/components/multi-select/multi-select-item.js.map +1 -1
  335. package/es/components/multi-select/multi-select.js +1 -1
  336. package/es/components/multi-select/multi-select.js.map +1 -1
  337. package/es/components/multi-select/multi-select.scss.js +1 -1
  338. package/es/components/notification/actionable-notification-button.js +1 -1
  339. package/es/components/notification/actionable-notification-button.js.map +1 -1
  340. package/es/components/notification/actionable-notification.js +1 -1
  341. package/es/components/notification/actionable-notification.js.map +1 -1
  342. package/es/components/notification/actionable-notification.scss.js +1 -1
  343. package/es/components/notification/callout-notification.js +1 -1
  344. package/es/components/notification/callout-notification.js.map +1 -1
  345. package/es/components/notification/defs.js.map +1 -1
  346. package/es/components/notification/inline-notification.js +1 -1
  347. package/es/components/notification/inline-notification.js.map +1 -1
  348. package/es/components/notification/inline-notification.scss.js +1 -1
  349. package/es/components/notification/stories/helper.js.map +1 -1
  350. package/es/components/notification/toast-notification.js +1 -1
  351. package/es/components/notification/toast-notification.js.map +1 -1
  352. package/es/components/notification/toast-notification.scss.js +1 -1
  353. package/es/components/number-input/defs.js.map +1 -1
  354. package/es/components/number-input/number-input-skeleton.js +1 -1
  355. package/es/components/number-input/number-input-skeleton.js.map +1 -1
  356. package/es/components/number-input/number-input.js +1 -1
  357. package/es/components/number-input/number-input.js.map +1 -1
  358. package/es/components/overflow-menu/defs.js.map +1 -1
  359. package/es/components/overflow-menu/overflow-menu-body.js +1 -1
  360. package/es/components/overflow-menu/overflow-menu-body.js.map +1 -1
  361. package/es/components/overflow-menu/overflow-menu-item.js +1 -1
  362. package/es/components/overflow-menu/overflow-menu-item.js.map +1 -1
  363. package/es/components/overflow-menu/overflow-menu.d.ts +8 -0
  364. package/es/components/overflow-menu/overflow-menu.d.ts.map +1 -1
  365. package/es/components/overflow-menu/overflow-menu.js +11 -10
  366. package/es/components/overflow-menu/overflow-menu.js.map +1 -1
  367. package/es/components/overflow-menu/overflow-menu.scss.js +1 -1
  368. package/es/components/page-header/page-header-breadcrumb.js +1 -1
  369. package/es/components/page-header/page-header-breadcrumb.js.map +1 -1
  370. package/es/components/page-header/page-header-content-text.js +1 -1
  371. package/es/components/page-header/page-header-content-text.js.map +1 -1
  372. package/es/components/page-header/page-header-content.js +1 -1
  373. package/es/components/page-header/page-header-content.js.map +1 -1
  374. package/es/components/page-header/page-header-hero-image.js +1 -1
  375. package/es/components/page-header/page-header-hero-image.js.map +1 -1
  376. package/es/components/page-header/page-header-tabs.js +1 -1
  377. package/es/components/page-header/page-header-tabs.js.map +1 -1
  378. package/es/components/page-header/page-header.js +1 -1
  379. package/es/components/page-header/page-header.js.map +1 -1
  380. package/es/components/pagination/defs.js.map +1 -1
  381. package/es/components/pagination/pagination.d.ts +3 -0
  382. package/es/components/pagination/pagination.d.ts.map +1 -1
  383. package/es/components/pagination/pagination.js +18 -23
  384. package/es/components/pagination/pagination.js.map +1 -1
  385. package/es/components/pagination/pagination.scss.js +1 -1
  386. package/es/components/pagination-nav/defs.js.map +1 -1
  387. package/es/components/pagination-nav/pagination-nav.js +1 -1
  388. package/es/components/pagination-nav/pagination-nav.js.map +1 -1
  389. package/es/components/pagination-nav/pagination-nav.scss.js +1 -1
  390. package/es/components/password-input/defs.js.map +1 -1
  391. package/es/components/password-input/password-input-skeleton.js +1 -1
  392. package/es/components/password-input/password-input-skeleton.js.map +1 -1
  393. package/es/components/password-input/password-input.js +1 -1
  394. package/es/components/password-input/password-input.js.map +1 -1
  395. package/es/components/popover/defs.js.map +1 -1
  396. package/es/components/popover/popover-content.js +1 -1
  397. package/es/components/popover/popover-content.js.map +1 -1
  398. package/es/components/popover/popover.d.ts +5 -0
  399. package/es/components/popover/popover.d.ts.map +1 -1
  400. package/es/components/popover/popover.js +23 -2
  401. package/es/components/popover/popover.js.map +1 -1
  402. package/es/components/popover/popover.scss.js +1 -1
  403. package/es/components/progress-bar/defs.js.map +1 -1
  404. package/es/components/progress-bar/progress-bar.d.ts +1 -0
  405. package/es/components/progress-bar/progress-bar.d.ts.map +1 -1
  406. package/es/components/progress-bar/progress-bar.js +5 -5
  407. package/es/components/progress-bar/progress-bar.js.map +1 -1
  408. package/es/components/progress-indicator/defs.js.map +1 -1
  409. package/es/components/progress-indicator/progress-indicator-skeleton.js +1 -1
  410. package/es/components/progress-indicator/progress-indicator-skeleton.js.map +1 -1
  411. package/es/components/progress-indicator/progress-indicator.js +1 -1
  412. package/es/components/progress-indicator/progress-indicator.js.map +1 -1
  413. package/es/components/progress-indicator/progress-indicator.scss.js +1 -1
  414. package/es/components/progress-indicator/progress-step-skeleton.js +1 -1
  415. package/es/components/progress-indicator/progress-step-skeleton.js.map +1 -1
  416. package/es/components/progress-indicator/progress-step.js +1 -1
  417. package/es/components/progress-indicator/progress-step.js.map +1 -1
  418. package/es/components/radio-button/defs.js.map +1 -1
  419. package/es/components/radio-button/radio-button-group.d.ts +3 -0
  420. package/es/components/radio-button/radio-button-group.d.ts.map +1 -1
  421. package/es/components/radio-button/radio-button-group.js +22 -5
  422. package/es/components/radio-button/radio-button-group.js.map +1 -1
  423. package/es/components/radio-button/radio-button-skeleton.js +1 -1
  424. package/es/components/radio-button/radio-button-skeleton.js.map +1 -1
  425. package/es/components/radio-button/radio-button.js +1 -1
  426. package/es/components/radio-button/radio-button.js.map +1 -1
  427. package/es/components/search/defs.js.map +1 -1
  428. package/es/components/search/search-skeleton.js +1 -1
  429. package/es/components/search/search-skeleton.js.map +1 -1
  430. package/es/components/search/search.js +1 -1
  431. package/es/components/search/search.js.map +1 -1
  432. package/es/components/select/select-item-group.js +1 -1
  433. package/es/components/select/select-item-group.js.map +1 -1
  434. package/es/components/select/select-item.js +1 -1
  435. package/es/components/select/select-item.js.map +1 -1
  436. package/es/components/select/select-skeleton.js +1 -1
  437. package/es/components/select/select-skeleton.js.map +1 -1
  438. package/es/components/select/select.js +1 -1
  439. package/es/components/select/select.js.map +1 -1
  440. package/es/components/shape-indicator/defs.js.map +1 -1
  441. package/es/components/shape-indicator/shape-indicator.js +1 -1
  442. package/es/components/shape-indicator/shape-indicator.js.map +1 -1
  443. package/es/components/side-panel/defs.js.map +1 -1
  444. package/es/components/side-panel/side-panel.js +1 -1
  445. package/es/components/side-panel/side-panel.js.map +1 -1
  446. package/es/components/skeleton-icon/skeleton-icon.js +1 -1
  447. package/es/components/skeleton-icon/skeleton-icon.js.map +1 -1
  448. package/es/components/skeleton-placeholder/skeleton-placeholder.js +1 -1
  449. package/es/components/skeleton-placeholder/skeleton-placeholder.js.map +1 -1
  450. package/es/components/skeleton-text/defs.js.map +1 -1
  451. package/es/components/skeleton-text/skeleton-text.js +1 -1
  452. package/es/components/skeleton-text/skeleton-text.js.map +1 -1
  453. package/es/components/skip-to-content/skip-to-content.js +1 -1
  454. package/es/components/skip-to-content/skip-to-content.js.map +1 -1
  455. package/es/components/skip-to-content/skip-to-content.scss.js +1 -1
  456. package/es/components/slider/slider-input.js +1 -1
  457. package/es/components/slider/slider-input.js.map +1 -1
  458. package/es/components/slider/slider-skeleton.js +1 -1
  459. package/es/components/slider/slider-skeleton.js.map +1 -1
  460. package/es/components/slider/slider.js +1 -1
  461. package/es/components/slider/slider.js.map +1 -1
  462. package/es/components/slug/defs.js.map +1 -1
  463. package/es/components/slug/slug-action-button.js +1 -1
  464. package/es/components/slug/slug-action-button.js.map +1 -1
  465. package/es/components/slug/slug.js +1 -1
  466. package/es/components/slug/slug.js.map +1 -1
  467. package/es/components/slug/slug.scss.js +1 -1
  468. package/es/components/stack/defs.js.map +1 -1
  469. package/es/components/stack/stack.js +1 -1
  470. package/es/components/stack/stack.js.map +1 -1
  471. package/es/components/structured-list/structured-list-body.js +1 -1
  472. package/es/components/structured-list/structured-list-body.js.map +1 -1
  473. package/es/components/structured-list/structured-list-cell.js +1 -1
  474. package/es/components/structured-list/structured-list-cell.js.map +1 -1
  475. package/es/components/structured-list/structured-list-head.js +1 -1
  476. package/es/components/structured-list/structured-list-head.js.map +1 -1
  477. package/es/components/structured-list/structured-list-header-cell-skeleton.js +1 -1
  478. package/es/components/structured-list/structured-list-header-cell-skeleton.js.map +1 -1
  479. package/es/components/structured-list/structured-list-header-cell.js +1 -1
  480. package/es/components/structured-list/structured-list-header-cell.js.map +1 -1
  481. package/es/components/structured-list/structured-list-header-row.js +1 -1
  482. package/es/components/structured-list/structured-list-header-row.js.map +1 -1
  483. package/es/components/structured-list/structured-list-row.js +1 -1
  484. package/es/components/structured-list/structured-list-row.js.map +1 -1
  485. package/es/components/structured-list/structured-list.js +1 -1
  486. package/es/components/structured-list/structured-list.js.map +1 -1
  487. package/es/components/tabs/defs.js.map +1 -1
  488. package/es/components/tabs/stories/tabs-wrapper.js +1 -1
  489. package/es/components/tabs/stories/tabs-wrapper.js.map +1 -1
  490. package/es/components/tabs/tab-skeleton.js +1 -1
  491. package/es/components/tabs/tab-skeleton.js.map +1 -1
  492. package/es/components/tabs/tab.js +1 -1
  493. package/es/components/tabs/tab.js.map +1 -1
  494. package/es/components/tabs/tabs-skeleton.js +1 -1
  495. package/es/components/tabs/tabs-skeleton.js.map +1 -1
  496. package/es/components/tabs/tabs-vertical.js +1 -1
  497. package/es/components/tabs/tabs-vertical.js.map +1 -1
  498. package/es/components/tabs/tabs.js +1 -1
  499. package/es/components/tabs/tabs.js.map +1 -1
  500. package/es/components/tabs/tabs.scss.js +1 -1
  501. package/es/components/tag/defs.js.map +1 -1
  502. package/es/components/tag/dismissible-tag.js +1 -1
  503. package/es/components/tag/dismissible-tag.js.map +1 -1
  504. package/es/components/tag/operational-tag.js +1 -1
  505. package/es/components/tag/operational-tag.js.map +1 -1
  506. package/es/components/tag/selectable-tag.js +1 -1
  507. package/es/components/tag/selectable-tag.js.map +1 -1
  508. package/es/components/tag/tag-skeleton.js +1 -1
  509. package/es/components/tag/tag-skeleton.js.map +1 -1
  510. package/es/components/tag/tag.js +1 -1
  511. package/es/components/tag/tag.js.map +1 -1
  512. package/es/components/tag/tag.scss.js +1 -1
  513. package/es/components/tearsheet/defs.js.map +1 -1
  514. package/es/components/tearsheet/tearsheet.js +1 -1
  515. package/es/components/tearsheet/tearsheet.js.map +1 -1
  516. package/es/components/text-input/defs.js.map +1 -1
  517. package/es/components/text-input/stories/helpers.js.map +1 -1
  518. package/es/components/text-input/text-input-skeleton.js +1 -1
  519. package/es/components/text-input/text-input-skeleton.js.map +1 -1
  520. package/es/components/text-input/text-input.js +1 -1
  521. package/es/components/text-input/text-input.js.map +1 -1
  522. package/es/components/textarea/stories/helpers.js.map +1 -1
  523. package/es/components/textarea/textarea-skeleton.js +1 -1
  524. package/es/components/textarea/textarea-skeleton.js.map +1 -1
  525. package/es/components/textarea/textarea.js +1 -1
  526. package/es/components/textarea/textarea.js.map +1 -1
  527. package/es/components/tile/clickable-tile.js +1 -1
  528. package/es/components/tile/clickable-tile.js.map +1 -1
  529. package/es/components/tile/expandable-tile.js +1 -1
  530. package/es/components/tile/expandable-tile.js.map +1 -1
  531. package/es/components/tile/radio-tile.js +1 -1
  532. package/es/components/tile/radio-tile.js.map +1 -1
  533. package/es/components/tile/selectable-tile.js +1 -1
  534. package/es/components/tile/selectable-tile.js.map +1 -1
  535. package/es/components/tile/tile-group.js +1 -1
  536. package/es/components/tile/tile-group.js.map +1 -1
  537. package/es/components/tile/tile.js +1 -1
  538. package/es/components/tile/tile.js.map +1 -1
  539. package/es/components/tile/tile.scss.js +1 -1
  540. package/es/components/time-picker/defs.js.map +1 -1
  541. package/es/components/time-picker/time-picker-select.js +1 -1
  542. package/es/components/time-picker/time-picker-select.js.map +1 -1
  543. package/es/components/time-picker/time-picker.js +1 -1
  544. package/es/components/time-picker/time-picker.js.map +1 -1
  545. package/es/components/toggle/defs.js.map +1 -1
  546. package/es/components/toggle/toggle-skeleton.js +1 -1
  547. package/es/components/toggle/toggle-skeleton.js.map +1 -1
  548. package/es/components/toggle/toggle.js +1 -1
  549. package/es/components/toggle/toggle.js.map +1 -1
  550. package/es/components/toggle-tip/toggletip.js +1 -1
  551. package/es/components/toggle-tip/toggletip.js.map +1 -1
  552. package/es/components/toggle-tip/toggletip.scss.js +1 -1
  553. package/es/components/tooltip/definition-tooltip.js +1 -1
  554. package/es/components/tooltip/definition-tooltip.js.map +1 -1
  555. package/es/components/tooltip/tooltip-content.js +1 -1
  556. package/es/components/tooltip/tooltip-content.js.map +1 -1
  557. package/es/components/tooltip/tooltip.js +1 -1
  558. package/es/components/tooltip/tooltip.js.map +1 -1
  559. package/es/components/tooltip/tooltip.scss.js +1 -1
  560. package/es/components/tree-view/defs.js.map +1 -1
  561. package/es/components/tree-view/tree-node.js +1 -1
  562. package/es/components/tree-view/tree-node.js.map +1 -1
  563. package/es/components/tree-view/tree-view.js +1 -1
  564. package/es/components/tree-view/tree-view.js.map +1 -1
  565. package/es/components/ui-shell/defs.js.map +1 -1
  566. package/es/components/ui-shell/header-global-action.js +1 -1
  567. package/es/components/ui-shell/header-global-action.js.map +1 -1
  568. package/es/components/ui-shell/header-menu-button.js +1 -1
  569. package/es/components/ui-shell/header-menu-button.js.map +1 -1
  570. package/es/components/ui-shell/header-menu-item.js +1 -1
  571. package/es/components/ui-shell/header-menu-item.js.map +1 -1
  572. package/es/components/ui-shell/header-menu.js +1 -1
  573. package/es/components/ui-shell/header-menu.js.map +1 -1
  574. package/es/components/ui-shell/header-name.js +1 -1
  575. package/es/components/ui-shell/header-name.js.map +1 -1
  576. package/es/components/ui-shell/header-nav-item.js +1 -1
  577. package/es/components/ui-shell/header-nav-item.js.map +1 -1
  578. package/es/components/ui-shell/header-nav.js +1 -1
  579. package/es/components/ui-shell/header-nav.js.map +1 -1
  580. package/es/components/ui-shell/header-panel.js +1 -1
  581. package/es/components/ui-shell/header-panel.js.map +1 -1
  582. package/es/components/ui-shell/header-side-nav-items.js +1 -1
  583. package/es/components/ui-shell/header-side-nav-items.js.map +1 -1
  584. package/es/components/ui-shell/header.js +1 -1
  585. package/es/components/ui-shell/header.js.map +1 -1
  586. package/es/components/ui-shell/header.scss.js +1 -1
  587. package/es/components/ui-shell/side-nav-divider.js +1 -1
  588. package/es/components/ui-shell/side-nav-divider.js.map +1 -1
  589. package/es/components/ui-shell/side-nav-items.js +1 -1
  590. package/es/components/ui-shell/side-nav-items.js.map +1 -1
  591. package/es/components/ui-shell/side-nav-link.js +1 -1
  592. package/es/components/ui-shell/side-nav-link.js.map +1 -1
  593. package/es/components/ui-shell/side-nav-menu-item.js +1 -1
  594. package/es/components/ui-shell/side-nav-menu-item.js.map +1 -1
  595. package/es/components/ui-shell/side-nav-menu.js +1 -1
  596. package/es/components/ui-shell/side-nav-menu.js.map +1 -1
  597. package/es/components/ui-shell/side-nav.js +1 -1
  598. package/es/components/ui-shell/side-nav.js.map +1 -1
  599. package/es/components/ui-shell/switcher-divider.js +1 -1
  600. package/es/components/ui-shell/switcher-divider.js.map +1 -1
  601. package/es/components/ui-shell/switcher-item.js +1 -1
  602. package/es/components/ui-shell/switcher-item.js.map +1 -1
  603. package/es/components/ui-shell/switcher.js +1 -1
  604. package/es/components/ui-shell/switcher.js.map +1 -1
  605. package/es/globals/controllers/floating-controller.js.map +1 -1
  606. package/es/globals/decorators/carbon-element.js.map +1 -1
  607. package/es/globals/decorators/host-listener.js.map +1 -1
  608. package/es/globals/directives/if-non-empty.js.map +1 -1
  609. package/es/globals/directives/spread.js.map +1 -1
  610. package/es/globals/internal/collection-helpers.js.map +1 -1
  611. package/es/globals/internal/deep-shadow-contains.js.map +1 -1
  612. package/es/globals/internal/icon-loader-utils.js.map +1 -1
  613. package/es/globals/internal/icon-loader.js.map +1 -1
  614. package/es/globals/internal/radio-group-manager.js.map +1 -1
  615. package/es/globals/mixins/focus.js.map +1 -1
  616. package/es/globals/mixins/form.js.map +1 -1
  617. package/es/globals/mixins/host-listener.js.map +1 -1
  618. package/es/globals/mixins/on.js.map +1 -1
  619. package/es/globals/mixins/validity.js.map +1 -1
  620. package/es/globals/shared-enums.js.map +1 -1
  621. package/es/node_modules/flatpickr/dist/esm/index.js.map +1 -1
  622. package/es/node_modules/flatpickr/dist/esm/l10n/default.js.map +1 -1
  623. package/es/node_modules/flatpickr/dist/esm/plugins/rangePlugin.js.map +1 -1
  624. package/es/node_modules/flatpickr/dist/esm/types/options.js.map +1 -1
  625. package/es/node_modules/flatpickr/dist/esm/utils/dates.js.map +1 -1
  626. package/es/node_modules/flatpickr/dist/esm/utils/dom.js.map +1 -1
  627. package/es/node_modules/flatpickr/dist/esm/utils/formatting.js.map +1 -1
  628. package/es/node_modules/flatpickr/dist/esm/utils/index.js.map +1 -1
  629. package/es/node_modules/flatpickr/dist/esm/utils/polyfills.js.map +1 -1
  630. package/es/packages/feature-flags/es/index.js.map +1 -1
  631. package/es-custom/_virtual/{_@oxc-project_runtime@0.126.0/helpers → _@oxc-project_runtime@0.135.0/helpers/esm}/decorate.js +1 -1
  632. package/es-custom/components/accordion/accordion-item-skeleton.js +1 -1
  633. package/es-custom/components/accordion/accordion-item-skeleton.js.map +1 -1
  634. package/es-custom/components/accordion/accordion-item.js +1 -1
  635. package/es-custom/components/accordion/accordion-item.js.map +1 -1
  636. package/es-custom/components/accordion/accordion-skeleton.js +1 -1
  637. package/es-custom/components/accordion/accordion-skeleton.js.map +1 -1
  638. package/es-custom/components/accordion/accordion.js +1 -1
  639. package/es-custom/components/accordion/accordion.js.map +1 -1
  640. package/es-custom/components/accordion/accordion.scss.js +1 -1
  641. package/es-custom/components/accordion/accordion.scss.js.map +1 -1
  642. package/es-custom/components/accordion/defs.js.map +1 -1
  643. package/es-custom/components/ai-label/ai-label-action-button.js +1 -1
  644. package/es-custom/components/ai-label/ai-label-action-button.js.map +1 -1
  645. package/es-custom/components/ai-label/ai-label.js +1 -1
  646. package/es-custom/components/ai-label/ai-label.js.map +1 -1
  647. package/es-custom/components/ai-label/ai-label.scss.js +1 -1
  648. package/es-custom/components/ai-label/defs.js.map +1 -1
  649. package/es-custom/components/ai-skeleton/ai-skeleton-icon.js +1 -1
  650. package/es-custom/components/ai-skeleton/ai-skeleton-icon.js.map +1 -1
  651. package/es-custom/components/ai-skeleton/ai-skeleton-placeholder.js +1 -1
  652. package/es-custom/components/ai-skeleton/ai-skeleton-placeholder.js.map +1 -1
  653. package/es-custom/components/ai-skeleton/ai-skeleton-text.js +1 -1
  654. package/es-custom/components/ai-skeleton/ai-skeleton-text.js.map +1 -1
  655. package/es-custom/components/badge-indicator/badge-indicator.js +1 -1
  656. package/es-custom/components/badge-indicator/badge-indicator.js.map +1 -1
  657. package/es-custom/components/breadcrumb/breadcrumb-item.js +1 -1
  658. package/es-custom/components/breadcrumb/breadcrumb-item.js.map +1 -1
  659. package/es-custom/components/breadcrumb/breadcrumb-link.js +1 -1
  660. package/es-custom/components/breadcrumb/breadcrumb-link.js.map +1 -1
  661. package/es-custom/components/breadcrumb/breadcrumb-overflow-menu.js +1 -1
  662. package/es-custom/components/breadcrumb/breadcrumb-overflow-menu.js.map +1 -1
  663. package/es-custom/components/breadcrumb/breadcrumb-skeleton.js +1 -1
  664. package/es-custom/components/breadcrumb/breadcrumb-skeleton.js.map +1 -1
  665. package/es-custom/components/breadcrumb/breadcrumb.js +1 -1
  666. package/es-custom/components/breadcrumb/breadcrumb.js.map +1 -1
  667. package/es-custom/components/breadcrumb/breadcrumb.scss.js +1 -1
  668. package/es-custom/components/breadcrumb/defs.js.map +1 -1
  669. package/es-custom/components/button/button-set-base.js +1 -1
  670. package/es-custom/components/button/button-set-base.js.map +1 -1
  671. package/es-custom/components/button/button-set.d.ts +4 -0
  672. package/es-custom/components/button/button-set.d.ts.map +1 -1
  673. package/es-custom/components/button/button-set.js +5 -5
  674. package/es-custom/components/button/button-set.js.map +1 -1
  675. package/es-custom/components/button/button-skeleton.js +1 -1
  676. package/es-custom/components/button/button-skeleton.js.map +1 -1
  677. package/es-custom/components/button/button.js +1 -1
  678. package/es-custom/components/button/button.js.map +1 -1
  679. package/es-custom/components/button/button.scss.js +1 -1
  680. package/es-custom/components/button/defs.js.map +1 -1
  681. package/es-custom/components/chat-button/chat-button-skeleton.js +1 -1
  682. package/es-custom/components/chat-button/chat-button-skeleton.js.map +1 -1
  683. package/es-custom/components/chat-button/chat-button.js +1 -1
  684. package/es-custom/components/chat-button/chat-button.js.map +1 -1
  685. package/es-custom/components/chat-button/defs.js.map +1 -1
  686. package/es-custom/components/checkbox/checkbox-group.js +1 -1
  687. package/es-custom/components/checkbox/checkbox-group.js.map +1 -1
  688. package/es-custom/components/checkbox/checkbox-skeleton.js +1 -1
  689. package/es-custom/components/checkbox/checkbox-skeleton.js.map +1 -1
  690. package/es-custom/components/checkbox/checkbox.js +1 -1
  691. package/es-custom/components/checkbox/checkbox.js.map +1 -1
  692. package/es-custom/components/checkbox/defs.js.map +1 -1
  693. package/es-custom/components/code-snippet/code-snippet-skeleton.js +1 -1
  694. package/es-custom/components/code-snippet/code-snippet-skeleton.js.map +1 -1
  695. package/es-custom/components/code-snippet/code-snippet.js +1 -1
  696. package/es-custom/components/code-snippet/code-snippet.js.map +1 -1
  697. package/es-custom/components/code-snippet/code-snippet.scss.js +1 -1
  698. package/es-custom/components/code-snippet/defs.js.map +1 -1
  699. package/es-custom/components/combo-box/combo-box-item.js +1 -1
  700. package/es-custom/components/combo-box/combo-box-item.js.map +1 -1
  701. package/es-custom/components/combo-box/combo-box.js +1 -1
  702. package/es-custom/components/combo-box/combo-box.js.map +1 -1
  703. package/es-custom/components/combo-button/combo-button.js +1 -1
  704. package/es-custom/components/combo-button/combo-button.js.map +1 -1
  705. package/es-custom/components/combo-button/combo-button.scss.js +1 -1
  706. package/es-custom/components/combo-button/defs.js.map +1 -1
  707. package/es-custom/components/contained-list/contained-list-description.js +1 -1
  708. package/es-custom/components/contained-list/contained-list-description.js.map +1 -1
  709. package/es-custom/components/contained-list/contained-list-item.js +1 -1
  710. package/es-custom/components/contained-list/contained-list-item.js.map +1 -1
  711. package/es-custom/components/contained-list/contained-list.js +1 -1
  712. package/es-custom/components/contained-list/contained-list.js.map +1 -1
  713. package/es-custom/components/contained-list/contained-list.scss.js +1 -1
  714. package/es-custom/components/content-switcher/content-switcher-item.js +1 -1
  715. package/es-custom/components/content-switcher/content-switcher-item.js.map +1 -1
  716. package/es-custom/components/content-switcher/content-switcher.js +1 -1
  717. package/es-custom/components/content-switcher/content-switcher.js.map +1 -1
  718. package/es-custom/components/content-switcher/content-switcher.scss.js +1 -1
  719. package/es-custom/components/content-switcher/defs.js.map +1 -1
  720. package/es-custom/components/copy/copy.js +1 -1
  721. package/es-custom/components/copy/copy.js.map +1 -1
  722. package/es-custom/components/copy-button/copy-button.js +1 -1
  723. package/es-custom/components/copy-button/copy-button.js.map +1 -1
  724. package/es-custom/components/copy-button/copy-button.scss.js +1 -1
  725. package/es-custom/components/data-table/data-table.scss.js +1 -1
  726. package/es-custom/components/data-table/defs.js.map +1 -1
  727. package/es-custom/components/data-table/table-batch-actions.d.ts +8 -0
  728. package/es-custom/components/data-table/table-batch-actions.d.ts.map +1 -1
  729. package/es-custom/components/data-table/table-batch-actions.js +10 -9
  730. package/es-custom/components/data-table/table-batch-actions.js.map +1 -1
  731. package/es-custom/components/data-table/table-body.js +1 -1
  732. package/es-custom/components/data-table/table-body.js.map +1 -1
  733. package/es-custom/components/data-table/table-cell-content.js +1 -1
  734. package/es-custom/components/data-table/table-cell-content.js.map +1 -1
  735. package/es-custom/components/data-table/table-cell.js +1 -1
  736. package/es-custom/components/data-table/table-cell.js.map +1 -1
  737. package/es-custom/components/data-table/table-expanded-row.js +1 -1
  738. package/es-custom/components/data-table/table-expanded-row.js.map +1 -1
  739. package/es-custom/components/data-table/table-head.js +1 -1
  740. package/es-custom/components/data-table/table-head.js.map +1 -1
  741. package/es-custom/components/data-table/table-header-cell.js +1 -1
  742. package/es-custom/components/data-table/table-header-cell.js.map +1 -1
  743. package/es-custom/components/data-table/table-header-description.js +1 -1
  744. package/es-custom/components/data-table/table-header-description.js.map +1 -1
  745. package/es-custom/components/data-table/table-header-row.js +1 -1
  746. package/es-custom/components/data-table/table-header-row.js.map +1 -1
  747. package/es-custom/components/data-table/table-header-title.js +1 -1
  748. package/es-custom/components/data-table/table-header-title.js.map +1 -1
  749. package/es-custom/components/data-table/table-row.js +1 -1
  750. package/es-custom/components/data-table/table-row.js.map +1 -1
  751. package/es-custom/components/data-table/table-skeleton.js +1 -1
  752. package/es-custom/components/data-table/table-skeleton.js.map +1 -1
  753. package/es-custom/components/data-table/table-toolbar-content.js +1 -1
  754. package/es-custom/components/data-table/table-toolbar-content.js.map +1 -1
  755. package/es-custom/components/data-table/table-toolbar-search.js +1 -1
  756. package/es-custom/components/data-table/table-toolbar-search.js.map +1 -1
  757. package/es-custom/components/data-table/table-toolbar.js +1 -1
  758. package/es-custom/components/data-table/table-toolbar.js.map +1 -1
  759. package/es-custom/components/data-table/table.js +1 -1
  760. package/es-custom/components/data-table/table.js.map +1 -1
  761. package/es-custom/components/date-picker/append-to-plugin.js.map +1 -1
  762. package/es-custom/components/date-picker/css-class-plugin.js.map +1 -1
  763. package/es-custom/components/date-picker/date-picker-input-skeleton.js +1 -1
  764. package/es-custom/components/date-picker/date-picker-input-skeleton.js.map +1 -1
  765. package/es-custom/components/date-picker/date-picker-input.js +1 -1
  766. package/es-custom/components/date-picker/date-picker-input.js.map +1 -1
  767. package/es-custom/components/date-picker/date-picker.js +1 -1
  768. package/es-custom/components/date-picker/date-picker.js.map +1 -1
  769. package/es-custom/components/date-picker/defs.js.map +1 -1
  770. package/es-custom/components/date-picker/fix-events-plugin.js.map +1 -1
  771. package/es-custom/components/date-picker/focus-plugin.js.map +1 -1
  772. package/es-custom/components/date-picker/icon-plugin.js.map +1 -1
  773. package/es-custom/components/date-picker/iso-date.js.map +1 -1
  774. package/es-custom/components/date-picker/month-select-plugin.js.map +1 -1
  775. package/es-custom/components/date-picker/range-plugin.js.map +1 -1
  776. package/es-custom/components/date-picker/shadow-dom-events-plugin.js.map +1 -1
  777. package/es-custom/components/date-picker/state-handshake-plugin.js.map +1 -1
  778. package/es-custom/components/dialog/dialog-body.js +1 -1
  779. package/es-custom/components/dialog/dialog-body.js.map +1 -1
  780. package/es-custom/components/dialog/dialog-close-button.js +1 -1
  781. package/es-custom/components/dialog/dialog-close-button.js.map +1 -1
  782. package/es-custom/components/dialog/dialog-controls.js +1 -1
  783. package/es-custom/components/dialog/dialog-controls.js.map +1 -1
  784. package/es-custom/components/dialog/dialog-footer-button.js +1 -1
  785. package/es-custom/components/dialog/dialog-footer-button.js.map +1 -1
  786. package/es-custom/components/dialog/dialog-footer.js +1 -1
  787. package/es-custom/components/dialog/dialog-footer.js.map +1 -1
  788. package/es-custom/components/dialog/dialog-header.js +1 -1
  789. package/es-custom/components/dialog/dialog-header.js.map +1 -1
  790. package/es-custom/components/dialog/dialog-subtitle.js +1 -1
  791. package/es-custom/components/dialog/dialog-subtitle.js.map +1 -1
  792. package/es-custom/components/dialog/dialog-title.js +1 -1
  793. package/es-custom/components/dialog/dialog-title.js.map +1 -1
  794. package/es-custom/components/dialog/dialog.js +1 -1
  795. package/es-custom/components/dialog/dialog.js.map +1 -1
  796. package/es-custom/components/dialog/dialog.scss.js +1 -1
  797. package/es-custom/components/dropdown/defs.js.map +1 -1
  798. package/es-custom/components/dropdown/dropdown-item.js +1 -1
  799. package/es-custom/components/dropdown/dropdown-item.js.map +1 -1
  800. package/es-custom/components/dropdown/dropdown-skeleton.js +1 -1
  801. package/es-custom/components/dropdown/dropdown-skeleton.js.map +1 -1
  802. package/es-custom/components/dropdown/dropdown.js +1 -1
  803. package/es-custom/components/dropdown/dropdown.js.map +1 -1
  804. package/es-custom/components/feature-flags/index.js +1 -1
  805. package/es-custom/components/feature-flags/index.js.map +1 -1
  806. package/es-custom/components/file-uploader/defs.js.map +1 -1
  807. package/es-custom/components/file-uploader/demo-file-uploader.js +1 -1
  808. package/es-custom/components/file-uploader/demo-file-uploader.js.map +1 -1
  809. package/es-custom/components/file-uploader/file-uploader-button.js +1 -1
  810. package/es-custom/components/file-uploader/file-uploader-button.js.map +1 -1
  811. package/es-custom/components/file-uploader/file-uploader-drop-container.js +1 -1
  812. package/es-custom/components/file-uploader/file-uploader-drop-container.js.map +1 -1
  813. package/es-custom/components/file-uploader/file-uploader-item.js +1 -1
  814. package/es-custom/components/file-uploader/file-uploader-item.js.map +1 -1
  815. package/es-custom/components/file-uploader/file-uploader-skeleton.js +1 -1
  816. package/es-custom/components/file-uploader/file-uploader-skeleton.js.map +1 -1
  817. package/es-custom/components/file-uploader/file-uploader.js +1 -1
  818. package/es-custom/components/file-uploader/file-uploader.js.map +1 -1
  819. package/es-custom/components/file-uploader/file-uploader.scss.js +1 -1
  820. package/es-custom/components/floating-menu/defs.js.map +1 -1
  821. package/es-custom/components/floating-menu/floating-menu.js +1 -1
  822. package/es-custom/components/floating-menu/floating-menu.js.map +1 -1
  823. package/es-custom/components/fluid-combo-box/fluid-combo-box-skeleton.js +1 -1
  824. package/es-custom/components/fluid-combo-box/fluid-combo-box-skeleton.js.map +1 -1
  825. package/es-custom/components/fluid-combo-box/fluid-combo-box.js +1 -1
  826. package/es-custom/components/fluid-combo-box/fluid-combo-box.js.map +1 -1
  827. package/es-custom/components/fluid-dropdown/fluid-dropdown-skeleton.js +1 -1
  828. package/es-custom/components/fluid-dropdown/fluid-dropdown-skeleton.js.map +1 -1
  829. package/es-custom/components/fluid-dropdown/fluid-dropdown.js +1 -1
  830. package/es-custom/components/fluid-dropdown/fluid-dropdown.js.map +1 -1
  831. package/es-custom/components/fluid-form/fluid-form.js +1 -1
  832. package/es-custom/components/fluid-form/fluid-form.js.map +1 -1
  833. package/es-custom/components/fluid-multi-select/fluid-multi-select-skeleton.js +1 -1
  834. package/es-custom/components/fluid-multi-select/fluid-multi-select-skeleton.js.map +1 -1
  835. package/es-custom/components/fluid-multi-select/fluid-multi-select.js +1 -1
  836. package/es-custom/components/fluid-multi-select/fluid-multi-select.js.map +1 -1
  837. package/es-custom/components/fluid-multi-select/fluid-multi-select.scss.js +1 -1
  838. package/es-custom/components/fluid-number-input/fluid-number-input-skeleton.js +1 -1
  839. package/es-custom/components/fluid-number-input/fluid-number-input-skeleton.js.map +1 -1
  840. package/es-custom/components/fluid-number-input/fluid-number-input.js +1 -1
  841. package/es-custom/components/fluid-number-input/fluid-number-input.js.map +1 -1
  842. package/es-custom/components/fluid-password-input/fluid-password-input.d.ts +1 -0
  843. package/es-custom/components/fluid-password-input/fluid-password-input.d.ts.map +1 -1
  844. package/es-custom/components/fluid-password-input/fluid-password-input.js +4 -3
  845. package/es-custom/components/fluid-password-input/fluid-password-input.js.map +1 -1
  846. package/es-custom/components/fluid-search/fluid-search-skeleton.js +1 -1
  847. package/es-custom/components/fluid-search/fluid-search-skeleton.js.map +1 -1
  848. package/es-custom/components/fluid-search/fluid-search.js +1 -1
  849. package/es-custom/components/fluid-search/fluid-search.js.map +1 -1
  850. package/es-custom/components/fluid-select/fluid-select-skeleton.js +1 -1
  851. package/es-custom/components/fluid-select/fluid-select-skeleton.js.map +1 -1
  852. package/es-custom/components/fluid-select/fluid-select.js +1 -1
  853. package/es-custom/components/fluid-select/fluid-select.js.map +1 -1
  854. package/es-custom/components/fluid-text-input/fluid-text-input-skeleton.js +1 -1
  855. package/es-custom/components/fluid-text-input/fluid-text-input-skeleton.js.map +1 -1
  856. package/es-custom/components/fluid-text-input/fluid-text-input.d.ts +1 -0
  857. package/es-custom/components/fluid-text-input/fluid-text-input.d.ts.map +1 -1
  858. package/es-custom/components/fluid-text-input/fluid-text-input.js +4 -3
  859. package/es-custom/components/fluid-text-input/fluid-text-input.js.map +1 -1
  860. package/es-custom/components/fluid-textarea/fluid-textarea-skeleton.js +1 -1
  861. package/es-custom/components/fluid-textarea/fluid-textarea-skeleton.js.map +1 -1
  862. package/es-custom/components/fluid-textarea/fluid-textarea.js +1 -1
  863. package/es-custom/components/fluid-textarea/fluid-textarea.js.map +1 -1
  864. package/es-custom/components/fluid-time-picker/fluid-time-picker-select.js +1 -1
  865. package/es-custom/components/fluid-time-picker/fluid-time-picker-select.js.map +1 -1
  866. package/es-custom/components/fluid-time-picker/fluid-time-picker-skeleton.js +1 -1
  867. package/es-custom/components/fluid-time-picker/fluid-time-picker-skeleton.js.map +1 -1
  868. package/es-custom/components/fluid-time-picker/fluid-time-picker.js +1 -1
  869. package/es-custom/components/fluid-time-picker/fluid-time-picker.js.map +1 -1
  870. package/es-custom/components/form/form-item.js +1 -1
  871. package/es-custom/components/form/form-item.js.map +1 -1
  872. package/es-custom/components/form/form.js +1 -1
  873. package/es-custom/components/form/form.js.map +1 -1
  874. package/es-custom/components/form-group/form-group.js +1 -1
  875. package/es-custom/components/form-group/form-group.js.map +1 -1
  876. package/es-custom/components/grid/column-hang.js +1 -1
  877. package/es-custom/components/grid/column-hang.js.map +1 -1
  878. package/es-custom/components/grid/column.js +1 -1
  879. package/es-custom/components/grid/column.js.map +1 -1
  880. package/es-custom/components/grid/defs.js.map +1 -1
  881. package/es-custom/components/grid/grid-context.js.map +1 -1
  882. package/es-custom/components/grid/grid.js +1 -1
  883. package/es-custom/components/grid/grid.js.map +1 -1
  884. package/es-custom/components/heading/heading.js +1 -1
  885. package/es-custom/components/heading/heading.js.map +1 -1
  886. package/es-custom/components/icon/icon.js +1 -1
  887. package/es-custom/components/icon/icon.js.map +1 -1
  888. package/es-custom/components/icon-button/defs.js.map +1 -1
  889. package/es-custom/components/icon-button/icon-button.js +1 -1
  890. package/es-custom/components/icon-button/icon-button.js.map +1 -1
  891. package/es-custom/components/icon-indicator/defs.js.map +1 -1
  892. package/es-custom/components/icon-indicator/icon-indicator.js +1 -1
  893. package/es-custom/components/icon-indicator/icon-indicator.js.map +1 -1
  894. package/es-custom/components/inline-loading/defs.js.map +1 -1
  895. package/es-custom/components/inline-loading/inline-loading.js +1 -1
  896. package/es-custom/components/inline-loading/inline-loading.js.map +1 -1
  897. package/es-custom/components/layer/layer.js +1 -1
  898. package/es-custom/components/layer/layer.js.map +1 -1
  899. package/es-custom/components/layout/layout-constraint.js +1 -1
  900. package/es-custom/components/layout/layout-constraint.js.map +1 -1
  901. package/es-custom/components/layout/layout.js +1 -1
  902. package/es-custom/components/layout/layout.js.map +1 -1
  903. package/es-custom/components/link/link.d.ts +1 -1
  904. package/es-custom/components/link/link.js +1 -1
  905. package/es-custom/components/link/link.js.map +1 -1
  906. package/es-custom/components/link/link.scss.js +1 -1
  907. package/es-custom/components/list/list-item.js +1 -1
  908. package/es-custom/components/list/list-item.js.map +1 -1
  909. package/es-custom/components/list/ordered-list.js +1 -1
  910. package/es-custom/components/list/ordered-list.js.map +1 -1
  911. package/es-custom/components/list/unordered-list.js +1 -1
  912. package/es-custom/components/list/unordered-list.js.map +1 -1
  913. package/es-custom/components/loading/defs.js.map +1 -1
  914. package/es-custom/components/loading/loading-icon.js.map +1 -1
  915. package/es-custom/components/loading/loading.js +1 -1
  916. package/es-custom/components/loading/loading.js.map +1 -1
  917. package/es-custom/components/menu/defs.js.map +1 -1
  918. package/es-custom/components/menu/menu-context.js.map +1 -1
  919. package/es-custom/components/menu/menu-item-divider.js +1 -1
  920. package/es-custom/components/menu/menu-item-divider.js.map +1 -1
  921. package/es-custom/components/menu/menu-item-group.js +1 -1
  922. package/es-custom/components/menu/menu-item-group.js.map +1 -1
  923. package/es-custom/components/menu/menu-item-radio-group.js +1 -1
  924. package/es-custom/components/menu/menu-item-radio-group.js.map +1 -1
  925. package/es-custom/components/menu/menu-item-selectable.d.ts +4 -0
  926. package/es-custom/components/menu/menu-item-selectable.d.ts.map +1 -1
  927. package/es-custom/components/menu/menu-item-selectable.js +4 -4
  928. package/es-custom/components/menu/menu-item-selectable.js.map +1 -1
  929. package/es-custom/components/menu/menu-item.js +1 -1
  930. package/es-custom/components/menu/menu-item.js.map +1 -1
  931. package/es-custom/components/menu/menu.d.ts +14 -6
  932. package/es-custom/components/menu/menu.d.ts.map +1 -1
  933. package/es-custom/components/menu/menu.js +9 -7
  934. package/es-custom/components/menu/menu.js.map +1 -1
  935. package/es-custom/components/menu-button/defs.js.map +1 -1
  936. package/es-custom/components/menu-button/menu-button.js +1 -1
  937. package/es-custom/components/menu-button/menu-button.js.map +1 -1
  938. package/es-custom/components/menu-button/menu-button.scss.js +1 -1
  939. package/es-custom/components/modal/defs.js.map +1 -1
  940. package/es-custom/components/modal/modal-base.js +1 -1
  941. package/es-custom/components/modal/modal-base.js.map +1 -1
  942. package/es-custom/components/modal/modal-body-content.js +1 -1
  943. package/es-custom/components/modal/modal-body-content.js.map +1 -1
  944. package/es-custom/components/modal/modal-body.js +1 -1
  945. package/es-custom/components/modal/modal-body.js.map +1 -1
  946. package/es-custom/components/modal/modal-close-button.js +1 -1
  947. package/es-custom/components/modal/modal-close-button.js.map +1 -1
  948. package/es-custom/components/modal/modal-footer-button.js +1 -1
  949. package/es-custom/components/modal/modal-footer-button.js.map +1 -1
  950. package/es-custom/components/modal/modal-footer.js +1 -1
  951. package/es-custom/components/modal/modal-footer.js.map +1 -1
  952. package/es-custom/components/modal/modal-header.js +1 -1
  953. package/es-custom/components/modal/modal-header.js.map +1 -1
  954. package/es-custom/components/modal/modal-heading.js +1 -1
  955. package/es-custom/components/modal/modal-heading.js.map +1 -1
  956. package/es-custom/components/modal/modal-label.js +1 -1
  957. package/es-custom/components/modal/modal-label.js.map +1 -1
  958. package/es-custom/components/modal/modal.js +1 -1
  959. package/es-custom/components/modal/modal.js.map +1 -1
  960. package/es-custom/components/modal/modal.scss.js +1 -1
  961. package/es-custom/components/multi-select/defs.js.map +1 -1
  962. package/es-custom/components/multi-select/multi-select-item.js +1 -1
  963. package/es-custom/components/multi-select/multi-select-item.js.map +1 -1
  964. package/es-custom/components/multi-select/multi-select.js +1 -1
  965. package/es-custom/components/multi-select/multi-select.js.map +1 -1
  966. package/es-custom/components/multi-select/multi-select.scss.js +1 -1
  967. package/es-custom/components/notification/actionable-notification-button.js +1 -1
  968. package/es-custom/components/notification/actionable-notification-button.js.map +1 -1
  969. package/es-custom/components/notification/actionable-notification.js +1 -1
  970. package/es-custom/components/notification/actionable-notification.js.map +1 -1
  971. package/es-custom/components/notification/actionable-notification.scss.js +1 -1
  972. package/es-custom/components/notification/callout-notification.js +1 -1
  973. package/es-custom/components/notification/callout-notification.js.map +1 -1
  974. package/es-custom/components/notification/defs.js.map +1 -1
  975. package/es-custom/components/notification/inline-notification.js +1 -1
  976. package/es-custom/components/notification/inline-notification.js.map +1 -1
  977. package/es-custom/components/notification/inline-notification.scss.js +1 -1
  978. package/es-custom/components/notification/stories/helper.js.map +1 -1
  979. package/es-custom/components/notification/toast-notification.js +1 -1
  980. package/es-custom/components/notification/toast-notification.js.map +1 -1
  981. package/es-custom/components/notification/toast-notification.scss.js +1 -1
  982. package/es-custom/components/number-input/defs.js.map +1 -1
  983. package/es-custom/components/number-input/number-input-skeleton.js +1 -1
  984. package/es-custom/components/number-input/number-input-skeleton.js.map +1 -1
  985. package/es-custom/components/number-input/number-input.js +1 -1
  986. package/es-custom/components/number-input/number-input.js.map +1 -1
  987. package/es-custom/components/overflow-menu/defs.js.map +1 -1
  988. package/es-custom/components/overflow-menu/overflow-menu-body.js +1 -1
  989. package/es-custom/components/overflow-menu/overflow-menu-body.js.map +1 -1
  990. package/es-custom/components/overflow-menu/overflow-menu-item.js +1 -1
  991. package/es-custom/components/overflow-menu/overflow-menu-item.js.map +1 -1
  992. package/es-custom/components/overflow-menu/overflow-menu.d.ts +8 -0
  993. package/es-custom/components/overflow-menu/overflow-menu.d.ts.map +1 -1
  994. package/es-custom/components/overflow-menu/overflow-menu.js +11 -10
  995. package/es-custom/components/overflow-menu/overflow-menu.js.map +1 -1
  996. package/es-custom/components/overflow-menu/overflow-menu.scss.js +1 -1
  997. package/es-custom/components/page-header/page-header-breadcrumb.js +1 -1
  998. package/es-custom/components/page-header/page-header-breadcrumb.js.map +1 -1
  999. package/es-custom/components/page-header/page-header-content-text.js +1 -1
  1000. package/es-custom/components/page-header/page-header-content-text.js.map +1 -1
  1001. package/es-custom/components/page-header/page-header-content.js +1 -1
  1002. package/es-custom/components/page-header/page-header-content.js.map +1 -1
  1003. package/es-custom/components/page-header/page-header-hero-image.js +1 -1
  1004. package/es-custom/components/page-header/page-header-hero-image.js.map +1 -1
  1005. package/es-custom/components/page-header/page-header-tabs.js +1 -1
  1006. package/es-custom/components/page-header/page-header-tabs.js.map +1 -1
  1007. package/es-custom/components/page-header/page-header.js +1 -1
  1008. package/es-custom/components/page-header/page-header.js.map +1 -1
  1009. package/es-custom/components/pagination/defs.js.map +1 -1
  1010. package/es-custom/components/pagination/pagination.d.ts +3 -0
  1011. package/es-custom/components/pagination/pagination.d.ts.map +1 -1
  1012. package/es-custom/components/pagination/pagination.js +18 -23
  1013. package/es-custom/components/pagination/pagination.js.map +1 -1
  1014. package/es-custom/components/pagination/pagination.scss.js +1 -1
  1015. package/es-custom/components/pagination-nav/defs.js.map +1 -1
  1016. package/es-custom/components/pagination-nav/pagination-nav.js +1 -1
  1017. package/es-custom/components/pagination-nav/pagination-nav.js.map +1 -1
  1018. package/es-custom/components/pagination-nav/pagination-nav.scss.js +1 -1
  1019. package/es-custom/components/password-input/defs.js.map +1 -1
  1020. package/es-custom/components/password-input/password-input-skeleton.js +1 -1
  1021. package/es-custom/components/password-input/password-input-skeleton.js.map +1 -1
  1022. package/es-custom/components/password-input/password-input.js +1 -1
  1023. package/es-custom/components/password-input/password-input.js.map +1 -1
  1024. package/es-custom/components/popover/defs.js.map +1 -1
  1025. package/es-custom/components/popover/popover-content.js +1 -1
  1026. package/es-custom/components/popover/popover-content.js.map +1 -1
  1027. package/es-custom/components/popover/popover.d.ts +5 -0
  1028. package/es-custom/components/popover/popover.d.ts.map +1 -1
  1029. package/es-custom/components/popover/popover.js +23 -2
  1030. package/es-custom/components/popover/popover.js.map +1 -1
  1031. package/es-custom/components/popover/popover.scss.js +1 -1
  1032. package/es-custom/components/progress-bar/defs.js.map +1 -1
  1033. package/es-custom/components/progress-bar/progress-bar.d.ts +1 -0
  1034. package/es-custom/components/progress-bar/progress-bar.d.ts.map +1 -1
  1035. package/es-custom/components/progress-bar/progress-bar.js +5 -5
  1036. package/es-custom/components/progress-bar/progress-bar.js.map +1 -1
  1037. package/es-custom/components/progress-indicator/defs.js.map +1 -1
  1038. package/es-custom/components/progress-indicator/progress-indicator-skeleton.js +1 -1
  1039. package/es-custom/components/progress-indicator/progress-indicator-skeleton.js.map +1 -1
  1040. package/es-custom/components/progress-indicator/progress-indicator.js +1 -1
  1041. package/es-custom/components/progress-indicator/progress-indicator.js.map +1 -1
  1042. package/es-custom/components/progress-indicator/progress-indicator.scss.js +1 -1
  1043. package/es-custom/components/progress-indicator/progress-step-skeleton.js +1 -1
  1044. package/es-custom/components/progress-indicator/progress-step-skeleton.js.map +1 -1
  1045. package/es-custom/components/progress-indicator/progress-step.js +1 -1
  1046. package/es-custom/components/progress-indicator/progress-step.js.map +1 -1
  1047. package/es-custom/components/radio-button/defs.js.map +1 -1
  1048. package/es-custom/components/radio-button/radio-button-group.d.ts +3 -0
  1049. package/es-custom/components/radio-button/radio-button-group.d.ts.map +1 -1
  1050. package/es-custom/components/radio-button/radio-button-group.js +22 -5
  1051. package/es-custom/components/radio-button/radio-button-group.js.map +1 -1
  1052. package/es-custom/components/radio-button/radio-button-skeleton.js +1 -1
  1053. package/es-custom/components/radio-button/radio-button-skeleton.js.map +1 -1
  1054. package/es-custom/components/radio-button/radio-button.js +1 -1
  1055. package/es-custom/components/radio-button/radio-button.js.map +1 -1
  1056. package/es-custom/components/search/defs.js.map +1 -1
  1057. package/es-custom/components/search/search-skeleton.js +1 -1
  1058. package/es-custom/components/search/search-skeleton.js.map +1 -1
  1059. package/es-custom/components/search/search.js +1 -1
  1060. package/es-custom/components/search/search.js.map +1 -1
  1061. package/es-custom/components/select/select-item-group.js +1 -1
  1062. package/es-custom/components/select/select-item-group.js.map +1 -1
  1063. package/es-custom/components/select/select-item.js +1 -1
  1064. package/es-custom/components/select/select-item.js.map +1 -1
  1065. package/es-custom/components/select/select-skeleton.js +1 -1
  1066. package/es-custom/components/select/select-skeleton.js.map +1 -1
  1067. package/es-custom/components/select/select.js +1 -1
  1068. package/es-custom/components/select/select.js.map +1 -1
  1069. package/es-custom/components/shape-indicator/defs.js.map +1 -1
  1070. package/es-custom/components/shape-indicator/shape-indicator.js +1 -1
  1071. package/es-custom/components/shape-indicator/shape-indicator.js.map +1 -1
  1072. package/es-custom/components/side-panel/defs.js.map +1 -1
  1073. package/es-custom/components/side-panel/side-panel.js +1 -1
  1074. package/es-custom/components/side-panel/side-panel.js.map +1 -1
  1075. package/es-custom/components/skeleton-icon/skeleton-icon.js +1 -1
  1076. package/es-custom/components/skeleton-icon/skeleton-icon.js.map +1 -1
  1077. package/es-custom/components/skeleton-placeholder/skeleton-placeholder.js +1 -1
  1078. package/es-custom/components/skeleton-placeholder/skeleton-placeholder.js.map +1 -1
  1079. package/es-custom/components/skeleton-text/defs.js.map +1 -1
  1080. package/es-custom/components/skeleton-text/skeleton-text.js +1 -1
  1081. package/es-custom/components/skeleton-text/skeleton-text.js.map +1 -1
  1082. package/es-custom/components/skip-to-content/skip-to-content.js +1 -1
  1083. package/es-custom/components/skip-to-content/skip-to-content.js.map +1 -1
  1084. package/es-custom/components/skip-to-content/skip-to-content.scss.js +1 -1
  1085. package/es-custom/components/slider/slider-input.js +1 -1
  1086. package/es-custom/components/slider/slider-input.js.map +1 -1
  1087. package/es-custom/components/slider/slider-skeleton.js +1 -1
  1088. package/es-custom/components/slider/slider-skeleton.js.map +1 -1
  1089. package/es-custom/components/slider/slider.js +1 -1
  1090. package/es-custom/components/slider/slider.js.map +1 -1
  1091. package/es-custom/components/slug/defs.js.map +1 -1
  1092. package/es-custom/components/slug/slug-action-button.js +1 -1
  1093. package/es-custom/components/slug/slug-action-button.js.map +1 -1
  1094. package/es-custom/components/slug/slug.js +1 -1
  1095. package/es-custom/components/slug/slug.js.map +1 -1
  1096. package/es-custom/components/slug/slug.scss.js +1 -1
  1097. package/es-custom/components/stack/defs.js.map +1 -1
  1098. package/es-custom/components/stack/stack.js +1 -1
  1099. package/es-custom/components/stack/stack.js.map +1 -1
  1100. package/es-custom/components/structured-list/structured-list-body.js +1 -1
  1101. package/es-custom/components/structured-list/structured-list-body.js.map +1 -1
  1102. package/es-custom/components/structured-list/structured-list-cell.js +1 -1
  1103. package/es-custom/components/structured-list/structured-list-cell.js.map +1 -1
  1104. package/es-custom/components/structured-list/structured-list-head.js +1 -1
  1105. package/es-custom/components/structured-list/structured-list-head.js.map +1 -1
  1106. package/es-custom/components/structured-list/structured-list-header-cell-skeleton.js +1 -1
  1107. package/es-custom/components/structured-list/structured-list-header-cell-skeleton.js.map +1 -1
  1108. package/es-custom/components/structured-list/structured-list-header-cell.js +1 -1
  1109. package/es-custom/components/structured-list/structured-list-header-cell.js.map +1 -1
  1110. package/es-custom/components/structured-list/structured-list-header-row.js +1 -1
  1111. package/es-custom/components/structured-list/structured-list-header-row.js.map +1 -1
  1112. package/es-custom/components/structured-list/structured-list-row.js +1 -1
  1113. package/es-custom/components/structured-list/structured-list-row.js.map +1 -1
  1114. package/es-custom/components/structured-list/structured-list.js +1 -1
  1115. package/es-custom/components/structured-list/structured-list.js.map +1 -1
  1116. package/es-custom/components/tabs/defs.js.map +1 -1
  1117. package/es-custom/components/tabs/stories/tabs-wrapper.js +1 -1
  1118. package/es-custom/components/tabs/stories/tabs-wrapper.js.map +1 -1
  1119. package/es-custom/components/tabs/tab-skeleton.js +1 -1
  1120. package/es-custom/components/tabs/tab-skeleton.js.map +1 -1
  1121. package/es-custom/components/tabs/tab.js +1 -1
  1122. package/es-custom/components/tabs/tab.js.map +1 -1
  1123. package/es-custom/components/tabs/tabs-skeleton.js +1 -1
  1124. package/es-custom/components/tabs/tabs-skeleton.js.map +1 -1
  1125. package/es-custom/components/tabs/tabs-vertical.js +1 -1
  1126. package/es-custom/components/tabs/tabs-vertical.js.map +1 -1
  1127. package/es-custom/components/tabs/tabs.js +1 -1
  1128. package/es-custom/components/tabs/tabs.js.map +1 -1
  1129. package/es-custom/components/tabs/tabs.scss.js +1 -1
  1130. package/es-custom/components/tag/defs.js.map +1 -1
  1131. package/es-custom/components/tag/dismissible-tag.js +1 -1
  1132. package/es-custom/components/tag/dismissible-tag.js.map +1 -1
  1133. package/es-custom/components/tag/operational-tag.js +1 -1
  1134. package/es-custom/components/tag/operational-tag.js.map +1 -1
  1135. package/es-custom/components/tag/selectable-tag.js +1 -1
  1136. package/es-custom/components/tag/selectable-tag.js.map +1 -1
  1137. package/es-custom/components/tag/tag-skeleton.js +1 -1
  1138. package/es-custom/components/tag/tag-skeleton.js.map +1 -1
  1139. package/es-custom/components/tag/tag.js +1 -1
  1140. package/es-custom/components/tag/tag.js.map +1 -1
  1141. package/es-custom/components/tag/tag.scss.js +1 -1
  1142. package/es-custom/components/tearsheet/defs.js.map +1 -1
  1143. package/es-custom/components/tearsheet/tearsheet.js +1 -1
  1144. package/es-custom/components/tearsheet/tearsheet.js.map +1 -1
  1145. package/es-custom/components/text-input/defs.js.map +1 -1
  1146. package/es-custom/components/text-input/stories/helpers.js.map +1 -1
  1147. package/es-custom/components/text-input/text-input-skeleton.js +1 -1
  1148. package/es-custom/components/text-input/text-input-skeleton.js.map +1 -1
  1149. package/es-custom/components/text-input/text-input.js +1 -1
  1150. package/es-custom/components/text-input/text-input.js.map +1 -1
  1151. package/es-custom/components/textarea/stories/helpers.js.map +1 -1
  1152. package/es-custom/components/textarea/textarea-skeleton.js +1 -1
  1153. package/es-custom/components/textarea/textarea-skeleton.js.map +1 -1
  1154. package/es-custom/components/textarea/textarea.js +1 -1
  1155. package/es-custom/components/textarea/textarea.js.map +1 -1
  1156. package/es-custom/components/tile/clickable-tile.js +1 -1
  1157. package/es-custom/components/tile/clickable-tile.js.map +1 -1
  1158. package/es-custom/components/tile/expandable-tile.js +1 -1
  1159. package/es-custom/components/tile/expandable-tile.js.map +1 -1
  1160. package/es-custom/components/tile/radio-tile.js +1 -1
  1161. package/es-custom/components/tile/radio-tile.js.map +1 -1
  1162. package/es-custom/components/tile/selectable-tile.js +1 -1
  1163. package/es-custom/components/tile/selectable-tile.js.map +1 -1
  1164. package/es-custom/components/tile/tile-group.js +1 -1
  1165. package/es-custom/components/tile/tile-group.js.map +1 -1
  1166. package/es-custom/components/tile/tile.js +1 -1
  1167. package/es-custom/components/tile/tile.js.map +1 -1
  1168. package/es-custom/components/tile/tile.scss.js +1 -1
  1169. package/es-custom/components/time-picker/defs.js.map +1 -1
  1170. package/es-custom/components/time-picker/time-picker-select.js +1 -1
  1171. package/es-custom/components/time-picker/time-picker-select.js.map +1 -1
  1172. package/es-custom/components/time-picker/time-picker.js +1 -1
  1173. package/es-custom/components/time-picker/time-picker.js.map +1 -1
  1174. package/es-custom/components/toggle/defs.js.map +1 -1
  1175. package/es-custom/components/toggle/toggle-skeleton.js +1 -1
  1176. package/es-custom/components/toggle/toggle-skeleton.js.map +1 -1
  1177. package/es-custom/components/toggle/toggle.js +1 -1
  1178. package/es-custom/components/toggle/toggle.js.map +1 -1
  1179. package/es-custom/components/toggle-tip/toggletip.js +1 -1
  1180. package/es-custom/components/toggle-tip/toggletip.js.map +1 -1
  1181. package/es-custom/components/toggle-tip/toggletip.scss.js +1 -1
  1182. package/es-custom/components/tooltip/definition-tooltip.js +1 -1
  1183. package/es-custom/components/tooltip/definition-tooltip.js.map +1 -1
  1184. package/es-custom/components/tooltip/tooltip-content.js +1 -1
  1185. package/es-custom/components/tooltip/tooltip-content.js.map +1 -1
  1186. package/es-custom/components/tooltip/tooltip.js +1 -1
  1187. package/es-custom/components/tooltip/tooltip.js.map +1 -1
  1188. package/es-custom/components/tooltip/tooltip.scss.js +1 -1
  1189. package/es-custom/components/tree-view/defs.js.map +1 -1
  1190. package/es-custom/components/tree-view/tree-node.js +1 -1
  1191. package/es-custom/components/tree-view/tree-node.js.map +1 -1
  1192. package/es-custom/components/tree-view/tree-view.js +1 -1
  1193. package/es-custom/components/tree-view/tree-view.js.map +1 -1
  1194. package/es-custom/components/ui-shell/defs.js.map +1 -1
  1195. package/es-custom/components/ui-shell/header-global-action.js +1 -1
  1196. package/es-custom/components/ui-shell/header-global-action.js.map +1 -1
  1197. package/es-custom/components/ui-shell/header-menu-button.js +1 -1
  1198. package/es-custom/components/ui-shell/header-menu-button.js.map +1 -1
  1199. package/es-custom/components/ui-shell/header-menu-item.js +1 -1
  1200. package/es-custom/components/ui-shell/header-menu-item.js.map +1 -1
  1201. package/es-custom/components/ui-shell/header-menu.js +1 -1
  1202. package/es-custom/components/ui-shell/header-menu.js.map +1 -1
  1203. package/es-custom/components/ui-shell/header-name.js +1 -1
  1204. package/es-custom/components/ui-shell/header-name.js.map +1 -1
  1205. package/es-custom/components/ui-shell/header-nav-item.js +1 -1
  1206. package/es-custom/components/ui-shell/header-nav-item.js.map +1 -1
  1207. package/es-custom/components/ui-shell/header-nav.js +1 -1
  1208. package/es-custom/components/ui-shell/header-nav.js.map +1 -1
  1209. package/es-custom/components/ui-shell/header-panel.js +1 -1
  1210. package/es-custom/components/ui-shell/header-panel.js.map +1 -1
  1211. package/es-custom/components/ui-shell/header-side-nav-items.js +1 -1
  1212. package/es-custom/components/ui-shell/header-side-nav-items.js.map +1 -1
  1213. package/es-custom/components/ui-shell/header.js +1 -1
  1214. package/es-custom/components/ui-shell/header.js.map +1 -1
  1215. package/es-custom/components/ui-shell/header.scss.js +1 -1
  1216. package/es-custom/components/ui-shell/side-nav-divider.js +1 -1
  1217. package/es-custom/components/ui-shell/side-nav-divider.js.map +1 -1
  1218. package/es-custom/components/ui-shell/side-nav-items.js +1 -1
  1219. package/es-custom/components/ui-shell/side-nav-items.js.map +1 -1
  1220. package/es-custom/components/ui-shell/side-nav-link.js +1 -1
  1221. package/es-custom/components/ui-shell/side-nav-link.js.map +1 -1
  1222. package/es-custom/components/ui-shell/side-nav-menu-item.js +1 -1
  1223. package/es-custom/components/ui-shell/side-nav-menu-item.js.map +1 -1
  1224. package/es-custom/components/ui-shell/side-nav-menu.js +1 -1
  1225. package/es-custom/components/ui-shell/side-nav-menu.js.map +1 -1
  1226. package/es-custom/components/ui-shell/side-nav.js +1 -1
  1227. package/es-custom/components/ui-shell/side-nav.js.map +1 -1
  1228. package/es-custom/components/ui-shell/switcher-divider.js +1 -1
  1229. package/es-custom/components/ui-shell/switcher-divider.js.map +1 -1
  1230. package/es-custom/components/ui-shell/switcher-item.js +1 -1
  1231. package/es-custom/components/ui-shell/switcher-item.js.map +1 -1
  1232. package/es-custom/components/ui-shell/switcher.js +1 -1
  1233. package/es-custom/components/ui-shell/switcher.js.map +1 -1
  1234. package/es-custom/globals/controllers/floating-controller.js.map +1 -1
  1235. package/es-custom/globals/decorators/carbon-element.js.map +1 -1
  1236. package/es-custom/globals/decorators/host-listener.js.map +1 -1
  1237. package/es-custom/globals/directives/if-non-empty.js.map +1 -1
  1238. package/es-custom/globals/directives/spread.js.map +1 -1
  1239. package/es-custom/globals/internal/collection-helpers.js.map +1 -1
  1240. package/es-custom/globals/internal/deep-shadow-contains.js.map +1 -1
  1241. package/es-custom/globals/internal/icon-loader-utils.js.map +1 -1
  1242. package/es-custom/globals/internal/icon-loader.js.map +1 -1
  1243. package/es-custom/globals/internal/radio-group-manager.js.map +1 -1
  1244. package/es-custom/globals/mixins/focus.js.map +1 -1
  1245. package/es-custom/globals/mixins/form.js.map +1 -1
  1246. package/es-custom/globals/mixins/host-listener.js.map +1 -1
  1247. package/es-custom/globals/mixins/on.js.map +1 -1
  1248. package/es-custom/globals/mixins/validity.js.map +1 -1
  1249. package/es-custom/globals/shared-enums.js.map +1 -1
  1250. package/es-custom/node_modules/flatpickr/dist/esm/index.js.map +1 -1
  1251. package/es-custom/node_modules/flatpickr/dist/esm/l10n/default.js.map +1 -1
  1252. package/es-custom/node_modules/flatpickr/dist/esm/plugins/rangePlugin.js.map +1 -1
  1253. package/es-custom/node_modules/flatpickr/dist/esm/types/options.js.map +1 -1
  1254. package/es-custom/node_modules/flatpickr/dist/esm/utils/dates.js.map +1 -1
  1255. package/es-custom/node_modules/flatpickr/dist/esm/utils/dom.js.map +1 -1
  1256. package/es-custom/node_modules/flatpickr/dist/esm/utils/formatting.js.map +1 -1
  1257. package/es-custom/node_modules/flatpickr/dist/esm/utils/index.js.map +1 -1
  1258. package/es-custom/node_modules/flatpickr/dist/esm/utils/polyfills.js.map +1 -1
  1259. package/es-custom/packages/feature-flags/es/index.js.map +1 -1
  1260. package/lib/components/accordion/defs.js.map +1 -1
  1261. package/lib/components/ai-label/defs.js.map +1 -1
  1262. package/lib/components/breadcrumb/defs.js.map +1 -1
  1263. package/lib/components/button/button-set.d.ts +4 -0
  1264. package/lib/components/button/button-set.d.ts.map +1 -1
  1265. package/lib/components/button/defs.js.map +1 -1
  1266. package/lib/components/chat-button/defs.js.map +1 -1
  1267. package/lib/components/checkbox/defs.js.map +1 -1
  1268. package/lib/components/code-snippet/defs.js.map +1 -1
  1269. package/lib/components/combo-button/defs.js.map +1 -1
  1270. package/lib/components/content-switcher/defs.js.map +1 -1
  1271. package/lib/components/data-table/defs.js.map +1 -1
  1272. package/lib/components/data-table/table-batch-actions.d.ts +8 -0
  1273. package/lib/components/data-table/table-batch-actions.d.ts.map +1 -1
  1274. package/lib/components/date-picker/defs.js.map +1 -1
  1275. package/lib/components/dropdown/defs.js.map +1 -1
  1276. package/lib/components/file-uploader/defs.js.map +1 -1
  1277. package/lib/components/floating-menu/defs.js.map +1 -1
  1278. package/lib/components/fluid-password-input/fluid-password-input.d.ts +1 -0
  1279. package/lib/components/fluid-password-input/fluid-password-input.d.ts.map +1 -1
  1280. package/lib/components/fluid-text-input/fluid-text-input.d.ts +1 -0
  1281. package/lib/components/fluid-text-input/fluid-text-input.d.ts.map +1 -1
  1282. package/lib/components/grid/defs.js.map +1 -1
  1283. package/lib/components/icon-button/defs.js.map +1 -1
  1284. package/lib/components/icon-indicator/defs.js.map +1 -1
  1285. package/lib/components/inline-loading/defs.js.map +1 -1
  1286. package/lib/components/link/link.d.ts +1 -1
  1287. package/lib/components/loading/defs.js.map +1 -1
  1288. package/lib/components/menu/defs.js.map +1 -1
  1289. package/lib/components/menu/menu-item-selectable.d.ts +4 -0
  1290. package/lib/components/menu/menu-item-selectable.d.ts.map +1 -1
  1291. package/lib/components/menu/menu.d.ts +14 -6
  1292. package/lib/components/menu/menu.d.ts.map +1 -1
  1293. package/lib/components/menu-button/defs.js.map +1 -1
  1294. package/lib/components/modal/defs.js.map +1 -1
  1295. package/lib/components/multi-select/defs.js.map +1 -1
  1296. package/lib/components/notification/defs.js.map +1 -1
  1297. package/lib/components/number-input/defs.js.map +1 -1
  1298. package/lib/components/overflow-menu/defs.js.map +1 -1
  1299. package/lib/components/overflow-menu/overflow-menu.d.ts +8 -0
  1300. package/lib/components/overflow-menu/overflow-menu.d.ts.map +1 -1
  1301. package/lib/components/pagination/defs.js.map +1 -1
  1302. package/lib/components/pagination/pagination.d.ts +3 -0
  1303. package/lib/components/pagination/pagination.d.ts.map +1 -1
  1304. package/lib/components/pagination-nav/defs.js.map +1 -1
  1305. package/lib/components/password-input/defs.js.map +1 -1
  1306. package/lib/components/popover/defs.js.map +1 -1
  1307. package/lib/components/popover/popover.d.ts +5 -0
  1308. package/lib/components/popover/popover.d.ts.map +1 -1
  1309. package/lib/components/progress-bar/defs.js.map +1 -1
  1310. package/lib/components/progress-bar/progress-bar.d.ts +1 -0
  1311. package/lib/components/progress-bar/progress-bar.d.ts.map +1 -1
  1312. package/lib/components/progress-indicator/defs.js.map +1 -1
  1313. package/lib/components/radio-button/defs.js.map +1 -1
  1314. package/lib/components/radio-button/radio-button-group.d.ts +3 -0
  1315. package/lib/components/radio-button/radio-button-group.d.ts.map +1 -1
  1316. package/lib/components/search/defs.js.map +1 -1
  1317. package/lib/components/shape-indicator/defs.js.map +1 -1
  1318. package/lib/components/side-panel/defs.js.map +1 -1
  1319. package/lib/components/skeleton-text/defs.js.map +1 -1
  1320. package/lib/components/slug/defs.js.map +1 -1
  1321. package/lib/components/stack/defs.js.map +1 -1
  1322. package/lib/components/tabs/defs.js.map +1 -1
  1323. package/lib/components/tag/defs.js.map +1 -1
  1324. package/lib/components/tearsheet/defs.js.map +1 -1
  1325. package/lib/components/text-input/defs.js.map +1 -1
  1326. package/lib/components/time-picker/defs.js.map +1 -1
  1327. package/lib/components/toggle/defs.js.map +1 -1
  1328. package/lib/components/tree-view/defs.js.map +1 -1
  1329. package/lib/components/ui-shell/defs.js.map +1 -1
  1330. package/lib/globals/controllers/floating-controller.js.map +1 -1
  1331. package/lib/globals/shared-enums.js.map +1 -1
  1332. package/package.json +7 -7
  1333. package/scss/components/accordion/accordion.scss +32 -28
  1334. package/scss/components/grid/grid-story.scss +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"multi-select.js","names":["CDSDropdown","CDSAILabel","styles","customElement"],"sources":["../../../src/components/multi-select/multi-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, PropertyValues, TemplateResult } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { prefix } from '../../globals/settings';\nimport Close16 from '@carbon/icons/es/close/16.js';\nimport { filter, forEach } from '../../globals/internal/collection-helpers';\nimport CDSDropdown, {\n DROPDOWN_KEYBOARD_ACTION,\n DROPDOWN_TYPE,\n} from '../dropdown/dropdown';\nimport { iconLoader } from '../../globals/internal/icon-loader';\nimport { SELECTION_FEEDBACK_OPTION } from './defs';\nimport CDSMultiSelectItem from './multi-select-item';\nimport styles from './multi-select.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport HostListener from '../../globals/decorators/host-listener';\nimport CDSAILabel from '../ai-label/ai-label';\n\nexport {\n DROPDOWN_SIZE,\n DROPDOWN_TYPE,\n DROPDOWN_DIRECTION,\n} from '../dropdown/dropdown';\n\nexport { SELECTION_FEEDBACK_OPTION };\n\n/**\n * Multi select.\n *\n * @element cds-multi-select\n * @fires cds-multi-select-beingselected\n * The custom event fired before a multi select item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n * @fires cds-multi-select-selected - The custom event fired after a multi select item is selected upon a user gesture.\n * @fires cds-multi-select-beingtoggled\n * The custom event fired before the open state of this multi select is toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated toggling.\n * @fires cds-multi-select-toggled\n * The custom event fired after the open state of this multi select is toggled upon a user gesture.\n */\n@customElement(`${prefix}-multi-select`)\nclass CDSMultiSelect extends CDSDropdown {\n @property({ type: Boolean })\n filterable;\n\n /**\n * The native `autocomplete` attribute for the filterable input.\n */\n @property({ type: String })\n autocomplete = 'off';\n\n /**\n * The count of selected items.\n */\n private _selectedItemsCount = 0;\n\n /**\n * The clear button.\n */\n @query('#clear-button')\n private _clearButtonNode!: HTMLElement;\n\n /**\n * The selection button.\n */\n @query('#selection-button')\n private _selectionButtonNode!: HTMLElement;\n\n /**\n * The `<input>` for filtering.\n */\n @query('input')\n private _filterInputNode!: HTMLInputElement;\n\n protected get _supportsMenuInputFiltering() {\n return Boolean(this.filterable);\n }\n\n protected willUpdate(changedProperties: PropertyValues) {\n this._shouldTriggerBeFocusable = !this.filterable;\n super.willUpdate(changedProperties);\n }\n\n protected get _menuInputNode(): HTMLInputElement | null {\n return this.filterable ? (this._filterInputNode ?? null) : null;\n }\n\n protected _clearMenuInputFiltering() {\n if (this.filterable) {\n this._handleUserInitiatedClearInput();\n }\n }\n\n protected _shouldClearMenuInputOnEscape({\n menuOpen,\n isInputTarget,\n }: {\n event: KeyboardEvent;\n menuOpen: boolean;\n isInputTarget: boolean;\n }) {\n if (!isInputTarget) {\n return false;\n }\n\n if (menuOpen) {\n return false;\n }\n\n if (!menuOpen) {\n if (this._selectedItemsCount > 0) {\n this._handleUserInitiatedSelectItem();\n }\n\n return Boolean(this._filterInputNode?.value);\n }\n\n return false;\n }\n\n /**\n * The trigger button.\n */\n @query(`.${prefix}--list-box__field`)\n private _triggerNode!: HTMLElement;\n\n protected _selectionShouldChange(itemToSelect?: CDSMultiSelectItem) {\n // If we are selecting an item, assumes we always toggle\n return Boolean(this.value || itemToSelect);\n }\n\n protected _selectionDidChange(itemToSelect?: CDSMultiSelectItem) {\n const allItems = Array.from(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n )\n ) as CDSMultiSelectItem[];\n\n // clicked \"select all\" when it was indeterminate\n if (itemToSelect?.isSelectAll && itemToSelect.indeterminate) {\n allItems.forEach((i) => {\n i.selected = false;\n i.indeterminate = false;\n });\n this.value = '';\n return;\n }\n\n if (itemToSelect) {\n // clicked select all\n if (itemToSelect.isSelectAll) {\n const items = this.filterable\n ? Array.from(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItemResults\n )\n )\n : allItems;\n items.forEach((i) => {\n if (\n !(i as CDSMultiSelectItem).isSelectAll &&\n !(i as CDSMultiSelectItem).disabled\n ) {\n (i as CDSMultiSelectItem).selected = !itemToSelect.selected;\n }\n (i as CDSMultiSelectItem).indeterminate = false;\n });\n itemToSelect.selected = !itemToSelect.selected;\n // clicked regular item\n } else {\n itemToSelect.selected = !itemToSelect.selected;\n }\n } else {\n forEach(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItemSelected\n ),\n (item) => {\n (item as CDSMultiSelectItem).selected = false;\n }\n );\n this._handleUserInitiatedToggle(false);\n }\n if (this.selectAll) this._computeSelectAllState();\n // Change in `.selected` hasn't been reflected to the corresponding attribute yet\n this.value = filter(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n ),\n (item) => (item as CDSMultiSelectItem).selected\n )\n .map((item) => (item as CDSMultiSelectItem).value)\n .join(',');\n }\n\n // Keep the menu open for individual selections, close only when clearing.\n\n protected _shouldCloseAfterSelection(item?: CDSMultiSelectItem) {\n return !item;\n }\n\n protected _handleClickInner(event: MouseEvent) {\n const clickedItem = (event.target as HTMLElement).closest(\n `${prefix}-multi-select-item`\n ) as CDSMultiSelectItem | null;\n if (\n this._selectionButtonNode?.contains(event.target as Node) &&\n !this.readOnly\n ) {\n this._handleUserInitiatedSelectItem();\n if (this.filterable) {\n this._filterInputNode.focus();\n } else {\n this._triggerNode.focus();\n }\n } else if (clickedItem && !clickedItem.hasAttribute('disabled')) {\n // Handle focus highlight\n const allItems = this.querySelectorAll(`${prefix}-multi-select-item`);\n allItems.forEach((el) => el.removeAttribute('highlighted'));\n clickedItem.setAttribute('highlighted', '');\n this._handleUserInitiatedSelectItem(clickedItem);\n this.setAttribute('item-clicked', '');\n if (this.filterable) {\n this._filterInputNode.focus();\n }\n } else if (this._clearButtonNode?.contains(event.target as Node)) {\n this._handleUserInitiatedClearInput();\n } else if (\n !(event.target as HTMLElement)?.matches(\n (this.constructor as typeof CDSMultiSelect).aiLabelItem\n ) &&\n // remove reference to slug in v12\n !(event.target as HTMLElement)?.matches(\n (this.constructor as typeof CDSMultiSelect).slugItem\n )\n ) {\n super._handleClickInner(event);\n if (this.filterable) {\n if (!this.open && this._filterInputNode) {\n this._clearInput();\n }\n this._filterInputNode.focus();\n }\n }\n }\n\n /**\n * Clears selections on Escape click\n */\n protected _handleKeydownInner(event: KeyboardEvent) {\n if (event.target instanceof CDSAILabel) {\n return;\n }\n const { key } = event;\n if (\n key === 'Escape' &&\n !this.filterable &&\n !this.open &&\n this._selectedItemsCount > 0\n ) {\n this._handleUserInitiatedSelectItem();\n return;\n }\n super._handleKeydownInner(event);\n }\n\n @HostListener('focusout')\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 protected _handleFocusOut(event: FocusEvent) {\n if (\n this.filterable &&\n this._filterInputNode &&\n !this.contains(event.relatedTarget as Node)\n ) {\n this._clearInput();\n }\n super._handleFocusOut(event);\n }\n\n /**\n * Handler for the `keypress` event, ensures filter still works upon entering space\n */\n protected _handleKeypressInner(event: KeyboardEvent) {\n if (event.target instanceof CDSAILabel) {\n return;\n }\n const { key } = event;\n const action = (this.constructor as typeof CDSDropdown).getAction(key);\n const { TRIGGERING } = DROPDOWN_KEYBOARD_ACTION;\n\n if (\n this._clearButtonNode?.contains(event.target as Node) &&\n // Space key should be handled by `<input>` unless \"clear selection\" button has focus\n (action === TRIGGERING || key === ' ')\n ) {\n this._handleUserInitiatedClearInput();\n } else if (this._selectionButtonNode?.contains(event.target as Node)) {\n this._handleUserInitiatedSelectItem();\n this.open = true;\n if (this.filterable) {\n this._filterInputNode.focus();\n } else {\n this._triggerNode.focus();\n }\n } else if (this.filterable) {\n this._handleKeypressInnerFlterable(event);\n } else {\n super._handleKeypressInner(event);\n }\n }\n\n protected _handleMouseoverInner(event: MouseEvent) {\n const item = this._getDropdownItemFromEvent(event);\n const isFiltering =\n this.filterable && Boolean(this._filterInputNode?.value.length);\n\n if (\n !item ||\n isFiltering ||\n !item.hasAttribute('selected') ||\n !item.hasAttribute('highlighted')\n ) {\n return;\n }\n\n super._handleMouseoverInner(event);\n }\n\n protected _handleMouseleaveInner(event: MouseEvent) {\n const constructor = this.constructor as typeof CDSMultiSelect;\n const isFiltering =\n this.filterable && Boolean(this._filterInputNode?.value.length);\n const highlightedItem = this.querySelector(\n constructor.selectorItemHighlighted\n ) as CDSMultiSelectItem | null;\n\n if (isFiltering || highlightedItem?.hasAttribute('selected')) {\n return;\n }\n\n super._handleMouseleaveInner(event);\n }\n\n /**\n * Special andler for the `keypress` event, ensures space selection for filterable\n * variation is disabled\n */\n\n protected _handleKeypressInnerFlterable(event: KeyboardEvent) {\n const { key } = event;\n const action = (this.constructor as typeof CDSDropdown).getAction(key);\n if (!this.open) {\n switch (action) {\n case DROPDOWN_KEYBOARD_ACTION.TRIGGERING:\n this._handleUserInitiatedToggle(true);\n break;\n default:\n break;\n }\n } else {\n switch (key) {\n case 'Enter':\n {\n const constructor = this.constructor as typeof CDSDropdown;\n const highlightedItem = this.querySelector(\n constructor.selectorItemHighlighted\n ) as CDSMultiSelectItem;\n if (highlightedItem) {\n this._handleUserInitiatedSelectItem(highlightedItem);\n } else {\n this._handleUserInitiatedToggle(false);\n }\n }\n break;\n default:\n break;\n }\n }\n }\n\n protected _renderTitleLabel() {\n const {\n clearSelectionDescription,\n clearSelectionText,\n disabled,\n hideLabel,\n titleText,\n _selectedItemsCount: selectedItemsCount,\n _slotTitleTextNode: slotTitleTextNode,\n _handleSlotchangeLabelText: handleSlotchangeLabelText,\n } = this;\n\n const labelClasses = classMap({\n [`${prefix}--label`]: true,\n [`${prefix}--label--disabled`]: disabled,\n [`${prefix}--visually-hidden`]: hideLabel,\n });\n\n const hasTitleText =\n titleText ||\n (slotTitleTextNode && slotTitleTextNode.assignedNodes().length > 0);\n\n return html`\n <label\n part=\"title-text\"\n class=\"${labelClasses}\"\n ?hidden=\"${!hasTitleText}\">\n <slot name=\"title-text\" @slotchange=\"${handleSlotchangeLabelText}\"\n >${titleText}</slot\n >\n ${selectedItemsCount > 0\n ? html`\n <span class=\"${prefix}--visually-hidden\">\n ${clearSelectionDescription} ${selectedItemsCount},\n ${clearSelectionText}\n </span>\n `\n : null}\n </label>\n `;\n }\n\n protected _renderPrecedingLabel() {\n const {\n disabled,\n readOnly,\n clearSelectionLabel,\n _selectedItemsCount: selectedItemsCount,\n } = this;\n\n const selectionButtonClasses = classMap({\n [`${prefix}--list-box__selection`]: true,\n [`${prefix}--list-box__selection--multi`]: true,\n [`${prefix}--tag`]: true,\n [`${prefix}--tag--filter`]: true,\n [`${prefix}--tag--high-contrast`]: true,\n [`${prefix}--tag--disabled`]: disabled,\n });\n return selectedItemsCount === 0\n ? undefined\n : html`\n <div\n id=\"selection-button\"\n role=\"button\"\n class=\"${selectionButtonClasses}\"\n tabindex=\"-1\"\n aria-disabled=${readOnly}\n title=\"${clearSelectionLabel}\">\n ${selectedItemsCount}\n ${iconLoader(Close16, {\n 'aria-label': clearSelectionLabel,\n class: `${prefix}--tag__close-icon`,\n })}\n </div>\n `;\n }\n\n /**\n @returns The main content of the trigger button.\n */\n protected _renderLabel(): TemplateResult {\n const {\n label,\n value,\n autocomplete,\n _selectedItemContent: selectedItemContent,\n } = this;\n\n const inputClasses = classMap({\n [`${prefix}--text-input`]: true,\n [`${prefix}--text-input--empty`]: !value,\n });\n\n return !this.filterable\n ? html`\n <span id=\"trigger-label\" class=\"${prefix}--list-box__label\"\n >${selectedItemContent || label}</span\n >\n `\n : html`\n <input\n id=\"trigger-label\"\n class=\"${inputClasses}\"\n placeholder=\"${label}\"\n role=\"combobox\"\n aria-controls=\"menu-body\"\n aria-expanded=\"${String(this.open)}\"\n aria-autocomplete=\"list\"\n autocomplete=\"${autocomplete}\"\n @input=\"${this._handleInput}\" />\n `;\n }\n\n protected _renderFollowingLabel(): TemplateResult | undefined {\n const { clearSelectionLabel, _filterInputNode: filterInputNode } = this;\n return filterInputNode &&\n filterInputNode.value.length > 0 &&\n this.filterable\n ? html`\n <div\n id=\"clear-button\"\n role=\"button\"\n class=\"${prefix}--list-box__selection\"\n tabindex=\"-1\"\n title=\"${clearSelectionLabel}\">\n ${iconLoader(Close16, { 'aria-label': clearSelectionLabel })}\n </div>\n `\n : undefined;\n }\n\n /**\n * Handles `input` event on the `<input>` for filtering.\n */\n protected _handleInput() {\n const items = this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n );\n const inputValue = this._filterInputNode.value.toLocaleLowerCase();\n this.toggleAttribute('has-value', inputValue.length > 0);\n\n if (!this.open && inputValue.length > 0) {\n this.open = true;\n }\n\n forEach(items, (item) => {\n // always show the selectAll item\n if ((item as CDSMultiSelectItem).isSelectAll) {\n item.removeAttribute('filtered');\n return;\n }\n const itemValue = (item as HTMLElement).innerText.toLocaleLowerCase();\n\n if (!itemValue.includes(inputValue)) {\n (item as CDSMultiSelectItem).setAttribute('filtered', '');\n (item as CDSMultiSelectItem).removeAttribute('highlighted');\n } else {\n (item as CDSMultiSelectItem).removeAttribute('filtered');\n }\n });\n\n this.requestUpdate();\n\n if (this.selectAll) {\n const selectAllItem = this.querySelector(\n `${prefix}-multi-select-item[is-select-all]`\n ) as CDSMultiSelectItem;\n if (selectAllItem) {\n const visible = Array.from(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItemResults\n )\n ) as CDSMultiSelectItem[];\n const actionable = visible.filter((i) => !i.isSelectAll && !i.disabled);\n if (actionable.length === 0) {\n selectAllItem.setAttribute('filtered', '');\n } else {\n selectAllItem.removeAttribute('filtered');\n this._computeSelectAllState();\n }\n }\n }\n\n const constructor = this.constructor as typeof CDSMultiSelect;\n const visibleItems = Array.from(\n this.querySelectorAll(constructor.selectorItemResults)\n ) as CDSMultiSelectItem[];\n\n if (visibleItems.length > 0) {\n visibleItems.forEach((i) => i.removeAttribute('highlighted'));\n this.toggleAttribute('item-clicked', inputValue.length > 0);\n const first = visibleItems[0] as HTMLElement;\n first.setAttribute('highlighted', '');\n first.focus();\n } else {\n this._filterInputNode.focus();\n }\n }\n\n /**\n * Navigate through dropdown items.\n *\n * @param direction `-1` to navigate backward, `1` to navigate forward.\n */\n protected _navigate(direction: number) {\n super._navigate(direction);\n if (this.filterable) {\n this.setAttribute('item-clicked', '');\n } else {\n this._triggerNode.classList.add('no-focus-style');\n }\n }\n\n /**\n * Handles user-initiated clearing the `<input>` for filtering.\n */\n protected _handleUserInitiatedClearInput() {\n const constructor = this.constructor as typeof CDSMultiSelect;\n const items = this.querySelectorAll(constructor.selectorItemFiltered);\n this._filterInputNode.value = '';\n this._filterInputNode.focus();\n forEach(items, (item) => {\n (item as CDSMultiSelectItem).removeAttribute('filtered');\n });\n this._filterInputNode.dispatchEvent(\n new Event('input', { bubbles: true, composed: true })\n );\n }\n\n /**\n * The `aria-label` attribute for the icon to clear selection.\n */\n @property({ attribute: 'clear-selection-label' })\n clearSelectionLabel = '';\n\n /**\n * Specify the text that should be read for screen readers that describes total items selected\n */\n @property({ attribute: 'clear-selection-description' })\n clearSelectionDescription = 'Total items selected: ';\n\n /**\n * Specify the text that should be read for screen readers to clear selection.\n */\n @property({ attribute: 'clear-selection-text' })\n clearSelectionText = 'To clear selection, press Delete or Backspace.';\n\n /**\n * Specify the locale of the control. Used for the default compareItems used for sorting the list of items in the control.\n */\n @property()\n locale = 'en';\n\n /**\n * Enables rendering of a “Select all” multi-select-item\n */\n @property({ type: Boolean, reflect: true, attribute: 'select-all' })\n selectAll = false;\n\n /**\n * Specify feedback (mode) of the selection.\n * `top`: selected item jumps to top\n * `fixed`: selected item stays at it's position\n * `top-after-reopen`: selected item jump to top after reopen dropdown\n */\n @property({ attribute: 'selection-feedback' })\n selectionFeedback = SELECTION_FEEDBACK_OPTION.TOP_AFTER_REOPEN;\n\n /**\n * The CSS class list for multi-select listbox\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n protected get _classes(): any {\n const {\n disabled,\n size,\n type,\n invalid,\n readOnly,\n open,\n warn,\n _selectedItemsCount: selectedItemsCount,\n } = this;\n const inline = type === DROPDOWN_TYPE.INLINE;\n\n const isInteractive = !readOnly && !disabled;\n\n const normalizedProps: {\n invalid: boolean;\n warn: boolean;\n } = {\n invalid: isInteractive && invalid,\n warn: isInteractive && !invalid && warn,\n };\n\n return classMap({\n [`${prefix}--multi-select`]: true,\n [`${prefix}--list-box`]: true,\n [`${prefix}--list-box--disabled`]: disabled,\n [`${prefix}--list-box--inline`]: inline,\n [`${prefix}--list-box--expanded`]: open,\n [`${prefix}--list-box--${size}`]: size,\n [`${prefix}--multi-select--invalid`]: normalizedProps.invalid,\n [`${prefix}--multi-select--warn`]: normalizedProps.warn,\n [`${prefix}--multi-select--inline`]: inline,\n [`${prefix}--multi-select--readonly`]: readOnly,\n [`${prefix}--multi-select--selected`]: selectedItemsCount > 0,\n [`${prefix}--list-box__wrapper--decorator`]: this._hasAILabel, // inherited from CDSDropdown\n [`${prefix}--multi-select--selectall`]: this.selectAll,\n });\n }\n\n protected defaultCompareItems = (\n itemA: string,\n itemB: string,\n { locale }: { locale: string }\n ) => {\n return itemA.localeCompare(itemB, locale, { numeric: true });\n };\n\n /**\n * Provide a custom function that is used to determine the ordering of\n * options. The compare function should return a number whose sign indicates\n * the relative order of the two elements: negative if a is less than b,\n * positive if a is greater than b, and zero if they are equal. See 'sortItems'\n * for more control.\n *\n * (itemA: string, itemB: string, { locale }: { locale: string }) => number\n */\n @property({ attribute: false })\n compareItems: (\n itemA: string,\n itemB: string,\n options: { locale: string }\n ) => number = this.defaultCompareItems;\n\n private getItemValue = (item: Node) =>\n item instanceof Element ? (item.getAttribute('value') ?? '') : '';\n\n protected defaultSortItems = (\n menuItems: NodeList,\n { values, compareItems, locale = 'en' }\n ): Node[] => {\n const menuItemsArray = Array.from(menuItems);\n\n const sortedArray = menuItemsArray.sort((itemA, itemB) => {\n const hasItemA = values.includes(this.getItemValue(itemA));\n const hasItemB = values.includes(this.getItemValue(itemB));\n\n // Prefer whichever item is in the `value` array first\n if (hasItemA && !hasItemB) {\n return -1;\n }\n\n if (hasItemB && !hasItemA) {\n return 1;\n }\n\n return compareItems(\n itemA.textContent?.trim() ?? '',\n itemB.textContent?.trim() ?? '',\n {\n locale,\n }\n );\n });\n\n return sortedArray;\n };\n\n /**\n * Provide a method that sorts all options in the control. Overriding this\n * prop means that you also have to handle the sort logic for selected versus\n * un-selected items. If you just want to control ordering, consider the\n * `compareItems` prop instead.\n *\n * sortItems :\n * (menuItems: NodeList, {\n * values: string[],\n * compareItems: (itemA: string, itemB: string, { locale }: { locale: string }) => number,\n * locale: string,\n * }) => Node[]\n *\n */\n @property({ attribute: false })\n sortItems: (\n menuItems: NodeList,\n options: {\n values: string[];\n compareItems: (\n itemA: string,\n itemB: string,\n options: { locale: string }\n ) => number;\n locale: string;\n }\n ) => Node[] = this.defaultSortItems;\n\n shouldUpdate(changedProperties) {\n const { selectorItem, aiLabelItem, slugItem } = this\n .constructor as typeof CDSMultiSelect;\n const aiLabel =\n this.querySelector(aiLabelItem) || this.querySelector(slugItem);\n const items = this.querySelectorAll(selectorItem);\n\n const { value, locale } = this;\n const values = !value ? [] : value.split(',');\n\n if (changedProperties.has('size')) {\n forEach(this.querySelectorAll(selectorItem), (elem) => {\n (elem as CDSMultiSelectItem).size = this.size;\n });\n }\n if (changedProperties.has('value')) {\n // Updates selection beforehand because our rendering logic for `<cds-multi-select>` looks for selected items via `qSA()`\n forEach(items, (elem) => {\n (elem as CDSMultiSelectItem).selected =\n values.indexOf((elem as CDSMultiSelectItem).value) >= 0;\n });\n this._selectedItemsCount = filter(\n items,\n (elem) =>\n values.indexOf((elem as CDSMultiSelectItem).value) >= 0 &&\n !(elem as CDSMultiSelectItem).isSelectAll\n ).length;\n }\n\n const shouldSortItems =\n changedProperties.has('value') ||\n changedProperties.has('compareItems') ||\n changedProperties.has('sortItems') ||\n changedProperties.has('locale');\n\n if (\n shouldSortItems &&\n this.selectionFeedback === SELECTION_FEEDBACK_OPTION.TOP\n ) {\n const sortedMenuItems = this.sortItems(items, {\n values,\n compareItems: this.compareItems,\n locale,\n });\n\n if (aiLabel) {\n sortedMenuItems.unshift(aiLabel);\n }\n\n this.replaceChildren(...sortedMenuItems);\n }\n\n const shouldSortItemsAfterReopen =\n changedProperties.has('open') ||\n changedProperties.has('compareItems') ||\n changedProperties.has('sortItems') ||\n changedProperties.has('locale');\n\n if (\n shouldSortItemsAfterReopen &&\n this.selectionFeedback === SELECTION_FEEDBACK_OPTION.TOP_AFTER_REOPEN\n ) {\n const sortedMenuItems = this.sortItems(items, {\n values,\n compareItems: this.compareItems,\n locale,\n });\n\n sortedMenuItems.forEach((item) => {\n this.appendChild(item);\n });\n }\n return true;\n }\n\n updated(changedProperties) {\n super.updated(changedProperties);\n\n if (changedProperties.has('open') && this.open) {\n const selectedItems = Array.from(\n this.querySelectorAll(`${prefix}-multi-select-item[selected]`)\n ) as CDSMultiSelectItem[];\n\n if (selectedItems.length > 0) {\n let itemToFocus: HTMLElement | null = null;\n if (this.selectAll) {\n itemToFocus = this.querySelector(\n `${prefix}-multi-select-item[is-select-all]`\n ) as CDSMultiSelectItem;\n }\n if (!itemToFocus) {\n itemToFocus = selectedItems[0] as HTMLElement;\n }\n this.setAttribute('item-clicked', '');\n itemToFocus.focus();\n itemToFocus.setAttribute('highlighted', '');\n } else {\n if (this.filterable) {\n this._filterInputNode.focus();\n } else {\n this._triggerNode.focus();\n }\n }\n }\n // reorder items so that select all is always at the top of the list\n if (this.selectAll && changedProperties.has('open') && this.open) {\n const items = Array.from(\n this.querySelectorAll('cds-multi-select-item')\n ) as CDSMultiSelectItem[];\n\n const selectAllItem = items.find((i) => i.isSelectAll);\n if (selectAllItem) {\n this.appendChild(selectAllItem);\n items\n .filter((i) => i !== selectAllItem)\n .forEach((i) => this.appendChild(i));\n }\n }\n\n // flush the top of the first element\n Array.from(this.querySelectorAll('cds-multi-select-item')).forEach(\n (item, index) => {\n if (index === 0 && !item.hasAttribute('is-select-all')) {\n item.setAttribute('flush-top', '');\n } else if (index === 1 && this.selectAll) {\n item.setAttribute('flush-top', '');\n } else {\n item.removeAttribute('flush-top');\n }\n }\n );\n\n if (changedProperties.has('open') && !this.open) {\n this._triggerNode.classList.remove('no-focus-style');\n this.removeAttribute('item-clicked');\n }\n }\n\n firstUpdated(changedProperties) {\n super.firstUpdated?.(changedProperties);\n\n // whenever more items are added/removed, recompute the state of the select all option\n if (!this.selectAll) return;\n const defaultSlot =\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- https://github.com/carbon-design-system/carbon/issues/20452\n this.shadowRoot!.querySelector<HTMLSlotElement>('slot:not([name])')!;\n defaultSlot.addEventListener('slotchange', () =>\n this._computeSelectAllState()\n );\n }\n\n /**\n * Computes the state of the select all option and sets it to either\n * 'selected' or 'indeterminate'\n */\n private _computeSelectAllState() {\n if (!this.selectAll) return;\n\n const allItems = Array.from(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n )\n ) as CDSMultiSelectItem[];\n const selectAllItem = allItems.find((i) => i.isSelectAll);\n if (!selectAllItem || selectAllItem.hasAttribute('filtered')) {\n return;\n }\n\n const enabledItems = allItems\n .filter((i) => !i.isSelectAll && !i.disabled)\n .filter((i) => !this.filterable || !i.hasAttribute('filtered'));\n const selectedCount = enabledItems.filter((i) => i.selected).length;\n const allSelected = selectedCount === enabledItems.length;\n\n selectAllItem.selected = allSelected;\n selectAllItem.indeterminate = selectedCount > 0 && !allSelected;\n }\n\n /**\n * Clears the filterable input field\n */\n private _clearInput() {\n this._filterInputNode.value = '';\n this.toggleAttribute('has-value', false);\n\n const items = this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItemFiltered\n );\n forEach(items, (item) => {\n (item as CDSMultiSelectItem).removeAttribute('filtered');\n });\n }\n\n connectedCallback() {\n super.connectedCallback();\n /**\n * Detect if multi-select already has initially selected items\n */\n this.value = filter(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n ),\n (item) => (item as CDSMultiSelectItem).hasAttribute('selected')\n )\n .map((item) => (item as CDSMultiSelectItem).getAttribute('value'))\n .join(',');\n }\n\n /**\n * A selector that will return menu body.\n */\n static get selectorMenuBody() {\n return `div[part=\"menu-body\"]`;\n }\n\n /**\n * A selector that will return highlighted items.\n */\n static get selectorItemHighlighted() {\n return `${prefix}-multi-select-item[highlighted]`;\n }\n\n /**\n * A selector that will return multi select items.\n * We use a separate property from `.itemTagName` due to the nature in difference of tag name vs. selector.\n */\n static get selectorItem() {\n return `${prefix}-multi-select-item`;\n }\n\n /**\n * A selector that will return remaining items after a filter.\n */\n static get selectorItemFiltered() {\n return `${prefix}-multi-select-item[filtered]`;\n }\n\n /**\n * A selector that will return remaining items after a filter.\n */\n static get selectorItemResults() {\n return `${prefix}-multi-select-item:not([filtered])`;\n }\n\n /**\n * A selector that will return selected items.\n */\n static get selectorItemSelected() {\n return `${prefix}-multi-select-item[selected]`;\n }\n\n /**\n * The name of the custom event fired before this multi select item is being toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated action of toggling this multi select item.\n */\n static get eventBeforeToggle() {\n return `${prefix}-multi-select-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after this multi select item is toggled upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-multi-select-toggled`;\n }\n\n /**\n * The name of the custom event fired before a multi select item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n */\n static get eventBeforeSelect() {\n return `${prefix}-multi-select-beingselected`;\n }\n\n /**\n * The name of the custom event fired after a a multi select item is selected upon a user gesture.\n */\n static get eventSelect() {\n return `${prefix}-multi-select-selected`;\n }\n\n static styles = styles;\n}\n\nexport default CDSMultiSelect;\n"],"mappings":"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"}
1
+ {"version":3,"file":"multi-select.js","names":["CDSDropdown","CDSAILabel","styles","customElement"],"sources":["../../../src/components/multi-select/multi-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, PropertyValues, TemplateResult } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { prefix } from '../../globals/settings';\nimport Close16 from '@carbon/icons/es/close/16.js';\nimport { filter, forEach } from '../../globals/internal/collection-helpers';\nimport CDSDropdown, {\n DROPDOWN_KEYBOARD_ACTION,\n DROPDOWN_TYPE,\n} from '../dropdown/dropdown';\nimport { iconLoader } from '../../globals/internal/icon-loader';\nimport { SELECTION_FEEDBACK_OPTION } from './defs';\nimport CDSMultiSelectItem from './multi-select-item';\nimport styles from './multi-select.scss?lit';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport HostListener from '../../globals/decorators/host-listener';\nimport CDSAILabel from '../ai-label/ai-label';\n\nexport {\n DROPDOWN_SIZE,\n DROPDOWN_TYPE,\n DROPDOWN_DIRECTION,\n} from '../dropdown/dropdown';\n\nexport { SELECTION_FEEDBACK_OPTION };\n\n/**\n * Multi select.\n *\n * @element cds-multi-select\n * @fires cds-multi-select-beingselected\n * The custom event fired before a multi select item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n * @fires cds-multi-select-selected - The custom event fired after a multi select item is selected upon a user gesture.\n * @fires cds-multi-select-beingtoggled\n * The custom event fired before the open state of this multi select is toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated toggling.\n * @fires cds-multi-select-toggled\n * The custom event fired after the open state of this multi select is toggled upon a user gesture.\n */\n@customElement(`${prefix}-multi-select`)\nclass CDSMultiSelect extends CDSDropdown {\n @property({ type: Boolean })\n filterable;\n\n /**\n * The native `autocomplete` attribute for the filterable input.\n */\n @property({ type: String })\n autocomplete = 'off';\n\n /**\n * The count of selected items.\n */\n private _selectedItemsCount = 0;\n\n /**\n * The clear button.\n */\n @query('#clear-button')\n private _clearButtonNode!: HTMLElement;\n\n /**\n * The selection button.\n */\n @query('#selection-button')\n private _selectionButtonNode!: HTMLElement;\n\n /**\n * The `<input>` for filtering.\n */\n @query('input')\n private _filterInputNode!: HTMLInputElement;\n\n protected get _supportsMenuInputFiltering() {\n return Boolean(this.filterable);\n }\n\n protected willUpdate(changedProperties: PropertyValues) {\n this._shouldTriggerBeFocusable = !this.filterable;\n super.willUpdate(changedProperties);\n }\n\n protected get _menuInputNode(): HTMLInputElement | null {\n return this.filterable ? (this._filterInputNode ?? null) : null;\n }\n\n protected _clearMenuInputFiltering() {\n if (this.filterable) {\n this._handleUserInitiatedClearInput();\n }\n }\n\n protected _shouldClearMenuInputOnEscape({\n menuOpen,\n isInputTarget,\n }: {\n event: KeyboardEvent;\n menuOpen: boolean;\n isInputTarget: boolean;\n }) {\n if (!isInputTarget) {\n return false;\n }\n\n if (menuOpen) {\n return false;\n }\n\n if (!menuOpen) {\n if (this._selectedItemsCount > 0) {\n this._handleUserInitiatedSelectItem();\n }\n\n return Boolean(this._filterInputNode?.value);\n }\n\n return false;\n }\n\n /**\n * The trigger button.\n */\n @query(`.${prefix}--list-box__field`)\n private _triggerNode!: HTMLElement;\n\n protected _selectionShouldChange(itemToSelect?: CDSMultiSelectItem) {\n // If we are selecting an item, assumes we always toggle\n return Boolean(this.value || itemToSelect);\n }\n\n protected _selectionDidChange(itemToSelect?: CDSMultiSelectItem) {\n const allItems = Array.from(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n )\n ) as CDSMultiSelectItem[];\n\n // clicked \"select all\" when it was indeterminate\n if (itemToSelect?.isSelectAll && itemToSelect.indeterminate) {\n allItems.forEach((i) => {\n i.selected = false;\n i.indeterminate = false;\n });\n this.value = '';\n return;\n }\n\n if (itemToSelect) {\n // clicked select all\n if (itemToSelect.isSelectAll) {\n const items = this.filterable\n ? Array.from(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItemResults\n )\n )\n : allItems;\n items.forEach((i) => {\n if (\n !(i as CDSMultiSelectItem).isSelectAll &&\n !(i as CDSMultiSelectItem).disabled\n ) {\n (i as CDSMultiSelectItem).selected = !itemToSelect.selected;\n }\n (i as CDSMultiSelectItem).indeterminate = false;\n });\n itemToSelect.selected = !itemToSelect.selected;\n // clicked regular item\n } else {\n itemToSelect.selected = !itemToSelect.selected;\n }\n } else {\n forEach(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItemSelected\n ),\n (item) => {\n (item as CDSMultiSelectItem).selected = false;\n }\n );\n this._handleUserInitiatedToggle(false);\n }\n if (this.selectAll) this._computeSelectAllState();\n // Change in `.selected` hasn't been reflected to the corresponding attribute yet\n this.value = filter(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n ),\n (item) => (item as CDSMultiSelectItem).selected\n )\n .map((item) => (item as CDSMultiSelectItem).value)\n .join(',');\n }\n\n // Keep the menu open for individual selections, close only when clearing.\n\n protected _shouldCloseAfterSelection(item?: CDSMultiSelectItem) {\n return !item;\n }\n\n protected _handleClickInner(event: MouseEvent) {\n const clickedItem = (event.target as HTMLElement).closest(\n `${prefix}-multi-select-item`\n ) as CDSMultiSelectItem | null;\n if (\n this._selectionButtonNode?.contains(event.target as Node) &&\n !this.readOnly\n ) {\n this._handleUserInitiatedSelectItem();\n if (this.filterable) {\n this._filterInputNode.focus();\n } else {\n this._triggerNode.focus();\n }\n } else if (clickedItem && !clickedItem.hasAttribute('disabled')) {\n // Handle focus highlight\n const allItems = this.querySelectorAll(`${prefix}-multi-select-item`);\n allItems.forEach((el) => el.removeAttribute('highlighted'));\n clickedItem.setAttribute('highlighted', '');\n this._handleUserInitiatedSelectItem(clickedItem);\n this.setAttribute('item-clicked', '');\n if (this.filterable) {\n this._filterInputNode.focus();\n }\n } else if (this._clearButtonNode?.contains(event.target as Node)) {\n this._handleUserInitiatedClearInput();\n } else if (\n !(event.target as HTMLElement)?.matches(\n (this.constructor as typeof CDSMultiSelect).aiLabelItem\n ) &&\n // remove reference to slug in v12\n !(event.target as HTMLElement)?.matches(\n (this.constructor as typeof CDSMultiSelect).slugItem\n )\n ) {\n super._handleClickInner(event);\n if (this.filterable) {\n if (!this.open && this._filterInputNode) {\n this._clearInput();\n }\n this._filterInputNode.focus();\n }\n }\n }\n\n /**\n * Clears selections on Escape click\n */\n protected _handleKeydownInner(event: KeyboardEvent) {\n if (event.target instanceof CDSAILabel) {\n return;\n }\n const { key } = event;\n if (\n key === 'Escape' &&\n !this.filterable &&\n !this.open &&\n this._selectedItemsCount > 0\n ) {\n this._handleUserInitiatedSelectItem();\n return;\n }\n super._handleKeydownInner(event);\n }\n\n @HostListener('focusout')\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 protected _handleFocusOut(event: FocusEvent) {\n if (\n this.filterable &&\n this._filterInputNode &&\n !this.contains(event.relatedTarget as Node)\n ) {\n this._clearInput();\n }\n super._handleFocusOut(event);\n }\n\n /**\n * Handler for the `keypress` event, ensures filter still works upon entering space\n */\n protected _handleKeypressInner(event: KeyboardEvent) {\n if (event.target instanceof CDSAILabel) {\n return;\n }\n const { key } = event;\n const action = (this.constructor as typeof CDSDropdown).getAction(key);\n const { TRIGGERING } = DROPDOWN_KEYBOARD_ACTION;\n\n if (\n this._clearButtonNode?.contains(event.target as Node) &&\n // Space key should be handled by `<input>` unless \"clear selection\" button has focus\n (action === TRIGGERING || key === ' ')\n ) {\n this._handleUserInitiatedClearInput();\n } else if (this._selectionButtonNode?.contains(event.target as Node)) {\n this._handleUserInitiatedSelectItem();\n this.open = true;\n if (this.filterable) {\n this._filterInputNode.focus();\n } else {\n this._triggerNode.focus();\n }\n } else if (this.filterable) {\n this._handleKeypressInnerFlterable(event);\n } else {\n super._handleKeypressInner(event);\n }\n }\n\n protected _handleMouseoverInner(event: MouseEvent) {\n const item = this._getDropdownItemFromEvent(event);\n const isFiltering =\n this.filterable && Boolean(this._filterInputNode?.value.length);\n\n if (\n !item ||\n isFiltering ||\n !item.hasAttribute('selected') ||\n !item.hasAttribute('highlighted')\n ) {\n return;\n }\n\n super._handleMouseoverInner(event);\n }\n\n protected _handleMouseleaveInner(event: MouseEvent) {\n const constructor = this.constructor as typeof CDSMultiSelect;\n const isFiltering =\n this.filterable && Boolean(this._filterInputNode?.value.length);\n const highlightedItem = this.querySelector(\n constructor.selectorItemHighlighted\n ) as CDSMultiSelectItem | null;\n\n if (isFiltering || highlightedItem?.hasAttribute('selected')) {\n return;\n }\n\n super._handleMouseleaveInner(event);\n }\n\n /**\n * Special andler for the `keypress` event, ensures space selection for filterable\n * variation is disabled\n */\n\n protected _handleKeypressInnerFlterable(event: KeyboardEvent) {\n const { key } = event;\n const action = (this.constructor as typeof CDSDropdown).getAction(key);\n if (!this.open) {\n switch (action) {\n case DROPDOWN_KEYBOARD_ACTION.TRIGGERING:\n this._handleUserInitiatedToggle(true);\n break;\n default:\n break;\n }\n } else {\n switch (key) {\n case 'Enter':\n {\n const constructor = this.constructor as typeof CDSDropdown;\n const highlightedItem = this.querySelector(\n constructor.selectorItemHighlighted\n ) as CDSMultiSelectItem;\n if (highlightedItem) {\n this._handleUserInitiatedSelectItem(highlightedItem);\n } else {\n this._handleUserInitiatedToggle(false);\n }\n }\n break;\n default:\n break;\n }\n }\n }\n\n protected _renderTitleLabel() {\n const {\n clearSelectionDescription,\n clearSelectionText,\n disabled,\n hideLabel,\n titleText,\n _selectedItemsCount: selectedItemsCount,\n _slotTitleTextNode: slotTitleTextNode,\n _handleSlotchangeLabelText: handleSlotchangeLabelText,\n } = this;\n\n const labelClasses = classMap({\n [`${prefix}--label`]: true,\n [`${prefix}--label--disabled`]: disabled,\n [`${prefix}--visually-hidden`]: hideLabel,\n });\n\n const hasTitleText =\n titleText ||\n (slotTitleTextNode && slotTitleTextNode.assignedNodes().length > 0);\n\n return html`\n <label\n part=\"title-text\"\n class=\"${labelClasses}\"\n ?hidden=\"${!hasTitleText}\">\n <slot name=\"title-text\" @slotchange=\"${handleSlotchangeLabelText}\"\n >${titleText}</slot\n >\n ${selectedItemsCount > 0\n ? html`\n <span class=\"${prefix}--visually-hidden\">\n ${clearSelectionDescription} ${selectedItemsCount},\n ${clearSelectionText}\n </span>\n `\n : null}\n </label>\n `;\n }\n\n protected _renderPrecedingLabel() {\n const {\n disabled,\n readOnly,\n clearSelectionLabel,\n _selectedItemsCount: selectedItemsCount,\n } = this;\n\n const selectionButtonClasses = classMap({\n [`${prefix}--list-box__selection`]: true,\n [`${prefix}--list-box__selection--multi`]: true,\n [`${prefix}--tag`]: true,\n [`${prefix}--tag--filter`]: true,\n [`${prefix}--tag--high-contrast`]: true,\n [`${prefix}--tag--disabled`]: disabled,\n });\n return selectedItemsCount === 0\n ? undefined\n : html`\n <div\n id=\"selection-button\"\n role=\"button\"\n class=\"${selectionButtonClasses}\"\n tabindex=\"-1\"\n aria-disabled=${readOnly}\n title=\"${clearSelectionLabel}\">\n ${selectedItemsCount}\n ${iconLoader(Close16, {\n 'aria-label': clearSelectionLabel,\n class: `${prefix}--tag__close-icon`,\n })}\n </div>\n `;\n }\n\n /**\n @returns The main content of the trigger button.\n */\n protected _renderLabel(): TemplateResult {\n const {\n label,\n value,\n autocomplete,\n _selectedItemContent: selectedItemContent,\n } = this;\n\n const inputClasses = classMap({\n [`${prefix}--text-input`]: true,\n [`${prefix}--text-input--empty`]: !value,\n });\n\n return !this.filterable\n ? html`\n <span id=\"trigger-label\" class=\"${prefix}--list-box__label\"\n >${selectedItemContent || label}</span\n >\n `\n : html`\n <input\n id=\"trigger-label\"\n class=\"${inputClasses}\"\n placeholder=\"${label}\"\n role=\"combobox\"\n aria-controls=\"menu-body\"\n aria-expanded=\"${String(this.open)}\"\n aria-autocomplete=\"list\"\n autocomplete=\"${autocomplete}\"\n @input=\"${this._handleInput}\" />\n `;\n }\n\n protected _renderFollowingLabel(): TemplateResult | undefined {\n const { clearSelectionLabel, _filterInputNode: filterInputNode } = this;\n return filterInputNode &&\n filterInputNode.value.length > 0 &&\n this.filterable\n ? html`\n <div\n id=\"clear-button\"\n role=\"button\"\n class=\"${prefix}--list-box__selection\"\n tabindex=\"-1\"\n title=\"${clearSelectionLabel}\">\n ${iconLoader(Close16, { 'aria-label': clearSelectionLabel })}\n </div>\n `\n : undefined;\n }\n\n /**\n * Handles `input` event on the `<input>` for filtering.\n */\n protected _handleInput() {\n const items = this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n );\n const inputValue = this._filterInputNode.value.toLocaleLowerCase();\n this.toggleAttribute('has-value', inputValue.length > 0);\n\n if (!this.open && inputValue.length > 0) {\n this.open = true;\n }\n\n forEach(items, (item) => {\n // always show the selectAll item\n if ((item as CDSMultiSelectItem).isSelectAll) {\n item.removeAttribute('filtered');\n return;\n }\n const itemValue = (item as HTMLElement).innerText.toLocaleLowerCase();\n\n if (!itemValue.includes(inputValue)) {\n (item as CDSMultiSelectItem).setAttribute('filtered', '');\n (item as CDSMultiSelectItem).removeAttribute('highlighted');\n } else {\n (item as CDSMultiSelectItem).removeAttribute('filtered');\n }\n });\n\n this.requestUpdate();\n\n if (this.selectAll) {\n const selectAllItem = this.querySelector(\n `${prefix}-multi-select-item[is-select-all]`\n ) as CDSMultiSelectItem;\n if (selectAllItem) {\n const visible = Array.from(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItemResults\n )\n ) as CDSMultiSelectItem[];\n const actionable = visible.filter((i) => !i.isSelectAll && !i.disabled);\n if (actionable.length === 0) {\n selectAllItem.setAttribute('filtered', '');\n } else {\n selectAllItem.removeAttribute('filtered');\n this._computeSelectAllState();\n }\n }\n }\n\n const constructor = this.constructor as typeof CDSMultiSelect;\n const visibleItems = Array.from(\n this.querySelectorAll(constructor.selectorItemResults)\n ) as CDSMultiSelectItem[];\n\n if (visibleItems.length > 0) {\n visibleItems.forEach((i) => i.removeAttribute('highlighted'));\n this.toggleAttribute('item-clicked', inputValue.length > 0);\n const first = visibleItems[0] as HTMLElement;\n first.setAttribute('highlighted', '');\n first.focus();\n } else {\n this._filterInputNode.focus();\n }\n }\n\n /**\n * Navigate through dropdown items.\n *\n * @param direction `-1` to navigate backward, `1` to navigate forward.\n */\n protected _navigate(direction: number) {\n super._navigate(direction);\n if (this.filterable) {\n this.setAttribute('item-clicked', '');\n } else {\n this._triggerNode.classList.add('no-focus-style');\n }\n }\n\n /**\n * Handles user-initiated clearing the `<input>` for filtering.\n */\n protected _handleUserInitiatedClearInput() {\n const constructor = this.constructor as typeof CDSMultiSelect;\n const items = this.querySelectorAll(constructor.selectorItemFiltered);\n this._filterInputNode.value = '';\n this._filterInputNode.focus();\n forEach(items, (item) => {\n (item as CDSMultiSelectItem).removeAttribute('filtered');\n });\n this._filterInputNode.dispatchEvent(\n new Event('input', { bubbles: true, composed: true })\n );\n }\n\n /**\n * The `aria-label` attribute for the icon to clear selection.\n */\n @property({ attribute: 'clear-selection-label' })\n clearSelectionLabel = '';\n\n /**\n * Specify the text that should be read for screen readers that describes total items selected\n */\n @property({ attribute: 'clear-selection-description' })\n clearSelectionDescription = 'Total items selected: ';\n\n /**\n * Specify the text that should be read for screen readers to clear selection.\n */\n @property({ attribute: 'clear-selection-text' })\n clearSelectionText = 'To clear selection, press Delete or Backspace.';\n\n /**\n * Specify the locale of the control. Used for the default compareItems used for sorting the list of items in the control.\n */\n @property()\n locale = 'en';\n\n /**\n * Enables rendering of a “Select all” multi-select-item\n */\n @property({ type: Boolean, reflect: true, attribute: 'select-all' })\n selectAll = false;\n\n /**\n * Specify feedback (mode) of the selection.\n * `top`: selected item jumps to top\n * `fixed`: selected item stays at it's position\n * `top-after-reopen`: selected item jump to top after reopen dropdown\n */\n @property({ attribute: 'selection-feedback' })\n selectionFeedback = SELECTION_FEEDBACK_OPTION.TOP_AFTER_REOPEN;\n\n /**\n * The CSS class list for multi-select listbox\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n protected get _classes(): any {\n const {\n disabled,\n size,\n type,\n invalid,\n readOnly,\n open,\n warn,\n _selectedItemsCount: selectedItemsCount,\n } = this;\n const inline = type === DROPDOWN_TYPE.INLINE;\n\n const isInteractive = !readOnly && !disabled;\n\n const normalizedProps: {\n invalid: boolean;\n warn: boolean;\n } = {\n invalid: isInteractive && invalid,\n warn: isInteractive && !invalid && warn,\n };\n\n return classMap({\n [`${prefix}--multi-select`]: true,\n [`${prefix}--list-box`]: true,\n [`${prefix}--list-box--disabled`]: disabled,\n [`${prefix}--list-box--inline`]: inline,\n [`${prefix}--list-box--expanded`]: open,\n [`${prefix}--list-box--${size}`]: size,\n [`${prefix}--multi-select--invalid`]: normalizedProps.invalid,\n [`${prefix}--multi-select--warn`]: normalizedProps.warn,\n [`${prefix}--multi-select--inline`]: inline,\n [`${prefix}--multi-select--readonly`]: readOnly,\n [`${prefix}--multi-select--selected`]: selectedItemsCount > 0,\n [`${prefix}--list-box__wrapper--decorator`]: this._hasAILabel, // inherited from CDSDropdown\n [`${prefix}--multi-select--selectall`]: this.selectAll,\n });\n }\n\n protected defaultCompareItems = (\n itemA: string,\n itemB: string,\n { locale }: { locale: string }\n ) => {\n return itemA.localeCompare(itemB, locale, { numeric: true });\n };\n\n /**\n * Provide a custom function that is used to determine the ordering of\n * options. The compare function should return a number whose sign indicates\n * the relative order of the two elements: negative if a is less than b,\n * positive if a is greater than b, and zero if they are equal. See 'sortItems'\n * for more control.\n *\n * (itemA: string, itemB: string, { locale }: { locale: string }) => number\n */\n @property({ attribute: false })\n compareItems: (\n itemA: string,\n itemB: string,\n options: { locale: string }\n ) => number = this.defaultCompareItems;\n\n private getItemValue = (item: Node) =>\n item instanceof Element ? (item.getAttribute('value') ?? '') : '';\n\n protected defaultSortItems = (\n menuItems: NodeList,\n { values, compareItems, locale = 'en' }\n ): Node[] => {\n const menuItemsArray = Array.from(menuItems);\n\n const sortedArray = menuItemsArray.sort((itemA, itemB) => {\n const hasItemA = values.includes(this.getItemValue(itemA));\n const hasItemB = values.includes(this.getItemValue(itemB));\n\n // Prefer whichever item is in the `value` array first\n if (hasItemA && !hasItemB) {\n return -1;\n }\n\n if (hasItemB && !hasItemA) {\n return 1;\n }\n\n return compareItems(\n itemA.textContent?.trim() ?? '',\n itemB.textContent?.trim() ?? '',\n {\n locale,\n }\n );\n });\n\n return sortedArray;\n };\n\n /**\n * Provide a method that sorts all options in the control. Overriding this\n * prop means that you also have to handle the sort logic for selected versus\n * un-selected items. If you just want to control ordering, consider the\n * `compareItems` prop instead.\n *\n * sortItems :\n * (menuItems: NodeList, {\n * values: string[],\n * compareItems: (itemA: string, itemB: string, { locale }: { locale: string }) => number,\n * locale: string,\n * }) => Node[]\n *\n */\n @property({ attribute: false })\n sortItems: (\n menuItems: NodeList,\n options: {\n values: string[];\n compareItems: (\n itemA: string,\n itemB: string,\n options: { locale: string }\n ) => number;\n locale: string;\n }\n ) => Node[] = this.defaultSortItems;\n\n shouldUpdate(changedProperties) {\n const { selectorItem, aiLabelItem, slugItem } = this\n .constructor as typeof CDSMultiSelect;\n const aiLabel =\n this.querySelector(aiLabelItem) || this.querySelector(slugItem);\n const items = this.querySelectorAll(selectorItem);\n\n const { value, locale } = this;\n const values = !value ? [] : value.split(',');\n\n if (changedProperties.has('size')) {\n forEach(this.querySelectorAll(selectorItem), (elem) => {\n (elem as CDSMultiSelectItem).size = this.size;\n });\n }\n if (changedProperties.has('value')) {\n // Updates selection beforehand because our rendering logic for `<cds-multi-select>` looks for selected items via `qSA()`\n forEach(items, (elem) => {\n (elem as CDSMultiSelectItem).selected =\n values.indexOf((elem as CDSMultiSelectItem).value) >= 0;\n });\n this._selectedItemsCount = filter(\n items,\n (elem) =>\n values.indexOf((elem as CDSMultiSelectItem).value) >= 0 &&\n !(elem as CDSMultiSelectItem).isSelectAll\n ).length;\n }\n\n const shouldSortItems =\n changedProperties.has('value') ||\n changedProperties.has('compareItems') ||\n changedProperties.has('sortItems') ||\n changedProperties.has('locale');\n\n if (\n shouldSortItems &&\n this.selectionFeedback === SELECTION_FEEDBACK_OPTION.TOP\n ) {\n const sortedMenuItems = this.sortItems(items, {\n values,\n compareItems: this.compareItems,\n locale,\n });\n\n if (aiLabel) {\n sortedMenuItems.unshift(aiLabel);\n }\n\n this.replaceChildren(...sortedMenuItems);\n }\n\n const shouldSortItemsAfterReopen =\n changedProperties.has('open') ||\n changedProperties.has('compareItems') ||\n changedProperties.has('sortItems') ||\n changedProperties.has('locale');\n\n if (\n shouldSortItemsAfterReopen &&\n this.selectionFeedback === SELECTION_FEEDBACK_OPTION.TOP_AFTER_REOPEN\n ) {\n const sortedMenuItems = this.sortItems(items, {\n values,\n compareItems: this.compareItems,\n locale,\n });\n\n sortedMenuItems.forEach((item) => {\n this.appendChild(item);\n });\n }\n return true;\n }\n\n updated(changedProperties) {\n super.updated(changedProperties);\n\n if (changedProperties.has('open') && this.open) {\n const selectedItems = Array.from(\n this.querySelectorAll(`${prefix}-multi-select-item[selected]`)\n ) as CDSMultiSelectItem[];\n\n if (selectedItems.length > 0) {\n let itemToFocus: HTMLElement | null = null;\n if (this.selectAll) {\n itemToFocus = this.querySelector(\n `${prefix}-multi-select-item[is-select-all]`\n ) as CDSMultiSelectItem;\n }\n if (!itemToFocus) {\n itemToFocus = selectedItems[0] as HTMLElement;\n }\n this.setAttribute('item-clicked', '');\n itemToFocus.focus();\n itemToFocus.setAttribute('highlighted', '');\n } else {\n if (this.filterable) {\n this._filterInputNode.focus();\n } else {\n this._triggerNode.focus();\n }\n }\n }\n // reorder items so that select all is always at the top of the list\n if (this.selectAll && changedProperties.has('open') && this.open) {\n const items = Array.from(\n this.querySelectorAll('cds-multi-select-item')\n ) as CDSMultiSelectItem[];\n\n const selectAllItem = items.find((i) => i.isSelectAll);\n if (selectAllItem) {\n this.appendChild(selectAllItem);\n items\n .filter((i) => i !== selectAllItem)\n .forEach((i) => this.appendChild(i));\n }\n }\n\n // flush the top of the first element\n Array.from(this.querySelectorAll('cds-multi-select-item')).forEach(\n (item, index) => {\n if (index === 0 && !item.hasAttribute('is-select-all')) {\n item.setAttribute('flush-top', '');\n } else if (index === 1 && this.selectAll) {\n item.setAttribute('flush-top', '');\n } else {\n item.removeAttribute('flush-top');\n }\n }\n );\n\n if (changedProperties.has('open') && !this.open) {\n this._triggerNode.classList.remove('no-focus-style');\n this.removeAttribute('item-clicked');\n }\n }\n\n firstUpdated(changedProperties) {\n super.firstUpdated?.(changedProperties);\n\n // whenever more items are added/removed, recompute the state of the select all option\n if (!this.selectAll) return;\n const defaultSlot =\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- https://github.com/carbon-design-system/carbon/issues/20452\n this.shadowRoot!.querySelector<HTMLSlotElement>('slot:not([name])')!;\n defaultSlot.addEventListener('slotchange', () =>\n this._computeSelectAllState()\n );\n }\n\n /**\n * Computes the state of the select all option and sets it to either\n * 'selected' or 'indeterminate'\n */\n private _computeSelectAllState() {\n if (!this.selectAll) return;\n\n const allItems = Array.from(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n )\n ) as CDSMultiSelectItem[];\n const selectAllItem = allItems.find((i) => i.isSelectAll);\n if (!selectAllItem || selectAllItem.hasAttribute('filtered')) {\n return;\n }\n\n const enabledItems = allItems\n .filter((i) => !i.isSelectAll && !i.disabled)\n .filter((i) => !this.filterable || !i.hasAttribute('filtered'));\n const selectedCount = enabledItems.filter((i) => i.selected).length;\n const allSelected = selectedCount === enabledItems.length;\n\n selectAllItem.selected = allSelected;\n selectAllItem.indeterminate = selectedCount > 0 && !allSelected;\n }\n\n /**\n * Clears the filterable input field\n */\n private _clearInput() {\n this._filterInputNode.value = '';\n this.toggleAttribute('has-value', false);\n\n const items = this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItemFiltered\n );\n forEach(items, (item) => {\n (item as CDSMultiSelectItem).removeAttribute('filtered');\n });\n }\n\n connectedCallback() {\n super.connectedCallback();\n /**\n * Detect if multi-select already has initially selected items\n */\n this.value = filter(\n this.querySelectorAll(\n (this.constructor as typeof CDSMultiSelect).selectorItem\n ),\n (item) => (item as CDSMultiSelectItem).hasAttribute('selected')\n )\n .map((item) => (item as CDSMultiSelectItem).getAttribute('value'))\n .join(',');\n }\n\n /**\n * A selector that will return menu body.\n */\n static get selectorMenuBody() {\n return `div[part=\"menu-body\"]`;\n }\n\n /**\n * A selector that will return highlighted items.\n */\n static get selectorItemHighlighted() {\n return `${prefix}-multi-select-item[highlighted]`;\n }\n\n /**\n * A selector that will return multi select items.\n * We use a separate property from `.itemTagName` due to the nature in difference of tag name vs. selector.\n */\n static get selectorItem() {\n return `${prefix}-multi-select-item`;\n }\n\n /**\n * A selector that will return remaining items after a filter.\n */\n static get selectorItemFiltered() {\n return `${prefix}-multi-select-item[filtered]`;\n }\n\n /**\n * A selector that will return remaining items after a filter.\n */\n static get selectorItemResults() {\n return `${prefix}-multi-select-item:not([filtered])`;\n }\n\n /**\n * A selector that will return selected items.\n */\n static get selectorItemSelected() {\n return `${prefix}-multi-select-item[selected]`;\n }\n\n /**\n * The name of the custom event fired before this multi select item is being toggled upon a user gesture.\n * Cancellation of this event stops the user-initiated action of toggling this multi select item.\n */\n static get eventBeforeToggle() {\n return `${prefix}-multi-select-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after this multi select item is toggled upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-multi-select-toggled`;\n }\n\n /**\n * The name of the custom event fired before a multi select item is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n */\n static get eventBeforeSelect() {\n return `${prefix}-multi-select-beingselected`;\n }\n\n /**\n * The name of the custom event fired after a a multi select item is selected upon a user gesture.\n */\n static get eventSelect() {\n return `${prefix}-multi-select-selected`;\n }\n\n static styles = styles;\n}\n\nexport default CDSMultiSelect;\n"],"mappings":"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"}